Simon Willison’s Weblog

Subscribe

July 2009

July 22, 2009

Fancy Fast Food (via) “These photographs show extreme makeovers of actual fast food items purchased at popular fast food restaurants.”

# 11:51 am / fastfood, food, fancyfastfood

Django 1.1 release candidate available. If all goes well, the final release will be out next week.

# 12:19 pm / django, releasecandidate, python

We all know that there's no fucking way in the world we should have microwave ovens and refrigerators and TV sets and everything else at the prices we're paying for them. [...] You want to "fix things in China," well, it's gonna cost you. Because everything you own, it's all done on the backs of millions of poor people whose lives are so awful you can't even begin to imagine them, people who will do anything to get a life that is a tiny bit better than the shitty one they were born into, people who get exploited and treated like shit and, in the worst of all cases, pay with their lives.

Fake Steve Jobs

# 12:23 pm / fakestevejobs, china

Webhooks behind the firewall with Reverse HTTP. Hookout is a Ruby / rack adapter that lets you serve a web application from behind a firewall, by binding to a Reverse HTTP proxy running on the internet (such as the free one provided by reversehttp.net). Useful for far more than just webhooks, this means you can easily expose any Ruby web service to the outside world. An implementation of this as a general purpose proxy server would make it useful for applications written in any language.

# 1:46 pm / webhooks, hookout, ruby, reversehttp, comet

July 24, 2009

xmlwitch. An XML building library for Python that doesn’t suck (I love ElementTree for parsing XML, but I’ve never really liked it for generation). Makes smart use of the with statement.

# 12:33 am / withstatement, python, xml, xmlwitch

EtherPad. Outstanding implementation of an online real-time collaborative text editor—basically SubEthaEdit in your browser. I can see myself using this a lot.

# 12:35 am / etherpad, subethaedit, realtime, comet, javascript, appjet

This is an apology for the way we previously handled illegally sold copies of 1984 and other novels on Kindle. Our "solution" to the problem was stupid, thoughtless, and painfully out of line with our principles. It is wholly self-inflicted, and we deserve the criticism we've received. We will use the scar tissue from this painful mistake to help make better decisions going forward, ones that match our mission.

Jeff Bezos

# 12:48 am / apology, jeff-bezos, amazon, kindle

MoD sticks with insecure browser. Tom Watson MP used parliamentary written answers to find out that the majority of government departments still require their staff to use IE6, and not all of them have upgrade plans to 7 or 8. Not a single department considered an alternative browser. “Many civil servants use web browsers as a tool of their trade. They’re as important as pens and paper. So to force them to use the most decrepit browser in the world is a rare form of workplace cruelty that should be stopped.”

# 10:18 am / tom-watson, ukgovernment, browsers, civilservice, politics

The Pushbutton Web: Realtime Becomes Real. Anil Dash is excited by the potential for PubSubHubBub and Webhooks to make near-real-time scalable event publishing accessible to regular web developers. So am I.

# 6:30 pm / anil-dash, realtimeweb, realtime, pushbutton, pubsubhubbub, webhooks

AdSense for Feeds: What’s all the hubbub about PubSubHubbub? “Today we’re happy to announce initial support in FeedBurner for the PubSubHubbub protocol.”

# 6:45 pm / feedburner, pubsubhubbub, google, pushbutton, realtimeweb

July 27, 2009

Why we migrated from MySQL to MongoDB. Includes some useful information on MongoDB’s limitations—for example, running many different collections can waste disk space and repairing large datasets or bulk deleting many rows can block and lock the database for the duration of the operation.

# 10:49 am / mongodb, databases, mysql, documentstores

Learning to compile things from source (on Unix/Linux/OSX). I asked on serverfault.com for tips on learning how to solve configure/make/install problems on my own, and got some extremely useful replies.

# 4:21 pm / serverfault, questions, compiling, linux, osx

July 28, 2009

Fabric, Django, Git, Apache, mod_wsgi, virtualenv and pip deployment. I’m slowly working my way through this stack at the moment—next stop, fabric.

# 11:56 am / fabric, virtualenv, django, python, git, apache, modwsgi, gareth-rushgrove, pip, deployment

NASA NEBULA Services (via) NASA’s new NEBULA cloud computing platform appears to be built entirely on open source infrastructure, including Python, Django, Fabric, Eucalyptus, RabbitMQ, Trac and Solr.

# 12:10 pm / fabric, eucalyptus, nasa, django, open-source, cloud-computing, nebula, python, rabbitmq, solr, trac

My Sys-Con Nightmare. This is just ridiculous. Don’t speak at or attend Sys-Con conferences (which include AJAXWorld, the Cloud Computing Expo and Ajax in the Cloud), don’t write for or buy their journals (including AJAXWorld Magazine, JDJ and .NET Developer’s Journal), and don’t visit or advertise on any of their sites.

# 12:39 pm / ajaxworld, aral-balkan, boycott, syscon

JSONP Memory Leak. Neil Fraser advocates iterating over and deleting every property on a JSONP script DOM node after you removeChild it from the DOM, to protect against memory leaks of “in excess of 15 MB per hour”.

# 12:46 pm / jsonp, neilfraser, javascript, memoreleaks

Hack Day tools for non-developers

We’re about to run our second internal hack day at the Guardian. The first was an enormous amount of fun and the second one looks set to be even more productive.

[... 920 words]

July 29, 2009

Django 1.1 release notes (via) Django 1.1 is out! Congratulations everyone who worked on this, it’s a fantastic release. New features include aggregate support in the ORM, proxy models, deferred fields and some really nice admin improvements. Oh, and the testing framework is now up to 10 times thanks to smart use of transactions.

# 9:34 am / django, python, releases, open-source, orm, aggregates

Toy Chest: Online or Downloadable Tools for Building Projects (via) “Toy Chest collects online or downloadable software tools/thinking toys that humanities students and others without programming skills (but with basic computer and Internet literacy) can use to create interesting projects”—a fantastic list compiled by the English Department at UCSB.

# 12:12 pm / toychest, tools, ucsb

4chan's /b/ forum, which gets called things like the Mos Eisley spaceport of the web when people are being polite, and the asshole of the internet when they aren't, is energetic, anarchic, barely moderated, crude, irresponsible, vindictive if crossed, peculiarly creative, and full of hackers. It inspires loyalty in its core users, and makes everyone else nervous.

Teresa Nielsen Hayden

# 1:39 pm / teresa-nielsen-hayden, 4chan, community

Django: Security updates released. A fix for a directory traversal attack in the Django development server (the one with the big “never run this in production” warnings in the documentation). Also reminds that the release of 1.1 means that 0.96, released over two years ago, has reached end of life and will not receive any further bug fixes after the just-released 0.96.4.

# 1:45 pm / django, security, python

Building Rome in a Day (via) “The first system capable of city-scale reconstruction from unstructured photo collections”—computer vision techniques used to construct 3D models of cities using 10s of thousands of photos from Flickr. Reminiscent of Microsoft PhotoSynth.

# 3:41 pm / photos, flickr, 3d, computer-vision, rome, photosynth, research

July 30, 2009

Today’s News and Yahoo!’s Developer Program. “For SearchMonkey and BOSS, we currently do not have anything concrete to tell you” ... “We wanted to let you know that today’s news does not affect these products [YUI, YQL, Pipes]”.

# 12:20 pm / searchmonkey, boss, yahoo, ydn, yui, yql, yahoopipes, pipes

Collection: Search Patterns. Peter Morville’s enormous collection of screenshots of search engine interfaces.

# 12:35 pm / peter-morville, search, ui, patterns, design, usability

Making Image Overlays Easy with GGroundOverlay and GGeoXML (via) Surprisingly, there doesn’t appear to be a good online tool for helping align an overlay image with a Google Map and exporting the result as a KML file. This is the best I could find—Yahoo! used to have a tool called MapMixer but it doesn’t seem to exist any more.

# 10:58 pm / maps, google-maps, overlays

July 31, 2009

How to avoid ads in gmail. “After extensive testing I’ve discovered you need 1 catastrophic event or tragedy for every 167 words in the rest of the email.”

# 1:40 am / gmail, ads

2009 » July

MTWTFSS
  12345
6789101112
13141516171819
20212223242526
2728293031