Simon Willison’s Weblog

Items in Mar, 2008

Filters: Year: 2008 × Month: Mar ×

Sharing My Location Just the Way I Like It. Fire Eagle gets a great write-up from Brady Forrest over on the O’Reilly Radar. # 31st March 2008, 8:34 pm

Happy Run Some Old Web Browsers Day! jwz has recreated, the original home of the Mosaic Communications Corporation, using a snapshot from 21st October 1994 and a domain borrowed from current owner AOL. Also includes instructions on running 1994 Mosaic Netscape binaries under a modern Linux distro. # 31st March 2008, 5:54 pm

Django Development with Djblets. The Review Board team have extracted a library of useful Django utilities from their application. The first to be documented are helpers for reducing boilerplate in custom template tags. # 31st March 2008, 1:19 pm

Graphication. Andrew Godwin’s Python graphing library, based on Cairo. Responsible for the very handsome graphs on The Carbon Account. # 30th March 2008, 7:05 pm

The Carbon Account. The carbon calculator project I contributed to at Torchbox last year has launched, and they’ve made the code available as open source. # 30th March 2008, 7:04 pm

Interviewing Simon Willison about OpenID. I sat down with Vikram Kumar at Webstock to talk about OpenID, and the video is now online. # 30th March 2008, 6:40 pm

hash. Douglas Crockford: “Any HTML tag that accepts a src= or href= attribute should also be allowed to take a hash= attribute”—to protect against file tampering and (more importantly) provide a truly robust caching mechanism. # 30th March 2008, 6:34 pm

Exposing calendar events using iCalendar in Django. A simple abstraction around the vobject Python library. # 30th March 2008, 6:31 pm

Google’s excanvas only works in quirks mode for IE8. IE8 in act-as-IE8 mode disables VML but doesn’t implement canvas, so there’s currently no 2D drawing method for that browser. UPDATE: The problem is Google’s excanvas library, not IE8 disabling VML; see comments. # 30th March 2008, 6:24 pm

god—process and task monitoring done right. I have a long running animosity towards every process monitoring tool currently in existence; I’ll have to put this one through its paces and see if it sucks less. # 29th March 2008, 10:20 pm

Ian’s Acid 3, unlike its predecessors, is not about establishing a baseline of useful web capabilities. It’s quite explicitly about making browser developers jump—Ian specifically sought out tests that were broken in WebKit, Opera, and Gecko, perhaps out of a twisted attempt at fairness. But the Acid tests shouldn’t be fair to browsers, they should be fair to the web; they should be based on how good the web will be as a platform if all browsers conform, not about how far any given browser has to stretch to get there.

Mike Shaver # 27th March 2008, 1:35 pm

xPyUnit: Uniting in Python with XML reporting. Should be just the ticket for integrating Django’s testing framework with Cruise Control. # 27th March 2008, 12:35 pm

EC2: Introducing Elastic IP Addresses and Availability Zones. Big news from Amazon: EC2 can now provide static IP addresses which you can dynamically map to one of your instances, along with “availability zones” so you can specify that instances run in different data centres. Hosting an entire application on EC2 just got a whole lot more practical. # 27th March 2008, 10:33 am

Opera and the Acid3 Test. Screenshot shows 100/100 (live code or it didn’t happen!)—Opera’s codebase must be in extremely good shape to fix so many issues so quickly. # 26th March 2008, 10:47 pm

The real roadblocks to data portability on social networks. A bunch of smart questions posed by Facebook’s Dave Morin. This is why I think data portability is the wrong framing—moving data between sites is really hard. Importing social relationships between sites is much more viable (hence my interest in social network portability). Also, the complaints about systems sharing e-mail addresses are neatly addressed by using OpenID as the GUID for a user instead. OpenIDs can’t be spammed. # 26th March 2008, 7:53 pm

Setup mod_wsgi for Django and Shared Hosting. Tutorial by David Cramer; attached are useful comments from mod_wsgi author Graham Dumpleton. # 26th March 2008, 2:42 pm

FormWizard: multiple-step forms in Django. Available in recent trunk versions. # 26th March 2008, 1:23 pm

The Principles Of Project Management (via) Meri’s book has been published by SitePoint. # 26th March 2008, 12:12 pm

Djangofriendly (via) Ryan Berg’s attractive new site collecting ratings and reviews for web hosts that support Django. I’m still happily hosted on a bytemark VPS, which isn’t currently listed on the site. # 26th March 2008, 8:47 am

getElementsByClassName pre Prototype 1.6. Older releases of Prototype break in Firefox 3 and Safari 3.1 due to unsafe namespace management—getElementsByClassName is now a browser built-in but with different semantics to the Prototype method of the same name. Prototype 1.6 is fine. # 26th March 2008, 8:28 am

Better Use of Newforms. Two really neat techniques: using an inclusion tag template to DRY your custom form templates, and adding what-to-do-next methods to the form class itself to cut down on the application code in your views. # 25th March 2008, 10:53 pm

An OpenSocial Foundation. “Today we are pleased to announce that Google is joining together with Yahoo! and MySpace in the creation of a non-profit foundation for the open and transparent governance of the OpenSocial specifications and intellectual property.” Good move; I’d personally love to see this happen with Google Gears. # 25th March 2008, 2:51 pm Steve Marshall’s Fire Eagle python binding on GitHub. # 22nd March 2008, 11:57 pm

PownceFS. Not a joke: it’s a Fuse filesystem (written in Python, using OAuth for authentication) which exposes a directory for each of your friends on Pownce containing the files that they have uploaded. # 22nd March 2008, 11:18 pm for (via) I’ve published the file from as an example of simple Fire Eagle integration with a Django application. # 22nd March 2008, 7:23 pm, OAuth and Fire Eagle

I’m pleased to announce It’s a simple site that does just one thing: show you a list of the five Wikipedia pages that are geographically closest to your current location. It’s designed (or not-designed) to be used mainly from mobile phones.

[... 1147 words]

Idea: A new typography term (via) keming. noun. The result of improper kerning. # 22nd March 2008, 1:41 pm

The Perl community has a long-standing love/hate-affair with making changes that impose “spooky action at a distance”. They call it “black magic” and it is generally considered it a last resort. Black Magic that makes GLOBAL changes to things like inheritance is often characterised as being “Octarine” (see disk world novels), because it tends to work ok when there’s only one person doing it, but start to mix a few together and KABOOM!

Adam Kennedy # 22nd March 2008, 12:28 am

Monkeypatching is Destroying Ruby (via) Deliberately provocative title, but makes a well considered case for restrained use of monkey patching in Ruby. Cultural norms around monkey patching seem to me to be one of the core differences between the Ruby and Python communities. # 22nd March 2008, 12:27 am

Version 2.0 of mod_wsgi is now available. Includes features that should make Python (and Django) on shared hosting much easier: a non-root user can touch their WSGI script file to restart just their application’s daemon processes when they make changes and Python virtual environments are supported to allow different versions of packages without interference. # 21st March 2008, 1:23 pm