<?xml version="1.0" encoding="utf-8"?>
<!-- If you are running a bot please visit this policy page outlining rules you must respect. http://www.livejournal.com/bots/ -->
<feed xmlns="http://www.w3.org/2005/Atom" xmlns:lj="http://www.livejournal.com">
  <id>urn:lj:livejournal.com:atom1:bluesterror</id>
  <title>Bob</title>
  <subtitle>Bob</subtitle>
  <author>
    <name>Bob</name>
  </author>
  <link rel="alternate" type="text/html" href="http://bluesterror.livejournal.com/"/>
  <link rel="self" type="text/xml" href="http://bluesterror.livejournal.com/data/atom"/>
  <updated>2009-03-17T03:03:18Z</updated>
  <lj:journal userid="893135" username="bluesterror" type="personal"/>
  <link rel="service.feed" type="application/x.atom+xml" href="http://bluesterror.livejournal.com/data/atom" title="Bob"/>
  <link rel="hub" href="http://pubsubhubbub.appspot.com/"/>
  <entry>
    <id>urn:lj:livejournal.com:atom1:bluesterror:148423</id>
    <link rel="alternate" type="text/html" href="http://bluesterror.livejournal.com/148423.html"/>
    <link rel="self" type="text/xml" href="http://bluesterror.livejournal.com/data/atom/?itemid=148423"/>
    <title>Moving</title>
    <published>2009-03-17T03:03:18Z</published>
    <updated>2009-03-17T03:03:18Z</updated>
    <content type="html">So, let's try something new.  LJ has too many ads these days (which is to say: any) and I'm too cheap to pay to make them go away.  Therefore, please point your browser over to &lt;a href="http://bobcopeland.com/blog/"&gt;http://bobcopeland.com/blog/&lt;/a&gt; and update your RSS feeds to keep getting the good stuff.&lt;br /&gt;&lt;br /&gt;After a harrowing fight with PHP, I migrated most of the old stuff over, except slothy's last comment which came in after my LJ dump (sorry, I did appreciate the humor of it, but I'm far too lazy to move that too).  I'm also far too lazy to set up dual posting, so hopefully this works out on the first try.  &lt;br /&gt;&lt;br /&gt;Ok, resume party - on the other site.</content>
  </entry>
  <entry>
    <id>urn:lj:livejournal.com:atom1:bluesterror:148072</id>
    <link rel="alternate" type="text/html" href="http://bluesterror.livejournal.com/148072.html"/>
    <link rel="self" type="text/xml" href="http://bluesterror.livejournal.com/data/atom/?itemid=148072"/>
    <title>FiOS</title>
    <published>2009-03-12T03:56:16Z</published>
    <updated>2009-03-12T03:56:16Z</updated>
    <content type="html">Dear Verizon,&lt;br /&gt;&lt;br /&gt;Thank you so much for the thoughtful racial profiling you sent us.  However, despite my wife's last name, no one at our address can read Chinese.  Can you send us your ads in English again so that we may more easily peruse and purchase your products?  Or better yet, not send them at all?  Warm regards, us.</content>
  </entry>
  <entry>
    <id>urn:lj:livejournal.com:atom1:bluesterror:147761</id>
    <link rel="alternate" type="text/html" href="http://bluesterror.livejournal.com/147761.html"/>
    <link rel="self" type="text/xml" href="http://bluesterror.livejournal.com/data/atom/?itemid=147761"/>
    <title>Backup re-revisited</title>
    <published>2009-03-11T20:52:28Z</published>
    <updated>2009-03-11T20:52:28Z</updated>
    <content type="html">I've reconsidered using git as my backup choice du jour.  The main problem (and feature) of using git was having a checked out repo in my home directory.  I found I was forever worried, given my admittedly horrid muscle memory habit of doing 'git reset --hard' periodically inside source trees, that I'd accidentally do it from the wrong directory and lose any recent work.  Luckily, I never did that.&lt;br /&gt;&lt;br /&gt;Two obvious solutions: don't use a checkout in the home directory, instead using rsync to the repo; or use a wrapper/custom command name for the git-as-backup program to avoid accidents.  Well, I went with the third option: use rdiff-backup like a normal person.  It's packaged by Fedora and Debian, so I only needed a small tweak to my backup scripts to make that happen every night.  And someone wrote a FUSE filesystem (archfs) to mount the backups as normal directories, so there's no real loss of convenience under this scheme.&lt;br /&gt;&lt;br /&gt;My RPM database is now corrupted.  Just in time.</content>
  </entry>
  <entry>
    <id>urn:lj:livejournal.com:atom1:bluesterror:147554</id>
    <link rel="alternate" type="text/html" href="http://bluesterror.livejournal.com/147554.html"/>
    <link rel="self" type="text/xml" href="http://bluesterror.livejournal.com/data/atom/?itemid=147554"/>
    <title>sizeof()</title>
    <published>2009-02-17T23:35:52Z</published>
    <updated>2009-02-17T23:35:52Z</updated>
    <content type="html">Renaming your class variables to shorter names reduces your EJB network footprint.  Finally, those people (I'm not one) who said that removing vowels from variable names improved performance are vindicated!  Ok, well they were correct already in Javascript, but that doesn't count.</content>
  </entry>
  <entry>
    <id>urn:lj:livejournal.com:atom1:bluesterror:147392</id>
    <link rel="alternate" type="text/html" href="http://bluesterror.livejournal.com/147392.html"/>
    <link rel="self" type="text/xml" href="http://bluesterror.livejournal.com/data/atom/?itemid=147392"/>
    <title>is-not-a</title>
    <published>2009-02-17T04:23:19Z</published>
    <updated>2009-02-17T04:23:19Z</updated>
    <content type="html">&lt;a href="http://asserttrue.blogspot.com/2009/02/inheritance-as-antipattern.html"&gt;Let's dump the last useful feature in Java&lt;/a&gt;.  What castles in the sky are people building these days?</content>
  </entry>
  <entry>
    <id>urn:lj:livejournal.com:atom1:bluesterror:147160</id>
    <link rel="alternate" type="text/html" href="http://bluesterror.livejournal.com/147160.html"/>
    <link rel="self" type="text/xml" href="http://bluesterror.livejournal.com/data/atom/?itemid=147160"/>
    <title>Smolt</title>
    <published>2009-02-11T23:02:53Z</published>
    <updated>2009-02-11T23:02:53Z</updated>
    <content type="html">The &lt;a href="http://smolts.org/static/stats/stats.html"&gt;stats from smolt&lt;/a&gt; are pretty interesting if, like all stats, entirely useless.  Some curiousities:&lt;br /&gt;&lt;ul&gt;&lt;li&gt;i686 still beats x86_64 by a ton&lt;br /&gt;&lt;li&gt;A (very) few people change their runlevel&lt;br /&gt;&lt;li&gt;Acer is high in the vendor list, I guess they are still killing the netbook market&lt;br /&gt;&lt;li&gt;People don't configure their swap appropriately&lt;br /&gt;&lt;li&gt;SMP is now the norm, outside of embedded kit anyway&lt;br /&gt;&lt;li&gt;I want a 4+ GHz cpu&lt;br /&gt;&lt;li&gt;No one uses omfs :(  ...I guess I need to submit a profile.&lt;br /&gt;&lt;/ul&gt;</content>
  </entry>
  <entry>
    <id>urn:lj:livejournal.com:atom1:bluesterror:146872</id>
    <link rel="alternate" type="text/html" href="http://bluesterror.livejournal.com/146872.html"/>
    <link rel="self" type="text/xml" href="http://bluesterror.livejournal.com/data/atom/?itemid=146872"/>
    <title>Serial offender</title>
    <published>2009-02-08T16:14:11Z</published>
    <updated>2009-02-08T16:14:11Z</updated>
    <content type="html">There comes a time in every budding kernel developer's life that he has to debug a mysterious lockup, and nothing will do but a serial console.  Well, for my future recollections, here's how to set it up:&lt;br /&gt;
&lt;ol&gt;
&lt;li&gt;Get out your handy pl2303-based usb to serial adapter, because chances are good your laptop doesn't have a serial port
&lt;li&gt;Build your kernel with CONFIG_USB_SERIAL_CONSOLE=y
&lt;li&gt;Add to your kernel command line: console=ttyUSB0,115200 console=tty0
&lt;li&gt;Hook your computer up to the other computer via a null-modem cable (man, these are pricey these days, $30 for something no one still uses?)
&lt;li&gt;Set up minicom to use your serial port, say ttyS0, at 115200 baud, 8N1, and turn off all the modem init strings
&lt;li&gt;Don't bother futzing with getty, you only need it if you want to also allow logins over serial.  For logging, it's unnecessary
&lt;/ol&gt;
&lt;br /&gt;Now, start minicom on computer 2 and reboot your computer under test.  If all goes well, you'll capture a panic on the serial console.  If all goes poorly (my case), you'll have a lockup with no oops.  The usual thing to try in this case is adding "nmi_watchdog=1" to the command line, which will use the non-maskable interrupt to break into any frozen code.  Also, if you have CONFIG_DETECT_SOFTLOCKUP set, hopefully after 60 seconds or so you'll get a soft lockup warning.&lt;br /&gt;&lt;br /&gt;In my case, I still have a hard lock with no output.  Ho hum.</content>
  </entry>
  <entry>
    <id>urn:lj:livejournal.com:atom1:bluesterror:146643</id>
    <link rel="alternate" type="text/html" href="http://bluesterror.livejournal.com/146643.html"/>
    <link rel="self" type="text/xml" href="http://bluesterror.livejournal.com/data/atom/?itemid=146643"/>
    <title>The game</title>
    <published>2009-02-02T16:14:37Z</published>
    <updated>2009-02-02T16:14:37Z</updated>
    <content type="html">&lt;div style="float: right; margin-left: 10px; margin-bottom: 10px;"&gt;&lt;a href="http://www.flickr.com/photos/bluesterror/3247168939/" title="photo sharing"&gt;&lt;img src="http://farm4.static.flickr.com/3378/3247168939_30a85956be_m.jpg" alt="" style="border: solid 2px #000000;" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;span style="font-size: 0.9em; margin-top: 0px;"&gt;&lt;a href="http://www.flickr.com/photos/bluesterror/3247168939/"&gt;Capitals warm-up&lt;/a&gt;&lt;br /&gt;Originally uploaded by &lt;a href="http://www.flickr.com/people/bluesterror/"&gt;bluesterror&lt;/a&gt;&lt;/span&gt;&lt;/div&gt;Did you see the game last night?  Yeah, we were there!  Did you see us on TV?  Huh, what half-time show?  Ohhh.... you are talking about that other game, what is it called, footsball?  Nah, didn't watch that one.  But we did see Ovechkin get his second hat trick of the year in a 7-4 rout of the Senators yesterday.  So be sure to get your 14 free toppings on your pizza this week.&lt;br clear="all" /&gt;</content>
  </entry>
  <entry>
    <id>urn:lj:livejournal.com:atom1:bluesterror:146381</id>
    <link rel="alternate" type="text/html" href="http://bluesterror.livejournal.com/146381.html"/>
    <link rel="self" type="text/xml" href="http://bluesterror.livejournal.com/data/atom/?itemid=146381"/>
    <title>Android</title>
    <published>2009-01-26T04:38:52Z</published>
    <updated>2009-01-26T04:38:52Z</updated>
    <content type="html">I haven't had a chance to replace the kernel on my phone yet, but here is some useful software I recently installed:&lt;br /&gt;&lt;ul&gt;&lt;li&gt;&lt;a href="http://forum.xda-developers.com/showthread.php?t=474470"&gt;iptables + dnsmasq + IBSS mode = wireless tethering&lt;/a&gt;.  (PPP over USB should also be an option, but I'm too lazy to figure that out.)&lt;br /&gt;  &lt;li&gt;&lt;a href="http://benno.id.au/blog/2007/11/14/android-busybox"&gt;Android build of busybox.  Yay for vi!&lt;/a&gt;&lt;br /&gt;&lt;/ul&gt; None of that is original with me but both are very useful.</content>
  </entry>
  <entry>
    <id>urn:lj:livejournal.com:atom1:bluesterror:146082</id>
    <link rel="alternate" type="text/html" href="http://bluesterror.livejournal.com/146082.html"/>
    <link rel="self" type="text/xml" href="http://bluesterror.livejournal.com/data/atom/?itemid=146082"/>
    <title>Post-(or is it peri?)-bama</title>
    <published>2009-01-21T01:05:24Z</published>
    <updated>2009-01-21T01:05:24Z</updated>
    <content type="html">We're back from the inauguration, which was a surprisingly easy affair.  Ange &amp; I got up at the crack of 7am, a blustery morning with temps in the mid-teens.  We walked across the street to our nearby Metro station, where we quickly snagged a train with a few empty seats.  It took about 40 minutes to get to Farragut North, where we disembarked and walked west a couple of blocks, then south on 19th street.  After a 30 minute walk we reached the throngs on the Mall. We set up camp against barricades near the World War II memorial, where the crowd wasn't too bad and where there were three jumbotrons re-broadcasting the Lincoln Memorial service from Sunday.  So we waited 3 hours, sang along with Garth Brooks, bid the feeling in our toes farewell, and reflected upon the amusing signage of the ever-present nutjobs until the main event.&lt;br /&gt;&lt;br /&gt;&lt;a href="http://www.flickr.com/photos/bluesterror/3214317186/" title="Inauguration by bluesterror, on Flickr"&gt;&lt;img src="http://farm4.static.flickr.com/3406/3214317186_a5c417d39f.jpg" width="500" height="189" alt="Inauguration" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;The service went down just like on TV, so you have seen that much already.  The only bonus we got was the crowd response in surround sound, and the occasional slip-ups of the A/V people running the live feed, such as the occasional mic-ing of random people who were invariably carrying on conversations that had nothing to do with the festivities.&lt;br /&gt;&lt;br /&gt;On leaving, we retraced our steps but just continued up 19th to Dupont, where we again got seats on the first train.  We've had much worse train rides before and after hockey games, so either we were lucky or Metro was handling the situation well.  We got back about 1:45pm.  &lt;br /&gt;&lt;br /&gt;Anyway, frozen toes notwithstanding, it was very cool to be at the epicenter, moreso since we had the day off anyway.  Insert stuff about once in a lifetime historical moments here.</content>
  </entry>
  <entry>
    <id>urn:lj:livejournal.com:atom1:bluesterror:145788</id>
    <link rel="alternate" type="text/html" href="http://bluesterror.livejournal.com/145788.html"/>
    <link rel="self" type="text/xml" href="http://bluesterror.livejournal.com/data/atom/?itemid=145788"/>
    <title>Prebama</title>
    <published>2009-01-19T16:54:38Z</published>
    <updated>2009-01-19T16:54:38Z</updated>
    <content type="html">So it's inauguration eve in DC.  You can tell because all of the subway ads have some 'Welcome to DC' theme, and there are portable toilets spread all throughout the city.  However, the most obvious sign of the new administration is all the utter crap you can buy with the First Family's picture on it: key chains, mugs, postcards, buttons, playing cards, shirts, hats, knit caps, underwear and neckties.  Radio Shack is even advertising: "Get your inauguration supplies here!" (you know, in case you need some speaker wire for the weekend).  I hope he gets royalties somehow.  Angeline and I are planning on braving the crowds tomorrow to hang with the groundlings in the non-ticketed section.  We'll see how that goes.&lt;br /&gt;&lt;br /&gt;In hacking news, I have the following patches queued so far for 2.6.29:&lt;br /&gt;&lt;pre&gt;Bob Copeland (12):
      mac80211: fix a few typos in mac80211 kernel doc
      ath9k: remove useless conditional
      ath5k: fix keytable type buglet in ath5k_hw_reset_key
      ath5k: enable hardware encryption for WEP
      ath5k: update keycache to support TKIP handling
      ath5k: set mac address in add_interface
      ath5k: preserve higher order bits when setting mac address
      ath5k: clean up ath5k_hw_set_key
      ath5k: enable combined michael mic in key cache
      ath5k: fix endianness of bitwise ops when installing mic
      ath5k: correct packet length in tx descriptors
      ath5k: fix return values from ath5k_tx&lt;/pre&gt;&lt;br /&gt;Basically, hardware crypto support, nothing else notable.  In my unbaked tree, I have the mac80211 suspend/resume support patches (pushed today), some fixes for mixed b/g networking, and some silly LED patches.  Most of that is 2.6.30 material.&lt;br /&gt;&lt;br /&gt;In other news, glibc finally has &lt;a href="http://www.kernel.org/doc/man-pages/online/pages/man3/endian.3.html"&gt;endianness functions&lt;/a&gt;.  I can't say that I'm crazy about the names, and it has a bit of unnecessary Not Invented Here, but at least it gives an alternative to always using my own or using glib.</content>
  </entry>
  <entry>
    <id>urn:lj:livejournal.com:atom1:bluesterror:145477</id>
    <link rel="alternate" type="text/html" href="http://bluesterror.livejournal.com/145477.html"/>
    <link rel="self" type="text/xml" href="http://bluesterror.livejournal.com/data/atom/?itemid=145477"/>
    <title>Pointless calendar increment</title>
    <published>2009-01-02T18:02:46Z</published>
    <updated>2009-01-02T18:02:46Z</updated>
    <content type="html">Another year has passed, so it's time to take stock, and make soup from it. &lt;br /&gt;&lt;br /&gt;In 2008, we downsized by selling my house, gave away lots of stuff, drove less, and called Angeline's 700 sq ft apartment home.  I'd like to continue the trend of reducing even while we try to find a slightly larger place.&lt;br /&gt;&lt;br /&gt;Angeline landed her first real job after 14 years of training, receiving offers from every place she interviewed.  She'll begin at a private practice in Rockville in the middle of this year (if you have diabetes, I know a great endocrinologist!).  We're very excited and hope this practice will be a great place to work.&lt;br /&gt;&lt;br /&gt;Meanwhile, I came into the year hating my job, resolved to leave by April.  I did interview and receive a couple of job offers, but nothing too exciting.  Instead, I decided to stop caring so much about work, and to wait and see where my wife found employment.  I now plan to switch by the time my contract expires in March 2009.&lt;br /&gt;&lt;br /&gt;In 2008, I continued my hobbies.  I cooked a lot, taking cooking classes on bread-making and sauces.  I also messed around with electronics as usual, built a theme kite for the Smithsonian kite festival, and read a ton of books.  Angeline and I completed hundreds of crossword puzzles together, and watched a lot of hockey games.&lt;br /&gt;&lt;br /&gt;Most of my spare time, as boringly detailed on this blog, was spent focusing on kernel hacking, with OMFS being included and my becoming a maintainer of the ath5k wireless driver.  In 2009, I hope to have my 100th patch included in the kernel (currently at around #35).  I'd also like to make systems software a focus of my future career.  To that end, I've applied for jobs with a couple of embedded device manufacturers, and applied to masters degree programs at nearby schools.&lt;br /&gt;&lt;br /&gt;All in all, it was a good year.  Our families are all reasonably healthy.  Many were affected by the economic downturn but no one we know is suffering hardship.  We look forward to spending more time with friends and family this year.  2009 holds lots of promise and all that other optimistic crap.</content>
  </entry>
  <entry>
    <id>urn:lj:livejournal.com:atom1:bluesterror:145259</id>
    <link rel="alternate" type="text/html" href="http://bluesterror.livejournal.com/145259.html"/>
    <link rel="self" type="text/xml" href="http://bluesterror.livejournal.com/data/atom/?itemid=145259"/>
    <title>New Toy</title>
    <published>2008-12-20T16:51:33Z</published>
    <updated>2008-12-20T16:51:33Z</updated>
    <content type="html">&lt;div style="float: right; margin-left: 10px; margin-bottom: 10px;"&gt;&lt;a href="http://www.flickr.com/photos/bluesterror/3122232247/" title="photo sharing"&gt;&lt;img src="http://farm4.static.flickr.com/3267/3122232247_4c9c476578_m.jpg" alt="" style="border: solid 2px #000000;" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;span style="font-size: 0.9em; margin-top: 0px;"&gt;&lt;a href="http://www.flickr.com/photos/bluesterror/3122232247/"&gt;Mutt&lt;/a&gt;&lt;br /&gt;Originally uploaded by &lt;a href="http://www.flickr.com/people/bluesterror/"&gt;bluesterror&lt;/a&gt;&lt;/span&gt;&lt;/div&gt;After two weeks my developer's G1 finally came in.  Finally, I can use my 1990s text email client from a cell phone.&lt;br clear="all" /&gt;</content>
  </entry>
  <entry>
    <id>urn:lj:livejournal.com:atom1:bluesterror:144952</id>
    <link rel="alternate" type="text/html" href="http://bluesterror.livejournal.com/144952.html"/>
    <link rel="self" type="text/xml" href="http://bluesterror.livejournal.com/data/atom/?itemid=144952"/>
    <title>Komi</title>
    <published>2008-12-20T16:22:03Z</published>
    <updated>2008-12-20T16:22:03Z</updated>
    <content type="html">I suppose it's a bit bourgeois to go to really expensive restaurants while the economy is crashing down around us.  But Angeline's birthday arrived last week, and it has been hard to resist the siren song of Komi from all the positive things we've heard.  So off we went to Johnny Monis' fancy greek restaurant last Friday night.&lt;br /&gt;&lt;br /&gt;As we tend to do in the high end places, we went with the degustazione, the tasting menu.  Angeline ordered a crisp glass of white wine, and I signed up for the three glass pairing.  (Not being a wine connoisseur, I couldn't really say whether the pairing was good or bad.  The sommelier didn't spend a lot of time explaining the choices, and there was nothing revelatory about the choices from my point of view.  At any rate, that hardly put a damper on the meal.)  The tasting menu begins with an almost unending parade of small plates, they call mezzethakia (actually if you google "mezzethakia," you'll get much better reviews of Komi right off the bat).  Initial courses were primarily seafood: sashimi ahi in olive oil with salt and chives, sea urchin and oyster in a fruity gel, a salad with baby octopus tentacles, a really nice ceviche with sweet pine nuts (I forget the fish, salmon perhaps?), and scallop carpaccio with truffle mayonnaise.  A steak tartare with white truffle ice cream soon followed.  And finally, on a plate with tiny foie gras sandwiches, handmade animal crackers, and goat cheese smores, was a date stuffed with mascarpone cheese, sprinkled with fluer de sel.  It may not sound like much, but this last, one of the most talked-about items from his restaurant, was excellent and well worth the hype.&lt;br /&gt;&lt;br /&gt;For pasta, I had a tagliatelle, I think, while Ange had pumpkin ravioli that were amazing.  Then they brought the "salad" course: a one inch crouton, deep fried with a caesar salad puree &lt;i&gt;inside&lt;/i&gt;.  Very imaginative, and it did taste just like a tiny caesar salad.  &lt;br /&gt;&lt;br /&gt;The small portions gave way for a massive katsikaki (slow roasted goat shoulder).  This was very good: coated in artisanal salt, the outside was crisp and flavorful, a bit like roasted chicken skin, while the inside was fork tender, like a less-fatty pork barbecue.  It was served with an array of home-made condiments.  Dessert included various chocolate presentations (a mousse and a small cake, if I recall correctly) and some tasty greek donuts.  The bill came with home-made almond lollipops, presumably to distract from the number of digits in the total.&lt;br /&gt;&lt;br /&gt;Bottom line: definitely top three restaurants I've been to, top one or two in DC.  Well worth eating PB&amp;J for a month to save up the cash.</content>
  </entry>
  <entry>
    <id>urn:lj:livejournal.com:atom1:bluesterror:144771</id>
    <link rel="alternate" type="text/html" href="http://bluesterror.livejournal.com/144771.html"/>
    <link rel="self" type="text/xml" href="http://bluesterror.livejournal.com/data/atom/?itemid=144771"/>
    <title>F10</title>
    <published>2008-12-14T21:58:11Z</published>
    <updated>2008-12-14T21:58:11Z</updated>
    <content type="html">So, I've been a user of Debian (and lately Ubuntu) since around 2001, with RedHat, Mandrake, and Slackware being in use before then.  Debian was like a revelation: 'apt' is how package management should be!  I still have my server running Debian stable, but I thought I'd try putting Fedora 10 on my laptop this go-round to see how it compares to Ubuntu.  All the marketing hype about Ubuntu being mere aggregators of others' hard work had something to do with that as well.  Besides, yum has been around for years now so surely it is as good as apt by now.&lt;br /&gt;&lt;br /&gt;Here are my thoughts: I still find yum a little clunky for a few things; maybe that's just my expertise in apt speaking.  LVM was the first thing to go -- it wasn't hard to do from the graphical installer.  The much hailed boot graphics stuff only worked with vesafb for me since they dropped the modesetting code for Intel from the kernel.  I had to overhaul the installkernel script to properly update grub and not bother with an initrd, since I hate them.  Finally, all configuration seems to be HAL driven now, which just means putting more random undocumented crap into huge XML files in /etc to get your touchpad working.  Lovely, I'm sure Ubuntu is busy adopting that mess.  On the plus side, a nice looking gnome setup with reasonable defaults.  On the whole, Fedora 10 is a solid release, though it will still take some time to get it configured to my liking.  Perhaps by then I'll give openSuse a spin.</content>
  </entry>
  <entry>
    <id>urn:lj:livejournal.com:atom1:bluesterror:144633</id>
    <link rel="alternate" type="text/html" href="http://bluesterror.livejournal.com/144633.html"/>
    <link rel="self" type="text/xml" href="http://bluesterror.livejournal.com/data/atom/?itemid=144633"/>
    <title>!!Open</title>
    <published>2008-12-09T03:44:28Z</published>
    <updated>2008-12-09T03:44:28Z</updated>
    <content type="html">I can now take back the things I said about the Android phone.&lt;br /&gt;&lt;a href="http://www.engadget.com/2008/12/05/sim-hardware-unlocked-android-dev-phone-1-surfaces-for-399/"&gt;Enroute.&lt;/a&gt;&lt;br /&gt;&lt;a href="http://www.engadget.com/2008/09/22/meet-the-t-mobile-g1/"&gt;Enroute back to T-Mobile.&lt;/a&gt;</content>
  </entry>
  <entry>
    <id>urn:lj:livejournal.com:atom1:bluesterror:144189</id>
    <link rel="alternate" type="text/html" href="http://bluesterror.livejournal.com/144189.html"/>
    <link rel="self" type="text/xml" href="http://bluesterror.livejournal.com/data/atom/?itemid=144189"/>
    <title>Old code</title>
    <published>2008-12-03T19:43:05Z</published>
    <updated>2008-12-03T19:43:05Z</updated>
    <content type="html">The &lt;a href="http://bobcopeland.com/projects.html"&gt;projects section&lt;/a&gt; of my webpage got a few tweaks last night.  Namely, I resurrected the rigid body simulator back to more-or-less compiling state (what a pile of crap code!) and put it back on the internets.  The i-collide library may need a few Makefile tweaks to run on anything newer than RedHat 4.  I ran it last night, then I realized GL-over-remote-X wasn't working on Windows.  So much for that.  It's super fast on modern hardware though.</content>
  </entry>
  <entry>
    <id>urn:lj:livejournal.com:atom1:bluesterror:143926</id>
    <link rel="alternate" type="text/html" href="http://bluesterror.livejournal.com/143926.html"/>
    <link rel="self" type="text/xml" href="http://bluesterror.livejournal.com/data/atom/?itemid=143926"/>
    <title>Backups revisited</title>
    <published>2008-11-12T16:09:28Z</published>
    <updated>2008-11-12T16:09:28Z</updated>
    <content type="html">I spent most of last weekend doing home IT tasks.  That involved upgrading my main desktop machine from Pentium III to an Athlon XP.  Welcome to 7 years ago!  But most of the work was spent reorganizing my data and coming up with a better backup regime.&lt;br /&gt;&lt;br /&gt;Now that hard drives are so cheap, and we now rent a storage space, spending $1/GB-month for off-site network backup is just not worth it any more.  Also, with my off-site backup, I was only keeping a single full backup, which is not terribly useful if a few weeks elapse before you notice something is missing.  So, I have been playing around with incremental backups using rsync and hard links, similar to the way Apple's time machine supposedly works.  Then I stumbled across 'gibak,' a set of shell scripts that use the git version control system as the backup tool.&lt;br /&gt;&lt;br /&gt;In the end, I went with my own dozen-liner script to use git and metastore, with rsync/cifs to collect the stuff in windowsland for backup in separate repositories.  A cron job does a daily commit and push from the checked-out repo in my home directory.  So far, the result is pretty nice.  If I screw something up, a 'git reset' gets me back to any earlier date.  It also solves a minor annoyance with keeping files in sync across multiple machines: both can use a clone of the git repo and then syncing is as easy as a push from one and a pull to the other.  I can rotate portable hard drives to the storage area to solve the 'apartment burning down' scenario, though I'm admittedly vulnerable to the 'global thermonuclear war' scenario.  &lt;br /&gt;&lt;br /&gt;I've already used this scheme to rebuild a machine's home dir and it worked flawlessly.  Hopefully the same will hold when I move my laptop from Ubuntu 8.04 to Fedora 10.  Anyway, this should keep me satisfied until btrfs is everywhere and I can just use filesystem snapshots.</content>
  </entry>
  <entry>
    <id>urn:lj:livejournal.com:atom1:bluesterror:143690</id>
    <link rel="alternate" type="text/html" href="http://bluesterror.livejournal.com/143690.html"/>
    <link rel="self" type="text/xml" href="http://bluesterror.livejournal.com/data/atom/?itemid=143690"/>
    <title>Hacking, the good kind</title>
    <published>2008-11-05T16:47:33Z</published>
    <updated>2008-11-05T16:47:33Z</updated>
    <content type="html">I could write about the election here, but &lt;a href="http://citizen905.livejournal.com/197602.html"&gt;citizen905&lt;/a&gt; already summed it up pretty well.  So instead, here's what I've been breaking in the Linux kernel lately: &lt;br /&gt;
&lt;ul&gt;
&lt;li&gt; My final patch count for 2.6.27 was 14, I think.  Enough, anyway, that I can stop counting and just deal with all the work I've created for myself.
&lt;li&gt; I added myself to MAINTAINERS for ath5k, which felt like a pretty ridiculous notoriety grab, but Nick asked me to do so twice, so there.
&lt;li&gt; I have some fixes for ath5k for 2.6.28, nothing major but an oops should be fixed, and a WARN_ON removed.  The oops fix, incidentally, had an obvious bug despite 3 sign-offs.  I suck.
&lt;li&gt; Also committed but to-be-reverted for suckiness is a patch to remove beaconing in STA mode.  Turns out ath9k, from which I stole this idea, was just busted.  The new plan is to use the beacon miss interrupt; until then, your wireless card has to wake up the CPU about 100 times a second.
&lt;li&gt; For 2.6.29, I have added hardware encryption to ath5k and hopefully will get some time to hack on the suspend/resume support for mac80211.  Then I have some omfs patches I've been sitting on for months.
&lt;/ul&gt; 
</content>
  </entry>
  <entry>
    <id>urn:lj:livejournal.com:atom1:bluesterror:143506</id>
    <link rel="alternate" type="text/html" href="http://bluesterror.livejournal.com/143506.html"/>
    <link rel="self" type="text/xml" href="http://bluesterror.livejournal.com/data/atom/?itemid=143506"/>
    <title>Hacked</title>
    <published>2008-10-31T15:44:23Z</published>
    <updated>2008-10-31T17:37:11Z</updated>
    <content type="html">So my wife received a spam from herself.  At first I thought it was one of those spams where the "From:" was forged to be the same as the recipient, but a closer look revealed that it was actually from her hotmail to her yahoo account &lt;i&gt;and&lt;/i&gt; to another dozen of her friends.  Uh-oh.&lt;br /&gt;&lt;br /&gt;So what happened?  Was this a &lt;a href="http://www.freedom-to-tinker.com/blog/wzeller/popular-websites-vulnerable-cross-site-request-forgery-attacks"&gt;cross-site request forgery&lt;/a&gt; (CSRF) attack?  She wasn't logged into hotmail at the time that the email was sent.  However, that doesn't necessarily mean anything: there have been various CSRF attacks where the account is backdoored to send mail elsewhere, and a subsequent password reminder request could then give the attacker the goods.  Or her session could have still been active even though the tab was long gone.&lt;br /&gt;&lt;br /&gt;Was it spyware?  Windows Defender didn't find any, and we run XP apps in unprivileged user mode (which is a huge PITA, but that's another story).  It probably was not a dictionary attack, since her password is reasonably strong.  It could be the case that her password was simply stolen, possibly from another site where the password was reused.&lt;br /&gt;&lt;br /&gt;I'm late to the party, but I imagine CSRF and related attacks are still very under-appreciated at the moment, and that's particularly worrisome with all of the Web 2.0 applications about.  Hotmail should know the score, but who knows.  As my mind mulls over the possibilities of such a bug in gmail, and the fact that I have three sessions open in it from various computers at the moment, I'm glad I have nothing of value in my gmail account and still use my own domain with mutt for official email.  &lt;a href="http://www.davidairey.com/google-gmail-security-hijack/"&gt;Stories like this one&lt;/a&gt; will only become more common.  What if your confidential documents, stored on Google Docs, get surreptitiously emailed to everyone you've ever done business with? &lt;br /&gt;&lt;br /&gt;So, I guess the moral is: get thee a password generator, and remember to log out of webmail!</content>
  </entry>
  <entry>
    <id>urn:lj:livejournal.com:atom1:bluesterror:143185</id>
    <link rel="alternate" type="text/html" href="http://bluesterror.livejournal.com/143185.html"/>
    <link rel="self" type="text/xml" href="http://bluesterror.livejournal.com/data/atom/?itemid=143185"/>
    <title>Open, sorta</title>
    <published>2008-10-24T14:16:53Z</published>
    <updated>2008-10-24T14:17:11Z</updated>
    <content type="html">I'm glad to see that the not-so-openness of Android is finally getting &lt;a href="http://laforge.gnumonks.org/weblog/2008/10/23/#20081023-android"&gt;some&lt;/a&gt; &lt;a href="http://www.oblomovka.com/wp/2008/10/23/the-t-mobile-g1-nice-phone-not-so-open/"&gt;press&lt;/a&gt;.  As someone whose code is included in the phones' firmware (though surely compiled out, heh), I very much agree with Harald Welte in the first linked article.  And that guy bluest on &lt;a href="http://lifehacker.com/5053661/what-android-could-bring-to-your-phone"&gt;lifehacker&lt;/a&gt; sure has really smart comments.&lt;br /&gt;&lt;br /&gt;Oh well.  I'll wait for someone to hack it.</content>
  </entry>
  <entry>
    <id>urn:lj:livejournal.com:atom1:bluesterror:142894</id>
    <link rel="alternate" type="text/html" href="http://bluesterror.livejournal.com/142894.html"/>
    <link rel="self" type="text/xml" href="http://bluesterror.livejournal.com/data/atom/?itemid=142894"/>
    <title>Breakout</title>
    <published>2008-10-23T14:45:34Z</published>
    <updated>2008-10-23T14:46:44Z</updated>
    <content type="html">&lt;a href="http://www.flickr.com/photos/rosewater0304/2959961997/" title="Breakout by rosewater0304, on Flickr"&gt;&lt;img src="http://farm4.static.flickr.com/3144/2959961997_496cbfd76a_m.jpg" width="180" height="240" alt="Breakout" valign="top" align="right" vspace="5" hspace="5" /&gt;&lt;/a&gt; You haven't played breakout until you've played it in all its low-resolution glory on the side of a building.  Which is exactly what my wife, my brother-in-law, and I did in Toronto while we were visiting for Canadian Thanksgiving.  The installation was part of &lt;a href="http://www.blinkenlights.net/"&gt;project blinkenlights&lt;/a&gt; by the Chaos Computer Club.  Every window in the city hall building had a lamp that would turn on or off to form a giant pixelated screen.  You would call a number on a cell phone to start a game, then use the keypad to move the paddle around.  Each game would last a minute, or in my case, the 10 secs it took to lose.  Very neat!&lt;br /&gt;&lt;br /&gt;(I think in this image, the ball is in the lower left corner and the dot above the paddle on the right is just an artifact.  But I could be wrong -- it could just be me losing, again.)</content>
  </entry>
  <entry>
    <id>urn:lj:livejournal.com:atom1:bluesterror:142626</id>
    <link rel="alternate" type="text/html" href="http://bluesterror.livejournal.com/142626.html"/>
    <link rel="self" type="text/xml" href="http://bluesterror.livejournal.com/data/atom/?itemid=142626"/>
    <title>SYSRQ on MacBook</title>
    <published>2008-10-07T21:59:31Z</published>
    <updated>2008-10-07T22:00:19Z</updated>
    <content type="html">Lately I've really needed SysRq in situations where /proc/sysrq-trigger just doesn't do the job, and my MacBook is missing lots of crusty old XT-era keys.  Finally, I know how to do this!  &lt;br /&gt;&lt;pre&gt;&lt;tt&gt;/* includes and error handling omitted for brevity... */
#define USAGE_CODE 0x070044 /* USB hid for F11 */

int main() 
{
    int codes[2];
    int fd = open("/dev/input/by-id/usb-Apple_Computer_Apple_"
        "Internal_Keyboard_._Trackpad-event-kbd", O_NONBLOCK);

    codes[0] = USAGE_CODE;
    codes[1] = KEY_SYSRQ;  /* from linux/input.h */
    ioctl(fd, EVIOCSKEYCODE, codes);
}
&lt;/tt&gt;&lt;/pre&gt;Awesome.  Supposedly, a tool called keyfuzz is also efficacious.</content>
  </entry>
  <entry>
    <id>urn:lj:livejournal.com:atom1:bluesterror:142402</id>
    <link rel="alternate" type="text/html" href="http://bluesterror.livejournal.com/142402.html"/>
    <link rel="self" type="text/xml" href="http://bluesterror.livejournal.com/data/atom/?itemid=142402"/>
    <title>Guitars</title>
    <published>2008-10-07T02:09:35Z</published>
    <updated>2008-10-07T02:09:35Z</updated>
    <content type="html">&lt;div style="float: right; margin-left: 10px; margin-bottom: 10px;"&gt;&lt;a href="http://www.flickr.com/photos/bluesterror/2920686700/" title="photo sharing"&gt;&lt;img src="http://farm4.static.flickr.com/3229/2920686700_9e9452df81_m.jpg" alt="" style="border: solid 2px #000000;" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;span style="font-size: 0.9em; margin-top: 0px;"&gt;&lt;a href="http://www.flickr.com/photos/bluesterror/2920686700/"&gt;Guitars&lt;/a&gt;&lt;br /&gt;Originally uploaded by &lt;a href="http://www.flickr.com/people/bluesterror/"&gt;bluesterror&lt;/a&gt;&lt;/span&gt;&lt;/div&gt;To add a little space to our cozy apartment, I put up a couple of guitar wall hangers over the weekend and put the cases in storage (don't tell our leasing office).  It looks pretty cool, though I do think the guitars want 8 or 9 more friends.  I just hope this isn't the start of the inevitable transition from guitar-as-instrument to guitar-as-display-item.&lt;br clear="all" /&gt;</content>
  </entry>
  <entry>
    <id>urn:lj:livejournal.com:atom1:bluesterror:142326</id>
    <link rel="alternate" type="text/html" href="http://bluesterror.livejournal.com/142326.html"/>
    <link rel="self" type="text/xml" href="http://bluesterror.livejournal.com/data/atom/?itemid=142326"/>
    <title>Old soldiers</title>
    <published>2008-10-05T14:09:26Z</published>
    <updated>2008-10-05T14:09:26Z</updated>
    <content type="html">I had the good fortune to attend a free DC ACM-sponsored lecture by Tony Hoare last week.  Hoare is the inventor of quicksort as well as the man behind two of my favorite Computing-related quotes:&lt;br /&gt;&lt;blockquote&gt;Premature optimization is the root of all evil. (via Knuth)&lt;/blockquote&gt;&lt;blockquote&gt;There are two ways of constructing a software design: one way is to make it so simple there are obviously no deficiencies and the other way is to make it so complicated that there are no obvious deficiencies.&lt;/blockquote&gt;He gave a fairly dry talk on the importance of program correctness and how CS-the-science hopes to eventually figure out proof methods and tools that will some day help CS-the-discipline.  But, he notes, we're still a long way off.&lt;br /&gt;&lt;br /&gt;I'm still not a member, but good things are coming out of the local ACM chapter.  This is the same series that brought Brian Kernighan earlier in the year.  Next month there is a black tie affair with Bjarne Stroustrup as the keynote.</content>
  </entry>
</feed>
