Simon Willison’s Weblog

Subscribe
Atom feed

Blogmarks

Filters: Sorted by date

Protovis. JavaScript graphing library based on canvas, with an elegant chaining style API.

# 10th April 2009, 8:43 am / canvas, graphs, javascript, protovis, visualisation

#DataJourn part 1: a new conversation. Journalism.co.uk report on the first instance of a Guardian story that was driven by an external developer’s work with data originally released on our Datablog.

# 9th April 2009, 10:57 am / data-journalism, datablog, datastore, guardian, journalism, openplatform

Dynamic languages on Google App Engine—an overview. Ola Bini’s notes on exploring the new Java support for App Engine with the aim of getting JVM dynamic languages such as JRuby running. Restrictions include a complete lack of threads (which will make it hard to get Scala up and running), but JRuby trunk now works without modification.

# 8th April 2009, 2:08 pm / google, google-app-engine, java, jruby, jvm, olabini

App Engine: Scheduled Tasks With Cron. Cron tasks simply hit a URL on your application, and can be run as frequently as once a minute. They made up their own syntax, which much nicer than traditional unix cron.

# 8th April 2009, 2:04 pm / cron, google, google-app-engine

Sphinx 0.9.9-rc2 is out. Interesting new feature: the Sphinx search server now supports the MySQL binary protocol, so you can talk to it using a regular MySQL client library and fire off search queries using SELECT syntax and the new SphinxQL query language.

# 8th April 2009, 1:59 pm / full-text-search, mysql, search, sphinx-search, sql

Finding similar items with Amazon Elastic MapReduce, Python, and Hadoop streaming. Tutorial for running Hadoop jobs on Elastic MapReduce using Python and the 2005 Audioscrobbler dataset.

# 7th April 2009, 9:19 am / amazon, amazon-web-services, audioscrobbler, elasticmapreduce, hadoop, mapreduce, python

Building sites around social objects. Jyri Engeström’s concept of “social objects” is a genuinely useful new way to talk about social web sites.

# 7th April 2009, 9:16 am / jyriengestrom, social-objects

Rabbits and warrens. Handy tutorial introduction to using RabbitMQ and AMQP with Python.

# 7th April 2009, 9:13 am / amqp, message-queues, python, queues, rabbitmq, tutorial

cufon. A promising alternative to sIFR, cufon uses VML on IE and canvas on other browsers to render custom fonts in the browser. You have to convert your font to JavaScript first, either using their free hosted tool or by installing the FontForge based server-side script yourself. The JavaScript encoded font file uses VML primitives to improve IE performance; the JavaScript library converts that to canvas calls for other, faster browsers.

# 6th April 2009, 10:29 pm / browsers, canvas, cufon, fontforge, fonts, internet-explorer, javascript, sifr, typography, vml

Making the HTML5 time element safe for historians. PPK presents a detailed history of dates and calendars and points out that the HTML5 time element is ill prepared to faithfully represent the kind of dates historians are interested in.

# 6th April 2009, 2:01 pm / calendars, dates, datetime, historians, history, html5, ppk, standards, time

Twitter: blaming Ruby for their mistakes? The comments on the entry include replies from Twitter employees and the RabbitMQ consultant they brought in, and provide a full rebuttal to the various accusations of NIH that were thrown around recently.

# 6th April 2009, 11:06 am / nih, rabbitmq, ruby, twitter

Ext Core 3.0 Beta Released. The Ext JavaScript team have just released the core library (similar to jQuery or Prototype) under an MIT license. The rich GUI elements that go on top are still under the GPL.

# 5th April 2009, 8:17 pm / extcore, extjs, gpl, javascript, licensing, mit, open-source

Mending The Bitter Absence of Reasoned Technical Discussion. Not at all surprised to see Alex Payne write this considering the low quality of discussion around anything technical to do with Twitter.

# 5th April 2009, 7:59 pm / alex-payne, etiquette, twitter

Almost Perfect (via) W. E. Peterson’s book on the rise and fall of WordPerfect Corporation, originally published in 1994 and now available for free online.

# 5th April 2009, 7:30 pm / books, history, wepeterson, wordperfect

UK Television Series Map. Inspired by the US sitcom map, Meg Pickard is plotting TV series on a map of the UK.

# 5th April 2009, 7:25 pm / maps, meg-pickard, tv

TinyURL—Archiveteam. Excellent: the Internet Archive are crawling TinyURL (and hopefully other URL shortening services as well). The wiki page was created back in January. UPDATE from comments: Archiveteam are a separate organisation from the Internet Archive.

# 3rd April 2009, 11:11 pm / archive, archiveteam, internet-archive, tinyurl

Introducing Digg’s IDDB Infrastructure. IDDB is Digg’s new infrastructure component for sharding data across multiple databases, with support for both MySQL and memcachedb. “The DiggBar and URL minifying service is powered by a 16 machine IDDB cluster, which includes 8 write masters in the index and 8 MySQL storage nodes.”

# 3rd April 2009, 8:42 pm / databases, digg, iddb, joe-stump, memcachedb, mysql, scaling, sharding

Automating PowerPoint with Python. Useful tutorial on using ActivePython’s win32com module to automate PowerPoint. The example code pulls in the top 50 banks by assets from the Guardian Data Store and generates a treemap using PowerPoint’s shape drawing primitives.

# 3rd April 2009, 3:13 pm / activepython, datastore, guardian, powerpoint, python, treemap, visualisation

UK Guardian Data + ManyEyes = ISAF Troops Contribution Story. Including a heat map showing countries that are contributing the most troops to Afghanistan.

# 3rd April 2009, 2:44 pm / afghanistan, datastore, guardian, heatmap, manyeyes, military, visualisation

Tracking UK Liberal Indecency. The mashup I’ve been waiting for: Tom Hume used the Guardian Content API to track swearword usage over time.

# 2nd April 2009, 4:44 pm / contentapi, guardian, mashup, obscenity, swearing, tom-hume

Google uncloaks once-secret server. Instead of a data centre wide UPS and redundant power supplies, each Google server has its own 12V battery. They live in standard shipping containers, each holding 1,160 servers.

# 2nd April 2009, 10:47 am / datacentres, google, operations, power, servers, ups

Heap Dump Analysis. Using jmap to dump the JVM’s memory to disk, then analysing it using the visualvm GUI tool.

# 2nd April 2009, 10:34 am / dominic-mitchell, heapdump, java, jvm, memory, profiling, visualvm

Amazon Elastic MapReduce (via) Hadoop as a service. Basically a web based GUI around Hadoop—you could roll this yourself on EC2 but for a small markup on regular EC2 prices you get to avoid the extra work setting everything up. Data processing scripts can be written in Java, Ruby, Perl, Python, PHP, R, or C++ and are loaded in to S3 before firing off the job.

# 2nd April 2009, 10:25 am / amazon, amazon-web-services, cloud-computing, ec2, hadoop, mapreduce, s3

Continuous deployment in 5 easy steps. A classic case of a number in a title making the article look less interesting than it actually is. Lots of interesting information here from IMVU’s Eric Ries.

# 1st April 2009, 12:25 am / continuous-deployment, eric-ries, ivmu, testing

How to use Django with Apache and mod_wsgi. My favourite deployment option is now included in the official Django docs, thanks to Alex Gaynor. I tend to run a stripped down Apache with mod_wsgi behind an nginx proxy, and have nginx serve static files directly. This avoids the need for a completely separate media server (although a separate media domain is still a good idea for better client-side performance).

# 1st April 2009, 12:24 am / alex-gaynor, deployment, django, modwsgi, nginx, proxies, python, wsgi

Dojo 1.3 now available. Looks like an excellent release. dojo.create is particularly nice—I’d be interested to know why something similar has never shipped with jQuery (presumably there’s a reason) as it feels a lot more elegant than gluing together an HTML-style string. Also interesting: you can swap between Dojo’s Acme selector engine and John Resig’s sizzle.

# 1st April 2009, 12:19 am / acme, dojo, dojocreate, javascript, jquery, releases, selectors, sizzle

My Guardian OpenPlatform API’n’Data Hacks’n’Mashups Roundup. Superb collection of Guardian Open Platform mashups from Tony Hirst, all of which use free online tools such as Yahoo! Pipes and Many Eyes. We invited Tony in to give a tech talk at the Guardian last week.

# 31st March 2009, 10:04 pm / guardian, manyeyes, mashups, openplatform, tony-hirst, yahoo-pipes

Special Events in jQuery. How to add a custom “tripleclick” event to jQuery, using the jQuery.event.special extension hook.

# 30th March 2009, 10:15 am / brandon-aaron, events, javascript, jquery

Help! My iPod thinks I’m emo—Part 1. Detailed write-up of one of my favourite panels from this year’s SxSW, on music recommendation engines.

# 30th March 2009, 10:11 am / music, recommendation, sxsw

Years

Tags