Blogmarks
Filters: Sorted by date
The longdesc lottery. Mark Pilgrim is now writing for the WHATWG blog. Here he makes the case for replacing the longdesc attribute with a better solution, based on ten years of developer ignorance and misuse. As always with that site, check the comments for a microcosm of the larger debate.
html4all. New mailing list / advocacy group focusing on accessibility issues relevant to HTML 5. This is something that the core HTML 5 group have taken a lot of criticism for, although it’s unfair to say that they don’t care about accessibility (they are however challenging a lot of sacred cows).
TechShop: Geek Heaven. Like a fitness club for people who make stuff: a ridiculous amount of exciting hardware (including laser etchers, robotic milling machines and a 3D printer) and trainers on hand to show you how to use it all. Sadly it’s in Menlo Park which is a bit of a trek from Brighton.
How should JSON strings be represented in Erlang? Erlang’s poor support for strings makes this a surprisingly tricky question.
An Introduction to Erlang. Erlang gets the ONLamp tutorial treatment from Gregory Brown.
Audio Fingerprinting for Clean Metadata. Last.fm have started using audio fingerprints to help clean up misspelled artists and duplicate track information.
Restructured Text to Anything. Slick set of online tools for converting Restructured Text (one of the more mature wiki-style markup languages) to HTML or PDF. Includes a nice looking API. Powered by Django.
Silly MS-DOS 5 Promo Video. I can’t decide if this is better or worse than the Windows 386 rap.
The Elements of JavaScript Style. Douglas Crockford illustrates better coding practises through refactoring of old code.
A CouchDB GUI front end. Written in C# and .NET. It looks like writing frontends for CouchDB could make an excellent project for learning a new GUI environment.
Paul Otlet described the “radiated library” in 1934. Beating Vannevar Bush in predicting something not unlike the Web by more than a decade.
£5 app. Monthly Brighton meetup for people interested in building (and maybe selling) lightweight software with 1-2 man teams. Nat and I went along last night and really enjoyed it.
Ways in Which iTunes’s Just-Released Official Ringtone Support Is Weird, Rude, and/or Just Plain Buggy. I’ve long been saying that the existence of a ringtone “industry” is a bug, not a feature.
jQuery 1.2. Lots of neat new stuff; my favourite new feature is “Partial .load()” which lets you pull in HTML with Ajax and then use a CSS selector to grab a subset of that page and inject it in to the DOM.
Styling File Inputs with CSS and the DOM. Clever hack to style the un-stylable: set the opacity of the file input to 0, then use a bit of JavaScript to make sure the (now invisible) browse button is always under the mouse.
The Tale of the Mechanical Virus. “What I had discovered, in essence, was a mechanical virus. It infects Mac laptops and speads via the DVI adapters.”—I really hope this isn’t why my DVI adapter is on the blink.
Building the Social Web with OpenID. Slides from my keynote at yesterday’s PyCon UK.
django-sphinx (via) More code from Curse Gaming; this time a really nice API for adding Sphinx full-text search to a Django model.
wikimarkup (via) “MediaWiki markup in Python”. I’ve always suspected that MediaWiki was like Perl; the only thing that can parse MediaWiki is MediaWiki. Not sure how faithful this Python port is but I’d love my theory to be proved wrong.
Advanced Django. Slides from my hour long tutorial at PyCon UK this morning. Most of the material was adapted from OSCON, but I also added a new section covering newforms.
Google Maps API gets clickable polylines and polygons. Interesting explanation of how they optimised calculating the distance to the nearest point on a polyline.
Corrupt countries were more likely to support the OOXML document format. “We used the 2006 CPI index (Corruption Perceptions Index) as a measure of corruption.”—a statistical study by Electronic Frontier Finland.
Protoscript (via) JavaScript tool designed for easy prototyping of JS interactions; powered by YUI and jQuery.
HTTPOnly cookie support in Firefox. Five years after the bug was filed, HTTPOnly cookie support has gone in to the Mozilla 1.8 branch. This is a defence in depth feature that has been in IE for years—it lets you set cookies that aren’t available to JavaScript, and hence can’t be hijacked in the event of an XSS flaw.
Opera 9.5 (Kestrel). The latest Opera alpha includes a bunch of CSS3 features (including an almost full implementation of CSS3 Selectors) as well as the ability to use SVG for scalable background images.
Django on Jython: What I’ve done until now. It’s not quite there yet (the new Jython is Python 2.2 with a few 2.3 features; Django requires 2.3 at least) but it’s looking pretty promising.
Primary & Secondary Actions in Web Forms. Fascinating results from an eye tracking study on the placement of “Submit” and “Cancel” buttons—one layout was a whole six seconds slower than the others. Luke Wroblewski’s “Web Form Design Best Practices” book looks like it will be excellent.
CouchDb: Some Context. CouchDb developer Jan Lehnardt wrote up detailed notes on slides from a presentation he gave back in June, explaining most of what’s interesting about CouchDb (although without the new JavaScript function query language).
Imaginary numbers. “We would like to back up our survey with an equation from an expert to work out which celebrity has the sexiest walk, with theory behind it”—Ben Goldacre provides inside information on how PR firms invent science to back up their campaigns.
Amazon EC2 Basics For Python Programmers. Detailed introduction and tutorial from James Gardner.