Simon Willison blogs at http://simon.incutio.com/ xml

uuidd.py

25/05/2009 @ 22:00 UTC

Simon Willison : uuidd.py - uuidd.py. Neat implementation of an ID server from Mike Malone—it serves up incrementing integers over a socket (using Python’s asyncore for fast IO) and records state to a file only after every 10,000 IDs served, so most of the time it’s not read

On the Anonymity of Home/Work Location Pairs

24/05/2009 @ 14:00 UTC

Simon Willison : On the Anonymity of Home/Work Location Pairs - On the Anonymity of Home/Work Location Pairs. Most people can be uniquely identified by the rough location of their home combined with the rough location of their work. US Census data shows that 5% of people can be uniquely identified by this combinatio

JS-Placemaker - geolocate texts in JavaScript

23/05/2009 @ 01:00 UTC

Simon Willison : JS-Placemaker - geolocate texts in JavaScript - JS-Placemaker—geolocate texts in JavaScript. Chris Heilmann exposed Placemaker to JavaScript (JSONP) using a YQL execute table. Try his examples—I’m impressed that “My name is Jack London, I live in Ontario? returns just Ontario, demonstrating

Introducing Yardbird

23/05/2009 @ 00:00 UTC

Simon Willison : Introducing Yardbird - Introducing Yardbird. I absolutely love it—an IRC bot built on top of Twisted that passes incoming messages off to Django code running in a separate thread. Requests and Response objects are used to represent incoming and outgoing messages, and Django

Muck Rack: Links posted by Guardian Journalists on Twitter

22/05/2009 @ 22:00 UTC

Simon Willison : Muck Rack: Links posted by Guardian Journalists on Twitter - Muck Rack: Links posted by Guardian Journalists on Twitter. I’m rather impressed by the Sawhorse Media collection of Twitter aggregation sites (Muck Rack aggregates journalists)—a simple idea very well executed. Here’s a nice example—this page s

Flickr Shapefiles Public Dataset 1.0

22/05/2009 @ 19:00 UTC

Simon Willison : Flickr Shapefiles Public Dataset 1.0 - Flickr Shapefiles Public Dataset 1.0. Another awesome Geo dataset from the Yahoo! stable—this time it’s Flickr releasing shapefiles (geometrical shapes) for hundreds of thousands of places around the world, under the CC0 license which makes them ess

philgyford : Code: Flickr Developer Blog » Flickr Shapefiles Public Dataset 1.0 - I keep seeing cool code stuff whizz by and I'm not making anything with it. May need to ringfence time from other commitments just to *do* something.

joshua : Code: Flickr Developer Blog » Flickr Shapefiles Public Dataset 1.0

Fake Reviews. Now now kids, play nice...

22/05/2009 @ 01:00 UTC

Simon Willison : Fake Reviews. Now now kids, play nice... - Fake Reviews. Now now kids, play nice.... Not at all surprised to hear this—nefarious iPhone app developers (in this case the team behind “London Tube?, an inferior version of Malcolm Barclay’s marvellous “Tube Deluxe?) have been caught leav

Dinky pocketbooks with WebKit transforms

22/05/2009 @ 01:00 UTC

Simon Willison : Dinky pocketbooks with WebKit transforms - Dinky pocketbooks with WebKit transforms. Nat used 90 degree CSS transform rotations in print stylesheets for WebKit and Safari to create printable cut-out-and-fold pocketbooks from A4 pages. Very neat.

wearehugh : Dinky pocketbooks with WebKit transforms | Natalie Downe

TwitterAlikeExample - redis

22/05/2009 @ 00:00 UTC

Simon Willison : TwitterAlikeExample - redis - TwitterAlikeExample—redis. Excellent example of how you design a moderately complex system against a scalable key-value store (in this case redis). Most “how to build Twitter? code examples fail to address the hard problem of scaling user inboxes,

bmilleare : Retwis (Redis + PHP) - A simple Twitter clone using PHP + Redis. Very nice example showcase app.

Playground Blues / Working with Python and RabbitMQ

21/05/2009 @ 23:00 UTC

joshua : Playground Blues / Working with Python and RabbitMQ

Simon Willison : Working with Python and RabbitMQ - Working with Python and RabbitMQ. Nathan Borror eliminates the boilerplate needed to talk to RabbitMQ (or any other AMQP queue server) from Python.

AWS Import/Export: Ship Us That Disk!

21/05/2009 @ 12:00 UTC

Simon Willison : AWS Import/Export: Ship Us That Disk! - AWS Import/Export: Ship Us That Disk!. Andrew Tanenbaum said “Never underestimate the bandwidth of a station wagon full of tapes hurtling down the highway?, and now you can ship your storage device direct to Amazon and have them load the data in to

Google Maps Data API

20/05/2009 @ 22:00 UTC

Simon Willison : Google Maps Data API - Google Maps Data API. I’m disappointed by this one—it’s really just a CRUD store for the KML files used in Google MyMaps. It would be a lot more useful if it let you perform geospatial calculations against your stored map data using some kind of q [via]

Yahoo! Placemaker

20/05/2009 @ 22:00 UTC

Simon Willison : Yahoo! Placemaker - Yahoo! Placemaker. Really exciting new API from Yahoo!—Placemaker accepts a block of text (or a URL to HTML or RSS) and extracts and returns geographical locations mentioned in the text. I just ran my djng blog entry through it and it pulled out “Pr

Andy Baio : Yahoo! Placemaker, extract world locations from unstructed content - also, Yahoo released the huge GeoPlanet/WOE placename database under a CC license

philgyford : Yahoo! Placemaker_ Beta - YDN - Parses text and extracts any recognisable locations. (via Simon Willison)

Yahoo! Geo: Announcing GeoPlanet Data

20/05/2009 @ 22:00 UTC

Simon Willison : Yahoo! Geo: Announcing GeoPlanet Data - Yahoo! Geo: Announcing GeoPlanet Data. The Yahoo! WhereOnEarth geographic data set is fantastic, but I’ve always felt slightly uncomfortable about building applications against it in case the API went away. That’s not an issue any more—the entire

Offline Processing on App Engine: a Look Ahead

20/05/2009 @ 13:00 UTC

Simon Willison : Offline Processing on App Engine: a Look Ahead - Offline Processing on App Engine: a Look Ahead. A session at IO next week: “App Engine was designed to run request-driven web applications, although this will change in the coming year with the release of a number of offline computing components. In t

Critical Mac OS X Java Vulnerabilities

19/05/2009 @ 20:00 UTC

Simon Willison : Critical Mac OS X Java Vulnerabilities - Critical Mac OS X Java Vulnerabilities. There’s a five month old Java arbitrary code execution vulnerability which hasn’t yet been patched by Apple. Disable Java applets in your browser until it’s fixed, or random web pages could execute commands

EC2: Creating an Image

19/05/2009 @ 20:00 UTC

Simon Willison : EC2: Creating an Image - EC2: Creating an Image. Here’s the easier way of creating your own AMI: start with a running instance in EC2, then customise it to fit your purposes and create a new bundle (and then AMI) using the ec2-bundle-vol command.

HOWTO Building a self-bundling Debian AMI

19/05/2009 @ 20:00 UTC

Simon Willison : HOWTO Building a self-bundling Debian AMI - HOWTO Building a self-bundling Debian AMI. Not as terrifying as you would have thought. Also contains some neat hints as to how some of the more magical parts of EC2 work (like the way your SSH public key automatically ends up in /root/.ssh/authorized_k

aws - simple access to Amazon EC2 and S3

19/05/2009 @ 12:00 UTC

Simon Willison : aws - simple access to Amazon EC2 and S3 - aws—simple access to Amazon EC2 and S3. The best command line client I’ve found for EC2 and S3. “aws put --progress my-bucket-name/large-file.tar.gz large-file.tar.gz? is particularly useful for uploading large files to S3. Written in Perl (with

Django tip: Caching and two-phased template rendering

19/05/2009 @ 02:00 UTC

Simon Willison : Django tip: Caching and two-phased template rendering - Django tip: Caching and two-phased template rendering. Neat trick for expensive pages which can be mostly cached with the exception of the “logged in as? bit—run them through the template system twice, caching the intermediary generated template.

deusx : Django tip: Caching and two-phased template rendering | Holovaty.com - "It's a clever solution because you end up defining what doesn't get cached instead of what does get cached. It's a sideways way of looking at the problem -- sort of like how Django's template inheritance system defines which part

resty

18/05/2009 @ 14:00 UTC

Simon Willison : resty - resty. 58 lines of bash provides a better command-line interface to RESTful APIs, using curl under the hood. This should save me from running “man curl? several times a week.

The Little Manual of API Design (PDF)

18/05/2009 @ 11:00 UTC

Simon Willison : The Little Manual of API Design (PDF) - The Little Manual of API Design (PDF). A concise, highly readable guide to designing APIs that are “Complete, Easy to learn and memorize, lead to readable code, hard to misuse, and easy to extend?, based on lessons learnt over many years of developm

philgyford : The Little Manual of API Design (PDF) - Sounds like a handy thing for future reference. (via Simon Willison)

python-daemon

18/05/2009 @ 11:00 UTC

Simon Willison : python-daemon - python-daemon. A library for correctly creating Unix daemon processes in Python, implementing the proposed PEP 3143 API.  [via]

New Features for EC2: Elastic Load Balancing, Auto Scaling, and Amazon CloudWatch

18/05/2009 @ 11:00 UTC

Simon Willison : New Features for EC2: Elastic Load Balancing, Auto Scaling, and Amazon CloudWatch - New Features for EC2: Elastic Load Balancing, Auto Scaling, and Amazon CloudWatch. EC2 now fulfils the promise of “magic scaling in the cloud? out of the box—CloudWatch monitors performance of your EC2 instances without needing to install any moni

Interview with Ian Hickson, editor of the HTML 5 specification

14/05/2009 @ 17:00 UTC

Simon Willison : Interview with Ian Hickson, editor of the HTML 5 specification - Interview with Ian Hickson, editor of the HTML 5 specification. By Bruce Lawson of the Web Standards Project. Worth reading.

xml
Upian.