One of the curses of being an Engineer is that we have the knack for hacking things, not just computers, but pretty much anything around the house, garage, or office. It's a curse because none of the products we buy ever work quite the way we want them to. If only my cordless phone had this one extra button. Why did they build the closet organizer that way? If I take out this wall, move these stairs, and raise the ceiling… Well, you get the idea. I often envy people who just buy a house, car, or piece of technology and use it as is. They must have a lot more free time.
Lately, I've found myself hacking my D-Link DNS-323 NAS box. This appliance is an empty two drive bay with a Gig-E port. You buy it and two of your favorite SATA drives, open the cover and slide the drives in, and then go through a simple web setup…instant NAS with RAID. If I was a normal person, I would leave it alone at this point because it works perfectly without any modifications. But this is really a geek toy in disguise. It runs Linux, and if you put a script with the correct name on one of the drives, the appliance executes that script at startup. There's an entire DNS-323 wiki dedicated to turning it into whatever you want to make it. You can even mod the hardware to get access to the JTAG pins and the serial port. So far, I've only enabled the command line and SFTP, but I'm really tempted to make a web server, even though I have absolutely no need for one.

Then I started looking at the XO Laptop, because my 3 year old keeps monopolizing my wife's computer to go to PBSkids.org. You can't buy this from OLPC currently (the Give One Get One program from the holidays is over), but here again is another eminently hackable Linux appliance. It's a massively scaled down computer, for sure, but it's also designed to be completely open for development (within the limits of the very small Flash-based media). There's a nice wiki for this appliance, too. Perhaps it's a good thing I can't order it yet, because my daughter would constantly be asking me why I'm always using her computer!

As my co-workers will tell you, I am a Linux n00b on my best days. But, I'm still finding myself wishing that all of my electronic toys ran open software so that I could hack them if I wanted to. More importantly, I find myself wishing that more consumer electronics companies start thinking in terms of user-customizable appliances. I believe the technical intelligence of the population is growing dramatically (as evidenced by anyone with a computer-savvy toddler), and the demand for this is only going to increase. Companies could build communities around their products and pick up community-developed features into future product versions, just like we do in the Eclipse projects. So hooray for embedded Linux-based appliances and companies that either directly or indirectly support hacking! Now if I could just find some more time…
Tags: dns-323, xo laptop, olpc, embedded linux, eclipse, windriver