Building notes, projects, and ocasional rants


last update:

Using Tarpipe via XMPP

Tarpipe is a wonderful service to execute a workflow of web services. You create your workflow visually, and then you send an email or POST to a API end-point to run it. For example, this is the workflow I use to post to Twitter, Jaiku, and Pownce: Usually I would send an email and my subject would be posted, but I also have an IM client always available. So I wrote this XMPP-to-Tarpipe gateway.

OAuth and Google

Excellent news! Google now supports OAuth on all Goggle Data APIs.


On the topic of Bonjour goodies, take a moment to read about, and install, some of the *jour tools. Very cool stuff.

Bounjour, CPAN!

For a Perl programmer, a local (on your laptop) CPAN mirror is a worthy investment. The problem is that a full mirror is 5.8Gb of disk space. Fortunately we have CPAN::Mini that creates a mirror of the most important stuff using only 830Mb. So now you have your local mirror, and after you add the path to your cpan urllist configuration, all your module installations will use this faster mirror.


Something to pay attention to, Reconnoiter. Its still work in progress but in the last status report, Theo Schlossnagle mentions that he is already using this software to monitor about 2.9k services with less than 0.10 load, peek. That's impressive.

A simple file upload?

Yesterday, I tried to upload my usual avatar to my Google Account. If looks like a simple file upload, right? Guess not: WTF? Couldn't they just fallback to a simple file upload? Is this rocket science?

MySQL master/master how-to

New location: the How-to is now live at In the past, I needed to use a MySQL master/master setup for a client. At the time, I got it to work, but forgot to take notes about the process. In the last days, a friend asked my for help to do a setup like that again, to use with a Tigase XMPP server. So I wrote this how-to, complete with configuration files, sample data and schemas, that walks you step-by-step through the process of setting up a pair MySQL servers in a master/master configuration.

Git starters

In the last two or three weeks, I had about five or six people IM'ing me "What's the best way to start with git?". Last time I wrote about this was almost 7 months ago, so I think its time for an update. First, I personally compile git from source. I do not trust package maintainers yet. Some parts of git use ssh (for example), so they mark ssh as a dependency, and this brings their own version of ssh.

The Pre-Air Season

Every year, around this time, we start seeing pre-air or pilot episodes of shows that might or might not be produced for next season. This year is no exception and the first round of shows is out there. I've seen some of them and I organized them into categories. First, I think these are sure winners: True Blood (HBO): by Alan Ball (Six Feet Under fame) - vampires are now in the open, as a regular member of our comunity.

bash completion for chit

cheat is a very nice command line cheat sheet system. chit is a git-powered version, that even supports private cheats or project level cheats distributed using the git system. I've added a bash completion script to chit. It's very simple but it works for me. I've also sent a pull request to robin, so you might see it in the main chit repo in the future. Update: you can find the bash completion script in the master chit repo now.