Do you feel bad because of the Python docs?

Chris Angelico rosuav at gmail.com
Thu Feb 28 01:31:48 EST 2013


On Thu, Feb 28, 2013 at 4:57 PM, alex23 <wuwei23 at gmail.com> wrote:
> My biggest regret re Python is that [Ranting Rick] found it more
> appealing than Ruby and we got saddled with [him] instead.

Having used Ruby a little this past couple of weeks (trying to install
a Rails application), I fully understand Rick's preference for Python;
it just proves that he wants to use a language that's actually ready
to use.

In discussion with my brother about the problems I'd been having with
Ruby, he summed up the status in one pithy phrase: Critical lack of
polish. Setting up Ruby + Rails + Spree + all the other gems that
those three require, instead of being a fairly simple half-hour job,
took me over a day.

The main issue is that Ruby functions like a niche language, but is
trying to be mainstream. Installing a gem requires that code be
compiled, and sometimes that code doesn't compile and I need to fetch
some development libraries. That's something I'm quite capable of, as
a Linux-based developer, but it's not a job for a systems
administrator. How are Ruby-based sites supposed to be deployed?

Additionally, there are a number of critical-yet-minor problems. The
standard way to invoke Rails is 'rails server' which invokes WEBrick
on port 3000. You can change that port, but to use one <=1024, you
have to be root... and there's no way to have it drop privileges
afterwards. So a Ruby on Rails system, accessible on port 80, will
have to run everything as root. No thanks. Alternatively, you can set
up firewall rules to redirect port 80 to port 3000... or have an
Apache load-balancing proxy... or, my personal favorite, set up an SSH
tunnel to localhost. All this because there's no standard way to drop
privileges after binding (nor a standard way to accept a socket passed
from another process, and listen on that - which is possible with
Ruby, just not conventional).

So, yeah. We're stuck with Rick because we have the better language+library.

ChrisA



More information about the Python-list mailing list