Simon Willison’s Weblog

Subscribe
Atom feed

Blogmarks

Filters: Sorted by date

CSS 3: Progress! Alex Russell on the new exciting stuff going in to CSS 3 based on real-world implementations in the modern set of browsers. Of particular interest is the new Flexible Box specification, which specifies new layout primitives hbox and vbox (as seen in XUL) and is already supported by both WebKit and Gecko.

# 22nd August 2009, 11:52 am / alex-russell, browsers, css, css3, flexiblebox, gecko, hbox, standards, vbox, webkit

Dive Into HTML 5. Mark Pilgrim’s free online book on HTML 5—currently just one chapter on canvas (which neatly illustrates the coordinate system using a diagram rendered using canvas itself) but certain to become an invaluable resource for anyone looking to take advantage of HTML 5.

# 20th August 2009, 2:40 pm / books, canvas, html5, mark-pilgrim, web-standards

Eulogy to _why. The pseudonymous hacker/artist _why has deleted his online presence, apparently moving on to other things. John Resig explains why _why has been such an inspiration.

# 20th August 2009, 9:57 am / john-resig, whytheluckystiff

By Popular Demand, We’re Keeping the Term Extraction Service. Yahoo! aren’t shutting down the term extractor after all. On the one hand, this is a great decision—but this kind of back and forth (dare I say flip-flopping?) really doesn’t help encourage people to build against hosted APIs.

# 19th August 2009, 11:44 am / termextractor, yahoo, ydn

How to find un-indexed queries in MySQL, without using the log (via) Use tcpdump(!) to sniff the MySQL protocol and dump out queries that had the “no index used” bit set.

# 19th August 2009, 11:42 am / mysql, profiling, tcpdump

easy_install no longer working with SourceForge-hosted projects? Unsurprising, since installation software (which is often run as root) that crawls the web and scrapes HTML pages for download links is a horrible, horrible idea.

# 19th August 2009, 11:38 am / easyinstall, python, sourceforge

Kung Fu People (via) The first site to launch based on the open source Django code from djangopeople.net!

# 19th August 2009, 11:37 am / django, django-people, kungfu, open-source, peter-bengtsson, python

Caching in ASP.NET with the SqlCacheDependency Class. Interesting cache invalidation concept: set up dependencies between cache entries and tables or rows in the database, then use triggers (which I presume are automatically created for you) to clear your cache.

# 18th August 2009, 12:15 pm / aspdotnet, caching, invalidation

Data Is Journalism: MSNBC.com Acquires Everyblock. Congratulations Adrian, Wilson and the team! Brady Forrest reports the acquisition within the larger context of the rise of data-driven journalism.

# 18th August 2009, 12:10 pm / adrian-holovaty, brady-forrest, data-journalism, everyblock, msnbc, wilson-miner

You Deleted Your Cookies? Think Again (via) Flash cookies last longer than browser cookies and are harder to delete. Some services are sneakily “respawning” their cookies—if you clear the regular tracking cookie it will be reinstated from the Flash data next time you visit a page.

# 17th August 2009, 3:23 pm / cookies, flash, privacy, respawning, security

On HTML 5 Drag and Drop. Francisco Tolmasky investigated HTML 5 drag and drop, which allows web apps to implement drag and drop between windows and between the browser and the desktop. He found a number of problems with the spec and proposes detailed solutions.

# 17th August 2009, 12:31 pm / 280slides, draganddrop, francisco-tolmasky, html5, javascript, standards

Microsoft backs long life for IE6. Oh FFS... “The software giant said it would support IE6 until 2014—four years beyond the original deadline.”

# 14th August 2009, 2:53 pm / browsers, ffs, ie6, internet-explorer, microsoft

Python logging from multiple processes. Use Python’s socket log handler to send all log messages to a single server—the python-loggingserver project implements such a server as a Twisted application with a handy web interface for viewing the aggregated logs.

# 13th August 2009, 11:55 pm / logging, python, twisted

Mandelbrot set in PostgreSQL. Surprisingly short SQL statement that produces an ASCII art Mandelbrot set.

# 13th August 2009, 2:23 pm / ascii-art, fractals, mandelbrot, postgresql, sql

Scriptlets—Quick web scripts (via) From the prolific Jeff Lindsay, a pastebin-style tool for short server-side scripts written in Python, JavaScript or PHP that executes them within a Google App Engine powered sandbox. The Java code that implements the service is available on GitHub.

# 13th August 2009, 1:51 pm / github, google-app-engine, java, javascript, jeff-lindsay, open-source, php, python, scriptlets, webhooks

SQL pie chart. Generating ASCII art pie charts using the world’s scariest MySQL SELECT statement.

# 13th August 2009, 1:04 pm / ascii-art, graphing, mysql, sql

Best of OpenStreetMap (via) I keep on telling people OpenStreetMap is this year’s Wikipedia—at its best, it beats commercially available maps. This “best of” site highlights the areas where OSM really shines (the yellow stars)—the German mapping community in particular have produced some outstanding cartography.

# 13th August 2009, 12:30 pm / cartography, mapping, maps, openstreetmap, wikipedia

minixsv (via) As far as I can tell, this is the only library that can validate XML using pure Python (no C extension required). I’d be extremely happy if someone would write a pure Python library (or one that only depends on ElementTree, which is included in the standard library) for validating XML against a Relax NG Compact syntax schema. Even DTD validation would be better than nothing!

# 12th August 2009, 4:59 pm / elementtree, minixsv, python, relaxng, validation, xml, xmlschema

Yahoo! Term Extraction and Contextual Web Search services to be discontinued. The official closure date is August 31st. Term extraction was really useful—thankfully there are a number of decent alternatives such as Zemanta, OpenCalais and topia.termextract.

# 12th August 2009, 11:57 am / opencalais, termextractor, topia, web-services, yahoo, zemanta

topia.termextract. Impressive Python term extraction library (similar to the various term extraction web APIs but you can run it on your own hardware), incorporating a Parts-Of-Speech tagging algorithm.

# 10th August 2009, 9:26 pm / nlp, python, termextraction, topia

tr.im is “discontinuing service”. “However, all tr.im links will continue to redirect, and will do so until at least December 31, 2009.Your tweets with tr.im URLs in them will not be affected.”—these statements seem to contradict themselves. Will tr.im URLs in tweets stop working after December 31st or not? Any chance they could hand the domain over to the Internet Archive? At any rate, this is exactly why centralised URL shorteners are a harmful trend.

# 10th August 2009, 11:06 am / internet-archive, redirects, trim, twitter, urls, urlshorteners

Richard Jones: Something I’m working on... Python’s with statement appears to provide just enough syntactic sugar to create some really interesting DSL-style APIs—here’s a very promising example for laying out GUI applications.

# 7th August 2009, 3:47 pm / dsl, gui, python, richard-jones, with

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.”

# 31st July 2009, 1:40 am / ads, gmail

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.

# 30th July 2009, 10:58 pm / google-maps, maps, overlays

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

# 30th July 2009, 12:35 pm / design, patterns, peter-morville, search, ui, usability

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]”.

# 30th July 2009, 12:20 pm / boss, pipes, searchmonkey, yahoo, yahoo-pipes, ydn, yql, yui

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.

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

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.

# 29th July 2009, 1:45 pm / django, python, security

Years

Tags