Most of my programming day is spent using Python (italian site), a wonderful programming language. As mentioned elsewhere, I discovered Python in 1999, and have been lucky to be able to use it daily on the job since then.
You may often find me on the italian Python newsgroup.
I also made a few code contributions to the Python community: here they are.
Once again, the second Italian Python conference has been a resounding success, hard work, and real fun. See you at PyCon Tre 2009!
I am honored to help with the organization of the first Italian Python conference. It has been real work, but also great fun, in association with such a bunch of smart and humorous people.
In 2005 I collaborated with Michael J. Foord (a.k.a. Voidspace) on the rewrite of his ConfigObj configuration management tool, and have been maintaining it with him since then.
I have also contributed my implementation of an ordered dictionary, ordict, to Michael's Pythonutils suite.
Many prominent Python tools like Twisted, Django and SQLAlchemy include their own implementation of an ordered dictionary. Such peculiar situation seems connected with the fact that there is no widespread consensus on what such a thing should do, as witnessed by the recurring discussions about it on the comp.lang.python newsgroup, like for example this huge one.
In 2000 ActiveState created the Python Cookbook site, as part of ASPN (ActiveState Programmer Network), to collect and distribute contributions from Python programmers all over the world. I added a recipe, PyHeartbeat.
In 2002 O'Reilly published the first edition of the book with the same name: the authors had included PyHeartbeat, and O'Reilly graciously sent me a free copy because of it.
It also included something unexpected. The introduction to chapter 10, Network programming, was written by Guido Van Rossum himself, Python's beloved BDFL (Benevolent Dictator For Life). It contained this (very nice) snippet:
The examples in this chapter are a varied bunch: [...]. My favorite is Recipe 10.12, which discusses PyHeartBeat: it's useful, it uses the socket module, and it's simple enough to be a good educational example.
Time went by (as it seems apt to do); I extended PyHeartbeat with a Twisted-based implementation. PyHeartbeat got chosen again for inclusion in the second edition of the paper Cookbook, and O'Reilly sent me a free copy again (thanks, Tim!).
Upon receiving it I went, with some trepidation, to the introduction of the Network programming chapter, and here's what I found:
My favorite is Recipe 13.11, which implements PyHeartBeat: it's useful, it uses the socket module, and it's simple enough to be an educational example. I do note, with that mixture of pride and sadness that always accompanies a parent's observation of children growing up, that, since the Python Cookbook's first edition, even PyHeartBeat has acquired an alternative server implementation based on Twisted!
Wow. That's a good laugh, if I ever had one! :-) Thanks again, Guido, for Python, and for your sweet words.