The Old Blog: The Archive
Note: This archive lists all the old articles on the
website. The new archives are available on the
front page
442 old posts; each is a
comment, so you can see where the action is. Was.
2007: June
April
March
February
January
2006: December
November
October
September
August
July
June
May
April
March
February
January
2005: December
November
October
September
August
July
June
May
April
March
February
January
2004: December
November
October
September
August
July
June
May
April
March
February
January
2003: December
November
October
September
July
2007: June
What I've Been Up To
2007: April
Python's Makefile
lxml Transformations
2007: March
On form libraries
PyCon 2007 wrapup
RESTful transactions (a speculation)
2007: February
Python packaging
Going to PyCon 2007
Full Stack vs. Glue
TurboGears and Pylons (a technical comparison)
An Easier Legacy
2007: January
WSGIRemote now HTTPEncode
2006: December
Writing good (dynamic) code
Evaluating WYSIWYG editors
"Grassroots organizing is about building power"
Respecting the whole person
2006: November
Transit and energy intensity
minimock
WSGI
Review: Beyond Java
2006: October
PloneConf 2006
Paste 1.0
HTTP proxying questions
WSGI and paste.proxy
WSGI and Dispatch
Nonlinear learning, the nonlinear internet
workingenv.py update
Zope 3 Critique
PyWordpress
OLPC, Python...
2006: September
In NYC
Common Message Runtime
Sun Comes Lately
2006: August
MP3 player?
Why Small Packages Matter
2006: July
WPHP
Getting Things Done: Tools?
Microformats, Feeds, and Blogs
Python FastCGI Server?
2006: June
Decomposing Document Generation
Atom, threading, etc.
New Job, Open Plans
HTTP verb distaste
wsgi.org
Neutral Templating
2006: May
Javascript packaging thoughts
"Discuss"
Templating via dict wrappers
Stupid Abundance
2006: April
Introducing HTConsole
FastCGI SCGI HTTP
HTTP(ish) all the way down
workingenv revisited
Javascript Doctest
More Python, Education
Python, Education, Logo
REST in more than one request
Re: Ruby and Python Compared
Introspecting expressions in py3k
This blog is maybe okay now
Functional Python
paster and scripts
2006: March
DVCS Mini Roundup
Bazaar-NG, try 1
Behavior Driven Programming
Constraints and Continuations
Packaging Python
working-env.py
On the subject of mass transit
Python Marketing
Python IDE Consolidation
Cherrypy and RhubarbTart
A Brief Defense of Significant Whitespace
Working Environment Brainstorm
PyCon 2006
2006: February
SQLObject 2
Towards PHP
Comments on again...
Orthogonality is Pretentious
My Python 4k
Branching Practices
A Browser IDE
site-packages Considered Harmful
Blog software
Kludging with Supervisor
Do It Yourself
2006: January
My CherryPy Rant
TracPaste & CherryPaste
DjangoPaste
Pastifying CherryPy
Extending overlays
Opening up templates
Applications! Applications! Applications!
An Ideal Web Development Environment
Python Documentation Comments
Training for Failure
2005: December
Paste App Installation
There's so much more than Rails
Agile Content Development
More Small Apps
XML Processing
Other Editors?
py.std
The unbridled humanity of APIs
Contextual Validation
Reddit etc.
Doc Comments
More on Python Metaprogramming
Javascript plaintext editing
Bandwagon leaving from lot C
2005: November
Dynamic __doc__
Twill in Javascript
Logo Stickers Are Awesome
Best of the web app test frameworks?
DRM Explained
Templates Shmeplates
The UnZen of UnPython
What is Paste, yet again
Shebang
Ajaxy Exception Catching
Daemon Best Practices
Friendship and hand holding
Magic and Backtracing Code
2005: October
Sad conflicting packages
Repetition Javascript Library
Google at it again
Off and Away
First Try at Generic Functions
Little Apps: Decouple First
Little Apps Instead of Little Frameworks
Zope 3 and Modeling
Concurrency and Processes
Events and SQLObject
Releases Releases Releases
2005: September
Testing Install Procedures
Alternate Python Install Directory
Commandline Acceptance Testing
2005: August
Static Caching with mod_rewrite
SQLObject 0.7b1
Paste Deployment 0.1
JSLint from the Command Line
Ruby, Python, "Power"
FormEncode 0.2
August ChiPy (and the stdlib)
Towards a More Perfect Version Control
Exploring the Outer Reaches of Pointlessness
Book Club
Centralized vs. Decentralized 2
Distributed vs. Centralized Version Control
String hash vs. Unicode hash
Connectalize Me!
Python Unicode Doesn't Really Suck
What's Up With SQLObject Today...
Why Python Unicode Sucks
The Illusive setdefaultencoding
Do I hate Unicode, or Do I Hate ASCII?
2005: July
Dave Bicking for City Council!
Composing WSGI Apps
Ideal Web Application Layout
Filebrowser Example
Apache Authentication and Single-Signon
Accidental WHAT-WG Implementing
It's Not Another Damn Framework
Help me please: Apache auth
Blogs and Jobs
A More Perfect App Server: WSGI Transaction Manager
Handling a Diversity of Frameworks
Yet Another Framework: Wareweb
property decorator
The PHP Ghetto
Prototype.js and Object.prototype
Reducing boilerplate code in __init__
On ethanol
2005: June
The Tens of Commandments
Ajax Experimentations: Filebrowser
What I've Been Doing...
Functional testing in Paste
2005: May
Building testability into web applications
Give us an up-or-down vote
GWA and RFC 2616
What is Paste
My First Ajax App
Breaking the Web We Have
2005: April
Ruby Meetup
Python Paste News Blog
More thoughts on Ruby on Rails
WSGIKit is dead; long live Python Paste
More on single-signon
Being Unitized
Connotations of the ether
What can WSGIKit do for you?
What is WSGIKit?
String Interpolation
WikiWiki on a Break
The Concurrency Model Debate
WSGIKit Tutorial
Mailing list archivers
SQLObject Tools
More on Multimethods
2005: March
Distributing dependencies
What Really Makes Rails Work
Oh to be an artist blogger...
Why Web Programming Matters Most
WSGIKit at PyCon 2005
Schevo and Durus
PyCon: Optional Static Typing
Sprint Day 2
This Just In...
Sprint Day 1
ZPTKit 0.1
Further FormEncode Work...
Fixing Apache Authentication
Job Posting: Web Interface Specialist
First ChiPy Sprint: PyPI
My Tripod of Web Testing
Starting with Selenium
Playing with decorators and blocks
2005: February
Web application acceptance testing
XML and doctest
My first bit of ElementTree
Another plan: SQLObject 0.7
FileSystemView vs. LocalFS
Zope to LocalFS
Strange and unprofessional
The long tail of comments
Did he mention workflow?
Re: Falcon
Review: mp3tunes.com
Microsoft Interoperability
Of Syntax and Environment
A theory on form toolkits
WSGIKit/WSGI/Webware Sprint
A WSGI reference library
Fixes What's Wrong With Python
2005: January
From Webware to WSGIKit
Like a school play
"Tell me what to do, please"
Objects, Messages, Erlang
THE and LEAP
THE vs. Emacs
SQLObject 0.6.1
I dream of PyMoz
Good catch all exceptions
Comments enabled
Re: Theory and Practice
Coding Metaphors
wsgikit.config
In Commemoration of Martin Luther King Jr.
Big Blocks
ROM vs. ORM
Gmane blog interface
Show-embedded Bookmarklet
PEP 246, as-a
htmlfill
Where Next For FormEncode
I Hate Web Folders
On Toilets and Living Standards
A Declarative Syntax Extension
Already under our noses?
Now with Comments
People need to chill
2004: December
Re: Optional Static Typing
The Challenge Of Metaprogramming
Job Position: System Administrator, Chicago
Explaining Decorators
Respecting The Programmer
Because Unanswered Problems Are Always Hard
My New Blog
2004: November
Python, metaprogramming, and macros
py.test
A Conservative Metaclass
Four More Years
Urban Archipelago
WSGIKit
Photo Printing
Thoughts on Ruby on Rails
Geography
No silver lining, but maybe a positive note...
The first Wednesday after the first Tuesday after the first
Monday
First Tuesday after the First Monday
The Two Sides
2004: October
Sigh... what matters...
Iraq and Ulterior Motives
Anti-Intellectualism and Politics
Subversion Maintenance
Little modules
Even more significant whitespace
Where are the log analyzers?
On Kerry
WSGI Implementations
An Ideal Python Web Programming Environment
Versioned Imports
Thinking about the Python Standard Library
2004: September
WSGI WebKit
Code Pickiness
XML vs. generic serialization
Book Idea: Python Optimization
Apple, Microsoft, Some Random Russian Company
2004: August
Server Setup
WSGI Sample Apps and Middleware
A WSGI Stack
SQLObject and Me
WSGI Middleware
Apache the Application Server
Python Web Server Gateway Interface
Static Code Analysis
Doctest and documentation
Still Pretty Cheap Debugging Trick
Javascript Slideshow
More on decorators
@decorator
Dealing with Context
Re: Favour Error Prevention over Error Detection
2004: July
PHP and Application Evolution
On Campaign Finance Reform
Successful ORM use
Naming Conventions
And Boo Makes Three
Descriptor Nit
Easy Read-Only Attributes
Continuations: a concrete approach
System Software
2004: June
The Economics of Flash (or why you shouldn't like it)
In Praise of the Web UI
On the subject of the automobile
Re: Python templating languages
Weapons of Mass Instruction
PyPI and small code
Ah, for a decent bit of Javascript!
Threat Model
Del.icio.us links
WHAT-WG
Is W3C a loving mother?
Zombie Bugs
Homebrew encryption
Syndication: boring war where only egos are hurt
Metric fun
2004: May
Purple Bookmarklet
IE Sucks
Choosing Sides
Persistent Persistence
More On Compound Documents
Building an Intuition
Invert this
Pain in the Butt
Advancing Web Application UIs
Mozilla developers smarter than IE developers
I'm unhappy
Chicago Python Users
2004: April
Another web app pattern
Zope 2, Zope 3, and the big empty space between
Rewriting and Refactoring
Nummy ctypes
WYSIWYG Wiki
Inserting into textarea at cursor position
Movie: Whale Rider
Feminist Computer Science 2
Feminist Computer Science
Wiki feature of the day
Dark Side of Grammar
A Flexible, Reusable Greeting Framework
New feature for the day
Further Wiki Enhancements
New Wiki
Spiffy Javascript...
Z SQL Rant
Java Usability Recap
Bundles Schmundles
fit.c2.com
2004: March
Concurrency: looking for positive models
Initial thoughts on Prothon
Anti-usable libraries...
GNOME and the Managed Runtime
PyCon and all that jazz
Interfaces: Signatures and Semantics
Frameworks, Libraries, Conceptual Scalability
DataTest 0.2
What does "ahead of your time" mean?
Latent interfaces
Where Smalltalk Went Wrong 2
Where Smalltalk Went Wrong
SQLObject 0.5.2
ezsqlobject
Static publishing debate
2004: February
DataTest
State of Cryptography
Little form display tweaks
PyCon Buzz!
Hash table accused of impersonating OO
2004: January
Style-insensitive names
path module
Python nit, chapter 3
SQLObject API redesign
64 bit immediates in Python
In Commemoration of MLK Jr.
Python nit, chapter 2
A Python Poka-Yoke
2003: December
Offline
Static recap
ESI caching
Referential identity (appropriate abstraction)
XHTML rant: semantic my ass!
CMS and static publishing
Kernel, meet Python
Pen mightier than sword, yet scissors beat paper
I'm no longer a free bird...
Sometimes other people's failure makes me feel good about myself
2003: November
mod_auth_remote
Guidance, Navigation, UI
Bayesian Dark Side
PyLogo
Web Application Patterns: Status Notification
UIs of the future: Ion, Emacs
Squeak/Morphic Demo
The Future: Longhorn Shmonghorn
Twisted and Threads
It had to start sometime...
More alike than different...
% interpolation
Javascript Convert...?
Standalone WebKit
Security Models
SQLObject 0.5
2003: October
GIL of Doom!
Smart vs. Dumb Templates
Kata 19: an optimization anecdote
HTML spellcheck
Python nit, chapter 1
Web-SIG
So many accessors...
Concurrency-Oriented Python
Null-Terminated Strings Strike Again!
Speed is a Process, not an Attribute
Self Take Two
Adaptation vs. Magic Methods
Unittest Rant
2003: September
Self and Prototype-based Programming
Command-Line Zope
ORM vs. SQL
Declarative Classes
Metaclass fun
2003: July
Testing considered harmful