We get a lot of refugees who come to TG from other frameworks where they got themselves to a place they could not get out of. I have worked with some of these frameworks in the past. Things are awesome in the beginning. You work on some less complex stuff, maybe change a template around, or the theme for a site. Then you have some technical detail you need changed and BAM! You just hit the wall. Now you are forced to dig, or suck it up and go on IRC and ask noob question. Many times I find myself getting shut down, told to RTFM, or whatever.
With TG I never really felt the wall. TW was a bit of a hump to get over, but seriously, things are so un-coupled in TG that using a technology you are already familiar with, or swapping out the standard stack is not something totally unheard of. I for one do not like working with Genshi. I’ll do it, and I support it for major OSS work I do, but really I prefer Mako. Mako is fast, works in a non-xml way (which makes it great for writing form-emails for instance). What this means is that TG has good support for Mako in the “standardized” parts like the admin.
The thing is, we really did not have to add much to TG to allow it to work with Mako. I think one of the ingenious things that TG supports is dotted template lookup. What this does is allow you to pull data from any package, because the lookup occurs using pkg_resources. Beautiful, now we have the ability to move templates into their own succinct packages. Also, we support non-dotted template lookup for template languages like Jinja, and adding support for dotted lookup wouldn’t be too hard to do in the future.
The new TGAdmin interface is another example where hitting the wall is just not something that happens. TGAdmin is built on new technologies for TG2.0. Namely RestController, Sprox, and lookup. It creates a custom controller for each of your model classes, and therefore you have a good place to start from when you get going with your application. This is great for demoing. With SQLAutocode, Sprox, and TGAdmin you can literally hook into your client’s database (MySQL, Postgres, sqlite or MSSQL) and generate web forms where you can have an infinitely scrolling tableview, edit, and create forms. From there you have the ability to customize further, by hiding table/form fields, changing the look and feel of any component in the chain. This is made possible by Sprox’s configuration interface. You can also modify the controller code for each model by adding controller methods to your default controller in the admin’s config object. All of this customization is outlined in a tutorial.
The great thing with the new TGAdmin is that since it is based on Sprox, you can re-use the knowledge of sprox externally to the admin, and also bring any existing knowledge you may have about ToscaWidgets to the table. You can even use sprox outside of TurboGears for any other python web-based applications that you have that also use SQLAlchemy (read: Pylons).
To get back to the TurboGears discussion, a lot of folks don’t want everything that TG brings to the table. Some folks need different auth/auth models, have no use for a widget library, or even a relational database connection. TG can serve you too, and it’s still fast. Recently SourceForge moved over to TG for their main website. This requires a connection to MongoDB on the back end (read: no SQLAlchemy), zero ToscaWidgets, and a different authentication method. According to Mark Ramm, they had started with a different framework which lends itself to the Jinja2 templating engine. As far as I know, Mark was able to meet all of these goals, and eliminate 9/10ths of the server load they had with their previous system, written in something non-python. This just goes to show how flexible TG was to be able to meet all of these needs, and still provide a technically sufficient solution. Maybe he will comment more about this in the future.
Now, there are those folks out there who have decided to role their own. And WSGI definitely supports, if not encourages this behavior. But I just have to ask: Who’s agenda are you really fulfilling? Even if people like your code and you have a small following, are you helping to further the benefits of your projects, or your career in general? Are you helping your customer in the long run if you leave the project, or leaving them with a dead-end piece of code? Will they be able to find someone to replace you, should you decide to leave?
TG has an active community of folks who are willing and able to help get your contributions into the main code branch. We have embraced mercurial, and use it’s abilities to offer a lessened barrier for those who want to contribute. So, please, before you go make your own framework, see if you can help us make TG better, and your reward is that you now have a community of folks that will help maintain your work, even if you decide not to.
Basically what I am saying here is that TG has an even learning curve. Sure, as you get more involved, the problems will get harder, but you wont end up having to re-write half of the framework just to get it to do what you want. And, if you do find something that needs work to meet your needs, you have options to participate in the development of TG.
In 2008 TurboGears ran a sprint series to flesh out the 2.0 release. We successfully released in Spring of 2009, thanks to the hard work and dedication of a number of folks who saw the process through. This was a great opportunity for folks who wanted to be actively involved with a web framework to jump in. It is very likely in the coming months that TG 2.1 will see the same sort of community out-reach as we prepare to move from a development cycle, to a release one. So, look forward to that, find out how you can contribute, and by all means, give us feedback as to what you really want from a Best of Breed framework.

Your RSS feed seems corrupted. Every time you post something, what I see in my Google Reader is some sort of spam that I won’t copy-paste to avoid being marked as spam.
Your feed appears fine via Planet Python (also reading in Reader).
Great write up, I feel very much the same way about the TG stack. One minor correction, though: Genshi supports text-based templating as well as xml-based, something which isn’t obvious when you praise the non-xml approach of Mako.
@alex
Yes, Genshi does support text-based templating, and I have used it for JavaScript generation (i know this sounds insane). However, it requires you to learn a new set of syntax, and I am unsure of the performance. TG supports Genshi out of the box, and I am hoping that either chameleon.genshi will help the performance issues it has, or mako will become the default. Mako is 10x as fast as Genshi. Jinja2 also has similar performance to Mako, and is supported by TG2 in non-dotted template form. (Contributions welcome!)
Also, I wanted to mention that I started a project called Strainer with Tom Lynn, which does xhtml validation. I am going to release a piece of middleware in this package that you can stuff into the stack if you are using mako in development and want to ensure that your pages are generated using valid xhtml. For now, it’s mainly a testing tool: http://pypi.python.org/pypi/strainer/0.1a2
Simply a smiling visitor here to share the love (:, btw outstanding design. “Treat the other man’s faith gently it is all he has to believe with.” by Athenus.
Today, you can get fast acting Sex Pills which are natural and work quickly to increase libido, sexual staying power and help you enjoy better and longer lasting orgasms. These pills work for both men and women and will not only boost sexual health, they will also improve your overall level of wellness at the same time.The best penis enlargement pills must be able to ensure libido and sexual improvement & increased erectile function. They must prevent quick orgasms and faster climaxes to make the love last long and satisfy both men & women. They also raise physical energy and sexual stamina to next level.
It is already a known fact to every consumer that you pay for what you get so in order to purchase good quality Ray Ban shades for protection, you will entitled to a higher Cheap Ray Ban Wayfarer price . This kind of aviator style for men consists of a metal frame and is particularly easily obtainable in the particular broad array of hues . So, you must choose which size you Ray Ban Aviator Sunglasses want for each member of your family . Keep warm in an affordable way Other than the LRG Ray Ban Wayfarer cheap hoodies making you to look at the top of style and fashion, they are made out of very warm materials . Ray-Ban has always offered technologically ray ban sale advanced lenses for protecting your eyes from UV radiation, but today our advancements allow us to do even more . The brand Ray Ban Aviator Sunglasses uk eyewear is comfortable and built with safe materials . Know more at fakeraybansaviators . Apart from Cheap Ray Ban Aviator the conventional stores, online media is another best way to get such discount sunglasses.