Creating a Flex application using TurboGears

Adobe Flex, for folks not aware of it, is a toolkit for creating attractive, functional GUIs easily. It deploys via Flash, so it works just about everywhere (and looks the same in every browser!). Oh yeah, and Flex is free (though Adobe sells an IDE and additional server side tools that do some extra cool things).

Bruce Eckel, host of this weekend’s TurboGears Jam, and James Ward from Adobe (who will also be at the Jam) did a joint screencast where they show off how to create a Flex application with TurboGears.

TurboGears 1.0 released!

On IRC today, I told a tale of version number mayhem. TurboGears 0.5 came out in September 2005. 0.8 came out in October 2005. In November 2005, I wrote an article right here about how open source projects shouldn’t be shy about releasing their 1.0 versions. The 0.9 alphas started just before PyCon in February 2006.

Between 0.8 and 0.9, TurboGears grew a lot of code and features. We needed to assimilate all of that. I should have likely called one of the 0.8 releases 1.0 and 0.9 would’ve been 1.1. But, instead, 1.0b1 came out in September 2006. That was a mistake, too… because 1.0b1 became the preferred, stable version of TurboGears. After all, quite a few people were using the 0.9 releases in production environments. 1.0b1 really should have been called 1.0.

Version numbers and “beta” designations do set up some expectations in people’s minds. However, I think that once you put a release out there and say “this is good enough to use for real work”, you’ve crossed a threshold and should go ahead and give the 1.0 label.

Without further ado, I’m pleased to announce the release of TurboGears 1.0. A whole bunch of fixes have made it in since the 1.0b2 release. (Unfortunately, I didn’t have a chance to update and clean up the changelog for this release because of the server problems, but Elvelind has offered to clean up the file.)

A big thank you to all of the folks who put forth the effort in fixing bugs, providing patches, committing patches, bringing the docs up to date, etc.

1.0 is not the end. It’s just the beginning.

TurboGears has a new leader

Since around April, people following TurboGears have undoubtedly noticed that my “public participation” in the project has been sporadic. I say “public”, because I’ve often had things going on behind the scenes for the project. But the fact is, that I’ve been busy. The DVD, the book, the presentations, the new job. With the exception of the job, which is a fairly predictable chunk of time, the other things were one time events. I figured that once I was past those, I’d have a certain chunk of time to devote to TG.

After getting a feel for what kind of time that was, I started working on a plan to make the project scale better. I outlined this in a message to the turbogears-trunk list on November 29th where I talk about TG 2.0. I’ve worked on getting more people situated in more roles in the project.

But there is more work to be done to fully get things organized around the ideas we have for TurboGears 2.0. TurboGears is a large enough project that there are plenty of people to help out. But, work needs to be done to get people going on the different things that need doing. Realistically, I don’t see myself having the time to do this in the near term.

In order to ensure that the project gets the attention it needs and can move forward as quickly as possible, I’ve decided to bring on a new Benevolent Dictator. I looked for someone who has been with the project a long time, has contributed good work, has some time to put into the project, has similar views on where to take the project and is a nice person (otherwise they’d be more “Dictator” and not enough “Benevolent”). There is at least one such person on the project.

Alberto Valverde is the new leader of TurboGears! A big thank you to Alberto for agreeing to pick up the project and carry it forward! moves to WebFaction

The server that runs has sporadically had a problem where the Apache process completely bogs down (and the load average gets up around 20). I haven’t had the time to really chase it down and it happened randomly enough that I didn’t worry too much about it.

Over the past few days, however, the site has been down more than it’s been up! So, on New Years Day, I finally took Remi Delon up on his offer of free hosting for at WebFaction. In order to get things back online, I somewhat hastily moved the services over. But, it all went smoothly. WebFaction’s control panel made setting things up a snap. And for a couple of the more esoteric things I needed to do, Remi was a big help.,, and are all being served from WebFaction now.

A big thank you to Remi Delon and his WebFaction partners!

Note: Blue Sky On Mars is still running on the problematic server. I hope to be completely moved to another server soon.

Web Widgets for everyone at PyCon 2007!

The talks and tutorials for PyCon 2007 were recently announced. I’ll be talking about ToscaWidgets, Alberto Valverde’s web component system. Make no mistake about it: my talk is not TurboGears-specific (though I’ll likely demo with TurboGears). Last December, I put up a rough version of how I thought Python-based web components should work. I wanted them to encapsulate:

  1. Display of form elements
  2. Display of potentially complex non-form elements
  3. Inclusion of JavaScript and CSS as needed (without additional Python or template code)
  4. Validation to convert to and from the web
  5. Automatic error handling (as much as is possible)

In other words, I wanted to remove the boilerplate code from working with forms. Alberto and Michele Cella picked up what I started off with and really ran with it. It was great to see that development unfold, and we have an awesome widgets package in TurboGears today as a result.

Within the past couple of months, Alberto has gone through a rewrite of the widgets. He’s cleaned up some of the niggling issues and made it web framework independent! The result is ToscaWidgets, and that’s what I’ll be talking about at PyCon 2007.

PyCon has a lot of other great talks coming, TurboGears-related and otherwise. Mark Ramm will be doing a full day of TurboGears tutorials. Jonathan Ellis will be doing in-depth SQLAlchemy tutorials. Mark will also be introducing SQLAlchemy in a standard talk. Jonathan LaCour will be talking about WhatWhat Status, a project tracking tool that he implemented in TurboGears, which also features prominently in the TurboGears book.

Jacob Kaplan-Moss will be talking about how Django came to be open sourced and how they’ve kept the project going. I can totally relate to the kinds of things they’ve been going through.

Finally, Titus Brown will be hosting a Web Frameworks panel discussion that I’ll be taking part in.

Quite a cool lineup right there, and I’ve barely skimmed the surface of what’s going on at PyCon 2007.

TurboGears in .NET ROCKS!

Dianne Marsh of SRT Solutions talks a bit about TurboGears in the latest .NET ROCKS! podcast. Not surprisingly, .NET ROCKS! usually talks about, um, .NET. In this one, they’re talking a bit about other technologies. Dianne has had an opportunity to work with a broader array of technologies than most, so this is a good topic for her. (note to those reading this: I haven’t yet listened to the podcast, but I wanted to spread the word because I’m sure it’ll be an interesting one just knowing the folks involved.)

#20 tech book on

Rapid Web Applications With TurboGears is now shipping from Amazon, and I just looked and found it at #20 on’s Computers/Internet Bestsellers. Groovy! Thanks to everyone who’s buying it!


Update: Since this was a transient event, I wanted to get a screenshot (which I didn’t have time to do earlier when I first posted this). We were 21 when I first posted this but, as you can see above, we landed at #20.