For me, ToscaWidgets is one of the most exciting things I'm watching grow at the moment.

From the first Hello World test with TurboGears, I realised there was just something special about its widgets system (and the videos certainly didn't hurt either).  It felt much like when I started using WebWare and FunFormKit, and subsequently got to know FunFormKit a little better, coming to appreciate simple things like the validators/converters and then auto-generating admin pages for objects using adapters and SQLObject, but amplified.

If you haven't used either, the winning idea is bundling together not only the visual/behavioural/content aspects of a component in terms of Javascript, form fields, or other HTML, but also the validation and conversion of whatever is entered into the browser into something useful to you as a programmer.  Reusably - just steal it from someone else - and extensibly.  And with standard reactions to invalid input - to the point that you don't have to worry about 99% of the problem cases.

But as much as I like TurboGears, I'm not going to be using it exclusively.  I'm using Django at work, and I've been look admiringly at Pylons recently for a little personal project.  The biggest advantage I see in TurboGears is the re-use of good default existing components and being able to use alternates from the existing components out there.  Which means that when you're not using the standard dispatching mechanism (by using Routes, for example), the standard ORM (by using SQLAlchemy before TG 1.1, for example), or the standard templating engine (by using Genshi before TG 1.1, or using Brevé), it's sometimes hard to motivate for using TurboGears.

Anyway, despite often not using the components chosen by TurboGears, it's that the components I do use are generally available that appeals to me.  For example, Django's ORM doesn't interest me until I can use it in a TurboGears or Pylons project (and until it doesn't have those hideous __exact things in the parameters).  But I liked what I saw in TurboGears's widgets, and FunFormKit wasn't a realistically active competitor.

So, when ToscaWidgets was announced - the TurboGears widgets system rearchitected to not rely on TurboGears or CherryPy, I was really happy.  While it would probably be a hard sell to make it the One True Way to other mega-framework folks, here's to hoping that it'll be easy to use whether you're using TurboGears, Django, Pylons, web.py, or any old WSGI or even CGI application.  (And don't forget Zope!)

(and here's to hoping that the new layout I'm using hasn't introduced ugly problems preventing Python luminaries from posting again...) 

1 old-style comments

  1. Karl GuertinFebruary 14, 2007 at 01:03 AM.

    This just came through my aggregator (google reader). Just writing to say that I'm planning a special TW surprise for PyCon. Here's hoping I can get it written.

     The new layout looks good.

blog comments powered by Disqus