I am Howard Trickey, and I work in the Computing Sciences Research Center in Bell Labs, Murray Hill, New Jersey, USA. I remember, it was about 10 years ago, when I first saw the name David Hogan. I was working on our new Operating System called Plan 9 (an Operating System is the software that manages a computer and all of the other programs that run on it - think Windows or Unix). David emailed me out of the blue to offer fixes, advice, and help on a particular piece of software I had written (related to graphics). It was great work, and a great help, and I wondered "who is this wonderful dhog person, working halfway across the world on his own free time, just because he's interested?"
The years passed, and I never met David, though I did notice his continued voluntary contributions to Plan 9 and its offshoot, Inferno. I always marvelled at the energy and interest he showed with his contributions. I believe he did it both because he wanted to use the system himself and therefore wanted it to be as good as it could be, and he also did it because he enjoyed contributing to a software edifice that benefited the computer science community at large. The Plan 9 and Inferno community is a small but enthusiastic group in the computer science world, and David made a name for himself in our community.
A few years ago, David arrived here at Murray Hill, now as an employee, working on the systems he had contributed freely to for so long, which Lucent was trying to make into a business. He did a great job, and when the business was sold off, our Research Center recognized his value, and hired him to work with us as a researcher. His first job was a tough one - to make a very complicated program (a compiler for the C++ programming language) work on Plan 9. He succeeded admirably. Another thing David did reminded me of my earliest contact with him: he fixed, packaged up, and improved yet another piece of my software - a package for processing the web language, HTML.
For the last 3 months, I was David's immediate supervisor. We were working together with one of Lucent's product groups, helping them to decide which operating system they should use on their next generation products. In the short time we had on the project, he made a good impression on our business colleagues. They were shocked and saddened by David's passing (as were all of us), and commented on how his enthusiasm and energy for the work would be sorely missed.
Please accept our deepest condolences on your loss. David will long live in our memories.
I have worked only a few months with David. We were working on software for doing "program analysis". Basically, that is software that analyzes other software, checking it for certain mistakes for example.
David helped us write parts of that system. What struck me most about his approach was, how shall I call it, his "minimalism". He would not start before it was very clear what it was that we wanted, and I think that insistence often helped me as much as it did him. He wanted to be sure that it could be done. He was not easily convinced. But when he finally agreed, he would go off and write his piece of the code, and he would do it well.
What he delivered, would do as we had agreed upon, not more, not less. And it would achieve that with a minimum amount of program code. Both are important virtues in the world of software engineering. I think that David was a very skilled programmer.
David did not write a lot of comments in his code --- explanations, in English, to help understand the code to anybody else who reads it. That was just not his style. He was not a person who talked a lot. In order to know him better, I would have to know him for a much longer time. I regret very much that cannot be.
David, rest in peace.