Simon Willison’s Weblog

Subscribe

January 2009

Jan. 14, 2009

For some reason, in their story on the study, the Times had an ax to grind with Google. Our work has nothing to do with Google. Our focus was exclusively on the Web overall, and we found that it takes on average about 20 milligrams of CO2 per second to visit a Web site.

Alex Wissner-Gross

# 9:15 am / alex-wissner-gross, google, the-times, co2

The History of Python (via) “A series of articles on the history of the Python programming language and its community”, being compiled by Guido plus guest authors.

# 9:42 am / guido-van-rossum, python, history, programming

jQuery 1.3 and the jQuery Foundation. The IP for jQuery and jQuery UI now rests with the Software Freedom Conservancy (a smart alternative to setting up a brand new foundation), while Sizzle is a separate project looked after by the Dojo Foundation.

# 5:59 pm / jquery, javascript, jqueryui, sizzle, dojofoundation, software-freedom-conservancy

jQuery 1.3 release notes. Sizzle (new selector engine, available separately), Live Events (a variant of event delegation), Feature Detection (instead of user agent sniffing), faster HTML injection and more.

# 6 pm / jquery, sizzle, liveevents

jQuery queue method. New in jQuery 1.3, but quite far down the release notes. This finally allows low-level control over the jQuery animation queue without needing an extra plugin.

# 6:09 pm / jquery, animation

ficlets memorial. Here’s a great argument for Creative Commons—AOL shut down Ficlets without providing an archive or export tool, but the license meant Ficlets co-creator Kevin Lawver could scrape and preserve all of the content anyway.

# 10:02 pm / ficlets, aol, archive, preservation, data, creativecommons, kevinlawver

Localbuilder. Gareth Rushgrove’s neat little Python continuous integration tool—it watches a directory for changes, then runs a command when it spots any.

# 10:57 pm / gareth-rushgrove, python, continuous-integration, localbuilder, testing

Jan. 15, 2009

The HTML5 parsing specification contains rules to transform any possible sequence of characters or bytes into a standard document object model. From conversations with Ian, I believe this was one of his primary goals for the initial HTML5 specification.

Benjamin Smedberg

# 10:19 pm / benjamin-smedberg, html5, ian-hickson

Jan. 16, 2009

Django now has fast tests. Changeset 9756 switched Django’s TestCase class to running tests inside a transaction and rolling back at the end (instead of doing a full dump and reload). “Ellington’s test suite, which was taking around 1.5-2 hours to run on Postgres, has been reduced to 10 minutes.”

# 11:40 am / django, testing, transactions, unittests, python, ellington, eric-holscher

Want Proof OpenID Can Succeed? Just Scroll Down. “It’s easier for blogs, which don’t need a lot of demographic information about a user, to let people jump in and start participating socially without filling out a registration form.” Aargh. Repeat after me: supporting OpenID does not mean you can’t require additional registration details through a signup form.

# 12:16 pm / openid, registration, wired

Dopplr presents the Personal Annual Report 2008: freshly generated for you, and Barack Obama... So classy it hurts. I’d love to know what library they used to generate the PDF.

# 12:17 pm / pdf, dopplr, barack-obama

Washington Post Update. Peter Harkins summarises the large number of Django-powered database journalism projects released by the Post since September 2007.

# 12:18 pm / peter-harkins, washington-post, django, python, data-journalism

Prawn (via) Really nice PDF generation library for Ruby, used to generate Dopplr’s beautiful end of year reports.

# 4:04 pm / dopplr, ruby, prawn, pdf

US economic data spreadsheets from the Guardian. At the Guardian we’ve just released a bunch of economic data about the US painstakingly collected by Simon Rogers, our top data journalist, as Google Docs spreadsheets. Get your data here.

# 6:17 pm / the-guardian, simon-rogers, data, spreadsheets, google-docs, economics, usa

Jan. 17, 2009

Raising Octopus from Eggs (via) I love that forums like this exist.

# 2:59 pm / octopus, forums, bruce-schneier

Project Voldemort. Yet Another “big, distributed, persistent, fault-tolerant hash table”—this time from LinkedIn, released under the Apache 2.0 license. The approach to consistency is interesting—instead of using distributed transactions, they use versioning and “resolve inconsistencies at read time”. It also uses consistent hashing (as seen in libketama) to select servers. The design document has lots more information.

# 7:45 pm / consistency, hashtable, keyvaluepairs, linkedin, open-source, scaling, versioning, voldemort, libketama

Load Windows ICO files. Apparently PIL has trouble with the most recent versions of the windows .ico format (Vista now embeds PNG images in them)—this clever function deals with the differences and gives back a PIL Image object.

# 9:48 pm / pil, python, vista, windows, ico, images, png

Jan. 18, 2009

Eviction, or the Coming Datapocalypse. Jason Scott on AOL’s closure of Hometown, their hosting service. In related news, Lycos just announced they are closing Tripod, which has been providing free hosting for 13 years.

# 8:48 am / jason-scott, eviction, archive, tripod, lycos, aol, hometown

Rules of Database App Aging. Peter Harkins: All fields become optional, all relationships become many-to-many, chatter always expands. This is why document oriented databases such as CouchDB are looking more and more attractive.

# 9:09 am / databases, peter-harkins, couchdb

Apple shows us DRM’s true colors. The EFF reviews the various places that Apple still applies DRM (including locking iPhones to carriers, licensing authentication chips for iPod accessory vendors, preventing OS X from loading on generic PCs) and concludes that “the majority of these DRM efforts do not have even an arguable relation to ’piracy.’”

# 10:16 am / drm, eff, apple, osx, iphone, ipod, piracy

Jan. 20, 2009

What is django.contrib? I’d add that including a package in django.contrib is a promise that the core development team will ensure that package is updated to work with future versions of Django.

# 10:58 am / django, python, djangocontrib, jacob-kaplan-moss

Jan. 21, 2009

Train Crash Leads LA Times to Create Django Database on Deadline. A story from last September. I didn’t know the LA Times used Django. UPDATE: Yes I did, I introduced their panel about it at DjangoCon. Sorry, mind like a sieve sometimes.

# 5:19 pm / latimes, data-journalism, django, newspapers, python

Jan. 22, 2009

There's no such thing as a good day to bury bad news any more, the Internet has seen to that.

Tom Steinberg

# 10:20 am / internet, news, tom-steinberg, mysociety

jQuery 1.3.1 Released. Bug fix for 1.3, mainly browser compatibility issues. Of interest: jQuery no longer ship a packed version (where JS is used to further decompress a string), as their tests show that this reduces performance due to the overhead of the extra decompression. They still provide a YUI Compressor minified version.

# 10:41 am / minification, jquery, javascript, performance

Learning to Think Like A Programmer. Outstanding advice aimed mainly at journalists, but important to anyone who collects information for a living and might want it to be automatically processed at some point in the future.

# 6:06 pm / tom-armitage, programming, journalism, data-journalism

New PylonsHQ Site Launches. The new site uses CouchDB instead of a relational database, and the code for the site is open source so you can see how it all works.

# 6:33 pm / couchdb, pylons, python, ben-bangert, nonrelational

AJAX APIs Playground. Ferociously useful collection of executable and editable example code for all(?) of Google’s JavaScript APIs, including Google Maps and the increasingly interesting Visualization API.

# 6:38 pm / google, javascript, ajax, google-maps, googlevisualization

Jan. 23, 2009

CSRF is not a security issue for the Web. A well-designed Web service should be capable of receiving requests directed by any host, by design, with appropriate authentication where needed. If browsers create a security issue because they allow scripts to automatically direct requests with stored security credentials onto third-party sites, without any user intervention/configuration, then the obvious fix is within the browser.

Roy Fielding

# 8:14 am / royfielding, csrf, security, credentials, browsers

OpenStreetMap is growing rapidly across all of Africa. Mapping is spreading through local mappers, mappers on vacation, foreign nationals, and remote mapping using satellite imagery. A recent comparison judged that OSM had the most comprehensive coverage of Africa among web mapping services, especially in cities.

Mikel Maron

# 5:13 pm / mikel-maron, openstreetmap, africa, mapping

Jan. 24, 2009

EuroDjangoCon. 4th-6th of May 2009, in Prague. Talk submissions are open now, and registration starts on the 6th of February.

# 6:54 pm / eurodjangocon, django, djangocon, conferences, events, prague, python

2009 » January

MTWTFSS
   1234
567891011
12131415161718
19202122232425
262728293031