Simon Willison’s Weblog

Subscribe

October 2007

Oct. 9, 2007

tranquil. Inspired take on the Django ORM to SQLAlchemy problem: lets you define your models with the Django ORM but use SQLAlchemy to run queries against them.

# 2:30 am / sqlalchemy, python, django, orm, djangoorm, models, tranquil

Writing An Hadoop MapReduce Program In Python. Hadoop (the open source map/reduce framework) can interact with any program that reads from stdin and outputs on stdout—so it’s trivial to drop in Python scripts for the map and reduce steps.

# 11:33 am / hadoop, mapreduce, python

Two months with Ruby on Rails. Good rant—covers both the good and the bad. The first complaint is the lack of XSS protection by default in the template language. Django has the same problem, but the solution was 90% there when I saw Malcolm at OSCON.

# 12:23 pm / rails, django, python, ruby, xss, security

Amazon Gets an SLA (But I Still Can’t Use It). “Ontario’s Freedom of Information and Protection of Privacy Acts (FIPPA) don’t allow me to store sensitive information (e.g., students’ work) in jurisdictions that permit secret warrants, like those mandated by the USA PATRIOT Act.”

# 3 pm / patriotact, privacy, canada, ontario, fippa, gregwilson, s3, amazon, aws

Oct. 10, 2007

Global namespace pollution in IE. Another reason to avoid JavaScript global variables like the plague: IE creates a bunch of them for you which may well intefere with your own code.

# 10:10 am / internet-explorer, ie, javascript, globals

Stichelton: Raw-Milk Stilton (via) We tried this at the Great British Cheese Festival the other week and really liked it, without knowing any of the interesting background.

# 4 pm / stilton, stichelton, cheese

BarCampLondon3. 24th-25th of November in Google’s London offices (by Victoria train station). The last BarCamp London was a blast—I’m really looking forward to this.

# 5:20 pm / barcamp, barcamplondon, london, google

Oct. 11, 2007

nose 0.10.0 final! Nose is my favourite Python testing tool: it can auto-discover and execute tests in a directory hierarchy, which makes it easy to run just a sub-set of your test suite.

# 1:52 pm / unittesting, testing, python, nose

Getting from point A to B (the right way)

If your laptop is relatively recent it might have hardware support for virtualization (Intel Core Duo chips do, for example). If so, it’s worth looking in to using VMWare or Parallels to run a virtual linux server locally on your machine. You’ll need a fair amount of RAM for this as well—2 GB minimum probably.

[... 194 words]

journa-list.com. Fantastic new site that indexes UK news stories by the person who wrote them. Being able to track a journalist’s output like this makes it much easier to figure out their personal biases over time.

# 4:04 pm / news, journalism, journalist

/trunk/jl/scraper. journa-list.com is open source, and the screen scrapers are written in Python.

# 4:10 pm / python, open-source, journalist, screenscraping

Apple—Web apps. Interesting (and slightly confusing) to see Apple choose “Web apps” as the term for applications targeted at the iPhone and iPod touch.

# 8:40 pm / apple, iphone, ipodtouch, ipod, webapps

Oct. 12, 2007

The password anti-pattern. What I don’t understand is why Google / Yahoo! / other webmail providers haven’t just deployed a simple OAuth-style API for accessing the address book. Sites have been scraping them for years anyway; surely it’s better to offer an official API than continue to see users hand out their passwords?

# 9:25 am / phishing, passwords, oauth, gmail, yahoo, google, jeremy-keith

A Visual Explanation of SQL Joins. It turns out Venn diagrams are an excellent way of illustrating joins.

# 9:42 am / sql, jeff-atwood, venndiagrams

Configuring Apache httpd. Ben Laurie shows how to build up an Apache configuration file from first principles.

# 12:52 pm / apache, httpd, ben-laurie

Using the jQuery test suite for your own projects. jQuery’s test suite has clever start(), stop() and expect() methods for running assertions within asynchronous code.

# 12:56 pm / jquery, javascript, testing, unittests

Get Lat Lon. I finally got fed up of hunting around for simple latitude/longitude tools when messing around with mapping APIs, so I built my own with a memorable URL. I plan to add new features as and when I need them.

# 2:14 pm / longitude, getlatlon, latlon, latitude, google-maps, maps, negeography, projects

I can't say I'm overwhelmed with surprise. I'm 88 years old and they can't give the Nobel to someone who's dead, so I think they were probably thinking they'd probably better give it to me now before I've popped off.

Doris Lessing

# 7 pm / nobelprize, literature, doris-lessing

Unfuddle. Private Subversion repository hosting provider with plans starting at free: now there’s no excuse not to have a svn repository somewhere. Also provides web based repository browsing and a reasonable looking ticket system.

# 7:15 pm / unfuddle, subversion, version-control, free, bugtracking

Oct. 14, 2007

Videos tagged ’hd’ on Vimeo. Vimeo are now hosting HD videos. Worth playing full screen—I had no idea Flash video was capable of that kind of quality. The speed of loading is pretty astonishing; I get no delay at all, making this essentially TV quality video on demand.

# 10:18 am / flashvideo, hd, video, vimeo, vod

Future of Web Apps—Past Events. MP3s of talks at the Future of Web Apps Expo are starting to trickle on to the official site.

# 12:14 pm / fowa, fowaexpo, future-of-web-apps, mp3s, conferences

Information Freeway (via) Really lovely interface to Open Street Map, sadly suffering from a horribly vague name and almost no publicity at all.

# 11:58 pm / mapping, maps, openstreetmap

Oct. 15, 2007

Two Weeks With Django. A Rails developer tries Django but ends up switching back to Rails. I think we could definitely take some steps towards making the initial user experience a bit smoother—currently you have to decide things like how you’ll serve static files and where you’ll keep your templates. Once you’ve got that lot set up it’s mostly plain sailing but it does mean there’s a bit of a bump in the learning curve.

# 9:51 pm / django, rails, john-taber

LastGraph. Now Available. Andrew Godwin has relaunched his LastGraph Last.fm graphing application. The new version is built on Django and S3 and uses Andrew’s Graphication graphing library based on Cairo.

# 10:02 pm / graphication, django, andrew-godwin, cairo, lastfm, lastgraph, python, s3, graphing

The Art & Science of JavaScript. My first author credit: I’m contributing a chapter to SitePoint’s next JavaScript tome.

# 10:35 pm / javascript, theartandscienceofjavascript, sitepoint, publishing, books

Ignorance and inspiration. I’m pretty gobsmacked at the levels of ignorance about web accessibility out there—it’s not that hard people! I’m obviously more out of touch with mainstream developers than I thought; I was under the impression that people had generally got the message.

# 10:47 pm / accessibility, ignorance, jeremy-keith

Oct. 16, 2007

Cruciforum (via) Stuart’s new PHP forum—single script, stores threads as static HTML on the filesystem (no database), installation is a one-step process.

# 9:08 am / php, forums, cruciforum, stuart-langridge

Why Accessibility? Because It’s Our Job! “A chef must care about health, a builder must care about safety, and we must care about accessibility.”

# 10:06 am / accessibility, brothercake, sitepoint, james-edwards

Dealing with the Flexibility of JavaScript. Some thoughts on function signature overloading in JavaScript.

# 11:24 am / javascript, overloading, sitepen, neilroberts

2007 » October

MTWTFSS
1234567
891011121314
15161718192021
22232425262728
293031