Eat more potassium benzoate

I still can’t decide if Coke with Lime is the best thing to happen to soda, or if it is poison. I typically change my mind from one to the other about halfway through. I love that it has as an ingredient, “Potassium benzoate (to protect taste).”

The GT alumni club’s softball team really sucks, and I say that as one of the proud owners of an “E” last night. Signs of agility: before the game even started I picked up two bruises on my right shin and hurt my lower back. At least we dominate post-game drinking contests.

Got my HD card working last night. Seems the trick was using dvbstream to capture things as opposed to cat. So my $10 rabbit ears from years ago proved still useful here in the 21st century: I could watch a digital version of old standard def Friends reruns. Woohoo. I’ll still probably go get a better antenna this weekend. Anyone taking bets as to whether I impulse buy a 50″ DLP TV as well?

My illegal computer

My PVR now does HDTV. Sort of. I bought the pre-ridiculous broadcast flag law HDTV receiver card from pcHDTV, before they become a gray-market commodity on eBay. It arrived last Friday in a box containing a brochure about the EFF, which I found a nice touch. Note to self: renew membership for this year.

Last night was the first chance I had to try it out. I downloaded kernel 2.6.12-rc2, compiled it, repeated the process until I figured out which modules I was supposed to use, then dmesg reported success. I proceeded to try to tune the six or seven channels I can receive in my area. I don’t have a real antenna so I used an old pair of rabbit ears that I had. Got locks on 3 or 4 channels, which is good. The signal was too noisy on all of them to actually capture anything, which is bad. I also tried tuning QAM over my (analog) cable with no luck. So I guess I’ll be buying an antenna soon. Then all I need to get is an HD television, a minor detail.

Having finished the issue, I do have to say that MAKE has too many articles of the following form, which is to say more than one: I found myself wondering how to do [some incredibly mundane task] on my [Powerbook|G5|ipod], then I located [overpriced commercial package] and it solved all my problems! What that has to do with making things, I don’t know.

Make

A nice complement to my recently manifested build-lust, I found in my mailbox on Friday the first issue of MAKE magazine. First impression: it is like a print version of BoingBoing. All your favorite writers are there: Messrs. Doctorow and Frauenfelder, that chick who always talks about herself or semi-famous people she knows, and that David guy. And the writing styles are pretty familiar; for example Cory D’s submission turns a cool article about kids taking apart cheap toy dogs into some kind of anti-Sony IP polemic. Along with articles detailing student projects taking place in various university labs, the mag contains four DIY projects ranging from the overly simplistic (making an ethernet cable) to some soldering skill required (make a magstripe reader). If you are currently a thorough consumer of the internet, you will probably have seen some of the content before, such as the cheap steady cam built with pipes. But on the whole, it’s a solid zine, and for now it lacks the page after page of ad copy that makes reading Wired or pretty much any other tech mag especially tiresome. Worth the price of admission.

Mod part 2

Lately I’ve been consumed with an urge to build things. Call it a manic phase. So last night I indulged, armed with my newest power tool: a Dremel. 35000 RPMs of pure madness. When I have it in my hands, you’d be well advised to stand back ten feet.

Okay, I know case modding is the geek equivalent of spoilers and ground effects. All the same, it is nice to add a little bit of personal touch, however slight, to one’s homegrown Tivo replacement. Since my newly-acquired LCD module didn’t fit in my case, I knew I’d have to do a little bit of surgery.

Obstacle number one is that the hard drives bump right up against the location where the LCD would have to go (there is already a display window that for some reason was placed there). I took the hard drive cage out, and moved the hard drives to the 5.25″ bays with mounting brackets. My ZIP drive occupying one of those spots got the boot. This was a bit of a tight fit because there are front panel USB and firewire connectors on the case that intrude into the bottom-most drive bay, but with some better cable routing and by mounting the harddrive a little high, I squeezed it all in there.

Obstacle number two is that the existing opening for the LCD is nowhere near big enough for this module. I had originally considered making a hole large enough for the entire PCB assembly and mounting the LCD from the front, but then I decided it would be sufficient to just widen the existing hole and mount the PCB assembly to the inside of the case. The latter scenario allows me to fall back to reinserting the hard drive cage if I ever decided that was needed, whereas the former would have me taking out the cage’s mounting screw terminals. So I put the metal cutter on the Dremel and cut out a larger square from the case. There’s something industrially visceral about the shower of sparks and taste of toxic paint accompanying this process. With a little fine tuning and some sanding of the edges, I had a perfect matched opening in the case for the LCD.

In order to mount the module, I picked up a piece of perfboard from Radio Shack that I drilled appropriately to attach to existing screws on the PCB. Then I screwed the perfboard to existing mounting holes inside the case. The results? Quite nice. The window glass in the case, unfortunately, is tinted, making the LCD difficult to read at a distance, but it still looks good up close. Mythtv is already built to display the program information and progress as you watch TV, and menu items as you navigate with the remote. Probably not worth all the work and cost, but what else did I have to do?

More pictures in the gallery.

JAXB sucks

Allow me to enumerate the many ways I hate JAXB. JAXB is an XML data binding tool for Java; that is, it generates code to make using XML more Java-like. This is great in concept. In reality it is not so great:

  • Two days away from your project due date, JAXB lets you know that it isn’t mindful of the method size limits in the JVM. Javac tells you: “code too large.”
  • There’s a limit to method sizes in the JVM?
  • Upon examining a generated class, you discover 25k lines of utter garbage. Things like the same if-then clause being repeated twice in a row.
  • Turning off generation of the validator, or the unmarshaller, or the validating unmarshaller does have the effect of reducing code size, at a cost of generating code that doesn’t compile.
  • Or if it compiles, it throws a runtime exception when you use it.
  • The object hierarchy is all screwed up, such that a concrete implementation type may implement a (JAXB internal) interface that is not also implemented by the corresponding abstract interface (the two are supposed to be interchangeable).
  • You have to do naughty proprietary things to make type substitution work.
  • Creates a new namespace prefix for practically every element even though I only use 3 namespaces in the entire document.

I only just learned about XMLBeans. Dammit.

Mod

LCD screen

This is going in my mythtv box. I used to have a VFD there but it didn’t work well with lcdproc and the parallel interface required running a cable out of the back of the unit to connect to the parallel port. Very ghetto. This module has a USB interface so I can run it directly to the appropriate motherboard headers. The fun part is just beginning though: while the module matches the case’s display window perfectly, it is too thick to be mounted in the space between the hard drives and the front panel. So I’m going to have to really mod the case – relocate the hard drives elsewhere, and poke a bigger hole in the front. Oh well, at least it’s an excuse to buy a Dremel.

Mythtv now has nice support for LCDs built-in. I’ll try and put up a couple of pictures when I get it all together.

New goodies

One of the products of Saturday’s spending spree arrived last night: a midrange Denon 7.1 home theater receiver. I think the power supply in my old Aiwa is about to give up the ghost, as the display has dimmed significantly, and the system turned itself off on me once or twice. Also it never really delivered enough power to my speakers in the first place. The new one, though… it’s like I have a whole new HT setup. One really nice feature of this unit is that it comes with a microphone that you place at your listening location, and the amp automatically calibrates the speaker levels and delays. Much more accurate than my previous adjustments by ear, and much less work than the tripod and meter approach favored by Welsh. Unlike all of the other consumer electronics gear I’ve purchased in the past, this one will finally grant me happiness and personal fulfillment.

I’m going to try to freecycle the old amp (unless anyone else I know wants it). No sense in contaminating some third world water supply with electronic waste.

Free books

On a whim I bought EFFer and BoingBoinger Cory D’s Eastern Standard Tribe when I saw it in a local bookstore. It was actually much better than I had expected, after that really bad excerpt from his next book. So I read EST in dead tree form, and I liked it! Of course one neat thing about Cory’s novels is that he releases them under various Creative Commons licenses, so you can download them at no charge if you are so inclined. After finishing up EST, I downloaded and read Down and Out in the Magic Kingdom, which is a novella-length Disney commercial masquerading as SF. Not good, but at least I didn’t pay for it. The book does have the distinction of being only the second book I’ve read entirely in electronic form (the first: Animal Farm).

Saw Sin City over the weekend. Probably one of the best conversions of a comic book to film. And don’t call it a graphic novel kids, you aren’t fooling anyone. The movie is violent, but all the blood is in black and white, which curiously didn’t affect me whereas Kill Bill made me queasy.

Google maps: now with satellite imagery!

Kites

I leave for the Mall this morning, because I am bored, and because yesterday I spent nearly the entire day on the couch avoiding the rain and buying lots of things on the internet. So they are having this kite festival today, as part of the NCBF. I intend to take pictures, but my camera’s battery is dead. I stop first at a roped-off field where two guys are facing off in a trick flying competition. One guy makes his kite walk on the ground – neat! (I could probably do that too, but not on purpose.)

It is a blustery day as it always is when the cherry trees are in bloom, so I plan to walk around a bit, then head inside, maybe watch an IMAX film or something like that. Halfway to the Capitol, I’m watching someone dump their frog-shaped kite into a tree, when I nearly bump into Steven of the alumni club. This is a lucky coincidence, apparently half the young alumni are also here, flying kites with varying levels of success, or watching the others’ triumphs and failures. So instead of going inside I stick it out a bit longer and join the watchers. A bit of the old vicarious thrill takes over as we watch young kids and grown-up kids struggle with kites of all shapes: colored diamonds, boxes, squares, cylinders, an airborne menagerie of dragons, turtles, pteradactyls, insects, a fleet of airplanes, rockets, and even a pirate ship. Wes’ simple black and neon diamond tangles with the nearby box kite and the mighty Superman…at least seven or eight times. Knots ensue.

Soon the wind gets the best of everyone so we head to the cafeteria of the new Native American museum. The food is good but it isn’t cheap. I believe the cashier’s small talk is an unspoken apology for the pricing. She is no doubt accustomed to sudden frowns of tired visitors when the total is announced and wallets are emptied. So we eat our authentic Native American foods and drink our not so authentic Coca Colas, then lunch is over and we part. I return home to reoccupy my couch.

Well, at least I did something this weekend.

Braindump

I helped a lady carry her luggage down the escalator this morning. She told me she had a hernia condition and that I was very kind and which way does she go to get to the airport. I said, “Blue line, this platform.” I’m a nice guy right? Wrong. She walked down to the end of the platform, I stayed somewhere near the middle, then I proceeded to watch her get on the next Orange line train, without making an effort to stop her. So, I’m a jerk. (Someone else told her so she managed to get off the train in time.)

The coolest thing Georgia Tech has ever done: hooking the laundry machines up to the Net. Too bad they just bought some company’s software instead of rolling it themselves.

Accenture (aka Andersen Consulting) is (still) running an ad campaign sporting Tiger Woods (“Be a Tiger” – PDF). Who sees these and thinks, oh hey, Accenture will do to my IT infrastructure what Tiger Woods did for the PGA? Also regarding the linked ad: I didn’t know golf normally involved so much theory. But, yes, Stephen Hawking himself has written several papers on the composition of bunkers (“Hawking Sand”) and their impact on the dynamic subspace domain of score gradients. Of course the real story here is that they are trying to make an impression on the decision makers, who play golf four days a week. Hire us for your consulting work and you can pretend you are good at this ridiculous “sport.”

My favorite unix utility is dd. Most recently, it saved all of my music on my multitracker’s dying hard drive. What did I do before unix, copy /b?

I hate the April 1st internet scene. Except for this awesome tutorial — that one is cool.