<?xml version="1.0" encoding="UTF-8"?>
<?xml-stylesheet type="text/xsl" media="screen" href="/~d/styles/atom10full.xsl"?><?xml-stylesheet type="text/css" media="screen" href="http://feeds.feedburner.com/~d/styles/itemcontent.css"?><feed xmlns="http://www.w3.org/2005/Atom" xmlns:openSearch="http://a9.com/-/spec/opensearch/1.1/" xmlns:blogger="http://schemas.google.com/blogger/2008" xmlns:georss="http://www.georss.org/georss" xmlns:gd="http://schemas.google.com/g/2005" xmlns:thr="http://purl.org/syndication/thread/1.0" xmlns:feedburner="http://rssnamespace.org/feedburner/ext/1.0" gd:etag="W/&quot;A0AFR3s7fSp7ImA9WhBbFkU.&quot;"><id>tag:blogger.com,1999:blog-107080706431419454</id><updated>2013-05-16T00:35:16.505-07:00</updated><title>only rainwater and pure grain alcohol</title><subtitle type="html" /><link rel="http://schemas.google.com/g/2005#feed" type="application/atom+xml" href="http://blog.morrildl.net/feeds/posts/default" /><link rel="alternate" type="text/html" href="http://blog.morrildl.net/" /><link rel="next" type="application/atom+xml" href="http://www.blogger.com/feeds/107080706431419454/posts/default?start-index=26&amp;max-results=25&amp;redirect=false&amp;v=2" /><author><name>Dan Morrill</name><uri>https://plus.google.com/112413860260589530492</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="32" height="32" src="//lh6.googleusercontent.com/-I7qzkMo1ktM/AAAAAAAAAAI/AAAAAAAAa78/UIvpyYkgJQc/s512-c/photo.jpg" /></author><generator version="7.00" uri="http://www.blogger.com">Blogger</generator><openSearch:totalResults>42</openSearch:totalResults><openSearch:startIndex>1</openSearch:startIndex><openSearch:itemsPerPage>25</openSearch:itemsPerPage><atom10:link xmlns:atom10="http://www.w3.org/2005/Atom" rel="self" type="application/atom+xml" href="http://feeds.feedburner.com/morrildl" /><feedburner:info uri="morrildl" /><atom10:link xmlns:atom10="http://www.w3.org/2005/Atom" rel="hub" href="http://pubsubhubbub.appspot.com/" /><entry gd:etag="W/&quot;DUIBRnw-cSp7ImA9WhZTFkU.&quot;"><id>tag:blogger.com,1999:blog-107080706431419454.post-7045809947716295966</id><published>2011-03-20T23:05:00.000-07:00</published><updated>2011-03-20T23:05:57.259-07:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2011-03-20T23:05:57.259-07:00</app:edited><title>New Zealand Wrap-up</title><content type="html">Okay, so my plan to post a blog a day on the New Zealand trip didn't pan out. I am prepared to blame Vodafone (in part), but that's a whole other post. Simply put, Internet access sucked.&lt;br /&gt;
&lt;br /&gt;
Instead, I'll wrap it up in a single post. Let's see... when last we left our intrepid adventurers, they were exploring Tongariro...&lt;br /&gt;
&lt;br /&gt;
After Tongariro (the Chateau is retro-awesome, by the way) we went on to Napier. Napier burned the 1930s, in an event that closely paralleled San Francisco in 1906: bad earthquake, followed by fire. When they rebuilt the town, art deco was in vogue so they ended up with a pretty cool art deco time capsule. I won't really add anything to this story, except to say that it was pretty cool. I am not sure what I was expecting -- maybe sort of Rockefeller Center/Empire State Manhattan-style art deco. Napier was much more low key, and a nice little thriving city to boot. We watched a really great sunset at Perfume Point. I was still ventilating work tribulations so it was surprisingly therapeutic to just sit and watch a sunset. That and the Taranaki Falls walk in Tongariro might have been my most relaxing moments.&lt;br /&gt;
&lt;br /&gt;
After Napier it was on to Wellington. Originally I'd intended our 2 days in Wellington to be basically dead days. However Wellington had a couple interesting attractions that I wasn't expecting, and I turned out to not be nearly as tired as I was expecting. We wanted to go to the Botanical Gardens, but to get there you have to go through the Memorial Graveyard. I was surprised by how cool I found the graveyard to be. I've never been one for&amp;nbsp;cemetery&amp;nbsp;sentimentality, but I thought it was neat how dedicated Wellington evidently is to preserve their memorials to their early pioneers. As for the Botanical Gardens, we got a little confused by the layout and ended up not finding the gardens proper at all, although we did find the rose garden and get some great photos.&lt;br /&gt;
&lt;br /&gt;
Then it was on to the South Island! We took the Interislander ferry across, which was quite nice. There were yet more spectacular views. About this time I was honestly starting to feel a little scenery fatigue. So many great views that they all started to blend together in my head. Didn't keep me from taking some more neat photos though. Picton in particular is pretty picturesque.&lt;br /&gt;
&lt;br /&gt;
The next two stops were Nelson and glacier country. We planned 2 nights in glacier country and one in Nelson, and in retrospect I wish we'd reversed that. Nelson is a wonderful little town and we loved the beach there, but we had to move on to the glaciers. We walked up to the base of Franz Josef glacier (and got some awesome photos) and the next day did a heli-hike on Fox Glacier (and got some more awesome photos), but we ended up with like a half-day of dead time in Fox Glacier. I wish we'd spent it in Nelson, but so it goes. Fox Glacier was a lot of fun, even if I did spend a big part of my time afraid of hurting myself by falling on the ice and having to be airlifted out in pain, or something. Trust me, that's not just an idle fear -- I've dislocated my kneecap twice. We'd done a glacier hike on Mendenhall Glacier before, but Mendenhall is way more level and smooth than Fox. In the end I emerged unscathed, and honestly kind of feel like I accomplished something in so doing.&lt;br /&gt;
&lt;br /&gt;
After that, we wrapped in Queenstown. Originally this was supposed to have been Christchurch, but due to the quake there we changed plans to Queenstown. (Our hotel in Christchurch was just a few blocks from the cathedral that fell, and they weren't anywhere near being able to re-open so our reservation was canceled.) We were scheduled to do a flight to and sightseeing cruise on Milford Sound, but weather scotched that. Instead we took a trip on the TNS Earnslaw heritage steamboat, and took the gondola ride up to Bob's Peak to see what we could see from there. Both of those were surprisingly fun. I particularly enjoyed Bob's Peak, and -- surprise! -- got some more awesome photos.&lt;br /&gt;
&lt;br /&gt;
Then it was a hop skip and 13-hour jump back to San Francisco.&lt;br /&gt;
&lt;br /&gt;
Phew.&lt;br /&gt;
&lt;br /&gt;
All told it was the best vacation I've had in a long, long time. We LOVED New Zealand. And that's not just "that was a great vacation I love this place", I'm talking about love as in making plans for our next trip before we even left after the first one. In particular we want to explore the south island a bit better. Our itinerary was actually pretty good and I think we chose well, but there was a lot of dreary driving on the south island (two 4-hour drives and one 6-hour) and next time we'd pick cities better, and could skip the glacier country since we've seen it now.&lt;br /&gt;
&lt;br /&gt;
And, obviously, we need to get back to visit Christchurch. &amp;nbsp;Don't think you've escaped us that easily, Chch.&lt;br /&gt;
&lt;br /&gt;
So, yeah, pretty excellent trip. One might even go so far as to say it was EPIC.&lt;br /&gt;
&lt;br /&gt;
Also, I had lamb 7 times -- delicious, delicious lamb, prepared a different way each time. So there's that.&lt;br /&gt;
&lt;br /&gt;
Anyway, obligatory photos:&lt;br /&gt;
&lt;a href="https://picasaweb.google.com/morrildl/NewZealandMarch2011#"&gt;https://picasaweb.google.com/morrildl/NewZealandMarch2011#&lt;/a&gt;&lt;br /&gt;
&lt;br /&gt;
...and some YouTube videos that I took to capture things that still camera photos don't really do justice for:&lt;br /&gt;
&lt;a href="http://www.youtube.com/view_play_list?p=FD49D656F0FE8EA9"&gt;http://www.youtube.com/view_play_list?p=FD49D656F0FE8EA9&lt;/a&gt;</content><link rel="replies" type="application/atom+xml" href="http://blog.morrildl.net/feeds/7045809947716295966/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://www.blogger.com/comment.g?blogID=107080706431419454&amp;postID=7045809947716295966" title="2 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/107080706431419454/posts/default/7045809947716295966?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/107080706431419454/posts/default/7045809947716295966?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/morrildl/~3/FjrYvQICuNc/new-zealand-wrap-up.html" title="New Zealand Wrap-up" /><author><name>Dan Morrill</name><uri>https://plus.google.com/112413860260589530492</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="32" height="32" src="//lh6.googleusercontent.com/-I7qzkMo1ktM/AAAAAAAAAAI/AAAAAAAAa78/UIvpyYkgJQc/s512-c/photo.jpg" /></author><thr:total>2</thr:total><feedburner:origLink>http://blog.morrildl.net/2011/03/new-zealand-wrap-up.html</feedburner:origLink></entry><entry gd:etag="W/&quot;C0AFQHo8fCp7ImA9Wx9aF04.&quot;"><id>tag:blogger.com,1999:blog-107080706431419454.post-2817615459494285764</id><published>2011-03-09T20:35:00.001-08:00</published><updated>2011-03-09T20:35:11.474-08:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2011-03-09T20:35:11.474-08:00</app:edited><title>New Zealand, Day 5 - Interlude</title><content type="html">&lt;div&gt;&lt;p&gt;My mom has a Christmas cactus that, for whatever reason, is enormous. It's easily 4 feet across, and blooms with hundreds of blossoms a couple times each winter. It's pretty amazing. I got one myself at the same time she got hers, but mine died miserably. So we have this in-joke where she'll call me up and say "I just don't know what to do with this ostentatious cactus. Can you BELIEVE it's blooming AGAIN? That's the third time this winter. So tacky, it has no shame."&lt;/p&gt;
&lt;p&gt;Earlier today I had a moment like that. We walked around a corner of a building into this spectacular view, and I said, "Good lord, New Zealand. Again with the panoramas? Seriously? Every time I turn around, it's a new incredible view. So ostentatious, you have no shame." ;)&lt;/p&gt;
&lt;p&gt;New Zealand is sometimes weirdly familiar. Apparently we've now traveled into a region with different local petrol franchises. We rounded a corner in Hawkes Bay wine country and I saw a Mobil on the left and a BP on the right, with the road lined by vines and rolling hills off ahead. I had a moment of cognitive dissonance where I thought I was in Sonoma -- but the cars were driving on the wrong side of the road! The other day in Taupo, we saw a Subway, a McDonald's, and a Pizza Hut lined up next to each other.&lt;/p&gt;
&lt;p&gt;Then we went into a Countdown grocery store, which was amusing. It was a sort of three-way hybrid of a Safeway, a grocery in London, and the Asian market near our apartment. You see a lot of European brands (they have Kinder eggs here! but no Cadbury Snack sadly), sitting next to straight-up American brands (Coca-Cola, I'm looking at you), and over there are names I recognized from the US but for strange products (yes Schweppes Rasbury... stuff... I'm talking about you.)&lt;/p&gt;
&lt;p&gt;Other times New Zealand is totally different. We have been in two different Dick Smith electronics stores now (once on a lark, once looking for a cable to plug our phones into the car stereo), and the larger one felt like an alien Best Buy while the other an alternate universe Radio Shack. (Reading their entries on Wikipedia, that's more or less exactly what they are.) And then of course there's the "flat white" which I've quite come to like. And I love the roundabouts here, beats the pants of the stupid 4-way stop intersections the US uses. Right now we are in Napier. The bay here is awesome, it's unlike anything I've ever seen except in the Bahamas. Very unlike any coast in the US, and I've seen most of them.&lt;/p&gt;
&lt;p&gt;So yeah, 50% same, 50% similar, 50% different, 150% awesome. :)&lt;/p&gt;
&lt;/div&gt;</content><link rel="replies" type="application/atom+xml" href="http://blog.morrildl.net/feeds/2817615459494285764/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://www.blogger.com/comment.g?blogID=107080706431419454&amp;postID=2817615459494285764" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/107080706431419454/posts/default/2817615459494285764?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/107080706431419454/posts/default/2817615459494285764?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/morrildl/~3/C30HHAk3muk/new-zealand-day-5-interlude.html" title="New Zealand, Day 5 - Interlude" /><author><name>Dan Morrill</name><uri>https://plus.google.com/112413860260589530492</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="32" height="32" src="//lh6.googleusercontent.com/-I7qzkMo1ktM/AAAAAAAAAAI/AAAAAAAAa78/UIvpyYkgJQc/s512-c/photo.jpg" /></author><thr:total>0</thr:total><georss:featurename>The Crown Hotel, Napier, 2 Hardinge Road, Napier 4144, New Zealand</georss:featurename><georss:point>-39.479818 176.898863</georss:point><feedburner:origLink>http://blog.morrildl.net/2011/03/new-zealand-day-5-interlude.html</feedburner:origLink></entry><entry gd:etag="W/&quot;CkIHRHw9fyp7ImA9Wx9aF04.&quot;"><id>tag:blogger.com,1999:blog-107080706431419454.post-570885493841651190</id><published>2011-03-09T20:15:00.001-08:00</published><updated>2011-03-09T20:15:35.267-08:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2011-03-09T20:15:35.267-08:00</app:edited><title>New Zealand, Day 4 - Tongariro</title><content type="html">&lt;div&gt;&lt;p&gt;Tongariro is simply amazing. The reason it's a World Heritage area is pretty obvious. I'm not going to say a lot about it because frankly it needs photos. I'll upload a few when we get to Wellington, hopefully.&lt;/p&gt;
&lt;p&gt;We went on a ~6km walk to Taranaki Falls. It took a bit longer than we expected, but the falls were very much worth it. I suspect that spending a morning outdoors in Tongariro will be one of my favorite memories of this trip. &lt;/p&gt;
&lt;p&gt;For lunch we took the chair lifts up to Mt. Ruapehu, where they have a cafe at 2,000 meters. It was a little surreal eating a ham and cheese croissant while idly looking down on Tongariro spread out below, a few kilometers away. Surreal, and chilly.&lt;/p&gt;
&lt;/div&gt;</content><link rel="replies" type="application/atom+xml" href="http://blog.morrildl.net/feeds/570885493841651190/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://www.blogger.com/comment.g?blogID=107080706431419454&amp;postID=570885493841651190" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/107080706431419454/posts/default/570885493841651190?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/107080706431419454/posts/default/570885493841651190?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/morrildl/~3/Ea_IBykmZm8/new-zealand-day-4-tongariro.html" title="New Zealand, Day 4 - Tongariro" /><author><name>Dan Morrill</name><uri>https://plus.google.com/112413860260589530492</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="32" height="32" src="//lh6.googleusercontent.com/-I7qzkMo1ktM/AAAAAAAAAAI/AAAAAAAAa78/UIvpyYkgJQc/s512-c/photo.jpg" /></author><thr:total>0</thr:total><georss:featurename>The Crown Hotel, Napier, 2 Hardinge Road, Napier 4144, New Zealand</georss:featurename><georss:point>-39.479818 176.898863</georss:point><feedburner:origLink>http://blog.morrildl.net/2011/03/new-zealand-day-4-tongariro.html</feedburner:origLink></entry><entry gd:etag="W/&quot;D0UDQ30zcCp7ImA9Wx9aFUg.&quot;"><id>tag:blogger.com,1999:blog-107080706431419454.post-2231655474629395004</id><published>2011-03-07T19:34:00.001-08:00</published><updated>2011-03-07T19:34:32.388-08:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2011-03-07T19:34:32.388-08:00</app:edited><title>New Zealand, Day 3 - On to Tongariro</title><content type="html">&lt;div&gt;&lt;p&gt;Today we relocated to Tongariro. I can't really do any kind of justice to this place other than these two observations:&lt;/p&gt;
&lt;p&gt;1. Holy f*cking mountains.&lt;br&gt;
2. The Chateau itself is more or less exactly what I imagine the Overlook Hotel (from The Shining) to look like. One hopes it's less possessed.&lt;/p&gt;
&lt;p&gt;The scenery here is gorgeous! There were a couple scenic overlooks on the way over the range into Tongariro, but thanks to Vodafone I'll have to upload them later. As for Mount Ruapehu: Dramatic Volcano is Dramatic.&lt;/p&gt;
&lt;p&gt;On the way here, we stopped at the Waimangu hot springs area, got a lot of awesome photos, and put our hands into some bubbling spring water straight from a little... uh... geyser hole? I don't know what you call them. Anyway it was like a hot bath, and left a slightly sticky residue on my fingers for a while after it dried. The hardest of hard water. But still very cool, and now I can say I stuck my fingers in geothermal hot water straight from the source.&lt;/p&gt;
&lt;p&gt;We also stopped by Taupo to check out the lake there. I could easily see myself spending some lazy days by the lakeside, there.&lt;/p&gt;
&lt;/div&gt;</content><link rel="replies" type="application/atom+xml" href="http://blog.morrildl.net/feeds/2231655474629395004/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://www.blogger.com/comment.g?blogID=107080706431419454&amp;postID=2231655474629395004" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/107080706431419454/posts/default/2231655474629395004?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/107080706431419454/posts/default/2231655474629395004?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/morrildl/~3/onUrWgXxzTg/new-zealand-day-3-on-to-tongariro.html" title="New Zealand, Day 3 - On to Tongariro" /><author><name>Dan Morrill</name><uri>https://plus.google.com/112413860260589530492</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="32" height="32" src="//lh6.googleusercontent.com/-I7qzkMo1ktM/AAAAAAAAAAI/AAAAAAAAa78/UIvpyYkgJQc/s512-c/photo.jpg" /></author><thr:total>0</thr:total><feedburner:origLink>http://blog.morrildl.net/2011/03/new-zealand-day-3-on-to-tongariro.html</feedburner:origLink></entry><entry gd:etag="W/&quot;DkAFSX84cSp7ImA9Wx9aFUg.&quot;"><id>tag:blogger.com,1999:blog-107080706431419454.post-1614375390637569876</id><published>2011-03-07T19:25:00.001-08:00</published><updated>2011-03-07T19:25:18.139-08:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2011-03-07T19:25:18.139-08:00</app:edited><title>New Zealand, Day 2 - Rotorua</title><content type="html">&lt;div&gt;&lt;p&gt;Day two was Rotorua.&lt;/p&gt;
&lt;p&gt;Let me get this out of the way at the start. My family's from Maine, and Lincoln, ME is known for its pungency, accountable to the mill there. So I thought of myself as reasonably well-acquainted with sulfery odors. Rotorua demonstrated that I was mistaken -- the hot springs funk there is mighty indeed. We were out by the lake checking out the hot springs and my eyes were watering like I was cutting onions. Yow!&lt;/p&gt;
&lt;p&gt;Aside from that Rotorua was great! We were there only one night and so had less than a full day there (due to travel time from Auckland), but when I saw the gardens there I wished we'd allocated more time. Beautiful place.&lt;/p&gt;
&lt;p&gt;We walked along the lakeside for a kilometer or two, which was quite nice, and we got some neat photos (and videos) of the hot springs. We even sat in a hot spring mineral bath spa that the hotel had. I smelled like sulfur until this morning though, so I am not sure I see what the old Europeans saw in it.&lt;/p&gt;
&lt;p&gt;By the way, no uploads for now because Vodafone only allows 10MB per day. Which is excellent since you can buy 500MB that expires after a month; I wonder how you're supposed to use the other 190MB you allegedly paid for. Even allowing for NZ being an island and thus having expensive connectivity, I am still trying to think of a reason why that isn't a scam. Maybe I'll find decent WiFi somewhere.&lt;/p&gt;
&lt;/div&gt;</content><link rel="replies" type="application/atom+xml" href="http://blog.morrildl.net/feeds/1614375390637569876/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://www.blogger.com/comment.g?blogID=107080706431419454&amp;postID=1614375390637569876" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/107080706431419454/posts/default/1614375390637569876?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/107080706431419454/posts/default/1614375390637569876?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/morrildl/~3/H-yw4MElVx0/new-zealand-day-2-rotorua.html" title="New Zealand, Day 2 - Rotorua" /><author><name>Dan Morrill</name><uri>https://plus.google.com/112413860260589530492</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="32" height="32" src="//lh6.googleusercontent.com/-I7qzkMo1ktM/AAAAAAAAAAI/AAAAAAAAa78/UIvpyYkgJQc/s512-c/photo.jpg" /></author><thr:total>0</thr:total><feedburner:origLink>http://blog.morrildl.net/2011/03/new-zealand-day-2-rotorua.html</feedburner:origLink></entry><entry gd:etag="W/&quot;DUQNSH86eip7ImA9Wx9aE0Q.&quot;"><id>tag:blogger.com,1999:blog-107080706431419454.post-2746921439428048774</id><published>2011-03-05T23:43:00.001-08:00</published><updated>2011-03-05T23:43:19.112-08:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2011-03-05T23:43:19.112-08:00</app:edited><title>New Zealand - Day 1, Auckland (more)</title><content type="html">&lt;div&gt;&lt;p&gt;We did a surprising amount today, considering we landed this morning. After the Skytower, we wandered around the city center and went into a few stores. After we checked in we had an early dinner, and then went to Muriwai Beach. The wind was absolutely insane, and the views were awesome. I got a few good photos (which I'll upload later -- it turns out uploading YT videos is a great way to burn through a prepaid data plan. ;)&lt;/p&gt;
&lt;p&gt;This is going to sound weird, but so far the thing I like most about New Zealand is that it smells nice. That's not to say that San Francisco reeks, but New Zealand just smells.... uh, neat I guess. On the way back from Muriwai Beach, I kept picking up various scents of spices and flowers and similar aromatics; hard to do that in the general vicinity of the 101. At one point I got a really powerful draft of cut clover, and was instantly transported back to being a kid, lazing around in the long summer days and playing outside after my dad had just mowed the lawn. At first I couldn't place the scent but then we drove by a honey farm(!) and I made the clover connection.&lt;/p&gt;
&lt;p&gt;So yeah, there are far worse ways to wrap up your first day on holiday trip than a happy flashback to being a kid.&lt;/p&gt;
&lt;/div&gt;</content><link rel="replies" type="application/atom+xml" href="http://blog.morrildl.net/feeds/2746921439428048774/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://www.blogger.com/comment.g?blogID=107080706431419454&amp;postID=2746921439428048774" title="1 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/107080706431419454/posts/default/2746921439428048774?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/107080706431419454/posts/default/2746921439428048774?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/morrildl/~3/fPbEkAz_MIY/new-zealand-day-1-auckland-more.html" title="New Zealand - Day 1, Auckland (more)" /><author><name>Dan Morrill</name><uri>https://plus.google.com/112413860260589530492</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="32" height="32" src="//lh6.googleusercontent.com/-I7qzkMo1ktM/AAAAAAAAAAI/AAAAAAAAa78/UIvpyYkgJQc/s512-c/photo.jpg" /></author><thr:total>1</thr:total><feedburner:origLink>http://blog.morrildl.net/2011/03/new-zealand-day-1-auckland-more.html</feedburner:origLink></entry><entry gd:etag="W/&quot;D04CRH0_eyp7ImA9Wx9aE0s.&quot;"><id>tag:blogger.com,1999:blog-107080706431419454.post-1740294458367368748</id><published>2011-03-05T14:59:00.001-08:00</published><updated>2011-03-05T14:59:25.343-08:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2011-03-05T14:59:25.343-08:00</app:edited><title>New Zealand - Day 1, Auckland</title><content type="html">&lt;div&gt;&lt;p&gt;The flight was less painful than I had been dreading, and we got a surprisingly decent amount of sleep. That was good since we landed very early and had about 5 hours to kill before checking in. So, obviously, we went to the Sky Tower. Pretty excellent place for coffee, and the lounge sells liquor! I love New Zealand already. ;-)&lt;/p&gt;
&lt;p&gt;We just checked in and got to our room. I hope I do not look as disheveled as I feel.&lt;/p&gt;
&lt;br/&gt;&lt;img src='http://lh5.ggpht.com/_N6MwpE4_Tv4/TXLARmtsgiI/AAAAAAAAMwU/2uj6K9-mqm0/IMG_20110306_093255.png' /&gt;&lt;br/&gt;&lt;img src='http://lh3.ggpht.com/_N6MwpE4_Tv4/TXLASFUYTuI/AAAAAAAAMwY/H_nq9-XjQaY/IMG_20110306_092151.png' /&gt;&lt;br/&gt;&lt;img src='http://lh5.ggpht.com/_N6MwpE4_Tv4/TXLAS1gfilI/AAAAAAAAMwc/_kDDHr70EI0/IMG_20110306_094214.png' /&gt;&lt;/div&gt;</content><link rel="replies" type="application/atom+xml" href="http://blog.morrildl.net/feeds/1740294458367368748/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://www.blogger.com/comment.g?blogID=107080706431419454&amp;postID=1740294458367368748" title="1 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/107080706431419454/posts/default/1740294458367368748?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/107080706431419454/posts/default/1740294458367368748?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/morrildl/~3/55oe2bdparA/new-zealand-day-1-auckland.html" title="New Zealand - Day 1, Auckland" /><author><name>Dan Morrill</name><uri>https://plus.google.com/112413860260589530492</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="32" height="32" src="//lh6.googleusercontent.com/-I7qzkMo1ktM/AAAAAAAAAAI/AAAAAAAAa78/UIvpyYkgJQc/s512-c/photo.jpg" /></author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="http://lh5.ggpht.com/_N6MwpE4_Tv4/TXLARmtsgiI/AAAAAAAAMwU/2uj6K9-mqm0/s72-c/IMG_20110306_093255.png" height="72" width="72" /><thr:total>1</thr:total><georss:featurename>Scenic Hotel Auckland - Auckland Hotel Accommodation, 380 Queen Street, Auckland 1141, New Zealand</georss:featurename><georss:point>-36.853316 174.763662</georss:point><feedburner:origLink>http://blog.morrildl.net/2011/03/new-zealand-day-1-auckland.html</feedburner:origLink></entry><entry gd:etag="W/&quot;D0MGQXwycCp7ImA9Wx9aEko.&quot;"><id>tag:blogger.com,1999:blog-107080706431419454.post-6333847535771907454</id><published>2011-03-04T13:50:00.001-08:00</published><updated>2011-03-04T13:50:20.298-08:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2011-03-04T13:50:20.298-08:00</app:edited><title>On vacation!</title><content type="html">&lt;div&gt;&lt;p&gt;I think it's time we blow this scene. Get everybody and their stuff together. Okay, 3... 2... 1... let's jam.&lt;br&gt;&lt;/p&gt;
&lt;p&gt; The cat is not really interested in jamming though.&lt;/p&gt;
&lt;br/&gt;&lt;img src='http://lh4.ggpht.com/_N6MwpE4_Tv4/TXFemlXwfvI/AAAAAAAAMv0/ra_d0NujJog/1299275238327.png' /&gt;&lt;/div&gt;</content><link rel="replies" type="application/atom+xml" href="http://blog.morrildl.net/feeds/6333847535771907454/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://www.blogger.com/comment.g?blogID=107080706431419454&amp;postID=6333847535771907454" title="1 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/107080706431419454/posts/default/6333847535771907454?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/107080706431419454/posts/default/6333847535771907454?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/morrildl/~3/sMu-8ht2nq8/on-vacation.html" title="On vacation!" /><author><name>Dan Morrill</name><uri>https://plus.google.com/112413860260589530492</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="32" height="32" src="//lh6.googleusercontent.com/-I7qzkMo1ktM/AAAAAAAAAAI/AAAAAAAAa78/UIvpyYkgJQc/s512-c/photo.jpg" /></author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="http://lh4.ggpht.com/_N6MwpE4_Tv4/TXFemlXwfvI/AAAAAAAAMv0/ra_d0NujJog/s72-c/1299275238327.png" height="72" width="72" /><thr:total>1</thr:total><feedburner:origLink>http://blog.morrildl.net/2011/03/on-vacation.html</feedburner:origLink></entry><entry gd:etag="W/&quot;AkANSX0zeyp7ImA9Wx9RE0U.&quot;"><id>tag:blogger.com,1999:blog-107080706431419454.post-1876279808642605509</id><published>2010-12-14T20:53:00.000-08:00</published><updated>2010-12-14T20:53:18.383-08:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2010-12-14T20:53:18.383-08:00</app:edited><title>UPS ruined my Christmas!</title><content type="html">This is some epic courier FAIL right here folks. I know it's popular to overstate failage these days, but if anything ever deserved the term EPIC FAIL, it's this tale right here.&lt;br /&gt;
&lt;br /&gt;
Settle in folks! This will take a little while. As you read, bear one thing in mind: this all happened or came to light &lt;i&gt;the same day &lt;/i&gt;-- today.&lt;br /&gt;
&lt;br /&gt;
For Christmas I ordered my wife a fondue pot from Amazon. (It's okay, she knows what it is now. Read on.)&amp;nbsp;It was supposed to have arrived by the 7th,&amp;nbsp;but they shipped it USPS so I couldn't&amp;nbsp;track it. It never came and never came. Finally today I went back to Amazon to file a request for help, when I noticed that I had been mistaken and it &lt;i&gt;actually &lt;/i&gt;shipped via UPS.&amp;nbsp;So I tracked it!&lt;br /&gt;
&lt;br /&gt;
Delivery location: "Rear door".&lt;br /&gt;
&lt;br /&gt;
&lt;b&gt;&lt;i&gt;We do not have a rear door.&lt;/i&gt;&lt;/b&gt;&lt;br /&gt;
&lt;b&gt;&lt;br /&gt;
&lt;/b&gt;&lt;br /&gt;
We have a sliding glass door that opens onto a small patio with a 4.5-foot high, 8-inch thick concrete privacy wall. Surrounded by some bushes. And about 3' of landscaped ground cover.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The UPS delivery dude:&lt;br /&gt;
&lt;br /&gt;
&lt;ol&gt;&lt;li&gt;Walked through the landscaping.&lt;/li&gt;
&lt;li&gt;Stepped over or through the bushes.&lt;/li&gt;
&lt;li&gt;Climbed over the wall.&lt;/li&gt;
&lt;li&gt;HID THE BOX BEHIND A CHAIR.&lt;/li&gt;
&lt;li&gt;...out from underneath the roof overhang.&lt;/li&gt;
&lt;/ol&gt;&lt;br /&gt;
So it's been outside in the Bay Area rainy season getting rained on for a week. I brought it inside, and had to open it to see how fuckered it is (which is why Aimee knows what it is.) Jury's still out, but the actual product might have survived. Let's just say that the box is over. GOOD JOB, UPS!&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
You probably think that's it, don't you? &amp;nbsp;Oh no. Oh ho no. Ha ha ha ha, no. &lt;i&gt;I'm just getting started. &lt;/i&gt;Read on, my friends.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
For Christmas, I also ordered my dad $MULTIPART_GIFT from $LOCAL_VENDOR. Now, $LOCAL_VENDOR is a small chain and has several warehouses. So my $MULTIPART_GIFT order was split into 3 separate UPS shipments.&lt;br /&gt;
&lt;br /&gt;
Package #1 arrived on time, on the 7th. Huzzah!&lt;br /&gt;
&lt;br /&gt;
Package #2 was &lt;i&gt;supposed &lt;/i&gt;to arrive on the 8th. Since my mom told me it still hadn't arrived, I tracked it. It reached Latham, NY (the nearest distribution center) on the 9th. The tracking history says:&lt;br /&gt;
&lt;br /&gt;
&lt;ul&gt;&lt;li&gt;A CORRECT STREET NUMBER IS NEEDED FOR DELIVERY. UPS IS ATTEMPTING TO OBTAIN THIS INFORMATION&lt;/li&gt;
&lt;li&gt;and then the next day:&amp;nbsp;THE RECEIVER'S ADDRESS IS INCOMPLETE. UPS IS ATTEMPTING TO OBTAIN THE ENTIRE ADDRESS AND COMPLETE THE DELIVERY. / THE ADDRESS HAS BEEN CORRECTED. THE DELIVERY HAS BEEN RESCHEDULED&lt;/li&gt;
&lt;/ul&gt;&lt;br /&gt;
Please note that this is &lt;i&gt;the exact same address &lt;/i&gt;-- verbatim -- as the package that had been delivered 2 days earlier. What then? Well, it was delivered, today, the 14th, as follows:&lt;br /&gt;
&lt;blockquote&gt;Delivered On: 12/14/2010&amp;nbsp;11:05 A.M.&lt;/blockquote&gt;&lt;blockquote&gt;Signed By:SEAN&lt;/blockquote&gt;&lt;blockquote&gt;Location:OFFICE&lt;/blockquote&gt;&lt;blockquote&gt;Delivered To: MOUNTAIN VIEW, CA, US&lt;/blockquote&gt;&lt;blockquote&gt;Shipped/Billed On:12/07/2010&lt;/blockquote&gt;Now I sure hope that means that they delivered it to my apartment complex office, but at this point all bets are off. There was a note on our door so hopefully that is what happened, but so much for 2-day UPS shipping. If I had wanted it myself I would have driven to the store to pick it up. GOOD JOB, UPS!!&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
But what's that you say? There were three packages? Why, yes, as a matter of fact there were.&lt;br /&gt;
&lt;br /&gt;
BEHOLD the fate of Package #3:&lt;br /&gt;
&lt;br /&gt;
&lt;ul&gt;&lt;li&gt;From Gloversville, NY (the other nearby UPS distribution center):&lt;br /&gt;
THE CUSTOMER WAS NOT AVAILABLE ON THE 1ST ATTEMPT. A 2ND ATTEMPT WILL BE MADE&lt;br /&gt;
(Note: false. My mother was home all day.)&lt;/li&gt;
&lt;li&gt;And then the next day:&lt;br /&gt;
OUT FOR DELIVERY&lt;br /&gt;
...and then (you guessed it!):&amp;nbsp;A CORRECT COMPANY OR RECEIVER NAME IS NEEDED FOR DELIVERY. UPS IS ATTEMPTING TO OBTAIN THIS INFORMATION / THE ADDRESS HAS BEEN CORRECTED. THE DELIVERY HAS BEEN RESCHEDULED&lt;br /&gt;
...and then finally: DELIVERED&lt;/li&gt;
&lt;/ul&gt;&lt;div&gt;DELIVERED?? Huzzah, that's gre-- hold up.&lt;/div&gt;&lt;div&gt;&lt;blockquote&gt;Delivered On: 12/14/2010 3:03 P.M.&lt;/blockquote&gt;&lt;blockquote&gt;Signed By: $NOT_MY_PARENTS&lt;/blockquote&gt;&lt;blockquote&gt;Location:RESIDENTIAL&lt;/blockquote&gt;&lt;blockquote&gt;Delivered To: GALWAY, NY, US&lt;/blockquote&gt;&lt;blockquote&gt;Shipped/Billed On:12/09/2010&lt;/blockquote&gt;&lt;/div&gt;&lt;div&gt;I have no idea who $NOT_MY_PARENTS is. Galway is -- according to Google Maps -- 10.2 miles from my parents' house. &amp;nbsp;GOOD JOB, UPS!!&lt;/div&gt;&lt;div&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div&gt;So UPS -- that's the &lt;b&gt;United Parcel Service&lt;/b&gt; -- left my wife's Christmas gift in the rain after delivering it to a wildly inappropriate location without protection from the elements. And then UPS -- that's the ups of &lt;b&gt;www.ups.com &lt;/b&gt;--&amp;nbsp;shuffled one of my dad's $MULTIPART_GIFT across the continent twice and delivered it to me instead of him. And then finally, UPS -- that is, the well-known and now apparently corner-cutting courier who seems to have lowered the hiring bar on both coasts -- delivered the third part of my dad's $MULTIPART_GIFT to $NOT_MY_PARENTS in a town 10 miles away.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div&gt;GOOD JOB, UPS!!&lt;/div&gt;</content><link rel="replies" type="application/atom+xml" href="http://blog.morrildl.net/feeds/1876279808642605509/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://www.blogger.com/comment.g?blogID=107080706431419454&amp;postID=1876279808642605509" title="10 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/107080706431419454/posts/default/1876279808642605509?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/107080706431419454/posts/default/1876279808642605509?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/morrildl/~3/YQ6m-MNVg8I/ups-ruined-my-christmas.html" title="UPS ruined my Christmas!" /><author><name>Dan Morrill</name><uri>https://plus.google.com/112413860260589530492</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="32" height="32" src="//lh6.googleusercontent.com/-I7qzkMo1ktM/AAAAAAAAAAI/AAAAAAAAa78/UIvpyYkgJQc/s512-c/photo.jpg" /></author><thr:total>10</thr:total><feedburner:origLink>http://blog.morrildl.net/2010/12/ups-ruined-my-christmas.html</feedburner:origLink></entry><entry gd:etag="W/&quot;CEQHRngzeyp7ImA9Wx9SFkQ.&quot;"><id>tag:blogger.com,1999:blog-107080706431419454.post-6215573160816522958</id><published>2010-12-06T19:25:00.000-08:00</published><updated>2010-12-06T19:25:37.683-08:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2010-12-06T19:25:37.683-08:00</app:edited><title>Google Books</title><content type="html">&lt;span class="Apple-style-span" style="font-family: arial, sans-serif; font-size: 13px;"&gt;&lt;a href="http://www.blogger.com/"&gt;&lt;span id="goog_862235482"&gt;&lt;/span&gt;Google Books launched today&lt;span id="goog_862235483"&gt;&lt;/span&gt;&lt;/a&gt;. I'm a Googler so I've been using it for a while, and so far I like it quite a bit. But okay, whatever, you expect that from me. So here, at least, is an explanation of&amp;nbsp;&lt;i&gt;why &lt;/i&gt;I like it.&lt;/span&gt;&lt;br /&gt;
&lt;span class="Apple-style-span" style="font-family: arial, sans-serif; font-size: 13px;"&gt;&lt;br /&gt;
&lt;/span&gt;&lt;br /&gt;
&lt;span class="Apple-style-span" style="font-family: arial, sans-serif; font-size: 13px;"&gt;&lt;br /&gt;
&lt;/span&gt;&lt;br /&gt;
&lt;span class="Apple-style-span" style="font-family: arial, sans-serif; font-size: 13px;"&gt;Rewind a few weeks. I'd been using Google Books for several months by now. My mentality had been: well it's neat, but you know... it's just a Kindle clone, right?&amp;nbsp;And the book scanning project is interesting and cool, but whatever -- just a novelty really, or maybe of interest to academics and librarians. That all seemed sort of outside my world, so I wasn't paying much attention.&lt;/span&gt;&lt;br /&gt;
&lt;span class="Apple-style-span" style="font-family: arial, sans-serif; font-size: 13px;"&gt;&lt;br /&gt;
&lt;/span&gt;&lt;br /&gt;
&lt;span class="Apple-style-span" style="font-family: arial, sans-serif; font-size: 13px;"&gt;But then I searched for&amp;nbsp;&lt;i&gt;The Call of the Wild,&lt;/i&gt;&amp;nbsp;figuring I'd reread a favorite book from my childhood.&amp;nbsp;&lt;/span&gt;&lt;span class="Apple-style-span" style="font-family: arial, sans-serif; font-size: 13px;"&gt;That search turned up something else:&amp;nbsp;&lt;i&gt;&lt;a href="http://books.google.com/ebooks?id=tFA9AAAAYAAJ&amp;amp;dq=%22call%20of%20the%20wild%22&amp;amp;as_brr=4&amp;amp;ei=1qj9TP2DOYLilASbzJWuDQ&amp;amp;source=webstore_bookcard"&gt;In the Maine Woods&lt;/a&gt;&lt;/i&gt;, a sort of half-travelogue half-advertisement published by the Bangor &amp;amp; Aroostook Railroad periodically. This version was from 1906.&lt;/span&gt;&lt;br /&gt;
&lt;span class="Apple-style-span" style="font-family: arial, sans-serif; font-size: 13px;"&gt;&lt;br /&gt;
&lt;/span&gt;&lt;br /&gt;
&lt;span class="Apple-style-span" style="font-family: arial, sans-serif; font-size: 13px;"&gt;My family is from Maine. And not just like Bar Harbor here, I'm talking about&amp;nbsp;&lt;i&gt;Maine&lt;/i&gt;&amp;nbsp;as in, Millinocket, Milo, Island Falls. Aroostook potato people.&amp;nbsp;&amp;nbsp;My grandfather spent more or less his entire career at the B&amp;amp;A; he worked his way up to yardmaster and trainmaster in Millinocket. Millinocket was barely incorporated in 1906. The book talks about nearby landmarks but doesn't mention Millinocket because it didn't yet amount to much.&lt;br /&gt;
&lt;br /&gt;
This book is hilarious, awesome, and fascinating. Not to mention all the incredible photos, like 2 guys with no less than 14 trout, wearing the dour portrait faces of the day. I can't adequately describe what it is like to read through this book about my family's stomping grounds apparently 104 years after it was published. I can't even really decide how I'm&amp;nbsp;&lt;i&gt;feeling&lt;/i&gt;&amp;nbsp;about it.&lt;br /&gt;
&lt;br /&gt;
This book was apparently scanned from Harvard's library as part of the book scanning project. Amazon has a print version of it, but it's a later edition, and costs $23. And anyway I had to look it up -- I would &lt;i&gt;never&lt;/i&gt; have just found it, let alone read it for free. Finding this book at random like this was so unexpected but strangely meaningful, if only to me.&lt;br /&gt;
&lt;br /&gt;
So, I get it now. This is what the Books scanning project is all about.&lt;/span&gt;</content><link rel="replies" type="application/atom+xml" href="http://blog.morrildl.net/feeds/6215573160816522958/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://www.blogger.com/comment.g?blogID=107080706431419454&amp;postID=6215573160816522958" title="3 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/107080706431419454/posts/default/6215573160816522958?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/107080706431419454/posts/default/6215573160816522958?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/morrildl/~3/IZud0BZKEBE/google-books.html" title="Google Books" /><author><name>Dan Morrill</name><uri>https://plus.google.com/112413860260589530492</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="32" height="32" src="//lh6.googleusercontent.com/-I7qzkMo1ktM/AAAAAAAAAAI/AAAAAAAAa78/UIvpyYkgJQc/s512-c/photo.jpg" /></author><thr:total>3</thr:total><feedburner:origLink>http://blog.morrildl.net/2010/12/google-books.html</feedburner:origLink></entry><entry gd:etag="W/&quot;A0EHRXk5cCp7ImA9Wx5aEUQ.&quot;"><id>tag:blogger.com,1999:blog-107080706431419454.post-213272212176809007</id><published>2010-11-07T23:00:00.000-08:00</published><updated>2010-11-07T23:00:34.728-08:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2010-11-07T23:00:34.728-08:00</app:edited><title>Starting a New Thing</title><content type="html">I just bought one of these:&lt;br /&gt;
&lt;a href="http://www.zotacusa.com/zotac-zboxhd-id11-u-intel-atom-d510-1-66-ghz-dual-core-all-in-one-mini-pc.html"&gt;http://www.zotacusa.com/zotac-zboxhd-id11-u-intel-atom-d510-1-66-ghz-dual-core-all-in-one-mini-pc.html&lt;/a&gt;&lt;br /&gt;
&lt;br /&gt;
As my wife said while we were walking out of the Fry's, "It blows my mind that you can buy a whole computer in a little box like that." I don't think I can or want to add anything to that.&lt;br /&gt;
&lt;br /&gt;
I got Ubuntu Lucid Server up and running on without really any trouble at all, even with the configuration I chose, of booting the installer from a thumb drive and installing to an SD card. (I'm trying to keep it as low power as possible; we'll see if the SD card pans out.)&lt;br /&gt;
&lt;br /&gt;
My plan is to write some server code for this thing (in Go!) and hook up some peripherals like a web cam, door opening monitor circuits, etc. My aim is somewhere between home automation and a homebrew security system. Most likely I will just end up spying on the cats. Heh heh...&lt;br /&gt;
&lt;br /&gt;
So far it's a pretty impressive little widget. Hopefully things will pan out and I'll get something spiffy out of it all.</content><link rel="replies" type="application/atom+xml" href="http://blog.morrildl.net/feeds/213272212176809007/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://www.blogger.com/comment.g?blogID=107080706431419454&amp;postID=213272212176809007" title="1 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/107080706431419454/posts/default/213272212176809007?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/107080706431419454/posts/default/213272212176809007?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/morrildl/~3/-LIDtu_2IHY/starting-new-thing.html" title="Starting a New Thing" /><author><name>Dan Morrill</name><uri>https://plus.google.com/112413860260589530492</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="32" height="32" src="//lh6.googleusercontent.com/-I7qzkMo1ktM/AAAAAAAAAAI/AAAAAAAAa78/UIvpyYkgJQc/s512-c/photo.jpg" /></author><thr:total>1</thr:total><feedburner:origLink>http://blog.morrildl.net/2010/11/starting-new-thing.html</feedburner:origLink></entry><entry gd:etag="W/&quot;D0QCQng5fyp7ImA9Wx5bGEk.&quot;"><id>tag:blogger.com,1999:blog-107080706431419454.post-2386303344730348558</id><published>2010-11-03T21:36:00.000-07:00</published><updated>2010-11-03T21:36:03.627-07:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2010-11-03T21:36:03.627-07:00</app:edited><title>BEHOLD the Future All Over Again</title><content type="html">This article is pretty much spot on: &lt;a href="http://open.neurostechnology.com/content/future-hardware"&gt;http://open.neurostechnology.com/content/future-hardware&lt;/a&gt;&lt;br /&gt;
&lt;br /&gt;
I was especially interested that the author recognizes that the events that are now getting under way will mirror the PC model in outcome, but not in the gory details. This is something that's been on my mind for some time, too.&lt;br /&gt;
&lt;br /&gt;
The PC world took off because there were various curated standards, like ISA/PCI/PCI Express, ATA/IDE/SATA, CGA/EGA/VGA, and so on. But the consumer electronics industry of today does not have any analog of that. Processors are wired directly to peripheral chips -- at least, those peripherals not directly integrated into the SoC -- and just about the only "off the shelf" widget you can buy that &lt;i&gt;just works&lt;/i&gt; in multiple devices is a flash storage card.&lt;br /&gt;
&lt;br /&gt;
This has been (in my view) the primary drag on rapid innovation in the consumer electronics industry over the past 10 years or so: &amp;nbsp;no common "interface" where hardware and software could meet and act as the stable foundation to build interesting products on.&lt;br /&gt;
&lt;br /&gt;
The fundamental insight of the article (to my mind at least) is that in the PC world, this "interface" evolved just on the hardware side of the border. But in the mobile/electronics world, various economic forces prevented that (which is a whole other story.) So what Android is really doing is establishing an equivalent "interface", except on the &lt;i&gt;software&lt;/i&gt; side of the border.&lt;br /&gt;
&lt;br /&gt;
To put it another way, modern OSes for PCs&amp;nbsp;&lt;i&gt;include&lt;/i&gt; a "hardware abstraction layer" to gloss over the minor differences between mostly-compatible hardware. But Android &lt;i&gt;is&lt;/i&gt; a hardware abstraction layer that paves over the huge differences between consumer electronics devices. (This is why it's impossible to create a generic version of Android that is installable on any phone. You can't install a consumer electronics OS, you have to port it.)&lt;br /&gt;
&lt;br /&gt;
From the point of vantage point of developers and device builders sitting on top of this, the view is very much the same as the PC world: they see a common set of APIs and a well-defined execution environment that they can build on. Since the view looks so similar, the outcome should likewise be similar.&lt;br /&gt;
&lt;br /&gt;
Of course they mostly don't realize just how much the structure below what they can see differs from the PC world; but the beauty of Android is, they don't need to.&lt;br /&gt;
&lt;br /&gt;
This is indeed an exciting time.</content><link rel="replies" type="application/atom+xml" href="http://blog.morrildl.net/feeds/2386303344730348558/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://www.blogger.com/comment.g?blogID=107080706431419454&amp;postID=2386303344730348558" title="1 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/107080706431419454/posts/default/2386303344730348558?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/107080706431419454/posts/default/2386303344730348558?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/morrildl/~3/Md7_-Y3o4To/behold-future-all-over-again.html" title="BEHOLD the Future All Over Again" /><author><name>Dan Morrill</name><uri>https://plus.google.com/112413860260589530492</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="32" height="32" src="//lh6.googleusercontent.com/-I7qzkMo1ktM/AAAAAAAAAAI/AAAAAAAAa78/UIvpyYkgJQc/s512-c/photo.jpg" /></author><thr:total>1</thr:total><feedburner:origLink>http://blog.morrildl.net/2010/11/behold-future-all-over-again.html</feedburner:origLink></entry><entry gd:etag="W/&quot;CUUCQHw4fSp7ImA9Wx5TF08.&quot;"><id>tag:blogger.com,1999:blog-107080706431419454.post-2883398927683515450</id><published>2010-08-01T21:17:00.000-07:00</published><updated>2010-08-01T21:27:41.235-07:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2010-08-01T21:27:41.235-07:00</app:edited><title>Den Suck</title><content type="html">We bought a new bedroom set from IKEA to replace an old multiple-hand-me-down set. This turned out to be a bit of an odyssey.&lt;br /&gt;
&lt;div&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div&gt;The assembly of the bed is good in theory: it has a wooden headboard, footboard, and sides that form a box to surround the actual bed, which is supported by some metal infrastructure. There are 2 angle brackets on the length of the side boards and a fairly robust metal beam down the middle that hold the actual weight of the bed.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div&gt;Unfortunately the angle brackets are each too narrow by probably 5mm, which allows the box spring to drift and basically fall off one side or the other. This drops the box spring and mattress (and occupants, if any) onto some cross members which are designed to keep the box rigid and not to support weight; damage occurs.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div&gt;The root cause seems to be that this is a European style bed, and Over There they don't use box springs; mattresses sit directly on planks or slats. So they apparently don't quite get box springs, and things like this happen.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div&gt;Anyway I tried to work around it but ultimately the angle brackets are just too narrow. I didn't feel like going out and buying a bunch of planks to fix IKEA's bad construction, so instead I figured I'd try just taking the basic metal bed frame we used previously. Since it's nothing more than a metal rectangle that the bed sits on and is exactly as wide as the box spring, it should drop right into the new IKEA bed box.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div&gt;Well, almost. It didn't quite fit, because the mounting brackets for the headboard on the old frame add just a tiny little bit of width, but it's enough to keep it from fitting.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div&gt;But I pretend to be a Maker, and I smelled a project! So I figured I'd just remove the headboard brackets and then it'd fit. Unfortunately those brackets are riveted to the frame sides.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div&gt;I tried drilling out the rivets, but my cordless drill didn't have the power and I didn't have a steel-drilling bit anyway. Then I whipped out the Dremel and put on a cutting tool, and cut off the rivet heads on one side, but the rivet&amp;nbsp;material&amp;nbsp;was pretty well alloyed with the frame metal, so I couldn't push the rivets out once I'd cut the head off. I tried just cutting the bracket off, but a Dremel as old as I am vs. steel is slow going, to say the least.&lt;br /&gt;
&lt;br /&gt;
At this point I'd spent probably an hour and a half on all this. It had come down to it. I was sitting on the floor in the middle of the bed box staring at this frame, out of options. I was going to have to admit defeat.&lt;br /&gt;
&lt;br /&gt;
Then I looked at the frame, and suddenly remembered that it was actually in 2 parts. The left and right angle brackets have arms that join together with a simple keyhole-and-pin slide lock. So I just pushed them in slightly to make the frame narrower, dropped it into the bed box, and then dropped in the box spring. This took a grand total of 90 seconds.&lt;br /&gt;
&lt;br /&gt;
So, lesson learned. Again.&lt;br /&gt;
&lt;br /&gt;
Always look for the simple solution before jumping into the hard one.&lt;/div&gt;</content><link rel="replies" type="application/atom+xml" href="http://blog.morrildl.net/feeds/2883398927683515450/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://www.blogger.com/comment.g?blogID=107080706431419454&amp;postID=2883398927683515450" title="1 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/107080706431419454/posts/default/2883398927683515450?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/107080706431419454/posts/default/2883398927683515450?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/morrildl/~3/7yyX7cG3UWI/le-sigh.html" title="Den Suck" /><author><name>Dan Morrill</name><uri>https://plus.google.com/112413860260589530492</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="32" height="32" src="//lh6.googleusercontent.com/-I7qzkMo1ktM/AAAAAAAAAAI/AAAAAAAAa78/UIvpyYkgJQc/s512-c/photo.jpg" /></author><thr:total>1</thr:total><feedburner:origLink>http://blog.morrildl.net/2010/08/le-sigh.html</feedburner:origLink></entry><entry gd:etag="W/&quot;DkAMRXs4fCp7ImA9Wx5TF00.&quot;"><id>tag:blogger.com,1999:blog-107080706431419454.post-7445171636602062715</id><published>2010-08-01T16:19:00.000-07:00</published><updated>2010-08-01T16:19:44.534-07:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2010-08-01T16:19:44.534-07:00</app:edited><title>A Shocking Exposé!</title><content type="html">Oh jeez.&lt;br /&gt;
&lt;br /&gt;
Consider this Apple product, selling for $29: &lt;a href="http://www.apple.com/battery-charger/"&gt;http://www.apple.com/battery-charger/&lt;/a&gt;&lt;br /&gt;
&lt;br /&gt;
Basically this is a 2x NiMH AA battery charger, with 6 AA batteries included. The batteries by their description sound a lot like (and may well be) rebranded low-self-discharge Sanyo Eneloop batteries. By "a lot like", I mean that the recharge cycle specs is very similar to Eneloop, and while Apple provides no specifics (such as capacity, discharge characteristics, behavior under load), the description sounds a lot like the "pre-charged" marketing message used by Eneloops.&lt;br /&gt;
&lt;br /&gt;
Why, they're practically inviting comparison! Let's investigate.&lt;br /&gt;
&lt;br /&gt;
Sanyo Eneloop 2x charger with 2 Eneloops, $13.18:&lt;br /&gt;
&lt;a href="http://www.amazon.com/Sanyo-Eneloop-Pre-Charged-Rechargeable-Batteries/dp/B000XVZYXO/ref=sr_1_18?s=electronics&amp;amp;ie=UTF8&amp;amp;qid=1280702524&amp;amp;sr=1-18"&gt;http://www.amazon.com/Sanyo-Eneloop-Pre-Charged-Rechargeable-Batteries/dp/B000XVZYXO/ref=sr_1_18?s=electronics&amp;amp;ie=UTF8&amp;amp;qid=1280702524&amp;amp;sr=1-18&lt;/a&gt;&lt;br /&gt;
&lt;br /&gt;
4x AA Eneloops, $9.15:&lt;br /&gt;
&lt;a href="http://www.amazon.com/Sanyo-Eneloop-Pre-Charged-Rechargeable-Batteries/dp/B000IV2YLY/ref=sr_1_7?s=electronics&amp;amp;ie=UTF8&amp;amp;qid=1280702524&amp;amp;sr=1-7"&gt;http://www.amazon.com/Sanyo-Eneloop-Pre-Charged-Rechargeable-Batteries/dp/B000IV2YLY/ref=sr_1_7?s=electronics&amp;amp;ie=UTF8&amp;amp;qid=1280702524&amp;amp;sr=1-7&lt;/a&gt;&lt;br /&gt;
&lt;br /&gt;
Total: $22.33.&lt;br /&gt;
Apple markup: $6.67, a ~23% premium.&lt;br /&gt;
&lt;br /&gt;
For $6.67, you can upgrade to a 4x charger and still come in under Apple by a couple bucks.&lt;br /&gt;
&lt;br /&gt;
Now, Apple's claiming a low standby load, which at least is a potential difference from the competitor. The problem is, their competitors don't publish standby loads (at least that I can find) for their chargers, and they themselves never define the "average" charger they're comparing themselves to. Did they test a good random sampling of chargers? Or did they test a hand-picked set of dubious chargers they picked up at a market in Taiwan or something?&lt;br /&gt;
&lt;br /&gt;
So in other words, it's cute marketing, but it's a 23% markup for a product which has no actual, verifiable advantage over the competitor. &amp;nbsp;Although it does look cute I suppose, if you're into the whole Apple wall-wart aesthetic.&lt;br /&gt;
&lt;br /&gt;
When Apple does this kind of thing with a Mac, you can at least point to the user experience and make non-specific non-falsifiable claims of enhanced productivity or lower frustration or better build quality or whatever. And that's fine; I don't have a problem if people find that those things make the difference for them in their daily usage. Human factors are very hard to quantify.&lt;br /&gt;
&lt;br /&gt;
But when they do it with a battery form factor that was &lt;a href="http://en.wikipedia.org/wiki/AA_battery"&gt;defined as a commodity in 1947&lt;/a&gt;, has been exhaustively characterized, is utterly well-understood, and can be trivially compared apples-to-apples (pun intended) with competitors, I find it kind of laughable and silly.&lt;br /&gt;
&lt;br /&gt;
And honestly, if they apply the "Apple premium" to something as obnoxiously over the top as this, it makes me question whether there really is an Apple premium on &lt;i&gt;anything&lt;/i&gt; they sell, or if Apple is just a giant snow-job.&lt;br /&gt;
&lt;div&gt;&lt;br /&gt;
&lt;/div&gt;</content><link rel="replies" type="application/atom+xml" href="http://blog.morrildl.net/feeds/7445171636602062715/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://www.blogger.com/comment.g?blogID=107080706431419454&amp;postID=7445171636602062715" title="3 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/107080706431419454/posts/default/7445171636602062715?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/107080706431419454/posts/default/7445171636602062715?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/morrildl/~3/dMH2VkSKjAE/shocking-expose.html" title="A Shocking Exposé!" /><author><name>Dan Morrill</name><uri>https://plus.google.com/112413860260589530492</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="32" height="32" src="//lh6.googleusercontent.com/-I7qzkMo1ktM/AAAAAAAAAAI/AAAAAAAAa78/UIvpyYkgJQc/s512-c/photo.jpg" /></author><thr:total>3</thr:total><feedburner:origLink>http://blog.morrildl.net/2010/08/shocking-expose.html</feedburner:origLink></entry><entry gd:etag="W/&quot;Ak4FRX89eSp7ImA9WxFVGU8.&quot;"><id>tag:blogger.com,1999:blog-107080706431419454.post-8607014355217416102</id><published>2010-06-18T23:19:00.001-07:00</published><updated>2010-06-18T23:28:34.161-07:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2010-06-18T23:28:34.161-07:00</app:edited><title>Now I can manage my life from the command line</title><content type="html">GoogleCL (http://code.google.com/p/googlecl) is entirely too cool.&lt;br /&gt;
&lt;br /&gt;
sudo apt-get install dcraw graphicsmagick python-gdata &lt;br /&gt;
[...] &lt;br /&gt;
sudo dpkg -i http://googlecl.googlecode.com/files/googlecl_0.9.5-1_all.deb &lt;br /&gt;
[...] &lt;br /&gt;
for nef in *.NEF; do &lt;br /&gt;
jpg=`echo $nef | sed 's/\.NEF$/\.jpg/'`; &lt;br /&gt;
gm convert $nef $jpg; &lt;br /&gt;
google picasa post --title="Vegas ATV Trip" $jpg; &lt;br /&gt;
rm $jpg; &lt;br /&gt;
done &lt;br /&gt;
&lt;br /&gt;
.NEF is Nikon's RAW file format. dcraw is a utility that can convert NEF to&amp;nbsp;standard formats, and graphicsmagick is a utility that can do various&amp;nbsp;manipulations of images, including transcoding.&lt;br /&gt;
&lt;br /&gt;
The script above converts all the NEF files in the current directory to&amp;nbsp;temporary JPEG files, and then uploads them to my Picasa Web Albums account,&amp;nbsp;in the "Vegas ATV Trip" album. That is, it's an extremely simple but effective&amp;nbsp;Picasa uploader.&lt;br /&gt;
&lt;br /&gt;
I think I will be having some fun with this thing. I'm even posting this via&amp;nbsp;GoogleCL.</content><link rel="replies" type="application/atom+xml" href="http://blog.morrildl.net/feeds/8607014355217416102/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://www.blogger.com/comment.g?blogID=107080706431419454&amp;postID=8607014355217416102" title="1 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/107080706431419454/posts/default/8607014355217416102?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/107080706431419454/posts/default/8607014355217416102?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/morrildl/~3/gif8WFHfhtk/now-i-can-manage-my-life-from-command_18.html" title="Now I can manage my life from the command line" /><author><name>Dan Morrill</name><uri>https://plus.google.com/112413860260589530492</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="32" height="32" src="//lh6.googleusercontent.com/-I7qzkMo1ktM/AAAAAAAAAAI/AAAAAAAAa78/UIvpyYkgJQc/s512-c/photo.jpg" /></author><thr:total>1</thr:total><feedburner:origLink>http://blog.morrildl.net/2010/06/now-i-can-manage-my-life-from-command_18.html</feedburner:origLink></entry><entry gd:etag="W/&quot;DEAGRXw-fCp7ImA9WxFWGEo.&quot;"><id>tag:blogger.com,1999:blog-107080706431419454.post-7999944765806246169</id><published>2010-06-06T19:12:00.000-07:00</published><updated>2010-06-06T19:12:04.254-07:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2010-06-06T19:12:04.254-07:00</app:edited><title>On 'On Android Compatibility'</title><content type="html">&lt;i&gt;[I'm going to talk about Android a bit in this post. You should know that I'm Android's Open-Source and Compatibility Program Manager, so this is near and dear to my heart. But remember that this is still my personal blog, and thus my personal opinion. I'm not necessarily speaking for Google here. This post describes some of my personal perspectives on the mobile industry.]&lt;/i&gt;&lt;br /&gt;
&lt;br /&gt;
On Monday we posted a blog I wrote about &lt;a href="http://android-developers.blogspot.com/2010/05/on-android-compatibility.html"&gt;Android's approach to compatibility&lt;/a&gt;&amp;nbsp;over on the official Android blog.&lt;br /&gt;
&lt;div&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div&gt;The results were interesting. Tom Gibara &lt;a href="http://blog.tomgibara.com/post/657533695/an-dr-oi-d"&gt;made the great point&lt;/a&gt; that in exchange for handling device diversity you get a much larger audience in return.&amp;nbsp;Engadget has presented both sides of this topic, &lt;a href="http://www.engadget.com/2010/05/27/counterpoint-fragmentation-wont-destroy-android-after-all"&gt;including the good&lt;/a&gt; and the bad. Although my personal favorite example of the negative point of view is &lt;a href="http://technologizer.com/2010/06/01/android-fragmentation-you-cant-discuss-a-problem-if-one-of-the-parties-denies-it-exists/"&gt;Harry McCracken's somewhat histrionic (IMO) post&lt;/a&gt;.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;
&lt;span class="Apple-style-span" style="font-size: x-large;"&gt;&lt;b&gt;A Name for the Ailment&lt;/b&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;The gist of the main criticism is that there are multiple versions of Android available at the same time. What I think has been missed is that I never said this was a non-issue; I just said that calling it "fragmentation" is too vague to be helpful (and then moved on, since Monday's official blog post wasn't about this.) Regardless, I actually liked the word Mr. McCracken used to describe this -- "versionitis" -- because it's a pretty evocative but descriptive term.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div&gt;So, what about versionitis? It's certainly true that there are several Android versions extant at the moment, but I believe this isn't a big deal. For one thing, the risk of user confusion is extremely overblown; you've really got to be cynical if you think the buying public is somehow too stupid to comprehend the concept of last year's model, as applied to mobiles.&lt;br /&gt;
&lt;br /&gt;
From a developer's point of view it's admittedly a bit trickier, though. You can do without features from later versions and rely on Android's forward compatibility to target the largest possible audience; or you can make a flashy cutting edge app for the latest version and wait for audience size to catch up. Although sometimes you don't even have to choose, because &lt;a href="http://android-developers.blogspot.com/2009/04/backward-compatibility-for-android.html"&gt;with a little extra work&lt;/a&gt; you can make an app that will run on old versions AND take advantage of new features if they are available. Nobody likes extra work, but at least as Tom Gibara pointed out, you're getting something in return.&lt;br /&gt;
&lt;br /&gt;
But all that said, it comes down to choice: consumers and developers have to make some decisions, and the argument is that this all treads dangerously close to a &lt;a href="http://www.swarthmore.edu/SocSci/bschwar1/Sci.Amer.pdf"&gt;tyranny of choice&lt;/a&gt;. Personally, I don't think it's nearly that bad, but of course that's just my opinion, and I respect that some people don't agree. And anyway, in an ideal world we'd like to see all devices running the latest version of Android -- it's not as if we are somehow opposed to the idea.&lt;br /&gt;
&lt;br /&gt;
&lt;b&gt;&lt;span class="Apple-style-span" style="font-size: x-large;"&gt;Wherein We Invoke a Business Cliche&lt;/span&gt;&lt;/b&gt;&lt;br /&gt;
But the main reason why this issue just isn't that big a deal is because we're right in the middle of a sea change that will wash this all away.&lt;br /&gt;
&lt;br /&gt;
Rewind to about 5 years ago. This is recent enough you had feature phones and smartphones mostly as we do today, but long enough ago that it was before the mobile revolution really got underway. Back then as today, it was practically unheard of for a feature phone to ever get a software update. As for smartphones, it wasn't unheard of to get an update, but it was pretty uncommon (at least in the consumer space.)&lt;br /&gt;
&lt;br /&gt;
Why? The reason was that the smartphone platform vendors controlled the software. It was exceedingly difficult for OEMs to &lt;i&gt;differentiate&lt;/i&gt; on software because they had little &lt;i&gt;control&lt;/i&gt; over the software. It was difficult for them to differentiate on &lt;i&gt;features&lt;/i&gt; because they could only &lt;i&gt;ship&lt;/i&gt; features supported by the OS they were using. But it was still a fiercely competitive market and they still innovated as hard as they could.&lt;br /&gt;
&lt;br /&gt;
So they innovated on the only dimension they had control over: hardware and industrial design. The inevitable result was that as soon as an OEM released one phone, it was immediately on to the next. The follow-on to a successful device was another device. "Version 2.0" wasn't an upgrade, it was a replacement. This is how we ended up with &lt;a href="http://en.wikipedia.org/wiki/Motorola_RAZR"&gt;16 different RAZR models&lt;/a&gt; (if I counted correctly), each with different hardware. It was easier for OEMs to rev hardware than software, because they had little control over the software.&lt;br /&gt;
&lt;br /&gt;
Think about that. Easier to rev &lt;i&gt;hardware &lt;/i&gt;than &lt;i&gt;software! &lt;/i&gt;This flies in the face of everything we've learned from the personal computer. It's almost like the cell phone world ran counter to the laws of nature, so as soon as someone offered the OEMs the chance to control their own software destiny they jumped at the chance. And that's exactly what Android as an open platform is doing.&lt;br /&gt;
&lt;br /&gt;
&lt;b&gt;&lt;span class="Apple-style-span" style="font-size: x-large;"&gt;And the Point Is...?&lt;/span&gt;&lt;/b&gt;&lt;br /&gt;
So what does this have to do with versionitis? Simply this: it takes time to rebuild a manufacturing process.&lt;br /&gt;
&lt;br /&gt;
When all you do is rev hardware, you get pretty good at it. You optimize around it. You make &lt;i&gt;being &lt;/i&gt;good at it a competitive strength. The OEMs are transitioning to a more PC-like world where they control their own software destiny, but to do this they need to update their procedures and tools.&lt;br /&gt;
&lt;br /&gt;
This takes time, and today we're right in the middle of it. Device manufacturers &lt;i&gt;want &lt;/i&gt;your brand loyalty. They also know they aren't going to get it unless their users have a good experience, and they know that users are expecting that the new $500 tiny computer they just bought comes with a year or two of support. OEMs know this, they are hardly dumb.&lt;br /&gt;
&lt;br /&gt;
The updates are coming. You can see it already, with devices like the &lt;a href="http://phandroid.com/2010/05/14/sprints-samsung-moment-2-1-update-is-now-officially-live/"&gt;Samsung Moment&lt;/a&gt; and &lt;a href="http://support.sprint.com/support/article/Find_and_update_the_software_version_on_your_HTC_Hero/case-gb746811-20091009-155624"&gt;HTC Hero (for Sprint)&lt;/a&gt;&amp;nbsp;getting 2.1, and commitments to upgrade other models. Section 12 in the&amp;nbsp;&lt;a href="http://source.android.com/compatibility/android-2.1-cdd.pdf"&gt;Compatibility Definition Document&lt;/a&gt;&amp;nbsp;even requires that compatible Android devices be upgradeable, which at least sets the stage. Device manufacturers are getting better and better at doing these updates -- and I mean, it's not like they are going to get &lt;i&gt;slower &lt;/i&gt;at it.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
That's why it just doesn't make sense to me to worry much about this versionitis thing. It's certainly true that today some people aren't getting the updates they want, but that will change over time. And while it may be poor consolation when your buddy's got a later Android version than you, your current phone isn't just going to stop working. And of course the reality is that to the vast majority of the millions of regular-Joe Android users, this isn't even an issue.&lt;br /&gt;
&lt;br /&gt;
So for some people it's painful today, but really they're just impatient for the future to arrive. We have to take the long view, though -- and as far as I can see, the view is pretty good.&lt;/div&gt;</content><link rel="replies" type="application/atom+xml" href="http://blog.morrildl.net/feeds/7999944765806246169/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://www.blogger.com/comment.g?blogID=107080706431419454&amp;postID=7999944765806246169" title="13 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/107080706431419454/posts/default/7999944765806246169?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/107080706431419454/posts/default/7999944765806246169?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/morrildl/~3/0QKYxH_q9-k/on-on-android-compatibility.html" title="On 'On Android Compatibility'" /><author><name>Dan Morrill</name><uri>https://plus.google.com/112413860260589530492</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="32" height="32" src="//lh6.googleusercontent.com/-I7qzkMo1ktM/AAAAAAAAAAI/AAAAAAAAa78/UIvpyYkgJQc/s512-c/photo.jpg" /></author><thr:total>13</thr:total><feedburner:origLink>http://blog.morrildl.net/2010/06/on-on-android-compatibility.html</feedburner:origLink></entry><entry gd:etag="W/&quot;CkYCQXgyeip7ImA9WxFRFk0.&quot;"><id>tag:blogger.com,1999:blog-107080706431419454.post-1761157910729118063</id><published>2010-04-29T21:02:00.000-07:00</published><updated>2010-04-29T21:02:40.692-07:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2010-04-29T21:02:40.692-07:00</app:edited><title>On Being Open</title><content type="html">"Diversity" is more than the absence of racism. Diversity does not mean grudgingly tolerating the equality of those different from you, it means recognizing the real, additive value that disparate perspectives and habits bring to your life, and others' lives. It doesn't mean tolerating differences, it means valuing differences. Tolerance is just the first step on the road to diversity.&lt;br /&gt;
&lt;br /&gt;
Freedom of speech does not mean waiting for the other guy to say something before you shout him down. Free speech means, as the saying goes, disagreeing with what someone says but defending to the death his right to say it. You only really value freedom of speech when you quietly thank your higher power of choice that the other guy has the right to make your blood boil.&lt;br /&gt;
&lt;br /&gt;
So it is with open platforms.&lt;br /&gt;
&lt;br /&gt;
Openness is more than the absence of closed. Openness does not come automatically &amp;nbsp; just because you deploy an industry standard. Openness means you recognize the real, additive value that disparate products and businesses bring to your platform. It doesn't mean tolerating competition, it means valuing competition. You only really value openness when you quietly thank your higher power of choice that your competitor just took advantage of the opportunity to destroy your business on your own platform. Implementing standards is just the first step on the road to openness.&lt;br /&gt;
&lt;br /&gt;
Steve Jobs, you fail at openness.</content><link rel="replies" type="application/atom+xml" href="http://blog.morrildl.net/feeds/1761157910729118063/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://www.blogger.com/comment.g?blogID=107080706431419454&amp;postID=1761157910729118063" title="5 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/107080706431419454/posts/default/1761157910729118063?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/107080706431419454/posts/default/1761157910729118063?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/morrildl/~3/UUbg4pnqIzQ/on-being-open.html" title="On Being Open" /><author><name>Dan Morrill</name><uri>https://plus.google.com/112413860260589530492</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="32" height="32" src="//lh6.googleusercontent.com/-I7qzkMo1ktM/AAAAAAAAAAI/AAAAAAAAa78/UIvpyYkgJQc/s512-c/photo.jpg" /></author><thr:total>5</thr:total><feedburner:origLink>http://blog.morrildl.net/2010/04/on-being-open.html</feedburner:origLink></entry><entry gd:etag="W/&quot;DkUFQnk_cSp7ImA9WxFSFkg.&quot;"><id>tag:blogger.com,1999:blog-107080706431419454.post-5339745094095222576</id><published>2010-04-18T22:07:00.000-07:00</published><updated>2010-04-18T22:16:53.749-07:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2010-04-18T22:16:53.749-07:00</app:edited><title>I Make FAIL</title><content type="html">I got Issue 22 of Make on Friday, wherein is contained &lt;a href="http://makezine.com/22/kittytwitty/"&gt;a project for a cat toy&lt;/a&gt; that "senses and Twitters felinogenic perturbations". (Heh.) I recently discovered -- while making a cigar box guitar from Issue 21, naturally -- that one of our cats, Sammy, luuuuuurves to play with guitar strings, since they dance all around and hold up well to clawing and nomming, being made of steel and all. As the cat toy project mostly consists of a paper bird on the end of a guitar string, I figured this one was a no-brainer.&lt;br /&gt;
&lt;br /&gt;
It's a pretty straightforward project, although I did encounter one snafu. The core of the project is just a steel molly bolt installed into an enclosure, with a steel guitar string projecting up through the center. When the cat whacks the toy, the guitar string bends and makes contact with the molly bolt, which closes an electrical connection. It turns out to be a bit tricky to get the guitar string, molly bolt, and heat-shrink tubing lined up correctly so that the guitar string is not in contact with the bolt while at rest yet still makes contact easily when whacked. I ended up screwing up the first attempt and had to try again.&amp;nbsp;But, I got it to mostly work on my second try.&lt;br /&gt;
&lt;br /&gt;
Now, I'm no dummy. I know better than to spend hours soldering up a whole project, installing it into an enclosure, and then writing Arduino code for a cat toy, before finding out if the cat actually likes it. (Measure twice, cut once, as it were.)&lt;br /&gt;
&lt;br /&gt;
So instead I took a decapitated USB cable that I have lying around that I use to prototype with a breadboard, and hooked up USB power/ground to the breadboard, and an LED in series with the toy's signal leads. I then plugged it into my laptop, which made for a quick and dirty 5V power source for testing.&lt;br /&gt;
&lt;br /&gt;
The LED lit when I whacked it, so everything seemed installed correctly. I whacked it around a few more times watching the LED light up, until I realized I was playing with a cat toy. *ahem* &amp;nbsp;I then went to find Sammy.&lt;br /&gt;
&lt;br /&gt;
By now the astute reader knows where this is going, of course. Sammy would have nothing to do with this thing. He could tell I wanted him to play with it (since I kept picking him and putting him back in front of it whenever he started to walk away), so he batted at it half-heartedly a couple times, then looked at me and meowed for dinner.&lt;br /&gt;
&lt;br /&gt;
To confirm, I grabbed another guitar string and held it out for him, and boy howdy did he have a good time with that one. The toy, unfortunately, just doesn't have enough whiplash action to interest him. Since it stands vertically, the string's length has to be short so that it doesn't bend over under its own weight, but Sammy likes his strings to be full-length, I guess.&lt;br /&gt;
&lt;br /&gt;
So, today I made a cat toy that was more entertaining for me than for the cat. My name is Dan, and I'm a Maker. &amp;nbsp;(Hello, Dan!)&lt;br /&gt;
&lt;br /&gt;
All is not lost though, I have a couple ideas for how I can make a variant of this thing that Sammy will like. I think I will use a dowel for a hard vertical shaft with the guitar string placed horizontally on the top. Pulling on the string will make the dowel lever back and forth, which I can use to trigger a switch. This might actually even be easier and more durable than the vertical version, and has the advantage of not electrically connecting the cat to 5V DC.&lt;br /&gt;
&lt;br /&gt;
When (if?) I get this working, I doubt I'll use it to Tweet, though. Or at least, if I do I intend to at least use it to trigger a webcam that grabs a snapshot or video of the cat at play. In this era of "video or it didn't happen", can I do any less?</content><link rel="replies" type="application/atom+xml" href="http://blog.morrildl.net/feeds/5339745094095222576/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://www.blogger.com/comment.g?blogID=107080706431419454&amp;postID=5339745094095222576" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/107080706431419454/posts/default/5339745094095222576?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/107080706431419454/posts/default/5339745094095222576?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/morrildl/~3/tHRGHfL1pv8/i-make-fail.html" title="I Make FAIL" /><author><name>Dan Morrill</name><uri>https://plus.google.com/112413860260589530492</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="32" height="32" src="//lh6.googleusercontent.com/-I7qzkMo1ktM/AAAAAAAAAAI/AAAAAAAAa78/UIvpyYkgJQc/s512-c/photo.jpg" /></author><thr:total>0</thr:total><feedburner:origLink>http://blog.morrildl.net/2010/04/i-make-fail.html</feedburner:origLink></entry><entry gd:etag="W/&quot;DE4DQ3czeip7ImA9WxFSEEw.&quot;"><id>tag:blogger.com,1999:blog-107080706431419454.post-6299384978876817437</id><published>2010-04-11T13:06:00.000-07:00</published><updated>2010-04-11T13:16:12.982-07:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2010-04-11T13:16:12.982-07:00</app:edited><title>Cable winders</title><content type="html">My wife and I have been collecting corks for a while to fill in some of those cork-board things you can buy, where you glue corks into a wooden frame to make a trivet or a corkboard for messages.&amp;nbsp;This weekend we finally had enough corks so I assembled those, but I also had a few corks left over.&lt;br /&gt;
&lt;div&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div&gt;Since corks don't compost well, I wanted to put some of them to another use. At the same time I've been having a problem with damaging and losing USB cables for my various Android phones, since I've been carrying them loose in my Timbuk2 bag. I suppose could have done a better job of winding them up carefully, but that's annoying to do, given how often I use them.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div&gt;So instead I made some cable winders out of some of the corks. It's extremely straightforward, and I won't belabor the point, since I made a YouTube video:&amp;nbsp;&lt;a href="http://www.youtube.com/watch?v=8Yf6AaXevyY"&gt;http://www.youtube.com/watch?v=8Yf6AaXevyY&lt;/a&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div&gt;I can't decide if this is a clever idea, or something lame that belongs on &lt;a href="http://regretsy.com./"&gt;regretsy.com.&lt;/a&gt;&lt;/div&gt;</content><link rel="replies" type="application/atom+xml" href="http://blog.morrildl.net/feeds/6299384978876817437/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://www.blogger.com/comment.g?blogID=107080706431419454&amp;postID=6299384978876817437" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/107080706431419454/posts/default/6299384978876817437?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/107080706431419454/posts/default/6299384978876817437?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/morrildl/~3/uS-H4kZ7Eo4/cable-winders.html" title="Cable winders" /><author><name>Dan Morrill</name><uri>https://plus.google.com/112413860260589530492</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="32" height="32" src="//lh6.googleusercontent.com/-I7qzkMo1ktM/AAAAAAAAAAI/AAAAAAAAa78/UIvpyYkgJQc/s512-c/photo.jpg" /></author><thr:total>0</thr:total><feedburner:origLink>http://blog.morrildl.net/2010/04/cable-winders.html</feedburner:origLink></entry><entry gd:etag="W/&quot;AkYCSH04fyp7ImA9WxBUGUQ.&quot;"><id>tag:blogger.com,1999:blog-107080706431419454.post-3488965250578678533</id><published>2010-03-07T13:36:00.000-08:00</published><updated>2010-03-07T13:42:49.337-08:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2010-03-07T13:42:49.337-08:00</app:edited><title>Watching a film on your F*CKING telephone</title><content type="html">&lt;span class="Apple-style-span" style="font-family: Arial; font-size: small;"&gt;&lt;span class="Apple-style-span" style="font-size: 13px;"&gt;Before we begin, please watch &lt;a href="http://www.youtube.com/watch?v=wKiIroiCvZ0"&gt;this important safety video.&lt;/a&gt;&amp;nbsp;If Mr. Lynch's cautionary tale has not dissuaded you, read on, with the understanding that you should not try this at home, that I am not responsible if your house burns down or you get arrested or sued, and that I offer no warranty, including for merchantability or fitness for a particular purpose.&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;
&lt;div&gt;&lt;span class="Apple-style-span" style="font-family: Arial; font-size: small;"&gt;&lt;span class="Apple-style-span" style="font-size: 13px;"&gt;&lt;br /&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span" style="font-family: Arial; font-size: small;"&gt;&lt;span class="Apple-style-span" style="font-size: 13px;"&gt;I have a 45+ minute commute, twice a day. By way of sanity management, I use my phone (typically a Droid or Nexus One these days) to listen to music... and watch some videos. (No, I don't drive, I take transit, but your interest in safety is reassuring.) Specifically, I've been ripping DVDs to watch on my phone.[1] &amp;nbsp;It took me quite some doing to find a way to rip DVDs so that they'd play on my phone, and I figured I would blog about it for two reasons: so that others may perhaps benefit, but also so that when my computer dies the next time, I'll have a copy in this Cloud all the kids these days are talking about.&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span" style="font-family: Arial; font-size: small;"&gt;&lt;span class="Apple-style-span" style="font-size: 13px;"&gt;&lt;br /&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span" style="font-family: Arial; font-size: small;"&gt;&lt;span class="Apple-style-span" style="font-size: 13px;"&gt;So, here is how to use Ubuntu to rip DVDs to MP4 files that will work on an Android device.&amp;nbsp;This approach uses command line programs: no GUI required. Mostly this is because I prefer it this way so that I can rip DVDs from my headless server, but it's also partly because I couldn't find a GUI program that was capable of ripping a file that Android can understand. (I suspect it's because they all use mencoder behind the scenes -- read on.)&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span" style="font-family: Arial; font-size: small;"&gt;&lt;span class="Apple-style-span" style="font-size: 13px;"&gt;&lt;br /&gt;
&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;
&lt;span class="Apple-style-span" style="font-family: Arial; font-size: small;"&gt;&lt;span class="Apple-style-span" style="font-size: 13px;"&gt;The output we're looking for is an MPEG4 SP file, with video and audio encoded in a supported format. Any supported formats will work, but practically speaking we want H264 for video, and AAC for audio. You could use MP3 for audio, but... why would you do that to yourself? Note that many (most? all?) DVDs use AC3 for audio, but we are transcoding that to AAC.&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;
&lt;span class="Apple-style-span" style="font-family: Arial; font-size: small;"&gt;&lt;span class="Apple-style-span" style="font-size: 13px;"&gt;&lt;br /&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span" style="font-family: Arial; font-size: small;"&gt;&lt;span class="Apple-style-span" style="font-size: 13px;"&gt;The basic idea here is that you use the mencoder program to do the ripping. However, mencoder has a bug that generates broken MP4 container files, so Android devices don't recognize them as movies and can't play them. So, after you rip a DVD to AVI, you need to repackage it as a legitimate MP4 file.&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span" style="font-family: Arial; font-size: small;"&gt;&lt;span class="Apple-style-span" style="font-size: 13px;"&gt;&lt;br /&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span" style="font-family: Arial; font-size: small;"&gt;&lt;span class="Apple-style-span" style="font-size: 13px;"&gt;To begin, you need to install a few packages:&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;ul&gt;&lt;li&gt;&lt;span class="Apple-style-span" style="font-family: Arial; font-size: 13px;"&gt;libdvdcss2 - for the ability to decrypt DVDs [2]&lt;/span&gt;&lt;/li&gt;
&lt;li&gt;&lt;span class="Apple-style-span" style="font-family: Arial; font-size: 13px;"&gt;lsdvd - for looking at the contents of a DVD&lt;/span&gt;&lt;/li&gt;
&lt;li&gt;&lt;span class="Apple-style-span" style="font-family: Arial; font-size: 13px;"&gt;mencoder - to rip DVDs to AVI files (don't bother trying to rip to MP4, it won't work)&lt;/span&gt;&lt;/li&gt;
&lt;li&gt;&lt;span class="Apple-style-span" style="font-family: Arial; font-size: 13px;"&gt;faac - used by mencoder to rip audio to AAC&lt;/span&gt;&lt;/li&gt;
&lt;li&gt;&lt;span class="Apple-style-span" style="font-family: Arial; font-size: 13px;"&gt;mplayer - for extracting the audio track from the AVI file&amp;nbsp;&lt;/span&gt;&lt;/li&gt;
&lt;li&gt;&lt;span class="Apple-style-span" style="font-family: Arial; font-size: 13px;"&gt;mpeg4ip-server - for its mp4creator tool which can re-merge audio and video into a correct MP4&lt;/span&gt;&lt;/li&gt;
&lt;/ul&gt;&lt;div&gt;&lt;span class="Apple-style-span" style="font-family: Arial; font-size: small;"&gt;&lt;span class="Apple-style-span" style="font-size: 13px;"&gt;These can be installed via apt-get or aptitude or whatever floats your boat.&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span" style="font-family: Arial; font-size: small;"&gt;&lt;span class="Apple-style-span" style="font-size: 13px;"&gt;&lt;br /&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span" style="font-family: Arial; font-size: small;"&gt;&lt;span class="Apple-style-span" style="font-size: 13px;"&gt;In slightly more detail, here is the actual procedure:&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;ol&gt;&lt;li&gt;&lt;span class="Apple-style-span" style="font-family: Arial; font-size: small;"&gt;&lt;span class="Apple-style-span" style="font-size: 13px;"&gt;Use 'mencoder dvd://&lt;track&gt;' to rip the DVD to an AVI file containing H264 video and AAC audio&lt;/track&gt;&lt;/span&gt;&lt;/span&gt;&lt;/li&gt;
&lt;li&gt;&lt;span class="Apple-style-span" style="font-family: Arial; font-size: small;"&gt;&lt;span class="Apple-style-span" style="font-size: 13px;"&gt;Use 'mplayer -dumpaudio' to extract the AAC data from the AVI&lt;/span&gt;&lt;/span&gt;&lt;/li&gt;
&lt;li&gt;&lt;span class="Apple-style-span" style="font-family: Arial; font-size: small;"&gt;&lt;span class="Apple-style-span" style="font-size: 13px;"&gt;Use 'mencoder -of rawvideo' to extract the H264 video from the AVI&lt;/span&gt;&lt;/span&gt;&lt;/li&gt;
&lt;li&gt;&lt;span class="Apple-style-span" style="font-family: Arial; font-size: small;"&gt;&lt;span class="Apple-style-span" style="font-size: 13px;"&gt;Use 'mp4creator -create' to create an MP4 file from the AAC audio track&lt;/span&gt;&lt;/span&gt;&lt;/li&gt;
&lt;li&gt;&lt;span class="Apple-style-span" style="font-family: Arial; font-size: small;"&gt;&lt;span class="Apple-style-span" style="font-size: 13px;"&gt;Use 'mp4creator -create' again to merge the video in to the new MP4&lt;/span&gt;&lt;/span&gt;&lt;/li&gt;
&lt;/ol&gt;&lt;div&gt;&lt;span class="Apple-style-span" style="font-family: Arial; font-size: small;"&gt;&lt;span class="Apple-style-span" style="font-size: 13px;"&gt;It's not quite as simple as the above, but since I don't really want to bother getting into the gory command-line details, I have instead included a simple Python script that automates these. You pass it a single integer as a command line argument, which indicates which track on the DVD to rip.&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span" style="font-family: Arial; font-size: small;"&gt;&lt;span class="Apple-style-span" style="font-size: 13px;"&gt;&lt;br /&gt;
&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;
&lt;span class="Apple-style-span" style="font-family: Arial; font-size: small;"&gt;&lt;span class="Apple-style-span" style="font-size: 13px;"&gt;In the script, I set the H264 bitrate to 768. This is too high for first-generation devices like the G1, Magic, and Hero, which don't have the hardware to handle 768kbit. However, Droid and Nexus one can actually handle higher, but I set it at 768kbit as a compromise between quality and file size. A half-hour TV show episode is about 275MB with this configuration. (Wow, my first hard drive was 20MB.)&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;
&lt;span class="Apple-style-span" style="font-family: Arial; font-size: small;"&gt;&lt;span class="Apple-style-span" style="font-size: 13px;"&gt;&lt;br /&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span" style="font-family: Arial; font-size: small;"&gt;&lt;span class="Apple-style-span" style="font-size: 13px;"&gt;Notes&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span" style="font-family: Arial; font-size: small;"&gt;&lt;span class="Apple-style-span" style="font-size: 13px;"&gt;[1] - I do not condone ripping DVDs which you do not own. Seriously. I have ripped 800+ CDs to our disk server, but in each case we own the physical disk, or purchased it legitimately if it is digital. The same is true for DVDs I've ripped. I do this as a form of time-shifting (which I believe is fair use, or ought to be), and because I've bought the media in each case I have no moral issues doing this. Don't be evil!&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;
&lt;span class="Apple-style-span" style="font-family: Arial; font-size: small;"&gt;&lt;span class="Apple-style-span" style="font-size: 13px;"&gt;&lt;br /&gt;
&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;
&lt;span class="Apple-style-span" style="font-family: Arial; font-size: small;"&gt;&lt;span class="Apple-style-span" style="font-size: 13px;"&gt;[2] - See [1].&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;
&lt;span class="Apple-style-span" style="font-family: Arial; font-size: small;"&gt;&lt;span class="Apple-style-span" style="font-size: 13px;"&gt;&lt;br /&gt;
&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;
&lt;span class="Apple-style-span" style="font-family: Arial; font-size: small;"&gt;&lt;span class="Apple-style-span" style="font-size: 13px;"&gt;Maybe one day mencoder will get fixed and steps 2 - 5 will become obsolete. Until that day, here is a Python script:&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;
&lt;span class="Apple-style-span" style="font-family: Arial; font-size: small;"&gt;&lt;span class="Apple-style-span" style="font-size: 13px;"&gt;&lt;br /&gt;
&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;
&lt;span class="Apple-style-span" style="font-family: Arial; font-size: small;"&gt;&lt;span class="Apple-style-span" style="font-size: 13px;"&gt;&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;
&lt;span class="Apple-style-span" style="font-family: Arial; font-size: small;"&gt;&lt;span class="Apple-style-span" style="font-size: 13px;"&gt;&lt;span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;"&gt;import os, sys&lt;/span&gt;&lt;br /&gt;
&lt;span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;"&gt;tracknum = int(sys.argv[1])&lt;/span&gt;&lt;br /&gt;
&lt;span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;"&gt;args = {'tracknum': tracknum}&lt;/span&gt;&lt;br /&gt;
&lt;span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;"&gt;&lt;br /&gt;
&lt;/span&gt;&lt;br /&gt;
&lt;span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;"&gt;print 'mencoder...'&lt;/span&gt;&lt;br /&gt;
&lt;span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;"&gt;s = 'mencoder dvd://%(tracknum)s -dvd-device /dev/dvd -aid 128 -o ripping-%(tracknum)s.avi -ovc x264 -x264encopts bitrate=1024:nocabac:direct_pred=auto:me=umh:frameref=2:level_idc=21:partitions=all:subq=6:threads=auto:trellis=1:vbv_maxrate=768:vbv_bufsize=244:bframes=0 -oac faac -faacopts br=192:mpeg=4:object=2 -channels 2 -srate 48000 -vf harddup' % args&lt;/span&gt;&lt;br /&gt;
&lt;span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;"&gt;f = os.popen(s)&lt;/span&gt;&lt;br /&gt;
&lt;span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;"&gt;x = f.read()&lt;/span&gt;&lt;br /&gt;
&lt;span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;"&gt;while x:&lt;/span&gt;&lt;br /&gt;
&lt;span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;"&gt;&amp;nbsp;&amp;nbsp;x = f.read()&lt;/span&gt;&lt;br /&gt;
&lt;span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;"&gt;&lt;br /&gt;
&lt;/span&gt;&lt;br /&gt;
&lt;span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;"&gt;print 'dumping audio...'&lt;/span&gt;&lt;br /&gt;
&lt;span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;"&gt;s = 'mplayer "ripping-%(tracknum)s.avi" -dumpaudio -dumpfile "ripping-%(tracknum)s.aac"' % args&lt;/span&gt;&lt;br /&gt;
&lt;span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;"&gt;f = os.popen(s)&lt;/span&gt;&lt;br /&gt;
&lt;span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;"&gt;x = f.read()&lt;/span&gt;&lt;br /&gt;
&lt;span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;"&gt;while x:&lt;/span&gt;&lt;br /&gt;
&lt;span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;"&gt;&amp;nbsp;&amp;nbsp;x = f.read()&lt;/span&gt;&lt;br /&gt;
&lt;span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;"&gt;&lt;br /&gt;
&lt;/span&gt;&lt;br /&gt;
&lt;span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;"&gt;print 'dumping video...'&lt;/span&gt;&lt;br /&gt;
&lt;span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;"&gt;s = 'mencoder ripping-%(tracknum)s.avi -of rawvideo -nosound -ovc copy -o ripping-%(tracknum)s.h264' % args&lt;/span&gt;&lt;br /&gt;
&lt;span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;"&gt;f = os.popen(s)&lt;/span&gt;&lt;br /&gt;
&lt;span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;"&gt;x = f.read()&lt;/span&gt;&lt;br /&gt;
&lt;span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;"&gt;while x:&lt;/span&gt;&lt;br /&gt;
&lt;span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;"&gt;&amp;nbsp;&amp;nbsp;x = f.read()&lt;/span&gt;&lt;br /&gt;
&lt;span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;"&gt;&lt;br /&gt;
&lt;/span&gt;&lt;br /&gt;
&lt;span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;"&gt;print 'creating mp4 from aac...'&lt;/span&gt;&lt;br /&gt;
&lt;span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;"&gt;s = 'mp4creator -create ripping-%(tracknum)s.aac ripping-%(tracknum)s.mp4' % args&lt;/span&gt;&lt;br /&gt;
&lt;span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;"&gt;f = os.popen(s)&lt;/span&gt;&lt;br /&gt;
&lt;span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;"&gt;x = f.read()&lt;/span&gt;&lt;br /&gt;
&lt;span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;"&gt;while x:&lt;/span&gt;&lt;br /&gt;
&lt;span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;"&gt;&amp;nbsp;&amp;nbsp;x = f.read()&lt;/span&gt;&lt;br /&gt;
&lt;span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;"&gt;&lt;br /&gt;
&lt;/span&gt;&lt;br /&gt;
&lt;span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;"&gt;print 'merging h264 to mp4...'&lt;/span&gt;&lt;br /&gt;
&lt;span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;"&gt;s = 'mp4creator -create ripping-%(tracknum)s.h264 -rate 29.97 ripping-%(tracknum)s.mp4' % args&lt;/span&gt;&lt;br /&gt;
&lt;span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;"&gt;f = os.popen(s)&lt;/span&gt;&lt;br /&gt;
&lt;span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;"&gt;x = f.read()&lt;/span&gt;&lt;br /&gt;
&lt;span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;"&gt;while x:&lt;/span&gt;&lt;br /&gt;
&lt;span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;"&gt;&amp;nbsp;&amp;nbsp;x = f.read()&lt;/span&gt;&lt;br /&gt;
&lt;span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;"&gt;&lt;br /&gt;
&lt;/span&gt;&lt;br /&gt;
&lt;span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;"&gt;print 'cleaning up...'&lt;/span&gt;&lt;br /&gt;
&lt;span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;"&gt;os.remove('ripping-%(tracknum)s.avi' % args)&lt;/span&gt;&lt;br /&gt;
&lt;span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;"&gt;os.remove('ripping-%(tracknum)s.h264' % args)&lt;/span&gt;&lt;br /&gt;
&lt;span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;"&gt;os.remove('ripping-%(tracknum)s.aac' % args)&lt;/span&gt;&lt;br /&gt;
&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;
&lt;span class="Apple-style-span" style="font-family: Arial; font-size: small;"&gt;&lt;span class="Apple-style-span" style="font-size: 13px;"&gt;&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;
&lt;span class="Apple-style-span" style="font-family: Arial; font-size: small;"&gt;&lt;span class="Apple-style-span" style="font-size: 13px;"&gt;&lt;div&gt;&lt;span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;"&gt;&lt;br /&gt;
&lt;/span&gt;&lt;/div&gt;&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;
&lt;span class="Apple-style-span" style="font-family: Arial; font-size: small;"&gt;&lt;span class="Apple-style-span" style="font-size: 13px;"&gt;&lt;br /&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;</content><link rel="replies" type="application/atom+xml" href="http://blog.morrildl.net/feeds/3488965250578678533/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://www.blogger.com/comment.g?blogID=107080706431419454&amp;postID=3488965250578678533" title="4 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/107080706431419454/posts/default/3488965250578678533?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/107080706431419454/posts/default/3488965250578678533?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/morrildl/~3/CF6CdsMupQE/watching-film-on-your-fcking-telephone.html" title="Watching a film on your F*CKING telephone" /><author><name>Dan Morrill</name><uri>https://plus.google.com/112413860260589530492</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="32" height="32" src="//lh6.googleusercontent.com/-I7qzkMo1ktM/AAAAAAAAAAI/AAAAAAAAa78/UIvpyYkgJQc/s512-c/photo.jpg" /></author><thr:total>4</thr:total><feedburner:origLink>http://blog.morrildl.net/2010/03/watching-film-on-your-fcking-telephone.html</feedburner:origLink></entry><entry gd:etag="W/&quot;DUUEQ3o5cCp7ImA9WxBUFE0.&quot;"><id>tag:blogger.com,1999:blog-107080706431419454.post-6565828018324976566</id><published>2010-02-28T17:06:00.000-08:00</published><updated>2010-02-28T17:33:22.428-08:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2010-02-28T17:33:22.428-08:00</app:edited><title>This makes me sad</title><content type="html">My wife and I recently bought a Honda Civic Hybrid. Among other features, it has the ability to play music files off a USB mass storage device. Yay! Easy way to play the music on my Android phone through the car speakers, right?&lt;br /&gt;
&lt;br /&gt;
Wrong. You see, about a year ago I upgraded the disk server to 1.5TB and re-ripped our 800+ CD music collection to FLAC. At the same time I also transcoded to AAC, because AAC turned out slightly better to my ears than MP3 in some comparative testing I did.&lt;br /&gt;
&lt;br /&gt;
Now, the Civic's owner manual claims that the stereo can play AAC files, and even lists the bitrates, sampling rates, etc. that are supported. However when I actually tried to play these files, it gives the error "UNPLAYABLE FORMAT".&lt;br /&gt;
&lt;br /&gt;
If you look more closely, you notice the disclaimer that says only iTunes AAC files are supported. As best I can tell, what's going on specifically is that iTunes doesn't support encoding AAC files with VBR, despite the fact that VBR is required by the AAC spec (according to WikiPedia, at least.)&lt;br /&gt;
&lt;br /&gt;
Rather than support VBR, Honda's stereo vendor chose to simply implement AAC without VBR. I have to wonder why. There are plenty of spec-compliant AAC implementations out there, including some that are open source. Did Apple actually give them this code? The thing supports deeper integration with iPods so it's possible they got some code for that from Apple that included playback of Apple-forked AAC files, and are just reusing that same AAC-playback for USB mass storage playback too. This is just speculation of course -- I have no way of knowing, except that the manual says straight up that only Apple's non-standard fork is supported.&lt;br /&gt;
&lt;br /&gt;
Regardless of what the technical reality is, the retail leader in digital audio forked a standard, and then used their market power (whether intentionally, or accidentally) to cause another vendor to propagate their fork. Shame on Apple for not supporting AAC properly, and shame on Honda for propagating the breakage.&lt;br /&gt;
&lt;br /&gt;
Now please excuse me while I go transcode my FLACs to MP3, just so I can try to play them in my car. God help a regular person who tried to do this, without the know-how to write a Python script to do it...&lt;br /&gt;
&lt;br /&gt;
&lt;b&gt;Update&lt;/b&gt;: It was pointed out to me that iTunes does support VBR, and has an option for it in the UI. However, according to WikiPedia, it's not true VBR. Here's the quote from WikiPedia, to make things clear as mud:&lt;br /&gt;
&lt;blockquote&gt;iTunes supports a "Variable bit rate" (VBR) encoding option which encodes AAC tracks in an "Average bit rate" (ABR) scheme. As of September 2009, Apple has added support for HE-AAC (which is fully part of the MP4 standard) but iTunes still lacks support for true VBR encoding. The underlying QuickTime API does offer a true VBR encoding profile however.&lt;/blockquote&gt;So it could be that, or it could be one of the other changes Apple made to the AAC file format that I've read about. But as I said, I'm just speculating; all I know for sure is that my car only supports whatever hacked format Apple's introduced, and it makes me sad.</content><link rel="replies" type="application/atom+xml" href="http://blog.morrildl.net/feeds/6565828018324976566/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://www.blogger.com/comment.g?blogID=107080706431419454&amp;postID=6565828018324976566" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/107080706431419454/posts/default/6565828018324976566?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/107080706431419454/posts/default/6565828018324976566?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/morrildl/~3/ROMuVCl_dk4/this-makes-me-sad.html" title="This makes me sad" /><author><name>Dan Morrill</name><uri>https://plus.google.com/112413860260589530492</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="32" height="32" src="//lh6.googleusercontent.com/-I7qzkMo1ktM/AAAAAAAAAAI/AAAAAAAAa78/UIvpyYkgJQc/s512-c/photo.jpg" /></author><thr:total>0</thr:total><feedburner:origLink>http://blog.morrildl.net/2010/02/this-makes-me-sad.html</feedburner:origLink></entry><entry gd:etag="W/&quot;CUIHR3o_eyp7ImA9WxBUE04.&quot;"><id>tag:blogger.com,1999:blog-107080706431419454.post-7551544419828769225</id><published>2010-02-27T21:05:00.000-08:00</published><updated>2010-02-27T21:05:36.443-08:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2010-02-27T21:05:36.443-08:00</app:edited><title>Licensing is hard; let's go shopping!</title><content type="html">While I was working on my recent Arduino project, I happened to end up looking at some of the code that's available. This was.... interesting? Scary? Depressing? I'm not sure exactly how to describe it, but I thought it was worth talking about.&lt;br /&gt;
&lt;br /&gt;
I'm talking about licensing. Here's a header file from an optional, but common, Arduino add-on library. The copyright holder's (i.e. author's) name is elided, because my goal is not to call people out:&lt;br /&gt;
&lt;br /&gt;
&lt;span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;"&gt;/*&lt;/span&gt;&lt;br /&gt;
&lt;span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;"&gt;&amp;nbsp;&amp;nbsp;Foo.h - Arduino library for XXXXXXXXXXXXXXXX&lt;/span&gt;&lt;br /&gt;
&lt;span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;"&gt;&amp;nbsp;&amp;nbsp;Copyright (c) John Doe. &amp;nbsp;All right reserved.&lt;/span&gt;&lt;br /&gt;
&lt;span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;"&gt;&lt;br /&gt;
&lt;/span&gt;&lt;br /&gt;
&lt;span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;"&gt;&lt;br /&gt;
&lt;/span&gt;&lt;br /&gt;
&lt;span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;"&gt;&amp;nbsp;&amp;nbsp;This library is distributed in the hope that it will be useful,&lt;/span&gt;&lt;br /&gt;
&lt;span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;"&gt;&amp;nbsp;&amp;nbsp;but WITHOUT ANY WARRANTY; without even the implied warranty of&lt;/span&gt;&lt;br /&gt;
&lt;span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;"&gt;&amp;nbsp;&amp;nbsp;MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.&lt;/span&gt;&lt;br /&gt;
&lt;span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;"&gt;*/&lt;/span&gt;&lt;br /&gt;
&lt;div&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div&gt;With apologies to Inigo Montoya, "You keep using this license. I do not think it does what you think it does."&lt;/div&gt;&lt;div&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div&gt;Obviously this developer's heart was in the right place, and he's properly protected himself by disclaiming warranty; so far so good. The problem, though, is three little words: "all right [sic] reserved".&lt;/div&gt;&lt;div&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div&gt;By the brevity, I presume the author's goal was either to abdicate copyright to the public domain, or license it under a maximally permissive BSD-style license. However, that's not what's happened. This copyright actually isn't even a license &lt;b&gt;at all&lt;/b&gt;, it's just a copyright header. This isn't a contract because the reader/user isn't agreeing to anything and there are no conditions. The author has reserved all rights to himself, and granted me none.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div&gt;The bit about hoping it will be useful is nice I suppose, but since I have not actually been permitted to use it for anything, it's a moot point. Even if there were a grant of license in there somewhere, that clause is merely stating an unverifiable, irrelevant fact, and it is a total no-op as far as copyright and licensing is concerned.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div&gt;So, okay, having made my point -- does it matter? This is an interesting question. The code itself is fairly simple, even trivial. What's more, the culture of the Arduino project is that a lot of... uh, let's call them "makers" (since many of them aren't professional software engineers) make various kinds of contributions. So the author of this particular piece of code manifestly knows how to write basic C++ but just as manifestly does not understand software licensing. From this I conclude he's more or less an amateur software developer, and that he probably doesn't attach a particularly high intrinsic value to the code he's contributed. And of course, he did contribute it knowing full well it would be publicly visible, after all. All of which is to say, it's almost certain he intended this to be open-source, in some form.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div&gt;So there's very little practical legal risk of using this code. The likelihood that I would get sued for using this software in my personal little Arduino project is vanishingly small. If that were my only concern, then I wouldn't worry about it and carry on.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div&gt;Unfortunately, that's definitely not the only concern.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div&gt;Suppose I contacted the author of this software, with a polite message: "Hey, I don't think this header in this file is doing what you think it is; you might want to consider changing it." Let's assume the author is willing to fix it. In that case... fix it how?&lt;/div&gt;&lt;div&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div&gt;If he fixes it by making it public domain or using a BSD-style license, then this story ends, and we all go about our business. However, most of the rest of the core Arduino software appears to be LGPLv2, so it would be quite reasonable for the author to also choose LGPL for his contributed code. If he were to do that, he actually would screw &lt;b&gt;me&lt;/b&gt;.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div&gt;See, my preferred license is Apache 2.0. I prefer this license because it's basically BSD-style with some anti-patent-burn language. Or to put it another way, it's essentially the maximally-permissive BSD license updated to address the various IP realities of our modern times. Unfortunately the patent clause also happens to make it incompatible with GPLv2, and (I'm pretty sure), LGPLv2. This means that if the author of this code chooses to license it under LGPLv2 -- a very fair and reasonable decision -- it means I either have to alter my own license choice, or else find or write some other software to use. &amp;nbsp;(Unless of course he chooses LGPL&lt;b&gt;v3&lt;/b&gt;, which introduces a whole new set of complexities.)&lt;/div&gt;&lt;div&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div&gt;My point here isn't to start a flame war about open-source licenses, by the way. I'm not saying that I'm right and the other guy's wrong, just that our license preferences conflict (at least in the hypothetical scenario I just described). Backing away from hypotheticals, what I can say concretely is that there's too much ambiguity here for me to be comfortable.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div&gt;To put it another way, even though I might be comfortable taking the legal risk of getting sued because I feel it's obvious that the author meant his code to be open source, I nonetheless can't be comfortable using the code anyway because I don't know &lt;b&gt;how &lt;/b&gt;the author meant it to be open-source. He might very well have meant it to be open-source in a way incompatible with my actual usage, and so in the absence of surety it's ethically wrong (as well as technically legally wrong) for me to use it. &amp;nbsp;Plus, Google Code Project Hosting has a policy that you may not use it to host non-open-source code, and so I couldn't include that software in my chosen SCM site, anyway. (N.B. - I actually did have it included for a day or two, until I noticed this problem and removed it.)&lt;/div&gt;&lt;div&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div&gt;In this case, I did not attempt to locate and contact the author to clarify because it was easier for me to just write the code out of my app. In other cases it might not be so easy. And by the way, this isn't the only Arduino code that does this: there's a sample Makefile intended to be copied and customized for building projects from the command line. That actually &lt;b&gt;is &lt;/b&gt;included in the core Arduino distribution, and it has no copyright heading at all, let alone a license.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div&gt;Perhaps it sucks that the world we live and code in makes this stuff important. But, like it or not, it is important. I'm not trying to pick on the Arduino project; it's a fabulous project that has done awesome work. But this kind of thing is one reason why my day job is sometimes so hard: license compliance is often not easy, and with a project of the scope of Android, it gets to be damned hard.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div&gt;So I guess I wrote all this to make a plea: please please developers, if you release source code, think carefully about what you are releasing, and make sure you choose your license carefully so that it reflects not only your principles, but also how you hope and expect it to be actually used by others. But most of all, PLEASE take the time to get the details right.&lt;/div&gt;</content><link rel="replies" type="application/atom+xml" href="http://blog.morrildl.net/feeds/7551544419828769225/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://www.blogger.com/comment.g?blogID=107080706431419454&amp;postID=7551544419828769225" title="2 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/107080706431419454/posts/default/7551544419828769225?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/107080706431419454/posts/default/7551544419828769225?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/morrildl/~3/OaMoRm5Wy7g/licensing-is-hard-lets-go-shopping.html" title="Licensing is hard; let's go shopping!" /><author><name>Dan Morrill</name><uri>https://plus.google.com/112413860260589530492</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="32" height="32" src="//lh6.googleusercontent.com/-I7qzkMo1ktM/AAAAAAAAAAI/AAAAAAAAa78/UIvpyYkgJQc/s512-c/photo.jpg" /></author><thr:total>2</thr:total><feedburner:origLink>http://blog.morrildl.net/2010/02/licensing-is-hard-lets-go-shopping.html</feedburner:origLink></entry><entry gd:etag="W/&quot;CkcBSHkzfyp7ImA9WxBUE04.&quot;"><id>tag:blogger.com,1999:blog-107080706431419454.post-3423255941615144402</id><published>2010-02-27T20:07:00.000-08:00</published><updated>2010-02-27T20:07:39.787-08:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2010-02-27T20:07:39.787-08:00</app:edited><title>Garduino Redux</title><content type="html">A while back I made a &lt;a href="http://garduino.dirtnail.com/"&gt;"Garduino"&lt;/a&gt;, based on an article Luke Iseman wrote for Make Magazine #18. It's an Arduino-controlled plant growing rig.&lt;br /&gt;
&lt;br /&gt;
Luke's original version monitors moisture and automatically waters the plants when they need it, and it monitors light level via a photoresistor and turns on a supplementary grow light as necessary. My version includes the light monitoring, but I omitted the moisture sensors and water pump in favor of an &lt;a href="http://www.earthbox.com/"&gt;Earthbox self-watering planter&lt;/a&gt;. I figured that since Luke's version involved dumping water into a large bucket, manual refill is manual refill and I might as well just refill an Earthbox. I'm stupid, so I need to keep it simple, you see.&lt;br /&gt;
&lt;br /&gt;
Anyway that's all old news. A while back, I put up some videos on YouTube, documenting the growing process:&lt;br /&gt;
&lt;ul&gt;&lt;li&gt;&lt;a href="http://www.youtube.com/watch?v=U5loamn9S3Q"&gt;http://www.youtube.com/watch?v=U5loamn9S3Q&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://www.youtube.com/watch?v=PjwHKSD9ww8"&gt;http://www.youtube.com/watch?v=PjwHKSD9ww8&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://www.youtube.com/watch?v=9rftjwbdDMY"&gt;http://www.youtube.com/watch?v=9rftjwbdDMY&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://www.youtube.com/watch?v=SRsDdNIfPu8"&gt;http://www.youtube.com/watch?v=SRsDdNIfPu8&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;Since recording those videos, I moved the circuitry from my breadboard to a permanent home on an &lt;a href="http://www.makershed.com/ProductDetails.asp?ProductCode=MKAD6"&gt;Arduino protoshield&lt;/a&gt;, but until fairly recently that was about it. It's been running great for months now. It turns out that even with the grow light I don't get a terrible lot of light over there, so the basil's growing slowly enough that I only just now have enough of it to make some pesto. But alas, this is the best I can do unless we move somewhere with better lighting. I credit the Garduino with this being possible at all.&lt;br /&gt;
&lt;br /&gt;
However there's been an annoyance: periodically the thing will just reset itself. I think this was because the host would occasionally brownout the USB voltage, making the Arduino reset. But whatever the cause, this has 2 problems: it means that I need to reset the Arduino's onboard time (since it doesn't have battery backup or even a clock), which in turn means I need to hook it up to a computer to access the serial port. For various reasons I have only one computer which can program the thing, which means I have to haul out a laptop to do this, and then physically sit next to the thing, tethered, to do the reset.&lt;br /&gt;
&lt;br /&gt;
I resolved to solve this.&lt;br /&gt;
&lt;br /&gt;
The lightbulb went on when&lt;a href="http://www.oreillynet.com/pub/au/125"&gt; Brian Jepson&lt;/a&gt; told me about the &lt;a href="http://www.sparkfun.com/commerce/product_info.php?products_id=582"&gt;Sparkfun BlueSMiRF&lt;/a&gt;, which is a Bluetooth RFCOMM-to-serial-TTL bridge. In practice, it takes your "Serial.print" output from an Arduino program and makes it available over Bluetooth to a PC..... or a phone.  Android, meanwhile, added an &lt;a href="http://d.android.com/guide/topics/wireless/bluetooth.html"&gt;API for Bluetooth RFCOMM&lt;/a&gt; in version 2.0. My wife got me a BlueSMiRF for my birthday, and it was off to the races.&lt;br /&gt;
&lt;br /&gt;
I rewrote the Arduino code into a simple finite state machine, and added the ability to accept commands over serial. It's a very simple project, so there are only 2 commands: reset, and set current time. I encountered some interesting open-source related issues in doing this, but that's another post.&lt;br /&gt;
&lt;br /&gt;
I then wrote a spiffy little Android app that pairs up to the BlueSMiRF, reads the state dumped from the Arduino every 3 seconds, and then makes a pretty little Android UI. It shows me a Sun, Moon, or Clock depending on which state the Arduino is in (daytime, nighttime, or waiting for clock data), and reports the other status fields like light intensity and status.&lt;br /&gt;
&lt;br /&gt;
All told, it's working pretty well! There are a couple minor bugs I need to fix, but it's doing what I need it to do, and it's pretty fun to whip out my phone to see how my grow lights are doing. A little pointless maybe, but fun.&lt;br /&gt;
&lt;br /&gt;
My source is up on &lt;a href="http://code.google.com/p/android-arduino/"&gt;Google Code&lt;/a&gt;, if anyone cares.&lt;br /&gt;
&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://3.bp.blogspot.com/_N6MwpE4_Tv4/S4njtqwVPsI/AAAAAAAAG8E/uvs4ozm-PHQ/s1600-h/loading.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" src="http://3.bp.blogspot.com/_N6MwpE4_Tv4/S4njtqwVPsI/AAAAAAAAG8E/uvs4ozm-PHQ/s320/loading.png" /&gt;&lt;/a&gt;&lt;a href="http://4.bp.blogspot.com/_N6MwpE4_Tv4/S4njyrWWilI/AAAAAAAAG8M/m_hHAgqgG5s/s1600-h/settime.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" src="http://4.bp.blogspot.com/_N6MwpE4_Tv4/S4njyrWWilI/AAAAAAAAG8M/m_hHAgqgG5s/s320/settime.png" /&gt;&lt;/a&gt;&lt;a href="http://4.bp.blogspot.com/_N6MwpE4_Tv4/S4nkBzDN4dI/AAAAAAAAG8U/hp-Y9QInWB0/s1600-h/daytime.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" src="http://4.bp.blogspot.com/_N6MwpE4_Tv4/S4nkBzDN4dI/AAAAAAAAG8U/hp-Y9QInWB0/s320/daytime.png" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;
&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;/div&gt;</content><link rel="replies" type="application/atom+xml" href="http://blog.morrildl.net/feeds/3423255941615144402/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://www.blogger.com/comment.g?blogID=107080706431419454&amp;postID=3423255941615144402" title="2 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/107080706431419454/posts/default/3423255941615144402?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/107080706431419454/posts/default/3423255941615144402?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/morrildl/~3/6n_At1cxDRg/garduino-redux.html" title="Garduino Redux" /><author><name>Dan Morrill</name><uri>https://plus.google.com/112413860260589530492</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="32" height="32" src="//lh6.googleusercontent.com/-I7qzkMo1ktM/AAAAAAAAAAI/AAAAAAAAa78/UIvpyYkgJQc/s512-c/photo.jpg" /></author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="http://3.bp.blogspot.com/_N6MwpE4_Tv4/S4njtqwVPsI/AAAAAAAAG8E/uvs4ozm-PHQ/s72-c/loading.png" height="72" width="72" /><thr:total>2</thr:total><feedburner:origLink>http://blog.morrildl.net/2010/02/garduino-redux.html</feedburner:origLink></entry><entry gd:etag="W/&quot;Ak4GQ3g5cSp7ImA9WxBVGU0.&quot;"><id>tag:blogger.com,1999:blog-107080706431419454.post-3253871674753843111</id><published>2010-02-22T21:39:00.002-08:00</published><updated>2010-02-22T23:08:42.629-08:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2010-02-22T23:08:42.629-08:00</app:edited><title>Call me the GIT-arr man</title><content type="html">I'll start the revivifying with the cigar box guitar I built.&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;b&gt;CONFESSIONS OF AN AMATEUR LUTHIER&lt;/b&gt;&lt;/div&gt;&lt;div&gt;First, know that despite appearances this is not a remarkable thing; after all: &lt;a href="http://makezine.com/21/cbg/"&gt;http://makezine.com/21/cbg/&lt;/a&gt;  And I will cut the suspense as well, by revealing the output of this procedure: &lt;a href="http://www.youtube.com/watch?v=wkmUAUJGHsI"&gt;http://www.youtube.com/watch?v=wkmUAUJGHsI&lt;/a&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;I generally just followed the instructions in Make Magazine, which I will neither repeat nor paraphrase. What I do want to do is just describe some of the ways in which my experience compared to the article.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;b&gt;IT BEGINS&lt;/b&gt;&lt;/div&gt;&lt;div&gt;I shall begin where I began: at the cigar store. I started out with a search in Google Maps (where else? heh heh) for "cigar". This revealed some Maps place spam which it was my privilege and duty to report to the Maps folks, but I shall not digress.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;I ended up at Grant's Tobacconist up on Market St. I wandered in on a Saturday afternoon, whereupon I discovered two things. First, that the guy who runs the place may or may not know what these people are doing with all these empty cigar boxes, but he does know enough to make us pay for them. $10 got me 3, of which I don't mind saying that one may well be the platonic Form of a cigar box, at least from a guitar point of view. More on this later.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Second, I learned that, wow, it's smoky in there. It was almost funny: I was in a race against time, I had to check out quickly and escape before I busted out coughing and offended everyone in there. I mean, you don't walk into a cigar shop and then start coughing ostentatiously and glancing around to see if people take your hint. But I survived, and hopefully without spreading offense.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;b&gt;EQUIPAGE&lt;/b&gt;&lt;/div&gt;&lt;div&gt;Building a CBG requires a modest variety of handtools, of which to my shame I was not already an owner. I went to Lowes, that magnificent Store of Stores, vast savannah of tooling. There, I found only FAIL. They had like 1/3 of what I needed, so I bought the oak stick I needed and left it otherwise as I found it.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Then I went to tiny-ass Cole Hardware, clown-car of retailers, wedged all Harry Potter style into a 47-inch gap between buildings on 4th St. They had everything I needed. Go fig.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;b&gt;CONSTRUCTION&lt;/b&gt;&lt;/div&gt;&lt;div&gt;Having procured my tools, the construction went pretty much as the Make guys described. I will say that I wished more than once for my dear Father's table saw. By my rough calculations, a table saw would have reduced my prep time on the neck from about 97 and a half fortnights down approximately 0.0000000 seconds, for a percentage improvement of roughly INFINITY. Alas.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Honestly though half my problem was that I didn't know how to use a coping saw and I wasn't sure of the best way to proceed, since you have to basically slice the oak stick in half the long way, twice, to carve out a couple chunks. On one end, I ended up using chisels to hack out the wood and then sanded the bejesus out of it. This worked but was time (and kilocalorie) consuming. The other end I used the coping saw on, which worked pretty well. With practice or a steadier hand, one might even call the results good.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;b&gt;MISTAKAGE&lt;/b&gt;&lt;/div&gt;&lt;div&gt;Yeah, I screwed some things up. But some were not my fault, I swear! Behold my shame, in no particular order.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;For one thing, it turns out that cigar boxes smell like cigars. And I don't like cigars. Wanting to not have to deal with a Pigpen-like cloud of cigar odor every time I picked up my guitar, I wanted to deodorize it a bit. To do this I just dumped a couple ounces of baking soda inside the box and let it sit for two or three days, then dumped it out. The odor's not gone, but now it's a gentle musk instead of a heinous stank. Problem: SOLVED!&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;As for the neck, well... I wasn't really thinking when I drilled the holes for the tuning pegs. Normal people arrange the pegs with 2 on one side and 1 on the other. I thought it would be hilarious (absolutely. hilarious! Seriously, I thought this would be totally funny) to put the 3rd peg on -- get this -- on the TOP of the headstock!!! So I drilled the hole up there only to realize that I drilled it too far away from the end of the headstock for the actual thumbscrew to clear the wood. I actually had to use the coping saw again to cut off a slice of the headstock at a jaunty angle to make room for the tuning peg. I wasn't laughing anymore, although in the end I think it lends the finished product a certain ghetto &lt;i&gt;je ne sais quoi&lt;/i&gt;.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Now, you have to understand: I had never seen a guitar string before. Ever. I had no idea how the little barrel plug thing on the end was supposed to work, and I was like, "do you just tie the string onto the hinge through the screw holes? Or what?" Then I got them in the mail and I was like, "Ah. Uh. Hmm." Apparently the hinge that Mark Frauenfelder used in the Make article had tiny little holes, or else he had weird strings because there was no way those strings were staying attached to MY hinge through geometry alone. I ended up just punching 3 holes in the hinge that were smaller than the barrel plugs. This worked, but makes me wonder if I shouldn't have just used something other than a hinge, but whatever. Fun factoid though: a faux gold/brass hinge that would look decidedly low-budget on actual cabinetry looks surprisingly kickass on a cigar box guitar.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;And now, I have to talk about the frets. Dear Make Magazine photographers: you guys know I love you, but YOU LIE! The article clearly depicts the fret slots being cut with the coping saw. Now, maybe it was just my particular saw, but this ended up cutting a slot too wide for the fretwire to take grip.  When I used the Xacto hobbyist saw that came with my miter box, which has a significantly narrower kerf, the fretwire stuck fine. Thing is, I couldn't find replacement coping saw blades that vary in kerf, so I think this might have just been a photo staging error. Fortunately I (wisely) only cut the first slot with the too-wide slaw, and all the others turned out fine. I still need to glue that first fret in, but I think I may leave it as-is. As a reminder. Never forget!  Anyway, "Measure Twice, Cut Once" paid off -- thank you, Norm Abram!&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Though this reminds me of my only real gripe about the article, which is that it was insufficiently precise in some of the parts list. And yes I realize that there are variable widths of fretwire, but I also ordered the wire that the article advised, as far as I could tell. I think. Maybe? I tried anyway. Point being, the article just sort of said "hey go to elderly.com and buy some fretwire. Or maybe cbgitty.com if you like." A little more guidance on specific strings and fretwire to buy would have helped us hapless n00bz.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Another minor issue I encountered was that the screws securing the cigar box to the neck really wanted to dig right through the cigar box's wood, because it was pretty lightweight. (Okay fine, technically the platonic Form of a cigar box from a guitar point of view would be made of wood that sounds great but is hard enough to hold a screw well. So maybe it's not quite the platonic Form. But more on this later.) Fortunately I have screwed enough screws in my day to expect this, and I didn't let the screws bite straight through the cigar box entire.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Finally, Cigar Box Guitar protip: remember that shipping things (such as, hypothetically, guitar strings and tuning pegs) thousands of miles takes time. And also that if you don't order everything you need at once, you have to make another order. And then wait for the second order to arrive. Yeah. Keep that in mind...&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;b&gt;PLATONIC FORM, OR EPIC PWNAGE?&lt;/b&gt;&lt;/div&gt;&lt;div&gt;Ultimately, battle was joined, and a hard-fought victory was won. Which is actually a lie, the victory came quite easily. My opponent was made of wood after all. Aside from the quibbles above, the whole thing went remarkably like the Make article, except for the preparation of the cigar box itself.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;The box I chose was not a typical box where the lid closes flat and flush. I chose one that actually was like a chest with a shallow lid with a lip that closes onto the bottom.  The result is that it has a nice hollow reverb just by itself, when you knock it with a knuckle. The edges are also nicely beveled, giving it a great appearance and feel in the hands. And finally, the branding is actually branded into the wood, as opposed to printed on paper glued to the outside of the box. All in all, it is a Cadillac among cigar boxes. It ought to have been though, since it cost me the princely sum of $4 -- American!!&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Anyway this box structure complicated the process of making the neck flush with the box top. The trickiest part was that ultimately I only needed to remove about 3mm of material from the portion of the next that goes into the box, which is why I tried the chisels I mentioned earlier. But whatever, I soldiered on, and all is well.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;I'm extremely satisfied with how it came out. That cigar box was all I could have hoped for, and it sounds pretty freakin' awesome. I expected kind of a course, ragged, thin sound, at least compared to a real guitar. I strummed this sucker and I was completely shocked -- it actually sounds like a guitar!! A real honest to gods guitar!&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Then I tuned it. With my Google™ Nexus One™, powered by Android™, using an app named "G-strings" I obtained from Android Market™, the leading mobile applications marketplace. *cough*&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;The only other issue I had was that while tuning it, the high G string was twanging. I poked around at this and realized this was because the g-string wasn't pulled tight across the nut. (What?? Get your mind out of the gutter.) So I restrung that thread onto the peg's lower hole, and boy howdy, does it sound awesome now.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;So that's it! It went pretty much according to plan, and I truly can't believe how well it turned out.  It sounds awesome, was fun to build, and required only hand tools, except for a cordless drill.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Now I just need to learn to play guitar.&lt;/div&gt;</content><link rel="replies" type="application/atom+xml" href="http://blog.morrildl.net/feeds/3253871674753843111/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://www.blogger.com/comment.g?blogID=107080706431419454&amp;postID=3253871674753843111" title="2 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/107080706431419454/posts/default/3253871674753843111?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/107080706431419454/posts/default/3253871674753843111?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/morrildl/~3/_6yTCpBs7-E/call-me-git-arr-man.html" title="Call me the GIT-arr man" /><author><name>Dan Morrill</name><uri>https://plus.google.com/112413860260589530492</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="32" height="32" src="//lh6.googleusercontent.com/-I7qzkMo1ktM/AAAAAAAAAAI/AAAAAAAAa78/UIvpyYkgJQc/s512-c/photo.jpg" /></author><thr:total>2</thr:total><feedburner:origLink>http://blog.morrildl.net/2010/02/call-me-git-arr-man.html</feedburner:origLink></entry><entry gd:etag="W/&quot;CUMASX49eyp7ImA9WxBVGU0.&quot;"><id>tag:blogger.com,1999:blog-107080706431419454.post-4671965926203348314</id><published>2010-02-22T21:33:00.000-08:00</published><updated>2010-02-22T21:37:28.063-08:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2010-02-22T21:37:28.063-08:00</app:edited><title>Revivication</title><content type="html">I stopped blogging more or less when I started tweeting. This, frankly, was the easy way out. Better to be pithy but without substance in 140 characters, than to be dull at novel length.&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;But, lately I've been doing some projects, so I'm going to use this blog as a build log for stuff I'm fooling around with.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;You've been warned.&lt;/div&gt;</content><link rel="replies" type="application/atom+xml" href="http://blog.morrildl.net/feeds/4671965926203348314/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://www.blogger.com/comment.g?blogID=107080706431419454&amp;postID=4671965926203348314" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/107080706431419454/posts/default/4671965926203348314?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/107080706431419454/posts/default/4671965926203348314?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/morrildl/~3/HDaCfbO9zyo/revivication.html" title="Revivication" /><author><name>Dan Morrill</name><uri>https://plus.google.com/112413860260589530492</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="32" height="32" src="//lh6.googleusercontent.com/-I7qzkMo1ktM/AAAAAAAAAAI/AAAAAAAAa78/UIvpyYkgJQc/s512-c/photo.jpg" /></author><thr:total>0</thr:total><feedburner:origLink>http://blog.morrildl.net/2010/02/revivication.html</feedburner:origLink></entry></feed>
