My name is Paul Bissex, and e-scribe.com is my consulting business. I build web applications using as much open source software as possible. From September to June I teach web design and other important non-photographic professional skills to photographers. In the '90s I wrote technology commentary and reviews for magazines, newspapers, and web publications, including Wired, Salon.com, FamilyPC, the late lamented Web Review, and the Chicago Tribune. Feel free to email me.
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.
This runs on Django, served by Apache and mod_python. 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.
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
At least 59052 pieces of comment spam killed since January 2008, mostly via Akismet.
Today I updated my Django play/development environment to the new magic-removal branch, and migrated my proto-wiki as an exercise. Following the RemovingTheMagic instructions on the official Django wiki made it fairly easy. (I added some notes on dealing with custom template tags.)
This branch is about more than cleaning up some of the needlessly clever bits found in earlier implementations; it also has some really nice syntax refinements. Compare this:
reporters.get_list(fname__exact='John', order_by=('lname',))
to this:
Reporter.objects.filter(fname='John').order_by('lname')
No contest. I'm loving these refinements so much I almost don't want to get to 1.0!
As someone who is going to take another look at django because of this removing the magic, have you released the updated source to proto-wiki?
Andrew: I have now!
Luke: I hadn't seen that, thanks. A little verbose, but I definitely prefer it to the old double-underscore-delimited magic. Clearly I have some reading to catch up on.
This stuff is nice... I'm not looking forward to rewriting all my code though...
Thanks for sharing the code, I live the simplicity of Django/Python driven websites!
Comments use Markdown syntax. Your comment will not appear until approved, which may take a few hours or more. Spammers will be torpedoed.
SPF-enabled spam domains
1 comment
Chess via iPod
2 comments
Aesthetics and computation
2 comments
robots.txt via Django, in one line
4 comments
zoot
Offsite, online backup: rsync.net
17 days ago
Craig
Bicycle Repair Man bundle for TextMate
25 days ago
Fazal Majid
SPF-enabled spam domains
30 days ago
Adrian Holovaty
Chess via iPod
54 days ago
Alexander Kahn
Aesthetics and computation
59 days ago
Copyright 2009
by Paul Bissex
and E-Scribe New Media
The new syntax is rather nice. Have you discovered things like this:
? It does what you expect, and does it lazily (a single DB query). Sweet.