Author Archives: G Wade Johnson

Maintenance Programmer vs. Original Programmer

In the book Software Exorcism, Bill Blunden described a problem caused by the maintenance programmer not usually being the same person as the programmer who wrote the code. Often the maintenance programmer comes in with a less-than-complete understanding of the original problem or of the design decisions made for this problem. Usually, there are also… Read More »

Review of Code Reading

Code Reading Diomidis Spinellis Addison-Wesley, 2003 I have had this book on my list of books to read for some time. Although I have been reading code for years, everything I had heard about this book suggested that it would help improve my reading skills. Unfortunately, halfway through the book I was mostly disappointed. This… Read More »

Unintuitive Multithreading: Communication Between Threads

This essay continues my exploration of misunderstandings about multi-threading. In the first essay of this series, Unintuitive Multithreading: Speed, I explained that multi-threading does not inherently speed up a process. In the second essay Unintuitive Multithreading: Waiting for Performance, I showed how to achieve better performance through waiting. In this essay, I plan to attack… Read More »

Review of The Best Software Writing I

The Best Software Writing I Joel Spolsky (editor) Apress, 2005 Despite plenty of examples to the contrary, there is actually some good writing out there on various software subjects. Even though most of what you can read on the subject (on and off the web) is not particularly well-written, there are some gems out there.… Read More »

Unintuitive Multithreading: Waiting for Performance

This essay continues my exploration of misunderstandings about multi-threading. In the first essay of this series, Unintuitive Multithreading: Speed, I explained that multi-threading does not inherently speed up a process. In this essay, I plan to show how to not achieve more performance from a multi-threaded system. Many new multi-threading (MT) developers make the same… Read More »