[Distutils] [pyconuk] "just use debian"

Kevin Teague kevin at bud.ca
Wed Sep 24 06:24:00 CEST 2008

> I guess the question in my mind is if the Ruby community have Ruby  
> Gems,
> what is the Python equivalent, and why doesn't it work?

Python Eggs == Ruby Gems, and they both work more or less equally well  
as a packaging format.

Maybe people just hear "Ruby Gems is awesome and Python don't got  
squat" because Python people are grumpier than Ruby people?

Maybe it's because the Python Eggs page sports a PEAK logo that looks  
like it was made with Corel Draw 5 and this brings backs unpleasant  
memories of when they got paid $6 bucks an hour making coupons in  
Corel Draw 5 whereas the Ruby Gems page has an eye-pleasing RubyGem  

Perhaps we should get Tony Robbins to present, "The Eggscellent Power  
of Positive Thinking" as a keynote at the next PyCon? And from our  
communities newfound exuberant positivity, talented graphic designers  
will be lining up to participate in?

OK, joking aside, it's differences in how eggs and gems are  
distributed and consumed that I think make people claims that one  
works better than the other. Ruby Gems are installed with the 'gem'  
script, which installs gems in a versioned cache location, whereas  
'easy_install' by default installs Python eggs into a global,  
versionless location. The documentation for Ruby Gems is also on the  
whole more approachable then the Python Egg documentation, so when new  
people are learning the tool and they get stuck, with gems they tend  
to find their answer and go away happy and evangelical, whereas with  
eggs they might go away bitter and grumpy.

Eggs have a small "Z-shaped" learning curve in that a new developer  
learns "sudo easy_install some_package" and it works and they say,  
"yay!". Later on though they want to use two versions of the same  
package and they realize that they have to learn how-to do things  
differently *and* they're presented with TIMTOWTDI -  either manual  
management (symlinks or hand-munged .pth files) or setuptools or   
multiple Python installs or VirtualEnv or Buildout or some combination  
of approaches. To a certain extent, TIMTOWTDI is necessary with  
package management, since there are so many different use cases - but  
it would be very nice if there was an approachable documentation  
resource to help people explore these different tools and techniqiues  
more easily though.

Or they can just use debian!  Any debian developers out there up for  
the task of packaging up the 1500+ odd packages released from the Zope  

More information about the Distutils-SIG mailing list