Experiences/guidance on teaching Python as a first programming language

Tim Delaney timothy.c.delaney at gmail.com
Wed Dec 11 21:13:05 CET 2013

On 12 December 2013 03:25, Chris Angelico <rosuav at gmail.com> wrote:

> On Thu, Dec 12, 2013 at 3:18 AM, Mark Lawrence <breamoreboy at yahoo.co.uk>
> wrote:
> > On 11/12/2013 16:04, Chris Angelico wrote:
> >>
> >> I strongly believe that a career
> >> programmer should learn as many languages and styles as possible, but
> >> most of them can wait.
> >
> >
> > I chuckle every time I read this one.  Five years per language, ten
> > languages, that's 50 years I think.  Or do I rewrite my diary for next
> week,
> > so I learn Smalltalk Monday morning, Ruby Monday afternoon, Julia Tuesday
> > morning ...
> Well, I went exploring the Wikipedia list of languages [1] one day,
> and found I had at least broad familiarity with about one in five. I'd
> like to get that up to one in four, if only because four's a power of
> two.
> More seriously: Once you've learned five of very different styles, it
> won't take you five years to learn a sixth language. I picked up Pike
> in about a weekend by realizing that it was "Python semantics meets C
> syntax", and then went on to spend the next few years getting to know
> its own idioms. I'd say anyone who knows a dozen languages should be
> able to pick up any non-esoteric language in a weekend, at least to a
> level of broad familiarity of being able to read and comprehend code
> and make moderate changes to it.

Absolutely. 10 years ago I was saying I'd forgotten at least 20 languages,
and there have been many more since.

Once you know enough programming languages you (and by "you" I mean "me")
get to the point where if you don't know a specific language you can pick
up enough to be useful in a day or two, reasonably proficient in a week,
and have a fairly high level of mastery by the time you've finished
whatever project you picked it up for. And then you don't use it for a
while, forget it to make room for something else, and pick it up again when
you need it (much faster this time).

Except Prolog. Never could get my head around it - I should go back and
have another try one of these days.

Some languages stick with you (e.g. Python) and I don't tend to learn
languages that are too similar to what I already know unless it's for a
specific project. So I've never learned Ruby ... but I have had to modify a
few Ruby scripts along the way, and been able to achieve what I wanted the
same day.

TimD elaney
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mail.python.org/pipermail/python-list/attachments/20131212/2529a972/attachment.html>

More information about the Python-list mailing list