Simon Willison’s Weblog

Subscribe
Atom feed

Blogmarks

Filters: Sorted by date

xPyUnit: Uniting in Python with XML reporting. Should be just the ticket for integrating Django’s testing framework with Cruise Control.

# 27th March 2008, 12:35 pm / cruisecontrol, django, python, pyunit, testing, xpyunit

EC2: Introducing Elastic IP Addresses and Availability Zones. Big news from Amazon: EC2 can now provide static IP addresses which you can dynamically map to one of your instances, along with “availability zones” so you can specify that instances run in different data centres. Hosting an entire application on EC2 just got a whole lot more practical.

# 27th March 2008, 10:33 am / amazon, ec2, virtualization

Opera and the Acid3 Test. Screenshot shows 100/100 (live code or it didn’t happen!)—Opera’s codebase must be in extremely good shape to fix so many issues so quickly.

# 26th March 2008, 10:47 pm / acid3, browsers, opera, web-standards

The real roadblocks to data portability on social networks. A bunch of smart questions posed by Facebook’s Dave Morin. This is why I think data portability is the wrong framing—moving data between sites is really hard. Importing social relationships between sites is much more viable (hence my interest in social network portability). Also, the complaints about systems sharing e-mail addresses are neatly addressed by using OpenID as the GUID for a user instead. OpenIDs can’t be spammed.

# 26th March 2008, 7:53 pm / data-portability, dave-morin, facebook, guid, openid, portablesocialnetworks, robert-scoble

Setup mod_wsgi for Django and Shared Hosting. Tutorial by David Cramer; attached are useful comments from mod_wsgi author Graham Dumpleton.

# 26th March 2008, 2:42 pm / david-cramer, django, graham-dumpleton, hosting, modwsgi, python, wsgi

Djangofriendly (via) Ryan Berg’s attractive new site collecting ratings and reviews for web hosts that support Django. I’m still happily hosted on a bytemark VPS, which isn’t currently listed on the site.

# 26th March 2008, 8:47 am / bytemark, django, hosting, python, ryan-berg, vps

getElementsByClassName pre Prototype 1.6. Older releases of Prototype break in Firefox 3 and Safari 3.1 due to unsafe namespace management—getElementsByClassName is now a browser built-in but with different semantics to the Prototype method of the same name. Prototype 1.6 is fine.

# 26th March 2008, 8:28 am / firefox3, getelementsbyclassname, javascript, john-resig, namespaces, prototype-js, safari

Better Use of Newforms. Two really neat techniques: using an inclusion tag template to DRY your custom form templates, and adding what-to-do-next methods to the form class itself to cut down on the application code in your views.

# 25th March 2008, 10:53 pm / django, dry, newforms, peter-baumgartner, python

An OpenSocial Foundation. “Today we are pleased to announce that Google is joining together with Yahoo! and MySpace in the creation of a non-profit foundation for the open and transparent governance of the OpenSocial specifications and intellectual property.” Good move; I’d personally love to see this happen with Google Gears.

# 25th March 2008, 2:51 pm / google, google-gears, myspace, opensocial, yahoo

fireeagle_api.py. Steve Marshall’s Fire Eagle python binding on GitHub.

# 22nd March 2008, 11:57 pm / fireeagle, github, python, steve-marshall

PownceFS. Not a joke: it’s a Fuse filesystem (written in Python, using OAuth for authentication) which exposes a directory for each of your friends on Pownce containing the files that they have uploaded.

# 22nd March 2008, 11:18 pm / fuse, oauth, pownce, powncefs, python, richard-crowley

views.py for wikinear.com (via) I’ve published the views.py file from wikinear.com as an example of simple Fire Eagle integration with a Django application.

# 22nd March 2008, 7:23 pm / django, django-snippets, fireeagle, python, wikinear

Idea: A new typography term (via) keming. noun. The result of improper kerning.

# 22nd March 2008, 1:41 pm / funny, keming, typography

Monkeypatching is Destroying Ruby (via) Deliberately provocative title, but makes a well considered case for restrained use of monkey patching in Ruby. Cultural norms around monkey patching seem to me to be one of the core differences between the Ruby and Python communities.

# 22nd March 2008, 12:27 am / ian-bicking, monkeypatching, python, ruby

Version 2.0 of mod_wsgi is now available. Includes features that should make Python (and Django) on shared hosting much easier: a non-root user can touch their WSGI script file to restart just their application’s daemon processes when they make changes and Python virtual environments are supported to allow different versions of packages without interference.

# 21st March 2008, 1:23 pm / django, hosting, modwsgi, python, sharedhosting, wsgi

mysql_cluster (via) My Russian isn’t all that good, but this looks like a neat way of getting Django to talk to a master/slave setup, written by Ivan Sagalaev. UPDATE: English docs are linked from the comments.

# 21st March 2008, 8:45 am / django, ivansagalaev, masterslave, mysql, mysqlcluster, orm, python, replication

Administrative Debris. Ryan Tomayko explains his exceptionally clean redesign, inspired by Edward Tufte’s critique of the iPhone.

# 21st March 2008, 3:29 am / design, edwardtufte, iphone, ryan-tomayko

A Toy Chat Server with Eventlet and Mulib (via) Eventlet (the Python non-blocking IO library originally written for Second Life) is ideally suited to building Comet servers; Chuck Thier demonstrates a simple chat server in a small amount of code.

# 21st March 2008, 3:28 am / chuckthier, comet, eventlet, lindenlab, mulib, python, secondlife

Amazon.com: amazon oddities. Warning: reading the user reviews on these items has the potential to soak up hours.

# 21st March 2008, 2:54 am / amazon, funny

Yahoo!’s Latest Performance Breakthroughs. 20 new performance tips to join the previously published 14. Flushing the buffer while the backend code is still working to cause the browser to start loading CSS earlier is interesting.

# 20th March 2008, 3:17 pm / css, http, performance, yahoo

Simple Exception Response for AJAX debugging. Neat solution to the problem of Django error pages showing up as raw HTML in the Firebug Ajax log.

# 19th March 2008, 4:44 pm / ajax, django, firebug, python

IronPython, MS SQL, and PEP 249. How Dino Viehland got Django’s ORM to talk to the .NET database layer.

# 19th March 2008, 9:46 am / dinoviehland, django, dotnet, ironpython, microsoft, mssql, pep249, python, sql

Queryset Implementation. Malcolm explains the work that has gone in to the queryset-refactor branch. Executive summary: Python’s ORM is probably a lot better at SQL than you are.

# 19th March 2008, 9:43 am / django, malcolm-tredinnick, orm, python, querysetrefactor, sql

Standing in Line. Simon Wistow coins “CLAMP” for LAMP + Cache, and expresses the need for a dirt-simple, high performance open source queue system.

# 19th March 2008, 9:41 am / clamp, lamp, open-source, queues, simon-wistow

Wikihistory (via) International Association of Time Travellers: Members’ Forum.

# 19th March 2008, 12:17 am / funny, godwin, timetravel

Open Tech 2008—5th July in London. Awesome—I still have happy memories of the last Open Tech (back in 2005), very excited about this one. Once again, it’s only a fiver to get in.

# 18th March 2008, 1:03 am / conferences, events, opentech, opentech2008

Consistent Hashing. Beautifully clear explanation of consistent hashing, a simple technique that allows you to add new caching servers to a cluster without re-hashing your keys and hence invalidating all of your caches.

# 18th March 2008, 1 am / caching, consistenthashing, hashing, scaling

Years

Tags