Guido van Rossum Interview
Here's an interview of GvR I have made, gathering questions from some of
my friends from AFPY. This is the english version I am dropping in my
French version here :
- Why did you create Python in the first place ?
I was working (with a bunch of other folks) on a new distributed operating
system named Amoeba (it's quite famous, Google for its paper legacy).
We wanted Amoeba to be as useful as Unix for our daily work, but it was
lacking a scripting language. So I set out to design my own. The explicit
goal was for it to be somewhere in the middle between Shell programming (too
high-level) and C programming (too low-level), and I wanted it to be cross
(Maybe I wasn't too optimistic of Amoeba's success. :-)
- What are the strengths of Python ?
I'm not really the right person to ask, you know... I'm so immersed in it
that it's hard to give you an objective list of advantages. Just look it up
on python.org. My own view is that it makes my job as a programmer much
easier than most other languages because of all the stuff that Python takes
care of: memory management, platform dependencies, etc.
- My little brother starts to learn programming, how can I
him to learn with Python ?
Download PyGame, a cool toolkit for creating graphics games, and give him
some simplified APIs that let him create simple graphics objects and animate
There are several English Python boosk for beginners (see
http://www.python.org/moin/IntroductoryBooks) and even a French one
- If you could change some things that have been done in the
langage, what would it be ?
Drop lambda, filter, map and reduce. Make range() behave like xrange(). Make
keys() and many other methods and built-ins return iterators rather than
- What are the new features, or the upcoming ones, that are the most
In Python 2.4, decorators and generator expressions are the coolest
new things. For more, see
- You're back from Pycon. What were the most interesting things,
events you have seen over there?
Hard to choose between IronPython (the Python port to .NET, now supported by
Microsoft) or the keynote about Google's extensive use of Python.
- What do you think about the actual python community activity
I think the community is thriving.
- What's the goal of the PSF ?
In my opinion its primary goal is to exist as a safe neutral non-profit
organization that "owns" Python, to make sure that it always remains free
and never ever gets gobbled up by some big corporation.
In the opinion of other members it is now also important for the PSF
to promote Python and Python-related activities, for example
education, and sponsoring coding projects.
I think it's very important that the PSF has enough money to be able
to continue to run PyCon -- even if PyCon has made a moderate profit
each year, it is an enormous financial responsibility that could not
be done without the stable financial situation of the PSF.
- Does Python is as popular overseas as in Europe ?
It's very popular everywhere. There are huge user groups being
established in Brazil and Argentina. I heard that a few years ago
there 700 people showed up on a Python event in South Korea. Etc.
- Does a specification (ISO, ECMA, ..) is planned for Python and when
No, never. I don't see the point.
- Is their such a big gap today between a dynamic languages like
Python and compiled ones as it used to be ?
Java is closing some of the gap by adding automatic memory management
(they call it Garbage Collection) to the repertoire of compiled
languages. It is also pioneering techniques such as JIT that will
eventually benefit dynamic languages; the PyPy project in Europe is
attempting to do this for Python (in some sense).
- Which external libraries that brings new features to Python
...) do you think are the most interesting ?
Since you mention it, I think PEAK is way too advancedfor most Python
I think Twisted is one of the most interesting third party libraries,
and also wxPython (too bad it's based on C++).
- Which python open source projects are the most do you think are
the most interesting at this time ?
Twisted, Zope. I'm probably missing the really important ones
because I'm not using much 3rd party Python code myself (I live in my
own self-contained "Not Invented Here world").
- What do you think about Zope evolution ?
I think Zope 3 is a big step forward.
- What do you think about Pyrex ? Should'nt it be used to rewrite
some parts of Python ?
Perhaps. Rewriting anything as big as Python from scratch is always a
big risk, it usually takes longer than expected and has unexpected
problems. I'd rather rewrite some parts of Python in Python itself.
The PyPy folks think so too. :-)
- Which one of those projects created to speed Python do you think
are the most interesting : Pyrex, Psyco,
Definitely PyPy. It is rolling up Psyco.
OTOH, Pyrex is probably a lot more practical today -- PyPy has a long
way to go (currently they are 1000x slower than CPython :-) .
- Talking about speed, wich way Python will head towards : less
consuming or memory managment optimisation ?
I expect to see a trend towards speeding things up at the cost of a
little more memory usage. But we've also reduced memory wastage in
certain cases while at the same time speeding things up (e.g.
list.append() in 2.4).
- How come IronPython is doing better than CPython ?
Probably a choice of benchmark. There are some areas (like exception
handling) where it's actually a lot slower.
- How much are you involved in the community nowadays ?
Mostly as a token figure -- I don't make most of the decisions any
more, although I end up breaking ties when the rest of the community
can't agree. I am mostly still interested in evolution of the
(see my blogs) rather than the library or platform support.
- What are your actual professionnal projects ?
Since 2003 I am working for Elemental Security, a start-up company
founded by Dan Farmer to create a new type of enterprise security
application. The application is structured as a server and agents,
the agent is mostly written in Python. I've also designed a
special-purpose language named Fuel which is well suited for writing
security checking scripts. It looks a bit like a statically-typed
subset of Python.
- What code editor are you using ? your OS, Desktop ?
XEmacs and vi. Red Hat. I don't recall what my desktop software is
running (KDE or Gnome); the applications visible are mostly Firefox,
Xemacs, and lots of xterm windows.
- Are you still having fun with Python ?
- When will you be candidate for US presidentials ?
I can't, since I wasn't born here. But my son can be. :-)
- Thank you Guido !
(Post originally written by Tarek Ziadé on the old Nuxeo blogs.)
Category: Product & Development