Building notes, projects, and occasional rants


last update:

SQLite server

Based on the latest libdrizzle that I talked about yesterday, Eric Day created a server for SQLite databases with the same wire-protocol as MySQL. Recently we have seen people re-using the memcached wire-protocol on other projects. This allows those new projects to come up with clients for most languages practically from the start. I wonder if the same will happen with the MySQL wire-protocol, now that a lot of the work is done by libdrizzle.

The Drizzle project is very interesting to follow: a back-to-basics version of MySQL. Yesterday they released a first version of their new client and protocol library. It's backward compatible with MySQL wire-protocol, so you it provides a easy upgrade path. There are some interesting features in the new library. The one I find most interesting is the complete non-blocking I/O support. That is one that I definitively want to play with.

The big red blob

I bought Pulling String with Puppet right after it came out, as I graduated from CFEngine to Puppet. Puppet keeps me sane, not having to worry with day-to-day managing of a couple of servers. But the most strange part of the book is the cover: you get a small index, with chapter 7 starting on page 153, and a big red blog "192 pages", so you can only image that it is a big chapter.

Mental note

This should be obvious after you think of it, but it is a honest mistake and cleaning up the mess afterwards can cause you big problems, so here it is: Running some_command --base=~/Sites/dir is very different from some_command --base ~/Sites/dir The extra = makes all the difference. With it, the ~/ is not expanded to your $HOME by the bash shell, so if your some_command uses that path as a base directory, you'll end up with a new path like .

Twitter reference

Shadow Puppets, by Orson Scott Card, chapter 3: Gossip flies around here, since there's nothing else for the parents of geniuses to do but twitter to each other about the doings of their brilliant boys and girls. Curious. I wonder if they where Card fans.

Updated library

Interesting post at Joyeur about the new library, the set of books that most of us should have laying around. I got all of them minus one, Solaris Performance and Tools, from both the new and the old list. I think I lost the APUE, though. Of the listed books I would single out Scalable Internet Architectures by Theo Schlossnagle, as one of the most insightful books I read in the last two years.

Varnish ESI support

I have a love/hate relationship with Varnish, but partial support for ESI was added in recent builds. ESI allows most of your site to be served from the Varnish cache, and smaller parts of the page, like personalization, still hit you application server. Think old style server-side includes, but with decent cache control.

On bug trackers...

My relation with bug trackers is full with disappointments. Or maybe unmatched expectations. Bugzila, Trac, RT, Redmine, FogBugz, all of them where courted in some form or another. But I'm still a bachelor. As any successful marriage, there are some things that your partner will bring to the table (organization, perfect memory) and somethings that you need to be happy (the ability to integrate with my workflow). And so far, all of them failed to make me happy.