::::: : the wood : davidrobins.net

My name is David Robins: Christian, lead developer (resume), writer, photographer, runner, libertarian (voluntaryist), and student.

This is also my son David Geoffrey Robins' site.

On how the WinACE people should be waterboarded then shot

News ·Friday November 3, 2006 @ 01:36 EST (link)

I'd like to take this rare opportunity to say a few deservedly mean things about WinACE. Oh boy do they annoy me. They dangle an admittedly decent compression format in front of unsuspecting users, but it's a closed format, useless to anybody. They do pretend that there's a working Linux version, downloadable from their site, but it fails CRC checks and eventually crashes randomly, lending credence to my theory that it was produced by a roomful of blind gophers on crack.

The WinACE twits also bounced my (polite—really) email; they use some sort of ignorant DNS blackhole list which thinks I'm using residential cable (the same one Honey's work uses, but since she's quitting I figured I didn't need to bother with them*). Yep, Honey gave her notice two weeks ago so technically Friday's her last day but they want her to come back for a few days; given how much she likes her boss, I was hoping she'd give them a sheet of insanely-high contracting rates and tell them to get back to her when they'd picked their jaws off the floor.

* I had to email and call my ISP, Millennium Digital Media (MDM) several times to get them to contact a similar list that Microsoft uses so that we could send mail to my work address... argh.

CLOSED FORMATS ARE HORRIBLE. WE HATES THEM, GOLLUM, WE HATESES THEM! DIE DIE DIE.

(This is why I'm ecstatic about the Microsoft Word .docx format; for those not up to speed, it's the default Word 12 open XML format, soon to be an ECMA ISO standard. It's so completely open that in theory Microsoft could lose control of it.)

Anyway, back to the ACE issue. So I have a few collections of NES/SNES/Atari game ROMs for MythGame on the MythTV system, generously burned to DVD by BB from work. Fine, I say, I'll mount the DVD on the MythTV box and copy the files to the disk and uncompress them. Haha! say the blind gophers on crack at ACE, oh no you won't. First uncompression program I tried (emerge unace) said unknown compression method; fine, it's a (very) old version, at least it can see the filenames in the archives. When I downloaded the latest unace from WinACE's site, it ran (in 32-bit compatibility mode, of course), but was having trouble creating directories (it also liked to freeze a lot). Eventually I straced it to find out what was going on, and created one of the directories it needed, but that's when I got the CRC errors and eventually Segmentation fault. If I had source, or even a spec, I wouldn't have had that problem.

So here's the plan. I'm going to uncompress the files on my only Windows system, my laptop. Sadly, its DVD drive has just about had it, so there's come circumlocution involved here. I'd already bought a DVD writer (ASUS DRW-1608P35 DVD±RW 16x16) from HDNW when I traded my Hauppauge capture card; I installed it on my primary server machine, minas-tirith, tonight (I'd got it for backups). When I was at Costco tonight picking up some DVD blanks, I wasn't sure whether I needed DVR-R or DVD+R, so I guessed and picked DVD+R, which turned out to be best but either would have worked; if I'd've guessed wrong, I could have exchanged them next time.

Naturally, when I tried to restart the server, it didn't.

I unplug the EIDE and power cables from the DVD drive and the existing CD drive, still nothing; the monitor I dragged over and connected has no signal. I vacuum out the more obvious dust, and somehow this makes it come up. Reconnect the optical drives, still boots, so while it's still powered I screw them onto the rails and close up the box, not willing to risk it not coming up again. And, um, note to self, do those proposed backups soon since it's been a while.

To the plan! Copy the DVD onto minas-tirith's HD, transfer the files to the Windows laptop that can actually run WinACE, uncompress the files, and then probably recompress them with something saner, or just copy them over the network to the MythTV box. What a hassle! Now, it's not that impressive that my (Acer) laptop's DVD drive is dying, but these contortions could have been avoided if the idiots at WinACE had just put down the crack pipe for a few hours.

I've been working on getting two months of receipts into the system... the tax man cometh.

MythTV, now with games

News ·Sunday October 29, 2006 @ 04:48 EST (link)

The event that precipitates most divorces is the birth of the first child.*
Do You Know What It Means To Be Married, MSN Lifestyle

Our latest bad driver is from Friday, WA 725 VAP, a gray SUV tried to cut me off entering WA-520 from 40th Street at about 1730 as I was driving home. I'm not sure what type of vehicle it was, I only caught the plate when he cut across a median, zoomed past me and honked, after the road split back to two lanes.

* They don't provide any sources to back this up, so take it with a grain of salt, it's MSN Lifestyles, after all.


cirith-ungol
The next thing to be added to our MythTV setup is MythGame, which is basically just a gateway to running external games and emulators. I borrowed some DVDs with MAME ROMs from JB at work, and loaded them onto the video partition. I'm using xmame (X windows version of MAME, version 0.106, which fortunately matched the ROMs), which is a massive pain to set up because there's no decent documentation, even if after STFW; and when I say there's no documentation, you know I mean it. However, I managed to glom together an xmamerc configuration (eventually gave up on sound, though; it's choppy and there's no solution and I really don't care). I had a lot of trouble with video modes (eventually went with video-mode 2, which was the only one that worked fullscreen; 2 means to let OpenGL handle it, I think). The ROMs come as a bunch of zip archives, and although JB said something about them using 7-zip compression, that was a complete red herring and never mattered at all. I never had to uncompress the files; I just set up MythGame with the right ROM directory and told it to scan, and it pulled the names and required files out of an internal database. The command line was simply /usr/games/bin/xmame %s, where MythGame replaces the %s with the path to the game chosen in the UI, which isn't horrible, but has some horrible gaps, like having to use left/right and not accepting back/OK as it does other places, and not allowing use of the keyboard to jump to a letter (granted, most people are just using a remote, but it wouldn't have been a very hard thing to add; I just might add it myself).

Next I installed a SNES emulator; I tried SNES9X, since it was X-native, but it would only display in a tiny window and wouldn't recognize the keyboard. I tried ZSNES, and it worked much better, especially following a hint to use a command-line of /usr/bin/xterm -e /usr/games/bin/zsnes %s (in retrospect, the same xterm hack may have worked with SNES9X). ZSNES is also great in that it has a configuration UI within the program. One issue I had with ZSNES is that X kept blanking the screen mid-game, but I just surrounded the run command with xset s off and xset s on to disable the standard X screen blanker (since input is by the X-box controller—which neither it nor MAME had trouble recognizing, although MAME's much tougher to set up a keymap for; I already have buttons set to load/save state on ZSNES). Nice deal on the X-box controller; it's USB, so it works on PCs, and it was only $25 at the Microsoft store vs. $40 retail; we plan to pick up another one, and maybe a copy of Windows to play head to head using that machine; it might as well serve dual purpose, it's sure got the marbles for it. The first (and only, so far) game we ran was Super Mario World; JB has some SNES ROMs too which I'll borrow when I get to work this week.

We've ordered a second Hauppauge PVR-150MCE card from Amazon, to be able to record/watch at the same time (or record two things at once, or use software picture-in-picture). The time-shifting and scheduling abilities of MythTV are great—we can record all House, or Stargate SG-1, or Good Eats (cooking show that Bob got me interested in) shows, or a show such as E. R. weekly in a particular timeslot (to avoid filling the disk with reruns showing at other times), search for upcoming movies, etc.

Handy link: MythTV keys cheat sheet.

I finished Virtual Light (William Gibson); not a bad yarn, not much direction to it, though. Now starting on (re-reading) Stephen R. Lawhead's Taliesin, the first book in the Pendragon Cycle, and some GRE preparation books. We watched Butterfly Effect 2, which got boring fast because the idea's essentially the same as the first: guy can go back and change the past, but each time he does, he breaks something really badly, and he can only fix it by destroying himself and letting his friends be free.

Illegal alien roundup: mine the border

News ·Saturday October 28, 2006 @ 15:34 EDT (link)

I had a lot of quotes here about the brouhaha over our porous southern border, so I split them out into their own entry for your enjoyment.

In the news: Mexico is going to try to challenge the (politically useful but sadly un/underfunded) southern border fence at the UN. Are they absolutely freaking hyperbonkersly insane crazy? Nobody else has any say on what a sovereign country builds within its own borders, and who it lets in or out, but nobody. The degree to which the US continues to take the UN seriously will be inversely proportional to how seriously they take this silly thing, if it gets there and this isn't just Mexican presidential posturing.

And some ideas from our friend at FARK.com, as comments on an article on a state DHS worker who was punished for reporting illegal aliens that were applying for benefits to INS (er, I mean USCIS... or was that BCIS?) I didn't write them, but I agree with most of what's quoted.

2006-10-26 01:32:42 PM FlyingJellyAttackConfectionary

Here's what I propose: Mine (heavily) the whole border, use claymores, active mines, moving mines, AP, the works. Anyone who can cross it safely gets to stay in the US.

As a bonus, set up camera and broadcast the footage as a new reality TV show.

2006-10-26 01:52:18 PM JackjustJack

Solution: Anytime they catch an illegal, they give him a rifle and a canteen of water, and send him to Iraq. If he makes it back he will have earned his citizenship. If he doesn't want to go send him over anyway without the rifle or canteen. It is a hell of a lot harder to walk back to America from Iraq than it is from Mexico.

2006-10-26 01:57:06 PM j0ndas

Illegal immigrants are illegal immigrants. They have no rights to our free stuff, and anyone who reports them trying to rip us off should be praised, not sanctioned.

I so hate how every preventive action against illegal immigrants is met by some group of nut jobs trying to defend the "rights" of the illegals. Illegals have no rights, except to be left alone and shipped back where they came from.

2006-10-26 02:24:33 PM pounddawg

Had to share this one:

Let's say I break into your house. Let's say that when you discover me in your house, you insist that I leave. But I say, "I've made all the beds and washed the dishes and did the laundry and swept the floors; I've done all the things you don't like to do. I'm hard-working and honest (except for when I broke into your house).

According to the protesters, not only must you let me stay, you must add me to your family's insurance plan, educate my kids, and provide other benefits to me and to my family (my husband will do your yard work because he too is hard-working and honest, except for that breaking-in part). If you try to call the police or force me out, I will call my friends who will picket your house carrying signs that proclaim my right to be there.

It's only fair, after all, because you have a nicer house than I do, and I'm just trying to better myself. I'm a hard-working and honest, person, except for, well, you know.

And what a deal it is for me!! I live in your house, contributing only a fraction of the cost of my keep, and there is nothing you can do about it without being accused of selfishness, prejudice and being an anti-housebreaker. Oh yeah, I want you to learn my language so you can communicate with me.

Why can't people see how ridiculous this is?! Only in America... if you agree, pass it on (in English). Share it if you see the value of it as a good smile. If not blow it off along with your future Social Security funds, and a lot of other things.

2006-10-26 02:49:17 PM serfboy

Here's an idea - remove automatic citizenship for babies born here. (only children born to those here legally or working towards citizenship would be granted citizenship) This way, there would be no "anchor-babies" as Barnstormer mentioned.

I have a friend who does DHS type stuff for the state of Arizona - an example of what she has to deal with - a woman, around thirty two comes in (illegal - she spoke openly about her status) and is with two small toddlers. One is her daughter, age one, who was born in the USofA and therefore a citizen who the state will now fund for seventeen years, as well as "pay" for the mother to care for this new little citizen. The second toddler, also age 1, was born in the USofA to her fourteen (14!) year old daughter who was also here illegally (but supposedly now back in Mexico with family) and this woman, the child's grandmother, wants "aid" to raise her grandchild as well. So, now the state is "paying" her to raise her daughter and her grandchild, both US citizens - and for at least the next seventeen years won't have to go to work like most "single" moms.

Nevermind the criminals here illegally. The illegals here taking care of the "legal" citizens are going to cost us a fortune!

2006-10-26 03:28:24 PM AGenericUserId

"Of all the people that need benefits the most, it's these poor immigrants."

Are you kidding me? Why should the US be allowing people in to immigrate, legally or illegal, who are a DRAIN ON THE AMERICAN PEOPLE? How does that benefit the country when we have people come here and leech off our services?

We need the intelligent and the educated, not someone asking "what are the handouts?"

There are two billion people in the world living under $2 a day, if we let them all in, we would be a third world country overnight.

The communist manifesto called, they want their author back.

MythTV is go

News ·Thursday October 26, 2006 @ 22:46 EDT (link)

And we're up and running, after a couple of all-nighters and a few evenings' work. Let me continue where I left off Wednesday morning: links successfully emerged, and I also installed screen for convenience. I used various sources all over the web to tweak various settings and learn things, so there's no way I can mention them all; the Gentoo and MythTV wikis were of course foundational in setting everything up.

(Let me offer this disclaimer if there are any scoffers reading this: Although a TiVo or a similar pre-built PVR may be cheaper (although monthly subscription costs are more and I pay none), I'm building this box for more reasons than cost, among them, the experience—until now I knew nothing about computer-TV I/O, volume management, infrared devices, etc.—and the freedom of having complete control over my system—nobody can make me watch anything, or expire my recordings, or prevent me from exercising fair use rights. Also, can you play games or browse the web on a TiVo?)

This is going to be long, so it probably merits some headers.

Kernel: I set up the kernel (Linux 2.6.17) with the necessary drivers and settings, using GRUB as the bootloader, managed to get it to boot fairly quickly.

Graphics: I started by trying to get the system to recognize the graphics card, which meant using the proprietary nVidia drivers, and following these instructions. No trouble there, except the generated xorg.conf had the wrong mouse device, which was easily fixed. I installed the nVidia kernel module (modprobe nvidia) and was able to startx and was greeted by the uncomplicated frank ugliness that is twm, but at least it worked. I'm still working with the monitor; nothing's connected to the TV or cable yet.

TV Capture: Next, the TV capture card, the Hauppauge PVR-500 (MythTV page). I found out that I needed IVTV (yep, another wiki), and a few more kernel drivers (Gentoo told me what I was missing when I tried to install). IVTV's versions match particular kernel versions; for 2.6.17 I needed the latest 0.7, which turned out to be 0.7.1. I had to "unmask" this and the pvr-firmware package for AMD64, since the Gentoo maintainers hadn't officially declared them safe yet. modprobe ivtv worked flawlessly and dumped bunches of information about the PVR-500 and its dual tuners to the kernel log, viewed via dmesg. The previous link also had some steps for testing the device (just grabbing a random stream), which didn't work until I changed the input source to be 0, the tuner.

Setup: I was able to run mythtv-setup in the X session I'd started, and set up the capture cards and outputs and tweak a few other sessions. It's a strange little application; it hides the mouse so everything has to be done with the keyboard using a UI that looks like Motif.

Remote: I'd purchased a Microsoft MCE remote from the company store, which I now attempted to set up. The IR receiver is USB; I determined it was the newer MCE remote, so I emerged lirc with the lirc_devices_mceusb2 USE flag, installed the module with modprobe lirc_mceusb2, installed the configuration file for the remote as /etc/lircd.conf, and started lircd, the Linux infrared remote control daemon. I had to add one button later, but in all it worked fine; irw showed the correct interpretation for the various keypresses. (lircd translates the data received from the IR receiver into usable data about keys pressed, and broadcasts that data on a socket which programs such as MythTV can listen on.)

Program Guide: The standard for receiving channel data for MythTV is the Zap2it.com TV and movie guide, which offers free subscriptions to an XML feed, so I set that up and ran the mythfilldatabase script to grab a sufficient quantity of listings and store them in the local listings (MySQL—their choice, not mine) database; I also set up a cron job to synchronize the listings daily.

TV Out: Next I connected the machine to the TV; the nVidia card had S-Video output, but since the TV's S-Video input was already being used for the DVD player, I used an included S-Video to component video dongle included in the package, and then used RCA ("composite") cables (same connectors) to connect it to the TV. I read further and found out the Option directives needed in xorg.conf to tell it to output to the TV. First I dialed back the resolution a bit and deleted all of the depth lines except 24-bit. It worked reasonably well; X came up on the TV and I could run mythfrontend, but the colors were wrong; black and white, with some pink tones. I borrowed the S-Video cable from the DVD player, and that fixed the colors; just recently I learned how to do component out with nVidia cards on MythTV (thanks to Freenode #mythtv-users).

Cable in: Eventually I hooked our cable to the TV capture card (between my wife's shows...). When I did the default-record test, I just got static, since I wasn't tuned to a channel, but it was black before, so something was being read. I emerged the minimalist evilwm and set it to exec /usr/bin/mythfrontend via .xinitrc (note that MythTV runs as a non-root user, although it needs to be in the audio and video groups naturally, which is a good thing). When I ran startx as that user the MythTV menu came up; I selected the first option, "Watch Live TV", which promptly did nothing. I forget what the issue was; it may have been permissions, but I resolved it, and was able to navigate around our cable lineup, but it was super-grainy and very splotchy in the lower channels.

Shopping trip: Unfortunately it seems grainy video is endemic to the Hauppauge PVR-500MCE with the Samsung chip (ones with the Philips chip are fine), and mine had the Samsung chip. I returned it and was going to get dual PVR-150MCEs, but they only had one in stock so I'll need to pick up a second one later. (I also picked up an ASUS DVD writer for my other machine to make backing up the system—photographs take up a lot of space—easier.) I also picked up a 2m Monster component video cable ($55! but cheaper than the series 2 which was $75) (and Broken Arrow, The Butterfly Effect 2, and The Wicker Man) from Circuit City, a 4-way RF (cable) splitter (the dual PVR-150s each need a signal, as does the cable modem, and they don't make 3-ways) and a phone plug to RCA connector from Radio Shack, and a (wired, since it's USB) X-Box controller ($25, vs. $40 from Target) and a wireless keyboard and mouse (Optical Desktop 4000) from the Microsoft company store. Amazingly the wireless keyboard/mouse worked right away, standard PS/2 connectors, and the PVR-150 card required no changes to work correctly, and it produced an excellent picture.

Finishing up: I installed all of the various MythTV plugins (except MythFlix), but I haven't had a chance to play with them yet. There are still a few things to iron out with the system: it seems to be getting the wrong data for channels 2 and 3; on boot, it complains about a filesystem check error, but there's no actual problem and /etc/fstab is fine; also, I need to set it to boot directly to MythTV which means having it autoload some modules and then run startx as the MythTV user. Not difficult, just things to do.

Altogether it's a great system and we're very happy with it. It's name is cirith-ungol, joining minas-tirith, khazad-dum, and imladris (R.I.P. barad-dur).

Update: looks like autoloading the needed modules is just a simple matter of adding them to /etc/modules.autoload.d/kernel-2.6; done. Startup scripts can be added to /etc/conf.d/local.start; added su mythtv -c /usr/bin/startx. Still not sure about the fsck issue, but commercial flagging is now working.

The MythTV box has arrived!

News ·Wednesday October 25, 2006 @ 00:10 EDT (link)

I picked up my MythTV box from Hard Drives Northwest (HDNW) today; I'd expected it Friday and was then told Monday; they were waiting on memory, which seems to be a strange thing to be lacking. AT suggested I write up the experience of building the system on this site, which I plan to do. Anyway, let's start with the specs. I started with some ideas from an O'Reilly article and tweaked it after reading various sites; for example, I didn't want or need the pcHDTV board he recommended, preferring the Hauppage PVR-500 with the dual tuners; also, he wanted to record digital TV received over the air, I wanted to track cable. I ended up with the following: Total cost: $1453.56 (including tax). I also picked up: and may get a Microsoft IR keyboard/mouse too (sometimes it's nice to be able to type from the couch, e.g. to look up actors in a movie to satisfy those annoying "I know I've seen him somewhere..." moments).

I set it up next to the TV, hooked up to an old monitor—and a new keyboard—for the setup phase. I had to run a network cable to my study since although the cable comes in there and goes through the cable modem, it then goes into the wall and emerges into the study where it goes through minas-tirith for NAT and firewalling. It needs to sit inside the network; these days, machines aren't safe outside. I booted my old Knoppix 3.8.1 CD; booted fine, but couldn't find the network interface cards (dual Gigabit, whee); I checked the book and found they so I just downloaded and burned the latest Knoppix, 5.0.1... and yes, it detects the network devices, and even configures them via DHCP. Unfortunately I have to borrow the bluetooth mouse from the laptop station; I thought I had a few old mice hanging around, but I seem to have gotten rid of them.

Now, though, the screen display is super-dim (I can peer at it and see the applications and the mouse cursor, but it's really dark); before it was just fine. It happens when Knoppix runs X, but persists when I return it to console mode. It's not the monitor settings; time to STFW again... and the web says that it's a driver bug (duh!) and provides links to updated nVidia drivers and a workaround: connect the monitor to the DVI output using the analog adapter. This works, and the network is indeed setup—Slashdot comes up just fine in Konqueror—so on with the show.

Using the Knoppix LiveCD let me skip to step 4 in the Gentoo Linux AMD64 Handbook. I decided to set up a 100M /boot partition and 1 10G / partition (both ext3), and then I learned about LVM, the Linux Logical Volume Manager, and used it to dedicate the rest of the 320G drive to a /video partition (using IBM's JFS, since either it or XFS are recommended to get decent performance with video files, which tend to be large). Now I'm downloading the AMD64 stage 3 tarball from a Gentoo mirror site (stage 1 and 2 installs are no longer supported, so I'm glad I got to, um, enjoy one while they were still in vogue).

So I reach the chroot stage and hit another snag: since the Knoppix CD is 32-bit but I'm building a 64-bit system, the running kernel can't load the /bin/bash image from the stage 3 tarball. Looks like I do have to burn the Gentoo-specific AMD64 LiveCD.

While you're waiting for the CD to burn, feel free to browse the recently reanimated photo site. Well, semi-animated at least. Give me a moment to disable access to an old photo of my SSN card (and to implement said disablement). Note that it only includes old photos taken on my old Sony DSC-F707 (mainly January-July 2002). I need to re-import the newer photos to the database, and also some old info files (and show the category descriptions, once they're populated).

One annoying thing about the Gentoo LiveCD that had me tearing my hair out at first is that it doesn't let you su to root until you run and pass a few screens of their installer (then you can exit it). Before I went to sleep at 0830 (!) I did emerge links (links is a console web browser, but can also use some graphics, and hence also installs X and other deps) and let it run.

A short story about attributes

News ·Tuesday October 24, 2006 @ 02:13 EDT (link)

There is a way which seemeth right unto a man, but the end thereof are the ways of death.
Proverbs 14:12

Once upon a time there was a developer that needed a database to track photographs. But this database needed to be "future-proof"—what if more information needed to be added later? "Aha!" thought the developer, "I'll just create a table of attributes. Two, actually, one for integer attributes and one for string attributes. Each attribute will have an index, yea, CAPTION shall be 1001, CATEGORY shall be 1002, etc. Images shall be described by sets of (image id, attribute, value) pairs." And the developer saw that it was good, although only two attributes, both captions, were ever added to the database over several years.

Experienced architects will realize that this developer, um, who looks a lot like me, actually, had actually invented a database within a database, and done a fairly stunningly poor job at it, at that, for the following reasons: So, let this be a lesson to y'all. For those interested, the image directory now has columns id (autogenerated index), name (can be transformed to the image filename), caption (description for the directory or image), date (date the photograph was taken, from the imported file date), access (whether the photograph is viewable externally). I'm still fine-tuning a few things, like how to break up photographs into linear sets; I'd rather do it by event than by when I decided to dump the photos from the camera, which is how they are now. I do have two more tables for tags (categories): category (id and name), and category_map (unique image and category pairs, with foreign key references and on delete cascades).

Note to self: use cdrecord -dev=ATA -scanbus to check and cdrecord -dev=ATA:n,n,n -v -speed=n -data cd.iso; in particular, don't use ATAPI or SCSI device with 2.6 kernels; ATA is superior (according to the LKML, although all methods give some sort of bizarre warning).

2007 Corolla CE, silver

News ·Monday October 23, 2006 @ 16:44 EDT (link)

I was working on the previous version of this entry, and Firefox spun itself up to 99% CPU and ate it. Unfortunately I was viewing another tab at the time (nothing complex, either, Firefox just chose to up and die), but fortunately I only had a few bullet points which I hope I managed to reconstruct. Even open source software fails.

Also, this page was down due to some reconstruction work: I moved some older photos from my Sony DSC-F707 into the new format to begin an indexing project which will make indexes publicly viewable. Thanks to my father in law for noticing that the page was down. I'd deleted a symlink that I thought was unused; simple fix, update the generated link pattern.

I fixed a running toilet downstairs on the weekend; looked at a few articles online, determined it was the flapper; I'd shut off the water to it last week and finally got around to picking up a new flapper at the local hardware store; installation was simple. Looks like the old one wore a little around the edges (it also looked a little cheap; instead of a chain it had something reminiscent of a those slotted luggage tag ties) necessitating replacement. I was inordinately pleased with myself when that took care of it; no more running toilet.

We bought a new (2007) Corolla CE from Toyota of Kirkland on Sunday, trading in Honey's old lemony Volkswagen Golf TDI (the D is for diesel). We're glad to be rid of the Golf, and know the Corolla will last/hold its value for a long time. She's very happy.

I tried to scan a DVD cover to add to DVDSpot with my old HP ScanJet 4100C, but it overheated or something, and eventually refused to come on at all, so it's been consigned to the wastebasket and I'm in the market for a new scanner. Ooh... an editor got around to approving my addition, so I can now add Entrapment and put it back in the shelf.

Went to Costco for the first time today, got a phone with three remote units, should cover the place, and we can retire the dying phone in the bedroom (won't hold a charge, even with a new battery). We're basically only on call this week, so I'll stay home and wait for the word (the word on Word?) tomorrow.

The DVD scanning system

News ·Friday October 20, 2006 @ 00:16 EDT (link)

Everyone knows that Rhode Island really isn't a state, it's just a joke perpetuated by New Englanders on the rest of the country for their own amusement.

New England is really one state, it just gets twelve Senatorial votes and has a particularly byzantine internal tax code.
Slashdot comment


Days of major terrorist attacks in New York: 1, ever.

Number of major earthquakes on the West coast: about 5 or 6 in the past century, spread out from California to Alaska.

Percentage of years in which Buffalo, New York has freeze-your-ass-off winters: 100.
Slashdot comment

I drove into Seattle to pick up my scanner this morning before work; no trouble, found the guy's building, parked conveniently (so probably illegally) right outside, called up, and picked up the scanner and receipt. It worked as soon as I plugged it in; I scanned some codes from the book to turn it into a "keyboard wedge" scanner which means it simulates typing in the barcodes it scans and hitting enter. I immediately started scanning my juice cans, books, whatever.

Later on at home I wrote some HTML::Mason perl code so I could scan in DVDs and have it automatically fetch title, cover art, genre, length, etc. from DVDSpot, using WWW::Mechanize to fetch the pages and images. I just added the View All code. Interesting: IE shows the entire tooltip (title attribute), but Firefox cuts it off rather early. The scanner, the DVD list, and feedback for eBay. Only four DVDs couldn't be matched via DVDspot: Entrapment (fullscreen and "Special Edition", but that usually doesn't matter), the Anacondas Collection (but I suspect scanning the two DVDs it contains would work), Transporter 2, and Lara Croft Tomb Raider: The Cradle of Life.

Honey finished the Mario game on her Nintendo DS that we picked up Monday. She also put in her notice at AMEC Earth and Environmental (last day November 2).

Today someone posted this link about Southwestern Baptist Theological Seminary instituting a ban on speaking in tongues to the internal Christians at Microsoft list. I refrained from posting something along the lines of "just exactly how is that bad"? They may be baptists, but at least they know some things are just batcrap insane.

Sacramento, California

News ·Wednesday October 18, 2006 @ 23:10 EDT (link)


Moon

Blazing Trees
We took Alaska Airlines flight 390 from SEA to SMF, arriving on time just after 1900. Bob's wife Jill and son Raven were there to meet us, and he came through the same terminal about half an hour later; it was good to meet Jill and Raven and see Bob again. The GPM (Guest Profile Management) group at Hilton seems to be progressing well, didn't sound like there was anything too exciting in the pipeline, but always plenty of work, and Peter's trying to convert everyone to Java and I hope he fails (nothing personal, Java's just a crummy way to code). Anyway. We drove back to their place in Roseville just to pick up a few things, then headed over to their condo in Truckee* in two vehicles so Jill could head back early. Nice condo, three stories, entryway, our bedroom and Raven's and a bathroom on the first, living quarters on the second, their bedroom on top. It was late enough when we got in that we didn't stay up long.

* Origin of the name: Indian guide was saying "it's okay" in his language so that the white explorers would know he wasn't hostile, but they thought it was his name so they named the town that.


Jill, Raven, Bob
We did some light hiking Saturday morning through nearby woods, to the condo "village", taking the two dogs, Molly and Maggie, with Bob and I taking many photos (which reminds me, need to copy them off; now doing so in background). Later we introduced Bob and Jill to the card game Euchre (and I just learned that the dealer's partner having to go alone on ordering up the dealer is a Canadian variant). I also put together some Lego spaceships with Raven, we watched some Mythbusters episodes, and SpongeBob SquarePants, since we'd never seen the show (it's not bad). Sunday they made us pancakes and Jill and Raven headed home; Bob took us around Lake Tahoe, with, of course, many stops to take photographs (which reminds me, I need to process the photos I just copied from my camera). Many beautiful vantage points decorate the lake, which is mostly in California and partly in Nevada (so this was also our first time into Nevada, whose demarcation is indicated by the upspringing of casinos).

We were all set to be in good time for our flight back at 1945, when tragedy struck: there was (reportedly) a head-on collision on US-50 ahead of us (I can't find a link); some people that ran ahead said there was a five-car pileup, but there was no evidence of that. We were about a mile and a half back from the crash, and there were perhaps another 10 miles of cars coming the other way; it delayed us two hours and caused us to miss our flight (we raced to the airport and got there at 1925, but the ticket agent wouldn't give us tickets; at least, though, she waived the $100 fee to change the ticket to 0700 Monday morning). So we crashed at Bob's, and observation of his TiVo system made me again desire to build a MythTV system, more about which later. We got up at 0500, flight left 0700, paid $66 for parking, and slept a bit and then RAS'd into work.

To catalog DVDs, I'm purchasing a WLS 9000 laser barcode scanner (works for Joel) from eBay (cheaper, and the model has been discontinued, current one is about $350). I'm hoping to pick it up from the seller tomorrow in Seattle, in fact (for speed rather than to save the $10 shipping). When I get it I'll set up an HTML::Mason-powered page to enter barcodes, view our collection, search, etc., using DVD information pulled from DVDspot, a free site that tracks DVDs by UPC and provides relevant information such as title, length, cover art, aspect ratio, etc.


Polarized mountain
Slow day at work today, so I finished Of Mice and Men (Steinbeck; good story, somewhat sad ending) and started on Virtual Light (Gibson). Played a few games of Warcraft, too, but didn't win any; sometimes that's the way it goes. I was doing well as undead but for want of a Necropolis at my expansion, the game was lost.

About the MythTV system: we stopped in to Hard Drives Northwest, where I'd gotten my Acer laptop a year or so ago, and custom ordered the system: AMD 4600+ 2.4 GHz box, 320 Gb HD, 2 Gb RAM, Hauppauge PVR-500 (dual tuner) capture card, nVidia 7900GS TV-out graphic card, no monitor, keyboard, mouse, or OS; should be ready by the end of the week. I hope it's sufficiently quiet, but if not, there's a decent article about replacing fans with heat sinks etc. to quiet it down.

And finally some Fark links: here's one on a letter to a Senator who wants to become an illegal alien for the tax benefits and one on a judge who orders a woman to stop breeding at the state's expense.

Hi Mom, I'm on the TheDailyWTF

News ·Monday October 9, 2006 @ 21:47 EDT (link)

So this morning I was reading The Daily WTF as I often do, a site that exhibits bad code, bad management, or both, and I came across the latest smorgasboard, and lo and behold I saw some perl code referring to a $gst which is Hiltonese for guest, and a record, thus:
P. C. apparently inherited code originally written by an evil genius from deep inside his volcano headquarters.
@{$gst}{keys %{$rec}} = values %{$rec}; # muhahahaha
The code immediately looked familiar, as did the comment. I did some checking, and sure enough, it's part of the User.Notify transaction in the gpm::user::User (sic.) module. Many that read the article didn't think the code itself was worthy of a "WTF?!", even with the comment. In fact the first thing I thought was, as another commenter noted, that it had unnecessary braces, although I might have left them in for clarity. As I recall, that line replaced a lot of messy code, and was (and still is) an eminently compact solution. Yes, I'd do it again—but with less braces: @$gst{keys %$rec} = values %$rec. I dropped Peter a line thanking him for the mention, but our mail server was slow (those twits down in Exchange think it's funny to run their beta code on our production systems periodically), so a few hours later I got a note from Bob about my recent eminence.

This Saturday we went looking for garage sales, since Indian summer is extending so beautifully; I was specifically looking for bookcases, and I wasn't disappointed. For $35 (down from $55.50), we picked up two small (4-shelf) bookcases (one new, $5 and another a little more worn but larger, $7, both down from $10), a small table ($10, down from $20), Honey got an (unused) purse ($5, down from $7), Remember the Titans ($3), and six books: The Blind Assassin ($1), To Kill a Mockingbird, The Red Badge of Courage, Of Mice and Men, A Farewell to Arms ($1; $0.25 each), and Our Dumb Century (a compilation from the Onion, free with the DVD). A pretty decent haul, all-told, and now our remaining stacks of books have homes.

Finished Police Quest 3 yesterday. Not much of an accomplishment since I already beat it back about 10 years. If you're counting, we're at King's Quest V and Space Quest IV (not started yet), and Leisure Suit Larry 2 (not on the boat yet, but won the lottery and trip). I loaned them to BB at work since he wanted to see how well they ran under XP (very well, Vivendi did a good job packaging them, using the open source DOSBox; no configuration required or possible). I watched The Manchurian Candidate—not bad for a black and white, interesting idea, and we saw the new Fast and the Furious, Tokyo Drift; standard but decent action flick, but it froze at 00:00 and we had to skip a track and rewind, so I'll be returning it for a new copy.

Some Joel test scores (all out of 12): Microsoft, 12, athenahealth, 9, Hilton, 10, and a job in I was talking to a guy in Kentucky about on EFnet today, 4 (ouch, but apparently it's up from 2 due to a clueful senior VP). The Joel test is a quick way to assess programming shops.

A few hundred years ago some chaps had the novel idea that people (well, white, male, land-owning people, but it's the principle of the thing!) should be able to choose their leaders, and those people should represent them. It was a good idea, so what went wrong, and why is it now that the richest people, through their corporations and something called "lobbying", primarily because "corruption" and "votebuying" was already taken, now speak for us all? Can this be fixed?

How about direct democracy, with the representative vote as a fallback? We didn't have the technology when this nation was founded, but we surely do now (Diebold nonwithstanding). People would vote using set-top boxes or telephones or The Internet, or boxes at the corner store, or something accessible enough that your dog can do it, because anything more would be discriminatory, but that's another rant for another time. If people aren't interested in an issue, their elected representative's vote is taken instead. If you didn't vote for anyone, you don't get to vote directly, either; wait another 2/4/6 years and remember to take a few minutes out of your busy day this time. So, most of the time the majority cheerfully goes about their business and lets their representative, well, represent, but when something near and dear to them comes up, and they're worried that he'll be lured from the straight and narrow by greenbacks, well, they can step in and press a button. It'd also be nice if a sufficient number of interested people could propose bills, too (I think they can now, but it's really hard for the common man, which makes it effectively impossible).

A variant is to let people vote for whoever they want, and winner doesn't take all; the person you pick gets to case your vote, but only if they're among the top n in the nation do they get an office in Washington.

It has to be in a politician's best interest not to accept lobbying funds. If it's forbidden, it'll happen anyway. If you vote with the people that gave you money, and not the voters, we'll take your vote away and vote ourselves, and now we don't trust you, and maybe we'll pick someone else next election. Do we even need politicians at all? A few, sure; I think the senate level is an important balance, but the house of representatives could be dumped entirely (so now the default is no vote at all, so only those that care to vote on an issue are heard). What can go wrong with that? Mob rule? That mob is the majority, and that mob elects people, so why not let them make the decisions in things that affect them and things they care about? I lean libertarian anyway, and I think people should be responsible for their own, which mainly means my property taxes should be cut by two thirds because I don't have any sprogs in school. (Is school a common good? Perhaps, so cut said taxes by only half; parents should be responsible for their children's upbringing, and if they can't afford it, don't let them loose hooligans on us all, just take the kids away and sterilize them to prevent it happening again.)

<Previous 10 entries>