Archive for the 'tools' Category

Mar 16th, 2018

Finally managed to cobble together an index page for the bunch of tools I’ve been hacking on in the past year as I progress through my music education. Is it better UX than the Apache default file listing? Hmm… Say hello to! Not the best domain name, I know. But everything is bloody taken […]


How it’s made: flashcards with Italian slang for musicians

Mar 7th, 2018

Update: Now in French too Update 2: and in German Update 3: now with Web Speech API (scroll to the bottom) Here’s a little app that gives you flashcards of Italian words used in music: It also pronounces the words in four different voices. The code for the tool: A few implementation notes […]


Say Yuri, or How to kill an hour on a rainy afternoon

Mar 4th, 2018

How to kill an hour on a Mac on a rainy afternoon? open say -v ? (to list all the voices installed) or say -v ? | grep en_ (for English-only) say -v Fred Fitter. Happier. More productive. Replace Fred with Yuri. Repeat. And if you want more voices, or better ones (some do […]


ffmpeg to mix audio files

Mar 2nd, 2018

Here’s how to mix three audio files into one: ffmpeg -i alex.aiff -i fred.aiff -i whisper.aiff -filter_complex “[0:0][1:0] amix=inputs=3:duration=longest” out.mp3 Note the inputs=3 part as we’re mixing three files. And this mixes only two files putting one on the left and one on the right: ffmpeg -i alex.aiff -i fred.aiff -filter_complex amerge out.mp3


Stylelint + TextMate integration

Oct 1st, 2017

Naturally, you want your lint tools integrated with your text editor. Here’s what I did to integrate Stylelint (hello!) with TextMate. New Bundle In TextMate… menu Bundles / Edit Bundles…. I didn’t see a way to add a new Command, so I right-clicked an existing one (one with a C icon for Command), selected Find […]


WebMIDI test page

Mar 3rd, 2017

Yesterday I had to plug in my keyboard to the computer and wasn’t sure if it was working. How do I test? Well, I had to look up an older post, copy and paste some code to the console… what a drag. I though it would be cool to have a page where you can […]


Batch convert image formats with imagemagick

Feb 18th, 2017

mogrify (like convert) is one of the utilities that come with imagemagick. Here’s an example of how you convert a batch of pic files to jpeg. Same for png to jpeg, vice-versa, etc. $ mogrify -format jpg *.pic Boom! Next! Also see: batch convert audio/video files with ffmpeg



Feb 6th, 2017

Here’s my new tool called intervals Play with it here. Learn about the theory behind it here. The code for the tool. What does it do? Generates a random music interval, shows it on the musical staff. You try to guess it. Clicking on the staff reveals the answer. You can also play the interval. […]



Jan 22nd, 2017

There’s a new tool in town. It lets you drag photos and gives you a map of where the photo was taken. Creepy, isn’t it? It figures this out using the meta (exif) information that’s part of a photo. The tool also lets you download a version of the photo without any exif information. The […]


File API Input Layer

Dec 31st, 2016

Every once in a while I feel inspired to create a little tool to “do one thing” ™. But often I get distracted and a little too lazy to get off the ground and forget all about it. So I thought maybe a little helper can, well, help move things along. Enter FAIL, short for […]


Making an album sampler video on the command line

Mar 31st, 2015

Here’s a video I made to raise awareness about Anaconda Limousine’s first album (where I play guitar and co-wrote 1 song): This is a post that explains how it was made so if anyone wants to made a similar one, they can have something to step on. Turns out videos like this are called […]


Downloading top X sites’ data with ZombieJS

Jun 6th, 2014

Update: Easier way to get top X URLs:, thanks @souders Update: found and commented an offensive try{}catch(e){throw e;} in zombie.js (q.js, line 126), now the script doesn’t fatal that often Say you want to experiment or do some research with what’s out there on the web. You need data, real data from the web’s […]


Jest + jQuery for testing a vanilla “app”

May 15th, 2014

Jest is a new javascript testing tool announced today. I thought I’d take it out for a spin testing the UI of a simple vanilla JS app – no CommonJS modules, no fancy stuff. Just old school JavaScript. Granted, it’s probably not what the tool was optimized to do, but it totally worked. The app […]


Writing ES6 today with jstransform

Apr 21st, 2014

So there’s this recent open-source project from Facebook called jstransform. It’s also used by ReactJS. It lets you explore ES6 features and not only explore, but use them in production code. All you need to do is add the transformation to your static resource pipeline. (Of course you have one, right, for minification and so […]


Anaconda Limousine: the guitar parts

Jun 17th, 2012

I’m part of a band that has an album out now. I know, right? (links: excuse-for-a-site, amazon, itunes). I wanted to put up all the songs on the site, but seems like there’s a little dissonance in the band whether this is a good idea. Plan B: 30s samples. Like the bigwigs do on Amazon […]


HTTPWatch automation with JavaScript

Apr 10th, 2011

Background HTTPWatch (automation) …with PHP (and again and again, and response) JavaScript shell scripting I gave this short presentation at the recent Yahoo FE summit’s open mic, here are the slides and some notes. Slides and screencast vid JavaScript shell scripting View more presentations from Stoyan Stefanov Screencast to see the thing in motion: Notes […]


YSlow/Chrome hacking

Mar 24th, 2011

If you haven’t seen it yet, YSlow for Chrome hit the streets couple of weeks ago. (And Google’s own PageSpeed did too yesterday. (And there’s now DynaTrace for Firefox. (And WebPageTest for Chrome. (What a month for x-browsering (word?) the performance tools! (And the month’s not even over yet))))) BTW, I closed all the parentheses […]


Velocity online conference March 2011

Mar 15th, 2011

Very rough notes from the event that just ended a few minutes ago ======== 1 ======== Tony Gentilcore (google) and Anderson Quach (MSFT) talked about the W3C working group and the specs for measuring performance: Navigation timing spec – HTML document: DNS, handshakes, load events Resource timing – how long JS, CSS, audio, video… take […]


CSS minifiers comparison

Oct 30th, 2010

Last year I compared some CSS minifiers, namely YUICompressor, CSSTidy (with “small” vs. “safe” settings), PHP PEAR’s CSS lib and Minify (detailed results). Now that I’ve done some work on the YUICompressor and since there’s a new kid on the block from Microsoft I thought I should give it another go. I only compared CSSTidy […]


Web Testing Framework

Jun 20th, 2010

There’s a new version and now hosted on AMO ( Get the new version there and it will take care of auto-updates in the future. WFT Web Testing Framework (WTF) is an extension to YSlow that tests for the following shady web dev practices: Use of <blink> Use of <marquee> Use of <font> Missing doctype […]


YUI CSS min – part 3 – hacks

May 21st, 2010

The previous parts are here (building and testing) and here (what gets minified). Now let’s see how YUI CSS min handles CSS hacks. As you know CSS hacks often use errors in CSS parsers in browsers to target specific browser versions and supply additional rules to work around other issues in said browsers. That makes […]


YUI CSS Min – part 2

May 20th, 2010

The first part is here. It was more about building the YUICompressor, writing and running test cases. Now let’s see what the compressor does exactly to your CSS. BTW, you can play with the web UI to see for yourself how the minifier works. Stripping comments and white space This is the bare minimum a […]


YUICompressor’s CSSMin

Mar 10th, 2010

Honored to be a part of the YUI project, I am now helping with the maintenance of the CSSMin part of the YUICompressor. My changes are now part of the trunk on github, so I’m official. Next on the agenda is documenting the thing, so that’s what I’ll try to do here, maybe in a […]


One-click Minifier Gadget (OMG) – initial checkin

Jan 31st, 2010

So I’ve been thinking and talking to folks about this idea of having one-stop shop for all your minification needs. Minification of JS and CSS as well as image optimization helps site performance by reducing download sizes. This is good. But not a lot of people do it. People don’t do it, because it’s a […]


Big list of image optimization tools

Dec 12th, 2009

2010 update: Lo, the Web Performance Advent Calendar hath moved Dec 12 This post is part of the 2009 performance advent calendar experiment (12 articles down, 12 more to go). Stay tuned for the articles to come. Let’s continue the topic of reducing file sizes started with the previous post and talk about making images […]