Blogmarks
Filters: Sorted by date
The magic of sub-editors. A neat illustration of how sub-editors work their magic, using the original article with strikes through the parts that were edited out.
The Widening HTML5 Chasm. Simon St. Laurent’s commentary on the HTML5/Adobe situation. The most interesting piece I’ve read on it so far.
A day on Chatroulette, the web’s weirdest new outpost. By the Guardian’s Bobbie Johnson.
Revisiting the click track. Paul Lamere uses the new Echo Nest API to access analysis data for music tracks and plot the beats per minute, making it easy to spot bands or drummers using a click track or drum machine to stay in tempo.
Redis in Practice: Who’s Online? Using Redis to implement a “which of your friends are online now” feature, by maintaining a set of active user IDs for every minute, then intersecting the past five minutes of user IDs with a set containing the IDs of your friends.
A new Buzz start-up experience based on your feedback. Buzz is switching to the more obvious model: use existing Gmail behaviour to suggest a list of people to follow, rather than auto-following them. It feels pretty clear to me that this is how following recommendations should work.
Around the World by Zeppelin. If you’re in the UK, you have four days left to catch this fantastic 90 minute documentary on iPlayer. It covers the first ever flight around the world, in the Graf Zeppelin in 1929, from the point of view of Lady Grace Drummond-Hay, a reporter for the Hearst media empire and the only woman on the voyage. The archive footage is incredible.
ElasticSearch: Your Data, Your Search. A neat example of how ElasticSearch’s schemaless indexes and native JSON support make it ridiculously easy to index different types of data and run queries across them.
Algorithmic recruitment with GitHub. Matt Biddulph crawls GitHub’s social graph using JUNG (the Java Universal Network/Graph Framework), JRuby and Yahoo! BOSS to find good leads on interesting developers in specific geographic locations.
Google Image Charts: Mathematical (TeX) Formulas (via) I’m not sure when they added this, but you can now use the Google Charts Image API to render mathematical formulas, specified using TeX syntax. Wordpress.com and Wikipedia have both offered this feature for quite a while, but now you can use it anywhere on the Web.
Why toppcloud will not be agnostic. Ian Bicking’s toppcloud aims to offer deployment with the ease of use of AppEngine against a standard, open source Ubuntu + Python 2.6 + mod_wsgi + Varnish stack. Here he explains why he’s not going to vary the required components: keeping everything completely standardised means everyone gets the same bugs (and the same fixes).
Elastic Search (via) Solr has competition! Like Solr, Elastic Search provides a RESTful JSON HTTP interface to Lucene. The focus here is on distribution, auto-sharding and high availability. It’s even easier to get started with than Solr, partly due to the focus on providing a schema-less document store, but it’s currently missing out on a bunch of useful Solr features (a web interface and faceting are the two that stand out). The high availability features look particularly interesting. UPDATE: I was incorrect, basic faceted queries are already supported.
Kottke on Chatroulette. Jason Kottke: “In short, Chatroulette is pretty much the best site going on the internet right now.”
HTML5 video markup, compatibility and playback. Everything you need to know about embedding HTML5 video on a page, complete with multiple codecs to cover the various supporting browsers and a fallback to Flash.
WARNING: Google Buzz Has A Huge Privacy Flaw. Interesting one this: by default, Buzz creates a public profile for you that lists the people you follow—but your default set of followers is derived from the people you contact most frequently using Gmail. This means users of Buzz may inadvertently reveal their most frequent contacts, which is an issue for people like journalists with anonymous sources, unhappy employees seeking new work or even people having e-mail based affairs.
An Easy Way to Make a Treemap. The second in Flowing Data’s handy series of R tutorials.
On walking into a disaster zone. Schuyler Erle: “The World Bank was looking for technical GIS professionals, ideally French-speaking, to go and advise the government [...] I can sort of speak French. Sure, why not?”
5 Questions for Simon Willison. I got interviewed about WildlifeNearYou for the Flickr code blog, in particular the way the site uses machine tags.
Plupload (via) Fantastic new open source project from the team behind TinyMCE. Plupload offers a cross-browser JavaScript File uploading API that handles multiple file uploads, client-side progress meters, type filtering and even client-side image resizing and drag-and-drop from the desktop. It achieves all of this by providing backends for Flash, Silverlight, Google Gears, HTML5 and Browserplus and picking the most capable available option.
glitch zen. Glitch is the upcoming online game from Tiny Speck, many of whom are ex Flickr and indeed ex Game Never Ending before that. Glitch Zen is the first fan site.
Presenting django-devserver, a better runserver. I really like this—it’s a Django management command (./manage.py rundevserver) which adds SQL logging and cache access summaries to the console output of Django’s local development server. It solves a similar set of problems to the debug toolbar, but requires slightly less setup and doesn’t inject additional HTML in to your pages. You can add your own custom modules to it as well.
Redis Virtual Memory: the story and the code. Fascinating overview of the virtual memory feature coming to Redis 2.0, which will remove the requirement that all Redis data fit in RAM. Keys still stay in RAM, but rarely accessed values will be swapped to disk. 16 GB of RAM will be enough to hold 100 million keys, each with a value as large as you like.
Lou’s Pseudo 3d Page. Spectacularly detailed exploration of the road graphics used in racing games prior to true 3D. This is a potential gold mine for anyone looking for a fun project to try out with canvas. Bonus points for comet integration—I’m still looking forward to the first real-time multiplayer game in the browser using comet and canvas.
Integrate Tornado in Django. A handy ./manage.py runtornado management command for firing up a Tornado server that serves your Django application.
Sketchpad—Online Paint/Drawing application (via) Impressive canvas based bitmap drawing tool with an extremely smooth UI.
svg-edit. Click the “Try out SVG-edit 2.4” link—this is an impressive, full featured open source vector graphics editor that runs in the browser.
twitter-text-conformance (via) This is a neat idea: Twitter have released open source libraries for parsing standard tweet syntax in Ruby and Java, but they’ve also released a set of YAML unit tests aimed at anyone who wants to implement the same parsing logic in other languages.
What’s hot? Introducing Zeitgeist. Dan Catt’s first project at the Guardian. “When something appears on the Zeitgeist page, it’s because it performed better (got more attention) than the norm for that content type/section/day”. The application itself is written in Python and runs on Google App Engine.
A History of the Sentence “Buffalo buffalo buffalo buffalo buffalo.”. Complete with explorations of the grammar in Lisp.
WildlifeNearYou can now tag your Flickr photos for you. I’m really excited about this feature: if you opt-in, WildlifeNearYou will now write name and latin name tags to your Flickr photos after you’ve marked the species in the photo. This is even more interesting when you combine it with our suggest-a-species feature (the photo won’t get tagged until you’ve approved the suggestion). We also set the location on photos which don’t yet have one, but the real fun is the machine tags we’ve added, which allow developers to use the Flickr API to find photos by their WildlifeNearYou metadata (trip, species and place IDs). As a neat extra touch, the identifiers we use in the machine tags are the same as the ones used by our custom wlny.eu URL shortener, so it’s trivial to turn a machine tag in to the URL for that page on the main site.