Ten Essential Development Practices

Kay Schluehr kay.schluehr at gmx.net
Sat Jul 30 11:54:47 EDT 2005


Dark Cowherd wrote:

> -Quote - Phillip J. Eby from dirtsimple.org
> Python as a community is plagued by massive amounts of
> wheel-reinvention. The infamous web framework proliferation problem is
> just the most egregious example.
>
> Why is Python "blessed" with so much reinvention? Because it's often
> cheaper to rewrite than to reuse. Python code is easy to write, but
> hard to depend on. You pretty much have to:
>
>    1. limit yourself to platforms with a suitable packaging system,
>    2. bundle all your dependencies into your distribution, or
>    3. make your users do all the work themselves
>
> Ouch. No wonder rewriting looks easier. The only way to stop this
> trend is to make it easier to reuse than to rewrite, which has been my
> mission with setuptools and EasyInstall
> -UnQuote

I think that Phillip misrepresents the problem a little bit, because it
is not true that there are too few reusable components that need just
another hero programmer like himself or anyone of us to implement. What
is missing is just a simple distinction that does not exist in an open
source community guided by hackers at least not on a certain level (
the PEP process would be a counter-example ) but is well known in
contemporary industry practice: some people are just writing specs. SUN
with Java for example employs people that model systems and write API
specs that are finally licenced and implemented by 3rd-party vendors.
J2EE or the JavaCard API are prominent examples. This is very different
from the just-for-fun or heroic-hacker attitude due to spare-time
programmers who create a bit of code they are interested in and leaving
the rest aside. It's not all just marketing blabla that makes Javas
success. 



Kay




More information about the Python-list mailing list