Python -- (just) a successful experiment?

Robert Kern rkern at ucsd.edu
Mon Aug 8 06:53:11 EDT 2005


EP wrote:
> Robert Kern <rkern at ucsd.edu> wrote:
> 
>>Which is exactly why I said at the beginning that people shouldn't 
>>bother with this thread and should instead just get to work.
>
> Robert, you are probably right, but I think how we get to work is important as well.
> 
> What I posted was a little intellectually thin, but it would be nice to stir the collective energy toward some common (and useful) objectives. 

What I'm trying to say is that posting to c.l.py is absolutely 
ineffective in achieving that goal. Code attracts people that like to 
code. Tedious, repetitive c.l.py threads attract people that like to 
write tedious, repetitive c.l.py threads. In the open source world, you 
can't tell people what to do. It's often a waste of time even to try to 
get them to *agree* on what they should do particularly when the group 
("Python programmers") is so large and the goals ("create a powerful web 
framework as good as the language") are so amorphous.

Ruby on Rails isn't the phenomenon that it is today because a bunch of 
Ruby programmers got together on c.l.ruby and all decided to work on one 
web app framework and bless it as the One True Way to write Ruby web 
apps. Instead, they wrote good code that solved their problems, code 
that would solve other people's problems, too. They released it in such 
a way that got people talking about their code and people talking about 
people talking about their code (and me talking about people talking 
about ... yeah).

I'm not sure that this phenomenon is particularly repeatable. It was the 
result of a large number of uncontrollable factors and relied very 
heavily on network effects. Plone has, for a long time, made all-in-one 
distributions of itself+Zope+Python+et al. for Windows and Mac just like 
the one you tried for Ruby on Rails. When Zope was first released as 
open source, it got the same kind of "people talking about people 
talking ..." that Ruby on Rails is now getting; Zope was widely 
purported to be *the* Killer App for Python that would draw users of 
other languages in droves. Django is getting the right kind of 
attention, and is simple enough to get started with a small project, but 
it's in the unfortunate position of having come out *after* Ruby on 
Rails. You can do everything right and still not get what you want.

There's a better question that you should have asked instead: "What can 
I do to help make Python a more attractive language to program?" And I 
would suggest that far and away, Python will get the largest payoff for 
your effort if you hammer hammer hammer on 
setuptools/PythonEggs/EasyInstall. Distribution affects *everyone* from 
the hobbiest, to the Java guy who just wants to try out one of the funky 
"dynamic languages," to the enterprise programmer. And there are a large 
number of diverse, small projects that don't need a whole lot of 
coordination with anybody else; you can do them without needing to forge 
much consensus.

You can make your own packages distributable via eggs. You can sumbit 
patches for your favorite 3rd party packages to work well as eggs. You 
can build and donate binary eggs for the platforms you care about. You 
can build a GUI interface for managing the installation of eggs via 
EasyInstall. You can work out a way for eggs to work well with 
dpkg/rpm/whatever package manager your system uses. You can add 
signatures for eggs. You can work out a way to easy associate 
documentation packages associated with the runtime eggs. The more you 
improve this technology, even incrementally, the more people will buy 
into it and thus improve it for you, too.

Or we can keep posting here. Your choice.

-- 
Robert Kern
rkern at ucsd.edu

"In the fields of hell where the grass grows high
  Are the graves of dreams allowed to die."
   -- Richard Harter




More information about the Python-list mailing list