Simon Willison’s Weblog

Subscribe

January 2008

Jan. 23, 2008

If Web authors actually use this feature, and if IE doesn't keep losing market share, then eventually this will cause serious problems for IE's competitors — instead of just having to contend with reverse-engineering IE's quirks mode and making the specs compatible with IE's standards mode, the other browser vendors are going to have to reverse engineer every major IE browser version, and end up implementing these same bug modes themselves.

Ian Hickson

# 10:07 am / ian-hickson, hixie, internet-explorer, ie8, xuacompatible, web-standards, browsers

Photo Matt: Act Two. Automattic is an excellent case-study of building a business on top of an open source project.

# 10:42 am / open-source, wordpress, automattic, matt-mullenweg

GeoNames: missing countries. United Arab Emirates and a few other countries are missing from the GeoNames XML set I used to seed Django People. I’ve added UAE by hand; I’ll add the others as soon as I have time.

# 10:45 am / geodata, geonames, django-people, django

Legacy. James Bennett has what I think is the most interesting analysis of the X-UA-Compatible header to date.

# 2:14 pm / james-bennett, xuacompatible, internet-explorer, ie8, browsers, web-standards

Sunsetting Quirks Mode. Apparently proper standards support in IE (or at least the IE8 renderer) will be triggered by the HTML5 doctype, providing an alternative to those who don’t wish to pollute their markup with an IE-specific meta tag.

# 2:56 pm / html5, doctypes, browsers, xuacompatible, internet-explorer, ie8, sam-ruby

Cashing in the Bling. Pownce is open to the public, and Leah has written up some neat friend importing tricks that take advantage of the pre-existing “profile bling” links to profiles on other sites. I hope to do something smart with the profile links on Django People in the future, although I’m not convinced the site would benefit from a “friends” mechanism.

# 3:17 pm / pownce, portablesocialnetworks, bling, django-people

Caching Layer for Django ORM. Interesting extension to Django’s ORM that adds automatic caching of querysets and smart cache invalidation.

# 3:18 pm / django, orm, david-cramer, caching, python, ormcaching

Django People: Colophon. I’ve added a colophon to Django People, something I try to do for all of my personal projects.

# 4:58 pm / colophon, django-people, python, django

Troubleshooting Memory Usage. Useful for getting the most out of a VPS.

# 6:52 pm / vps, hosting, memory

Dynamic Time-Travel Maps. Absolutely beautiful dynamic implementation of Chris Lightfoot’s Time Travel project, put together by Stamen Design and MySociety. Drag sliders to specify your preferred commute and housing budget to see where in London you can live.

# 9:06 pm / chris-lightfoot, timetravel, mysociety, stamen-design

Introducing EveryBlock. EveryBlock launched! Adrian Holovaty, Wilson Miner, Paul Smith and Daniel X. O’Neil’s startup which answers the question, “What’s happening in my neighborhood?” Cities covered by the launch are Chicago, New York and San Francisco.

# 9:56 pm / everyblock, django, adrian-holovaty, wilson-miner, paul-smith, daniel-x-oneil, san-francisco, chicago, new-york

Jan. 24, 2008

Django People: OpenID and microformats

In hindsight, it was a mistake to launch Django People without support for OpenID. It was on the original feature list, but in the end I decided to cut any feature that wasn’t completely essential in order to get the site launched before it drowned in an ocean of “wouldn’t-it-be-cool-ifs”.

[... 626 words]

flickr.places.findByLatLon. New API method for Flickr Places. If only Flickr could return a bounding box for each place...

# 1:05 pm / flickr, apis, geo, flickrplaces

Canon EOS 450D / Digital Rebel XSi. Two weeks after a buy I EOS 400D. Sigh. It’s not out until April, but the big new features are a 3" LCD and "live view" mode. The kit lens now has image stabilisation.

# 2:48 pm / photography, eos450d, digitalrebel, eos400d, canon, cameras

Jan. 25, 2008

Community sites on Django People. Small new feature: I can now add community sites to individual country pages. If you know of any regional community sites that I’ve missed, let me know in a comment or by e-mail.

# 12:40 am / django-people, community, brazil, python, django

Usability Disaster Story. A strange combination of usability oddities culminated in 95% of visitors to the Mono website downloading a two year old version by mistake.

# 6:36 am / mono, usability, migueldeicaza

In a recent [ASP.NET] MVC design meeting someone said something like "we'll need a Repeater control" and a powerful and very technical boss-type said: "We've got a repeater control, it's called a foreach loop."

Scott Hanselman

# 6:59 am / aspnet, aspnetmvc, microsoft, scott-hanselman

Symfonians (via) Similar concept to Django People but for Symfony developers—coincidentally launched within the past week as well.

# 4:15 pm / symfony, community, php, django-people

Jan. 26, 2008

Blob Sallad—canvas tag and JavaScript physics simulation experiment. Björn Lindberg provides a detailed code walkthrough of his brilliant canvas demo, inspired by Loco Rocco.

# 12:25 pm / locorocco, javascript, canvas, opera, bjornlindberg, tutorial, physics

Django sub-reddit. Reddit are trialling the ability to create custom sub-reddits, so I put one up for Django links and discussions.

# 11:56 pm / django, reddit, python, community

Linkherd—django. Linkherd is a Django-powered startup that offers sub-reddit style functionality. I’ve set up a Django site there as well.

# 11:58 pm / django, python, community, linkherd

Jan. 28, 2008

Google Maps Clusterer. I’ve looked at a few clustering libraries for Google Maps, but this one seems to have the nicest API.

# 3:07 pm / clustering, google-maps, maps

Jan. 29, 2008

Since 9/11, approximately three things have potentially improved airline security: reinforcing the cockpit doors, passengers realizing they have to fight back and - possibly - sky marshals. Everything else - all the security measures that affect privacy - is just security theater and a waste of effort.

Bruce Schneier

# 12:14 pm / bruce-schneier, privacy, security, securitytheatre

On the design of the first-run assistant. NetNewsWire’s Brent Simmons explains the in-depth thinking behind the new first-run assistant.

# 12:16 pm / usability, netnewswire, brent-simmons

iTimeMachine. Enables Time Machine to see network drives (a ReadyNAS NV+ for example). There’s also a defaults setting but it didn’t seem to work; this did.

# 11:33 pm / timemachine, backups, itimemachine, readynas, mac, osx

Jan. 30, 2008

Monkeypatching idioms—elegant or ugly? Guido offers a decorator and a metaclass as syntactic sugar for monkeypatching existing Python classes.

# 12:39 am / metaclasses, decorators, python, guido-van-rossum, monkeypatching, idioms

Python Web Framework on the JVM. An update on both Jython and the Django on Jython project—it looks like Jython 2.5 isn’t that far away.

# 2:06 am / django, python, jython, java, jvm

Mono Beta Launch—Official Linden Blog. The Mono VM is now in public beta testing running LSL scripts in Second Life. The first step on the road to IronPython support?

# 2:19 am / secondlife, ironpython, python, lindenlab, virtualmachines, mono, lsl