What happened was that, for reasons which I’ll write about under the Concur.next rubric, I wanted to turn my attention back briefly to Erlang. Which means that I needed to fetch & build the latest version. Which ended up costing me three days of Open-source yak shaving. Which had a happy ending and some lessons to teach.
When I fetched Erlang R13B03, the build failed at a late stage, complaining of a libz with the “wrong architecture”. I saw that the suspect libz was coming out of MacPorts space, and realized with a guilty feeling that I’d changed computers and done a couple of major OS X updates since I’d last refreshed MacPorts.
The advice was to uninstall everything and reinstall what you needed, so I did that, and then realized that the blog-publishing software on my laptop was broken, so I fought with MacPorts and then fought with the Perl that comes with OS X and then I built my own Perl from source and fought with that and I’m afraid I was unnecessarily unpleasant to my family and loved ones while the fighting was going on.
Grr Snarl Hate Hate Hate · I’m not going to give a blow-by-blow account of the struggle; suffice it to say that a situation in which (under Snow Leopard) Perl, out of any of the many boxes it comes in (MacPorts, OS X, build-from-source), refuses to interoperate with MySQL, in any of the versions that are readily available, really sucks.
Further adding to the suckitude is the fact that more or less every time I change computers or operating systems, I can count on spending a couple of days wrestling my publishing system back together so that I can actually send the world a simple blog post like this.
The statement of (and solution to) my problem was easy to find once I’d tracked it down after two days of flailing; check it out at Stack Overflow.
On The Other Hand · The text you are now reading is the output of a compact but amazingly broad-based suite of technology including Perl, MySQL, Ruby, Java, ImageMagick, and a bunch of other pieces it’s easy to forget about.
I haven’t ever paid anybody a penny for any of this. It works automatically, unobtrusively, and fast. It publishes a decent-looking blog and an uncluttered Atom feed, accepts and moderates comments, and supports tens of thousands of subscribers, pumping out hundreds of gigabytes a month with no observable performance problems.
I only have to work on it every other year or so when I change
something in the infrastructure. And that’s just on OS X; on the Debian box
where the production version runs, a few
apt-get invocations have
never failed to make it all Just Work.
So in which universe would it make sense for me to gripe about putting a couple of days of effort in every other year to keep an elaborate and somewhat jury-rigged publishing system (for which I’ve paid nothing, remember) on the air?
My heartfelt thanks to the authors of Perl and MySQL and MacPorts and Stack Overflow and Google and ImageMagick and Expat and the literally hundreds of other huge chunks of Open-Source software unglamorously Just Working behind the scenes so that I can get shit done and inflict my writing on the world.
Oh, and Erlang built just fine. Why would one not use Open Source?