Calamity Lane

Curious Code for Curious Coders

Redir Is Awesome

More than anything, I love tiny tools that do one thing, and do it well. The UNIX philosophy sends me into fits of programmery giggliness for precisely this reason.

Recently I discovered a tiny new tool to add to my toolbox. I had a test server running on port 3014, and needed to briefly expose it on port 80 (I know, I know, I’ve just made myself eligible for a righteous noodle-lashing).

Hey, New Blog Software Again!

So after many years of hating the blogging software I implemented to replace the blogging software I hated before, I’m implementing new software to replace the replacement software. Which I hate.

Updates to follow.

Hidden Chrome Features on CR-48

After having playing around with ChromeOS on the CR-48 netbook (which I’ve blogged about before), I’ve found a few more interesting tidbits that let you dig deeper into the system.


  • Experimental Features/Flash Drives: chrome://flags
  • Nicer View of Memory Usage: about:memory
  • Hilarious Pranks: about:crash
  • Wi-Fi Troubleshooting: about:network
  • Manage Extensions and Apps: chrome://extensions

Chrome OS on the CR-48: It Has Developer Bits!

So for anyone out there who is not already insanely jealous of my good looks and/or impeccable fashion sense, you should know I was one of the recipients of a CR-48 netbook in Google’s free giveaway.

A full review is forthcoming (sneak preview: it is awesome), but here I just wanted to share a couple quick things I found that turn ChromeOS from an interesting toy to a usable developer’s tool.


  • Process Manager/Task Manager: Shift-Esc
  • Shell/SSH Client: Ctrl-Alt-t
  • Developer Tools: Ctrl-Shift-i

Zombie Songs

For all those times when you’ve been thinking to yourself “Man, this would be the perfect situation in which to play a zombie song,” I’m glad to say modern independent musicians have stepped up to fill this gap:

Further zombie song recommendations are welcome in the comments.

A More Effective Name

A quick note:

If you are:

  • Using Rails
  • Using RSpec
  • Have just discovered the incredible joy of named scopes

…restrain yourself, by any means available (up to and including physical violence) from creating a named scope called “public” or “private.” The reasons for this should be fairly obvious.

Really, whoever ends up cleaning up behind you will appreciate it.

Annihilate Ubuntu’s Annoying System Beep

A quickie to remind myself next time I build an Ubuntu box, and am being slowly driven batty by a tiny, tinny obsolete PC speaker made of hate:

sudo gvim /etc/modprobe.d/blacklist

(or /etc/modprobe.d/blacklist.conf, for Ubuntu 9.04) …and add the following line:

blacklist pcspkr

From the command line, kill it in the current session:

sudo rmmod pcspkr

No more waking the baby with late-night hacking sessions!

Select Tag Funkiness With Merb

In my ongoing travails with Merb & Friends, I’ve run across a few behaviors with the select() form helper method. Since there’s currently a dearth of examples, I thought I’d document them for myself and future googlers.

A Rails Developer Spends One Week With Merb (and HAML and JQuery and DataMapper)

Developers often talk about some hot new technology they plan on spending time with, but very rarely do they ever get around to it. I’m ordinarily in the same boat, but last week I had a new personal project crop up for a simple web application (5-6 models) which was an ideal candidate for testing out a slew of new tech that I’ve been meaning to get around to.

Merb, an erstwhile competitor to Rails, has been making a big splash lately. I decided to step out of my comfort zone of Rails/Acti* and into the wild and woolly world of young, cutting-edge frameworks. Since I’m undergoing the pain of learning a new framework, I figured I’d go whole hog and use Haml, jQuery, and DataMapper, as well.

Before last week, I’d never done much more than spin through the initial tutorials for any of these tools. That being the case, I can’t really speak to performance, deployment, or any of half-a-hundred other critical issues to consider when selecting a framework– this is strictly a shallow, first-impressions review.

I welcome comments and corrections to my observations, and suggestions for easing some of the new-developer pain.