I've an opportunity to get to know Pylons. Here's an unsorted list of first (and second) impressions:

  • Pylons has great documentation, though I did stumble upon a few broken links
  • Pylons has a great development environment (instant and automatic server restarts; interactive Python console in your web browser on errors)
  • It seems that nobody using Paste is interested in logging the startup and shutdown time of the web server
  • SQLAlchemy overwhelms with TMTOWTDI
  • zc.buildout can be replaced by a 4-line shell script using virtualenv and easy_install; this will save you headaches
  • setuptools is made of pure crazyness, but we can't live without it

These aren't directly related to Pylons:

  • distributed version control systems are great for throwaway prototypes (especially when you want to compare several ways to do it)
  • non-distributed version control systems aren't
  • py.test is weird and takes some getting used to, but has some nice properties as a test runner; shame about breaking compatibility with unittest
  • automated functional tests for system deployment in a freshly cloned Xen virtual machine are cool, albeit slow-ish

Update: About the naive notion that using easy_install instead of zc.buildout would help me avoid headaches? Muahahahahaha. Ha. Haha. Muahhaaaaaa. Wrong.

Also, TMTOWTDI is maybe too strong a word for SQLAlchemy's plethora of choices. And you really want to be using 0.5. And Pylons is even more awesome than I first thought. Obligatory grain of salt (*thud*): I haven't finished writing my first page yet. Integrating new stuff into existing elaborate functional test suites takes time.