Play an 80s synth in your browser with 106.js, a MIDI-enabled emulation of the Roland Juno-106 synthesizer. Chrome/Desktop only. Github repo here.
A straightforward web interface for geocoding addresses in a CSV (or other delimited text file) and visualizing the results on a map as you go. Spits out CSV and GeoJSON. [more inside]
Fuck Shit Up is a Chrome extension that semi-judiciously sprinkles some "fuck"s into whatever web page you're reading. Not enough fucks? Hit the button a few more times. Gets interesting results when applied to news, dry technical stuff, Wikipedia, and Twitter at the least. [more inside]
Generate an image and slap the No Symbol on top! [more inside]
@autocompleterap is a Twitter bot that combines rap lyrics (from ohhla - scraping courtesy of @beaugunderson) and Google search autocomplete suggestions. [more inside]
A simple quiz: Guess whether the text is from a subject in my spam folder or a news headline. Or: 21 scandalous true uncensored answers no one wants you to know, but everyone — including your future life partner — is talking about. [more inside]
Instagram announced Hyperlapse - their new smoothed timelapse app for iOS (which is really cool). I felt it was lacking an 'add yakety-sax' button, so I went and created a bookmarklet to do just that.
A drag-and-drop web tool for analyzing network logs from the game League of Legends. Fast, simple, helps you understand the lag you see while playing the game. It's a simple HTML5 app built with D3.js. Screenshot, GitHub.
The disintegrator lets you select any valid audio file from your library (MP3, wav etc) which is supported by your browser. Once you click play the distortion level continually increases until you're left with a beautifully distorted cacophony! [more inside]
SliderBuilder is an interactive web-based WYSIWYG editor for creating slideshows, content sliders, and carousels for a website or blog. You manipulate slides, layers, images, and text through a web interface, then either generate HTML code to paste into your site or publish your slider at sliderbuilder.com. [more inside]
Because I was confused by them initially, I wrote an explanation of the concept of quadtrees (including some details about the D3 implementation of them), with some interactive elements that hopefully provide some hands-on stickiness. I tried to shoot for a non-programmer audience in the end. [more inside]
Sheet music / guitar tabs rendered entirely in the browser, synced with a real audio recording. Slow down without changing pitch, loop sections, resize notation dynamically. Demo video.
Spare yourself the anguish of vainly trying to tweet a 118-character pull quote. [more inside]
I have started a new technical blog, where I will be documenting various projects I have worked on (typically involving code, though not always). [more inside]
Inspired by this post, I threw together a bookmarklet for decrypting morse code in a web page. Once you've added the bookmarklet, select the morse code on a page and click it. The decrypted text will pop up in an alert box. Github project here.
Using the same password for multiple email, e-commerce and social networking websites is risky, but the majority of web users still do it. This tool allows you to generate unique passwords for a bunch of popular websites in one step. [more inside]
Metropho.rs is a geographic metaphor map that plots "X is the Y of Z" tweets by putting the "Y" label on the "X" location. Some nice coverage by the Atlantic Cities blog here. [more inside]
Spotmaps is an on-going project to map the colour footprints of different films. The website was designed to show off the completed image library. [more inside]
The Decision Tree Generator parses a YAML file and, if it's in the correct syntax, creates a series of questions and responses that can be displayed on a webpage. It doesn't require a login, and the tree you create is around until someone else overwrites it. [more inside]
Tabminder is a Google Chrome extension I built to intercept distracted browsing and give me occasional reminders to get back to work. When I open a distracting tab on my blacklist, Tabminder starts counting down from a preset time limit. When time's up, it prompts me to close the distracting tab or restart the timer. It's just annoying enough to keep me focused but not so strict that I can't visit MetaFilter once in a while. It works well in combination with StayFocusd to keep me from wasting my daily distraction quota. [more inside]
Tweetchive is a little web hack I made to show your past tweets in various views. The primary view is a map, there are also views of pictures and text and links. It's not really a finished product, but it's useful enough I launched it. [more inside]
With an accompanying intro and arty blog post, Project it Yourself rethinks map projections and lets you make new ones from scratch, with nothing more than household math.
I'm proud to announce my first iPhone App: Gibberish Generator. This app allows you to generate pseudo-random sentences from lists of verbs, nouns, and the like. Optionally, you can enable your contacts, to allow them to be used in the random fun. The result can be tweeted or emailed to your friends. I can't imagine a more useful app than that. Perhaps I need a better imagination. [more inside]
Several months ago I linked to my first crack at writing a Pac-Man clone in HTML5. Based on mefite suggestions and my own revision plan, I've completely reworked my original code. Play as Pac-Man, Ms., or Jr., and select from several mazes. Original sound and graphics "borrowed" from MAME emulation. Works best in Chrome and Firefox. [more inside]
Curious which way the wind blows? Here's a map of historical winds in California and here's a detailed view of Honolulu. WindHistory is an interactive web map that shows wind roses for 2500 stations in North America. Built with SVG, Polymaps, and D3.