Simon Willison’s Weblog

Subscribe

December 2006

Dec. 12, 2006

GWT 1.3 Release Candidate is 100% Open Source. At least you can see how the code generator works now.

# 5:50 pm / gwt, javascript, open-source, google

Making GWT Better. Explains the philosophy behind GWT. It’s all about the tools!

# 5:53 pm / gwt, javascript, google, philosophy

Statement Functions. Smart workaround for the lack of multi-line lambdas in Python.

# 7:08 pm / python, lambda

Dec. 13, 2006

Battery Expansion. In which James Duncan Davidson’s MacBook Pro battery goes critical.

# 11:56 am / osx, battery, james-duncan-davidson

Dec. 14, 2006

Curse launches with Django platform. Handles 500k visits/hour!

# 3:02 am / django, scaling, curse

Real-World Passwords. Random passwords phished from MySpace are surprisingly decent.

# 2:14 pm / bruce-schneier, passwords, myspace, security, phishing

XHTML is not going to replace HTML as the web's official markup language because it turns out that resilience is more useful than brittleness.

Douglas Crockford

# 5:40 pm / douglas-crockford, xhtml

Google’s own cornershop. Google groups has an undocumented API for generating rounded corners.

# 7:34 pm / api, google

Abusing Amazon images (via) Amazon have an amazingly flexible API for generating and modifying product images.

# 7:38 pm / amazon, api

Dec. 15, 2006

’National interest’ halts arms corruption inquiry. “It has been necessary to balance the need to maintain the rule of law against the wider public interest.”

# 2:09 pm / uk, politics, scandal

Finally powered by Django

It’s been way too long, but I’ve finally replaced the ball of PHP duct tape that has run this site for the past four years with a shiny new blog engine powered by Django.

[... 393 words]

[Python-3000] Refactoring tool available. Guido’s initial work on a tool for converting Python 2.x code to Python 3K.

# 2:19 pm / python, guido-van-rossum

Why do so many reddit users hate java? The answers provide a good overview as to why Java has fallen out of favour with the alpha-hacker crowd.

# 2:20 pm / java, reddit

Dec. 16, 2006

Never store passwords in a database! The reddit.com developers just learnt this the hard way. It might be time to change some of your passwords.

# 12:01 am / reddit, security

Fast and Simple Usability Testing. Nat’s 24ways article on practical usability testing (and hedgehogs).

# 12:20 am / usability, natalie-downe, hedgehogs

Dependency injection is the enterprisey name for trampling over namespaces with reckless abandon.

Ted Dziuba

# 1:05 am / python, testing

An open letter to Mike Arrington. Former co-editor Mike Butcher’s take on the demise of TechCrunch UK. “Citizen Kane 2.0”.

# 12:19 pm / techcrunch, blogging, mike-butcher, mike-arrington, techcrunchuk

Google Code gets wikis and file downloads. Someone finally wrote a project wiki that stores its pages inside the Subversion repository.

# 12:35 pm / google, google-code, subversion, wiki

SubWiki (via) A wiki that uses Subversion for its data repository, implemented as a Python CGI.

# 7:19 pm / python, subversion, wiki

YUI CSS Grid builder (via) The YUI CSS grid system can be hard to get your head around. This interactive tool makes it much easier to figure out.

# 10:30 pm / yui, javascript, css

RoundedCornr. Generates code for rounded corner boxes (with optional graded fills—very Web 2.0). Slightly different way of nesting divs to the way I’ve used in the past.

# 11:49 pm / css, roundedcorners, gradients

Dec. 17, 2006

Meta-classes Made Easy. Fuzzyman introduces a metaclass factory for applying a decorator to every method of a class.

# 12:42 am / python, metaclasses, decorators, fuzzyman

phpMyID. A simple, stand-alone OpenID server in a single PHP script with no dependencies. Makes managing your own identity trivial.

# 9:06 am / openid, php

Ma.gnolia supports OpenID. Text book implementation: you can associate your OpenID with an existing account and log in using either OpenID or your regular username and passwerd.

# 9:29 am / openid, magnolia

Django on Dreamhost: incomplete headers. Fix this problem on Dreamhost by renaming django.fcgi to dispatch.fcgi (they special-case for Rails users; Django users can tag along).

# 9:36 am / django, rails, dreamhost, fastcgi

Dec. 18, 2006

SSH ControlPath/ControlMaster. How to get OpenSSH v4 and above to re-use an existing SSH connection for multiple sessions, dramatically speeding up connection start times.

# 11:53 am / ssh, torchbox, nickburch

__builtins__ usage. Avoid using __builtins__ if you want your code to be compatible with IronPython.

# 3:22 pm / python, ironpython

Introducing Operator. New microformat detecting Firefox extension, developed at IBM and released by Mozilla Labs. Examples are from Yahoo! Local, Upcoming and Flickr.

# 4:36 pm / extension, firefox, ibm, microformats, flickr, mozilla, mozillalabs, upcoming, yahoo

The Rise of a Web 2.0 Technology Stack (via) “Enterprise Mashup Server”—because Web 2.0 wasn’t enterprisey enough...

# 6:57 pm / mashup, enterprisey, web20

Ten Web 2.0 APIs you can really use. An excellent collection.

# 7:01 pm / web20, apis, web-services

2006 » December

MTWTFSS
    123
45678910
11121314151617
18192021222324
25262728293031