Today I ran across a thought provoking article on Dr. Dobbs. The thesis is that there is a perception that Open Source projects copies what already existis and it's in Closed Source where the real innovation occurs. This perception exists in part because how geeks choose what to work on.
There is most definitely evidence to the contrary and also to support that perception, but the main point of the article is that there is a fundamental problem in Open Source which manifests itself as this perception. The problem is with project selection.
Now, Dijkstra wrote a memo in 1982 that describes 3 steps to use when selecting a topic for your research. These rules translate really well to hacking and all geeks should consider them when selecting an Open Source project to work on. The rules are:
Let's break this down a little so it can be easily digested.
Rule 1 is an internal one and it tells us that the obviously possible should be shunned as well as the obviously impossible: the first would not be instructive, the second would be hopeless, and both in their own way are barren.
Next, Dijkstra was refering to scientific projects, but Rule 2 can be easily mapped to software projects also.
Rule 3 is the most important from an Open Source perspective. It ensures that your contributions are unique and move the-state-of-the-art forward. As Dijkstra so eloquently puts "If others will come up with as good a solution as you could obtain, the world doesn't loose a thing if you leave the problem alone. A corollary of the third rule is that one should never compete with one's colleagues. If you are pretty sure that in a certain area you will do a better job than anyone else, please do it in complete devotion, but when in doubt, abstain."
I will be applying this rules to my future project selection. I hope you do too.