E-Scribe News : a programmer’s blog

About Me

PBX I'm Paul Bissex, and e-scribe.com is my consulting business. I build web applications using open source software, especially Django. I teach photographers web design and professional skills. In the '90s I did graphic design for newspapers and magazines. Then I wrote technology commentary and reviews for Wired, Salon.com, Chicago Tribune, and lots of little places you've never heard of. Feel free to email me.

Book

Python Web Development with Django I'm co-author of "Python Web Development with Django", an excellent guide to my favorite web framework. Its strong points include an introduction to Python, and better coverage of Django 1.0 than nearly anybody else. Published by Addison-Wesley, it is available from Amazon and your favorite technical bookstore as well.

Colophon

Built using Django, served by Apache and mod_wsgi. The database is SQLite. The operating system is FreeBSD, on a VPS hosted at Johncompanies.com. Comment-spam protection by Akismet. Vintage topo imagery from the Maptech archive. The markup engine is Markdown.

Pile o'Tags

Stuff I Use

Akismet, del.icio.us, Django, dpaste.com, Emacs, FreeBSD, Freenode, jQuery, LaunchBar, MacPorts, Markdown, Mercurial, OS X, Postfix, Python, SQLite, Subversion, TextMate, Trac, Ubuntu Linux, wmii

Spam Report

At least 67564 pieces of comment spam killed since January 2008, mostly via Akismet.

TurboGears progress, or, bring on the CRUD

A while back I posted a link-festooned introduction to TurboGears. In the last six weeks, there's been evidence of a lot of progress; because TurboGears makes excellent use of already existing projects, it also benefits from the developer momentum in those projects.

Recently it looks like there's been a special focus on adding CRUD (create, read, update, delete) functionality. At this point it's pretty well known that this is a core strength of Django, and I think Django's admin tools will probably remain the gold standard for a long time. As the TurboGears community ponders CRUD options, I wonder if the idea of adapting Django's admin itself will come up. (Django is a BSD-licensed project, so there's no licensing obstacle.) I don't know enough about the differences between Django's ORM and SQLObject to say whether this idea is feasible.

TurboGears, with its Rails-like emphasis on web applications rather than "content management," may end up eschewing a full-blown admin suite. But having started work on my first production Django app (more on that soon) I know that anyone who experiences the Django admin tools is going to measure all others against them, so if TurboGears starts down this path I'm very curious to see where they end up.

Sunday, November 6th, 2005
+
3 comments

Comment from Ian Bicking , later that day

I don't think the Django admin is very well documented or made public in a way that would facilitate this kind of reappropriation (though I've never specifically looked). Certainly it's a good API and interface to look at, and take inspiration from, but I think the implementation is all about details, so the implementation itself wouldn't benefit from adopting Django's code.

Comment from Lior Gradstein , later that day

What about Catwalk? I think it's only in SVN for now. It's like Django admin, even better, and easy to install.

Comment from Paul , later that day

Ah, yes. In fact, it was noticing [Catwalk][1] that got me thinking about this in the first place, and then I completely forgot to mention it in the post! I can't comment on Catwalk from a user perspective, but it looks good, and I think it's smart of Kevin to have embraced it.

Ian, you're probably right that Django's influence here may be limited to inspiration. I do hope that extends to neat but currently somewhat obscure features like the [live documentation][2].

[1]: http://www.checkandshare.com/catwalk/
[2]: http://code.djangoproject.com/ticket/606

Post a comment

Thanks for reading! Please note: Your comment will not appear until approved, which may take a few hours or more. Spammers will be torpedoed.


(Will not be shared)

(Optional)