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-authoring a book, "Python Web Development with Django", with Jeff Forcier and Wesley Chun. It will be published by Prentice Hall in July 2008, but is available for pre-ordering on Amazon now.
This site is built on a fresh trunk checkout of Django, running on Python 2.5.1, 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.
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
Copyright 2008
by Paul Bissex
and E-Scribe New Media
As of yesterday, Django has changed its model syntax. So code that formerly looked like this:
class Comment(meta.Model):
fields = (
meta.TextField('comment', 'comment', maxlength=3000),
meta.CharField('headline', 'headline', maxlength=255, blank=True)
)
will now look like this:
class Comment(meta.Model):
comment = meta.TextField(maxlength=3000)
headline = meta.CharField(maxlength=255, blank=True)
Sweet. This brings Django more in line with the Rails philosophy that syntax matters. Making things easier for the developer to type, remember, and read can only bring good things.
This change was also a nice demonstration of 1) the incipient Django community's energy and smarts, 2) the core Django developers' willingness to let that community take the wheel, and 3) the benefits of taking the thing public before 1.0 so that good but API-breaking changes like this one can be implemented with minimal pain. Those guys are working hard.
Read the full instructions and watch the screencast to learn more about the change.
Comments use Markdown syntax. Your comment will not appear until approved, which may take a few hours or more. Spammers will be torpedoed.
The iPhone keyboard doesn't suck
Python one-liner of the day
7 comments
How not to advocate via Google Code
2 comments
99 problems
3 comments
bitmonk
Obscure "svn mv" problem solved
88 days ago
Charlie
Book news: Rough Cuts and Amazon
89 days ago
Simon Griffee
Django Mercurial mirror tweaks
106 days ago
Jason Calleiro
From PHP to Python
107 days ago
Yuli
dpaste.com
110 days ago
bruce
Neat Python hack: infix operators
114 days ago
David Reynolds
The original Lego Star Wars
122 days ago
At least 36612 pieces of comment spam killed since January 12th. Thanks are mostly due to Akismet.