Three weeks ago, I have decided to use my free time to re-learn python. My first step was reading the book Python: Visual QuickStart Guide which is really pleasant to read, and a short one too (found the dead-tree version for only $15).
I also keep these reference close to me at all time
- Python Quick Reference
- Dive into Python which is a little bit outdated but still really useful
- I keep an eye on the sequel too, still in writing Dive into Python 3
I’ve created a couple of easy scripts first, and then I have started to play with web frameworks. First one was web2py. It was fun, but the website looks like a java ad, which scared me. I may come back to it later. Then I went to try web.py, prototyped a website in a snap, and got it running easily.
Next thing I’ve done, is reading the “Definitive Guide to Pylons”, because the philosophy behind pylons interest me. Putting together a lot of great component that can be reused outside of Pylons is a neat idea, and it play well with the community. The book taught me a lot of thing, but it makes Pylons look overcomplicated… I feel that I’m not going to save any time by using this framework. Maybe I wasn’t ready for that. But still, I have learned about a lot of new stuff from this book: mako, sphinx, sqlalchemy, virtualenv and wsgi.
I’ve had some apprehension with Django, mainly because they seem to live in their own universe (don’t quote me on that, I may regret it later). But I have kept an open mind and tried it. Honestly, when coming from Symfony, Django is beautiful and really easy to grasp, I’ve got a Django website running on my VPS at Linode in no time.
Now before I go deeper with a selected framework, I also want to take a look at some other ones (i.e.: try their tutorial) and I want to learn/work more with PEP 333.
Ultimately I will choose a full stack framework to invest more time in it. Here’s my choice so far:
- Django
- Pylons
- TurboGears
- Web2py
I also want to find a small one to quickly test stuff, or create small web app and API (like Sinatra or Ramaze). Available choice seems to be:
- CherryPy
- Juno
- web.py
- Werkzeug
I know there is a gazillion other frameworks in python, but I want to use one with a good user base. Working alone is rarely a good idea.
to be continued…

In fact, there is good discussion between Django and symfony…
You have to write symfony for 1.x and Symfony for 2.x :p