I recently returned from the Intel Open Source Technology Summit (OSTS). As with any conference worth attending, I returned inspired, and humbled. The attendees were top caliber people from engineering and management, along with special invitees, including Linus Torvalds. While my senior management’s keynote was inspiring (truly, very well done), Linus’s address was insightful in that signature why-didn’t-I-see-that kind of way, and my team’s technical leadership proved itself to be exceptionally competent once again, there is one concept I came away with that will have a larger impact than any other, and the individual who planted the seed likely doesn’t even remember the conversation. Hacking away late into the evening in the lodge’s “library” on too little sleep over a crippled network, my colleague said to me, regarding a problem I was having difficulty making progress on, “I always assume that the code was written the way it is because that was the easiest way for the person who wrote it.” – or something to that effect. That thought has been percolating in the back of my mind for several days, slowly flagging memories of my programming history, building insight, and forming a new resolve.
I’ve done much of my best programming when the result wasn’t critical, without regard for how it might be criticized, without much thought for how others might do it. No concern for why others wrote what I’m debugging the way they did. This same individual also noted that there is an optimal level of beer consumption for programming. That level being where inhibitions are diminished, but cognitive ability is still mostly intact. While it is always good to carefully consider how a thing might be done, obsessing over the perfect solution can hinder progress, and fear of rejection and criticism can halt it.
A colleague and good friend from my days at IBM was fond of the saying, “The perfect is the enemy of the good”. A working solution is better than a plan for a perfect solution. In open source, we have the advantage of being able to expose our work to the critical eyes of a vast community of brilliant individuals with a wide range of experiences. This group is well known for harsh criticism. Criticism of a working solution eventually leads to something approaching the perfect solution.
I intend to take this insight to heart, to have more confidence in myself, despite my naturally self-critical nature. To obsess less over the perfect solution, despite my predisposition to obsessive behavior, and progress toward a working solution using my individual experience as my guide. Finally, to best my aversion to rejection, and proudly present my working solutions and leverage criticism to approach a perfect solution.