[EuroPython] Random Interview: Alex Martelli
info at pycon.it
info at pycon.it
Tue May 31 18:42:49 CEST 2011
We have selected some speakers through random.choice() to be featured on the
EuroPython 2011 blog! Today we introduce you Alex Martelli!
### What's your name and what do you do?
Alex Martelli, senior staff software engineer at Google in Mountain View,
### How did you start using Python?
In the late '90s I put together in my spare time a simulation system to
explore my hobby (the combinatorial underpinnings of the card game of contract
bridge). That research eventually led to some important articles in the
prestigious journal **The Bridge World**, but the software system by that time
had evolved into an unmaintainable mess (among other issues, an unholy mix of
C, C++, assembly, perl, visual basic, ...) so I was looking for the best
language to rewrite it from scratch.
A colleague I highly respected recommended Python as that language -- I
finally took a look at it and got immediately hooked by the enormous power and
productivity. The way I tried out the language was to devote an otherwise-
empty weekend (family was away, no urgencies at work) to start developing a
website front-end for some parts of that simulation system -- I started on
Friday night and was curious to see how much I could get done by Monday.
By Saturday afternoon the website was complete, including a little templating
engine which I wrote from scratch (and called YAPTU for **Yet Another Python
Templating Utility**) and of course open-sourced -- so I could easily have
versions of the site in Italian, English, and French, simply by picking and
choosing the appropriate template files (HTML with embedded Python expressions
and statements, basically).
Peter Norvig (well known as the best-selling author of **Artificial
Intelligence, a Modern Approach**, and later Google's Director of Research)
spotted and adapted the little YAPTU toy as the core of his rewrite (in
Python, of course) of the website for his department at Berkeley, so I guess
YAPTU wasn't too bad, for code written somebody who hadn't known anything
about Python less than 24 hours earlier ;-)
Python just fit my brain to an extent no other language before or since has
ever come close to; it multiplied my productivity by at least an order of
magnitude; there was just no looking back. I rapidly got involved with the
online Python community, got nicknamed **the martellibot** for the amount and
precision of my contributions, started writing books about the language...
### Name one Python feature you wouldn't live without.
If i had to pick one feature, it would have to be dictionaries. But beyond the
single-feature power, the core of Python's strength is how well and regularly
the features are integrated, both in syntax and semantics -- how well they fit
in with each other into a seamless whole. THAT is what makes it fit my brain!
### What is your talk/training about?
Two talks: an all-tracks one about API design on Monday, a Spaghetti-track
about Python Patterns on Friday.
### Tease us with one secret that will be revealed during your talk/training
On the API side of things: it's just about the only area of software
development where you really need to invest a LOT of time and energy in doing
"design up front" -- the one and only area where agile, incremental, trial-
and-error exploratory development and refactoring seriously breaks.
On the pattern side of things: dependency injection and factory patterns work
extremely well together -- a key example of how patterns form a "language" of
### Name another talk you wouldn't miss in the same track on the same day, and
The all-track talk right after my one on Monday is Hettinger's [What makes
Python so AWESOME] one -- an obvious can't-miss.
As for the Spaghetti-track patterns talk on Friday, there's a later talk on
the same track by Alan Franzoni, entirely devoted to [Dependency
Injection], which promises to be a great complement to my broader and thus
inevitably less-deep one.
### What would you tell someone who is still in doubt whether to register to
EuroPython or not?
I would say **You're KIDDING me, right?!** -- how could ANYBODY be in any
doubt with such a great conference at such an awesome venue?!
## Next Interview Online: June 2nd.
-------------- next part --------------
An HTML attachment was scrubbed...
More information about the EuroPython