Dive Into Python 3: The Foreword

October 25th, 2009 § 13 comments § permalink

Sev­eral months ago; Mark Pil­grim con­tacted me, ask­ing if I would be inter­ested in writ­ing the fore­word to Dive Into Python 3 — the lat­est revi­sion to his sem­i­nal book Dive Into Python.

After I was done being flab­ber­gasted, and after I picked myself off the floor, I gladly accepted. What fol­lows is what I wrote, and what will appear in the print edi­tion of Dive Into Python 3 (ama­zon link).

I wanted to con­vey my pas­sion for both the lan­guage, the com­mu­nity — for every­thing involved in this. I wanted to explain why I, as just another devel­oper see Python 3 as crit­i­cal to the evo­lu­tion of Python the Lan­guage. I also wanted to con­vey my thanks to Mark for a book which fun­da­men­tally helped alter what path I’ve taken in my life.

I hope you enjoy it, and I hope you enjoy Dive Into Python 3.

Seven years ago, had you asked me if I would be sit­ting here writ­ing the fore­word to a book, much less the fore­word to a pro­gram­ming book — I would have looked at you incred­u­lously and I’d have prob­a­bly laughed.

Yet here I am. Seven years ago, I was sim­ply a test engi­neer with some script­ing skills and a sys­tems admin­is­tra­tion back­ground. Not a lot of pro­gram­ming and no pas­sion for it, by any stretch of imagination.

One day, a soon-to-be-coworker of mine men­tioned this “new” “script­ing” lan­guage called Python. He men­tioned it was easy to learn, and might add to my skill set — although I was wary — pro­gram­mers seemed to be so sep­a­rated from my “real world” of tests and sys­tems and users. I went out to the near­est book­store and bought the first book I found.

The book I bought was the orig­i­nal Dive Into Python by Mark Pil­grim. I have to think that I am not the only per­son who can say with­out exag­ger­a­tion that, that book changed my life and career forever.

Mark’s book — his pas­sion for Python and pre­sen­ta­tion, and the lan­guage itself fun­da­men­tally altered the way I thought. It drove me to not just read “yet another book about tech stuff” – it drove me to code, to rep­re­sent my ideas in a com­pletely new, alien way. His pas­sion for the lan­guage infected me with a new­found passion.

Now, seven years later, I’m a con­trib­u­tor to the Python stan­dard library, an active com­mu­nity mem­ber and teach the lan­guage to as many peo­ple as I can. I use it in my free time — I use it at my job. I con­tribute to it in between my daughter’s naps. Dive into Python — and Python itself changed me.

Python, as a lan­guage may not be the pret­ti­est nor the most flex­i­ble lan­guage out there. What it is though, is clean, sim­ple and pow­er­ful. Its ele­gance lies in the sim­plic­ity and the prac­ti­cal­ity it holds dear. Its flex­i­bil­ity lies in enabling you, or any­one to get some­thing — any­thing — done and just “get­ting out of your way”.

I’ve said for some time — the beauty of Python is that it scales “up” — it’s use­ful for some­one just want­ing to do some math, or script some­thing sim­ple, while stay­ing use­ful for pro­gram­mers want­ing to cre­ate large scale sys­tems, web frame­works and multi-million dol­lar video shar­ing sites.

Python has not been with­out its warts though. Build­ing a lan­guage is much, at least in my mind, like learn­ing to pro­gram. It’s an evo­lu­tion­ary process where you con­stantly have to ques­tion the deci­sions you’ve made, and be will­ing to cor­rect those decisions.

That’s what Python 3 fun­da­men­tally is. It’s both the admit­tance of mis­takes and the sub­se­quent fixes, remov­ing some of the warts and maybe intro­duc­ing some new ones. Python 3 shows a self-awareness and will­ing­ness to evolve in much needed ways you don’t see in a lot of things.

Python 3 does not rede­fine, fun­da­men­tally alter or sud­denly inval­i­date all of the Python you knew before — what it does is take some­thing which is time-proven and bat­tle worn and improve on it in ratio­nal, prac­ti­cal ways.

Python 3 also doesn’t end the evo­lu­tion of the lan­guage — not by any stretch. New fea­tures, syn­tax and libraries are still being added, and will prob­a­bly be added, tweaked and removed for as long as Python itself lives on.

Python 3 is sim­ply a cleaner, more evolved plat­form for you, the reader, to get things done.

Much like Python 3 — “Dive into Python 3″ is an evo­lu­tion of some­thing which was already very good into some­thing even bet­ter. Mark’s pas­sion, wit and engag­ing style is still there. The mate­r­ial has been expanded and improved and updated, but like Python 3 itself — it’s still the same thing which gave me a pas­sion for programming.

Python’s sim­plic­ity is infec­tious. The pas­sion of the com­mu­nity, and the pas­sion with which the lan­guage was cre­ated and main­tained is astounding.

I hope Mark’s pas­sion, and Python itself inspires you, like it did me. I hope you find Python, and Python 3 to be as prac­ti­cal and pow­er­ful as hun­dreds of thou­sands of pro­gram­mers and com­pa­nies across the world.

Jesse Noller
Python Programmer

Where am I?

You are currently viewing the archives for October, 2009 at jessenoller.com.