I just read Joel’s article on hiring great programmers. I’m not sure if I agree with him or not, because I don’t really understand his argument. Follow along with me for a moment.
His main point seems to be that you need to hire the best programmers to succeed. I agree with that, but I think we have different takes on what that is and in fact I think he might not even be sure what that is.
He starts off ok by making that point and using data from a tough college class to show how the best programmers are more productive. However, here’s where he starts to fade a bit. He goes on to talk about great products and implies these were created by great programmers. He uses WinAmp and the iPod as examples. He points out details like how the WinAmp site had this quote on their feature list “Most things actually work!” and how the iPod makes a nice clicking noise because Apple spent extra $ to put a speaker in the body of the iPod and not just send the sound through the headphones. I’m with him on all that, but I don’t follow how these things are correlated.
It sounds to me like these products were created by people who are extraordinarily creative and have excellent knowledge of their markets and what appeals to users in those markets. So programmers who can build a command line shell or code a new version of Make for their college class faster than another student aren’t necessarily the best programmers to hire. In many cases the most technically proficient programmer will not be the best to hire, because in my experience these people tend to be unable to step out of their programming shoes and into the users. I think you can see this in alot of open source applications, where the technology is first rate but the user experience is poor.
Anyway, maybe that is what Joel is saying, but I don’t think he came across as clear as usual in this essay.