I love Django management commands.
For dpaste.com I’ve written several management commands for things that I don’t need a web UI for, like:
expire - delete expired pastes (invoked by cron) expunge - manage TOS violations like spam stats - useful metrics on the current corpus of pastes, and on user activity In running the site I also use management commands from my django-blocklist app, for tasks like deleting expired entries (via cron) or generating reports.
Recently I switched my work environment from OS X to Ubuntu (a post on that project is in the works).
For years I’ve been using the standard Apple Keychain app, which has several points in its favor: it’s included with the OS, it integrates well with a lot of applications, and is not trying to “freemium” me into a paid tier. However, it’s OS X only, which meant I had to find something new.
Eight years ago, I launched a simple pastebin site written in Django.
In those early Django days I spent a lot of time in the #django IRC channel. I thought we should have a pastebin that knew how to correctly colorize our code, and which was written in our framework to boot. So I wrote one. Eventually its URL ended up in the channel topic, then in the Django source code itself.
A little-known bit of trivia about our book, Python Web Development with Django: we wrote the manuscript in Markdown.
I think it was my idea. One of the major motivations for using a text-based format – versus the unfortunate de facto standard, Microsoft Word – was integration with good developer tools and workflow.
Our manuscript and all our project code was in a Subversion repo, so each author always had the latest updates.
Today I’m launching my first Google App Engine site. While I built it largely to play with GAE, it is also useful in its own right (I like to think so anyway). It does two different things:
Link shortening without redirection. Put in a godawful long Amazon link and get back a shorter Amazon link. Works with eBay and a few others too. I welcome recipes for other sites. (For the programmers in the audience, which is most of you – yes, the processing is via regular expressions.
I move between a couple different computers regularly: my old 12" PowerBook and the 15" MacBook Pro my job provides me with. Like all multi-computer users I periodically bump up against the challenges of what files (and versions) are where, especially when there’s work in progress.
To further complicate things, I also have an extra laptop running Ubuntu. And sometimes I just SSH to my web server from somebody else’s machine.