[Chicago] Django and Rails and PHP (oh my!)

Atul Varma varmaa at gmail.com
Wed Dec 21 15:12:50 CET 2005


On 12/21/05, Michael Tobis <mtobis at gmail.com> wrote:
> Ah but this is the issue. Edsger Dijkstra once said something to the
> effect that he thought the teaching of BASIC was a criminal act, as it
> caused minds to form around the wrong concepts. Whether or not BASIC
> has improved since then, I think PHP is the BASIC of our time. The
> template is just not a promising organizing principle for interesting
> ideas. Consider the namespace instead.
>
> Building a website that DOES something is probably the first motivator
> for most beginning programmers these days. PHP achieves this with
> little fuss, but only by introducing a wrongheaded concept at its core
> - an attachment to a way of working that entangles the concerns of
> presentation and process.
>
> Ruby is offering an alternative, but Python isn't. There are people
> with amazing talents in the Python world, and there are lots of
> frameworks at least as good as Rails, but none of them are accessible
> in practice to the beginner, because the teaching materials are
> absent.

This sort of begs the question of whether it's really *that* bad to
learn Ruby instead of Python.  I haven't done much Ruby programming,
but after reading the Pickaxe book a few years ago, it seemed so
similar to Python that I wasn't really that motivated to play around
with it.

As Michael said, what's really important is that a first programming
language should teach the right concepts.  I agree that PHP is really
bad for this, as are a number of other languages, like Perl.  But not
only do both Ruby and Python strike me as reasonably humane languages
that encourage good programming habits, Ruby on Rails is a framework
that actively encourages good architecture and methodology habits.  So
I kind of question whether the idea of "cloning" Rails in Python is
even that useful: it's not like Ruby on Rails is this horrible thing
that's teaching people how to program badly.  It's doing just the
opposite.

So I guess my question is just whether it's really that important that
everyone do web programming in Python instead of Ruby.  As long as
they're using either of those instead of PHP or Perl, it seems to me
like the programming world is heading in the right direction.

> Right now I want to see a small, interesting Django/Python book that
> takes advantage of Django's buzz, and satisfies a bright thirteen year
> old with zero programming experience (except for fifty lines of PHP
> most likely) without offending the spirit of Dijkstra, and I want it
> yesterday.

On a side note, I was always under the impression that kids wanted to
learn programming so they could make video games. :)  At least that
was how things were when I was a kid, and as far as that goes, I think
Python+Pygame can be a great way to introduce someone to coding.

- Atul


More information about the Chicago mailing list