Why do Pythoneers reinvent the wheel?

Steve Holden steve at holdenweb.com
Sun Sep 11 07:21:17 CEST 2005

Bengt Richter wrote:
> On Sat, 10 Sep 2005 16:55:51 +0200, "Martin P. Hellwig" <mhellwig at xs4all.nl> wrote:
>>Stefano Masini wrote:
>><cut reinventing wheel example>
>>Although I'm not experienced enough to comment on python stuff itself I 
>>do know that in general there are 2 reasons that  people reinvent the wheel:
>>- They didn't know of the existence of the first wheel
>>- They have different roads
>  - They want the feeling that they are in the same league as the original inventor ;-)
>>Those reasons can even be combined.
>>The more difficult it is to create a new wheel the bigger the chance is 
>>that you:
>>- Search longer for fitting technologies
>>- Adapt your road
>  - Think more carefully about ego satisfaction cost/benefit vs getting the job done ;-)
Indeed, the simple answer to the original question is "because they 
can". Python as a language attracts many people who aren't already 
familiar with programming methods, which is why this list sees many 
questions with relatively simple answers. I love the way the responses 
determinedly refuse to put the questioners down for the simplicity of 
the questions: we all have to learn, after all.

Generally as we get more experienced in programming we will spend a much 
larger amount of time looking for (and carefully evaluating) existing 
solutions to a problem, and rather less time trying to write our own 
code to solve a problem.

Python's elegance and simplicity encourages people with less programming 
experience to attempt solutions to larger problems, albeit with varying 
degrees of success. So, despite the language's "There should be one (and 
preferably only one) obvious way to do it" philosophy, we often end up 
with many "competing" solutions to a given problem.

While this can sometimes be tedious, it's probably an overall indication 
of Python's health.

Steve Holden       +44 150 684 7255  +1 800 494 3119
Holden Web LLC             http://www.holdenweb.com/

More information about the Python-list mailing list