repak shawahb
ribulose biswahbphatase: enzymin' and two-timin'

^

   

rsw@jfet.org


blogroll

       
Mon, 14 Nov 2011

hack the planetvideo subsystem

Well shit, it's been about 18 months since my last post. Here's one that'll bore you!

In Debian Wheezy, xorg is now version 7.6 and xserver-xorg-core is version 1.11. With this update comes an increment to the xorg input ABI and the xorg video ABI.

That's great unless you're using a binary driver that hasn't been updated to work with the ABI (NVidia legacy, I'm looking at you). In my case, I've got a Quadro FX 3000 in one of my boxes, and it still needs the 173.xx driver. What to do?

My solution is a hack, plain and simple: downgrade xserver-xorg-core to 1.10 without downgrading anything else. However, you have to be a little tricky about this because otherwise apt will complain that your X install is broken. Here's what you do:

  • Grab xserver-xorg-core_1.10.4-1ubuntu5 from the Ubuntu pool (amd64, i386) (local copies: amd64, i386).
  • mkdir /tmp/xserver-xorg-core_1.11.4-really1.10
    dpkg-deb -R xserver-xorg-core_1.10.4-1ubuntu5_*.deb /tmp/xserver-xorg-core_1.11.4-really1.10
    cd /tmp/xserver-xorg-core_1.11.4-really1.10/DEBIAN/
    sed 's/Version: 2:1.10.4-1ubuntu5/Version: 2:1.11.4-really1.10/; s/Provides: xorg-input-abi-12, xorg-video-abi-10/Provides: xorg-input-abi-12, xorg-video-abi-10, xorg-input-abi-13, xorg-video-abi-11/;' control > control.new
    mv control.new control
    cd /tmp
    dpkg-deb --build xserver-xorg-core_1.11.4-really1.10
    dpkg -i xserver-xorg-core_1.11.4-really1.10.deb
    echo xserver-xorg-core hold | dpkg --set-selections
    
  • Install the legacy driver of your choice.
  • Enjoy.

Note that we've held the package at its present version. You will need to manually undo this (or just explicitly apt-get install xserver-xorg-core) if you want to upgrade later.


[ permalink | 2 comments ]

Mon, 03 May 2010

newsflash: narcissism

I haven't posted anything in a while, so I thought I'd give a little update on what's happening in my life:

  • Some of you might have noticed that proton (this machine) melted itself into slag a couple weeks ago. Strangely, that same weekend I lost a drive from the RAID on positron, and then lost a second one after rebuilding the array! Dylan suggested, quite astutely, that the stress of rebuilding the array probably pushed the second drive over the edge on which it'd been teetering. Once I got positron back up, I was able to restore most of phonon, and some things even work better now than they did before—I hope.

  • After some conversations with some of the gentlemen with whom I ran the T.I.G.E.R. Valley 4-man match, I decided I wanted to build myself an AR-15. My new pretty princess (picture perhaps forthcoming) comprises a Noveske SPR 18-inch upper assembly, a DSA ZM4 blemish lower (blemishes are literally invisible), a CMMG lower parts kit, Magpul MOE stock and grip, an AFG, and ladder rail covers (all in Foliage), a Viking Tactics sling (padded slings are for girly-men), and not one but two optics (omg how hsld): a Trijicon Accupoint 3-9x40mm mounted on top and a Primary Arms Micro Dot on a Daniel Defense offset rail. Despite two more inches of barrel and two optics, this gun is still a pound lighter than my favorite little fattie, my SIG 556 with the Leupold CQ/T.

  • I've taken up kickboxing, studying a kind of fusion of Muay Thai and American-style kickboxing at Randy Palmer's South Austin Gym. The classes are awesome, the instructors are friendly and cool, and it's a good workout. It also comes with use of their full gym facilities, so I'm now able to bike to the gym and work and then bike back for some kickboxing in the evening—a tiring but rewarding day. (Today I'm driving on account of errands...)

  • I'm dating a wonderful lady whom, were I given to aliases in the style of our mutual friend Seano, I would call Knightress. It seems likely that some of you will meet her and her amazingly cute 16-month-old daughter at May's wedding. That's right, I'll be fielding a biological timebomb at May's hymeneals. (I love how dirty that word sounds.)

  • After many years of indecision (mostly with respect to what rather than whether), I got a tattoo last Saturday (pictured at right). It's a conformal mapping of the line segment 0.5+jt, t∈[-14.135,37.586] through the Riemann zeta function. The fill is the result of plotting the data as an SVG path with fill-rule="even-odd". The tattoo resides on my left deltoid. My artist was Ben T. Fiedler at Resurrection Tattoo; it's a great shop, and Ben is fucking awesome. Apparently all the fine circular lines make this a pretty difficult tattoo to do well, and Ben did a beautiful job. (Leave it to me to come up with a hard design, right?)

  • I've been tearing through the Culture novels by Iain M. Banks. They are fucking awesome. Banks has written up a nice essay discussing his ideas about the Culture, a galactic civilization that forms the backdrop for these novels. I also recently read City of Bones by Martha Wells thanks to Ellen's generosity in lending it; it was a good read.


[ permalink | 3 comments ]

Fri, 02 Apr 2010

whistlin' XP

The Dell mini-10 I got about a year ago came with a ridiculously broken install of Windows XP SP3 on it. By ridiculously broken, I mean it didn't have the Windows Installer component/service/whatever installed—and you can't install Windows Installer without having it already. Great.

Until now, I've completely ignored it, because I have Ubuntu on the thing and couldn't care less about running Windows on it. However, it bothers me that half the hard drive is dedicated to a broken XP install, and I really don't need a 160Gb hard drive fully dedicated to Linux on my netbook, so it's worth having something there on the off-chance I want to dual boot.

No problem, install XP over again. Yeah, except that the thing has no CD-ROM drive, and I seem to remember that it didn't particularly want to boot from a USB CD-ROM last time I tried (though in retrospect I probably could have made this work; the problem was most likely related to the second bullet below). So, it was time to make an XP install USB key.

This thread on GeekPolice details a decent way of doing it, but it leaves a few things out and lacks a couple steps that were specific to my computer. In particular,

  • You have to use a USB key that is <=4Gb (possibly <=2Gb), because PeToUSB will fail on larger drives. Later versions of PeToUSB, which do work on larger drives, are also not usable because they format NTFS instead, which requires a different bootloader setup than the one this method uses.
  • If you are doing this on something like a Mini-10 and using an older Windows XP CD, the setup process will very likely freeze right after loading all the drivers. The solution is to slipstream SP3 into your XP install before creating the USB drive from it.
  • By default, the boot.ini created on the USB key assumes that you will install into the first partition on the hard drive. If you're not, you will need to edit the "Boot Into GUI" line in boot.ini so that it points to the proper one (i.e., if you have a BIOS partition first like most factory installs, you'll want to point it to partition 2 instead of partition 1).
  • Obviously, afterwards you'll need another flash drive ready so you can go back and reinstall grub in the boot sector.


[ permalink | 0 comments (add one you lazy bastard!) ]

Tue, 23 Mar 2010

texts from last weekend

Last weekend I participated in the Tiger Valley 4 Man Tactical Team Match in Waco along with a bunch of SA Goons comprising three teams. It was, in a word, awesome. Here's my writeup about the stages from the thread.

A bunch of us were talking after the competition and decided that we would do post-mortem analysis of our preparation, strategy, and gear. That post is forthcoming, but first I'm going to paste the text of the stage description sheet, and comment on how they modified it because of the inclement weather.

Weather

Before I do that, I want to point out that the posts in the thread from ASSers thus far do not come close to properly illustrating the depths of misery we suffered on Saturday. Several points during that day were, no shit, among the most acutely unpleasant things I've withstood in my life. I'm pretty sure I have minor nerve damage in my fingertips, since they're still numb now two days later.

When we got in the car to head back to the hotel, it had warmed up from the coldest point in the morning, and my car's thermometer was reading 37F. In the morning it was hanging right around freezing with steady 40kt winds and driving rain. I'm pretty sure when the TX team ran the shotgun stage the rain was freezing on the way down. Beyond all of this, while most of us had some kind of rain gear, no one had anticipated sub-freezing temperatures, so we were completely under-dressed. Combine this with the fact that we were pretty much instantly soaked through and the knee-high water we had to plunge through several times while running and while helping reset the shotgun stage and you begin to get the idea.

Diver Dick was suffering from pretty serious hypothermia by the time we got back to the hotel (I hear Arcmage was, too), Ne Cede Malis probably couldn't feel his feet until some time after dinner, and Totally TWISTED was running the competition with a respectable chest cold. What I'm saying is, Team USA was a bunch of fucking troopers. Thanks for the effort, gents.

Saturday night, most of us hit Wal-Mart and picked up some more gear: wind breakers, shirts, pants, footwear, et cetera. Combined with the fact that it was dry and a good ten degrees warmer (but still pretty damn windy), Sunday went much better.

Stage Descriptions

from the handout. The ordering was different for different teams because they had us running some in parallel; I'm just copying the one on the sheet.

Stage #1 - Crazy Indians

Teams will start on the 200 yard line with unloaded long guns and pistols. On the timer, teams will load and engage target of their choice (1) BOBBER 5 points each hit (1) STOP AND GO 10 points each hit (1) WALKER 15 points each hit (1) RUNNER 20 points each hit, with 15 rounds each target [ed: I believe the word "target" here is a misprint; they meant "with 15 rounds each (shooter)"]. Targets will expose for 90 seconds, starting on the timer. Only 15 rounds will be counted on each of the 4 targets.

Pretty much as described, except for my note above. The most abusive thing about this stage is that the walk to it was a bit over half a mile straight into the wind and rain.

I put pretty much all my shots into (well, at, anyway) the walker, since I was confident I could hit it consistently. The runner would actually come to a stop for short periods of time when reversing direction, at which point you could take an easy 20 points; I did this once or twice.

Stage #2 - Shotgun Jungle Run

On the timer teams will start in the start/stop box located by the tower with unloaded shotguns and 16 rounds of shotgun ammunition. On the timer, shooters will move to the pepper popper station and load (4) rounds each (max) and engage 4 pepper poppers from fault line. Once engaged, shooters will show clear to RO's and move down trail stopping at each fault line station and engaging skeet at each of (3) fault lines, showing clear before moving out of position. Once all 4 arrays of targets are hit, time stops on the last shot. Five minutes max time.

"Skeet" in this case just means clays on steel stands. As I mentioned before, the run from line to line involved several dips in knee deep water and some treacherously sharp underbrush. I found that pulling two shells out of my bandoleer while running was a reasonable strategy for speeding up reloads.

The shotgun that failed Dan in the video Foghorn posted above was actually my IAC Hawk with Scattergun Tech follower and extension, and I ran precisely the same gun with no issue on this stage. As Craptacular said, the issue was with the fourth round not getting seated in the mag tube properly. After the RSO handed me the gun, I was able to clear it with a little poking and prodding, and had no further issues.

Sorry my shotgun failed you, Dan...

Stage #3 - Helicopter Assault

All teams begin stage in the start box. Each shooter will have their rifle and one magazine staged at one of the three barricades and one in the tower. Pistols will be holstered. On the timer one shooter will enter the helicopter and engage the pistol target until hit. After hitting the steel pistol target, the shooter will holster down range and exit the same side. Once that shooter has exited the next shooter moves into the helicopter until all four have engaged the pistol target. Upon exiting the helo, the shooters, either individually or as a team, will move through the obstacles (tunnel/window/wall) to their rifle station, where they will engage a steel target with six rounds each. Once the steel is hit, they will clear, safety and ground their weapons, moving to the tower, entering through the scuttle hole. Once all team members are in the tower, one of the shooters will act as a spotter and retrieve the target notebook and call out the steel box target for the tower shooter to engage. When the shooter hits the designated steel target, the spotter will use binoculars to identify the designated colored paper target in each box then call the paper target in the opened box for the shooter to engage with one round and one round only. Once all three boxes are opened and three shots fired time will stop. Five minutes max time.

Aye, there's the rub: five minutes max time. The helo/pistol part was pretty easy, and the tunnel and window obstacles not really hard, but we were having optics/sighting issues, so the steels at 100ish yards tripped us up. I'm proud of Team USA for coming up with a strategy for getting everyone over the (8-foot) wall and then executing it pretty much perfectly (we didn't get Totally TWISTED over because time ran out, but Ne Cede Malis and I were up and pulling him over when they called time).

This was the first stage where it became apparent to me that part of our strategy should include a time limit per section, i.e., "if you can't get your 6 rifle hits in 30 seconds, take the penalty and move on." I believe if we'd done this properly we would have been able to finish the stage. As it turns out, only two or three of the twelve teams did so.

Stage #4 - Tower Scramble

Four shooters will be on the first floor of the tower. On the timer one or all shooters will engage the land mine with fire for a total of 10 seconds or until the mine explodes. Other targets cannot be engaged for 10 seconds or until mine detonates. Once mine or ten seconds have elapsed, shooters will engage other targets at their discretion. Each target must have two hits to neutralize.

The "land mine" was some tannerite.

This was a pretty nifty stage, and we had a sound strategy, but I made a mental error after reloading and left a couple targets for which I was responsible untouched (and a third with only one hole in it). Lesson here: be careful and methodical, and think think think.

Oh, wait, did I mention the 40kt winds? We were facing straight into them from 15 feet off the ground in the tower during this stage. Keeping the rifle steady was hard work.

Stage #5 - Village Assault

Team will start in start box. On timer two shootrs will move to engage steel targets with rifle fire. Simultaneously, two shooters will move to recover stolen stores, first both going upstairs and engaging pistol targets, then moving back downstairs where they will recover stores and return both shooters and stores to start box.

This one didn't run quite as described (pistol shooters shot from downstairs, not upstairs). The rifle shooters had to run about 100yds before engaging their targets, about 20 steel knockdown targets 100 yards out. Totally TWISTED and I did the run, and my first instinct was to run as fast as I could. Problem was, this meant when I got there I was breathing hard for a few seconds before I could start to shoot accurately. Next time, fast jog on the way out and sprint on the way back.

This stage also highlighted a minor structural problem with the competition: the RSOs weren't 100% in sync on the rules for each stage. The RSO at the start box told the pistol shooters that each person had to shoot each pistol target, whereas the RSO inside the house told them one hit apiece. In the end, it didn't matter---the rifle part took much longer anyhow---but it would have been nicer to be clear on this.

Stage #6 - Zombieland

On timer shooters will move from the start box to shooting positions and engage all targets with head shots for a total of one round in each head. Once all head shots are made on paper, shooters will unload and show clear and move into north 1 bay and engage all steel with pistols with one hit in each head from shooting box. All Zombies must be hit before any team member can move into next bay. All steel targets must be shot with pistol and all paper must be hit with rifle. Rifles must be cleared before moving. Pistols must be holstered. Once all Zombies are hit, shooters must move back to start box.

This was a pretty fun stage, and mercifully the last that we ran on Saturday (PA and TX teams ran odd/even pairs in backwards order on Saturday, so they finished on #5). Two bays with pistol targets and two with rifle, with two rounds on each rifle target and one round in the head on each pistol.

Absolut_Zero and Diver Dick can doubtless talk more about this, but the berm setup for these bays was a bit... inadequate. The range was set up so that people walking to the other stage could end up walking behind the berms where this stage was running, and what I'm guessing were ricochets from the pistol steels were going over the berm and whizzing over the heads of passers-by. Fuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuck.

Stage #7 - Rattle Battle

All shooters will have 3 magazines loaded with 15 rounds each. The shooters will have 40 seconds to move from the 500 yard line to the 400 yard line where one shooter will shoot standing, one kneeling, one prone and one sitting. Shooters will have 1 minute to fire 15 rounds in their position. At the end of one minute, shooters will again have 40 seconds to move to the next firing position and repeat drill shooting on the 400, 300 and 200 yard lines.

They changed this one up a bit because of the high winds on the course (and presumably to get through it faster). They ran three teams simultaneously shooting at their own targets; all shooters were prone; advances to each yardline were untimed; and 90 seconds were given instead of 60.

This was the first stage we ran Sunday, and all three ASS teams ran simultaneously. I think one of the OTF guys got some footage of us doing it. Unfortunately, we were the last group to run it and for us the wind strengthened considerably compared to the first teams to shoot.

Stage #8 - Hostage Rescue

Shooters will start in start box at the entrance to the North bays. On timer, shooters will move and engage all targets from shooting boxes. From the shooting positions in each bay, paper will be engaged with rifle and steel with pistol. Rifles must be cleared before moving. Pistols must be holstered. Once shooters arrive at North bay three, team will split in half, two moving to shoot house bay and two engaging targets in bay three. As shooters move to the shoot house, one will breach the door and one will move into house and engage targets. Once he calls that the building is clear, other team members will help remove downed person to stop box located outside building.

They changed this stage completely, and it was really not much like the above. Instead, the teams carried a 300lb dummy throughout the stage, starting with him in the start box and moving forward to each bay, setting him down and engaging targets in that bay. First two bays were pistol steels, second two bays were rifle paper. The trick on the rifle paper targets was that you had to get a head shot, and you could only have one shot on paper. Two shots on paper or a shot not in the head didn't count. After that, carry dummy back to the beginning of the stage.

The hardest part here was coordinating carrying the dummy. Totally TWISTED and I took turns calling out a cadence, which worked well except that by the end I was just too fucking winded to keep yelling. The dummy's weight also shifted left to right, and there were no good handholds. The lesson I learned here was, if you can bring along something generally useful and really light like some nylon webbing and a carabiner, do so. It's worth carrying around for cases like this where you can substantially improve your ability to carry the fucking dummy.

Also of note: as far as I could tell, Team USA really enjoyed the physically taxing stages. Both this one and the helo stage, despite being ass kickers, were a fun challenge. Of course, it might have been that this was the last stage we ran, and were were just thankful it was over...

Stage #9 - Building Assault

Shooters will be located approximately 100 yards from the first building in the start/stop box. On timer all team members will engage one steel target each for a total of four targets in gray building with rifles. Once all targets are hit shooters will unload and show clear with long guns and move to assault two story building, with two moving to the second floor and two moving into the first floor. Shooters will load only when in position. Shooters going up stairs will engage rifle targets, shooters down stairs will engage steel targets with pistol. When all targets are hit all members will unload and show clear then move back to the start/stop box.

Actually, we were done when clear, they didn't make us run back to the start box.

We were nervous about this stage because Diver Dick's rifle was unscoped and the irons weren't particularly well sighted, and both Totally TWISTED's and Ne Cede Malis's rifles' zeros were questionable. Additionally, they told us that shooters were not allowed to assist each other with the first four rifle targets: each shooter must engage his own. We decided that whoever shot the best on the first part would do the rifle on the second, and the other two would do pistol. It ended up being me and Ne Cede Malis on rifle after the 200 yard dash from the start box to the assault house, and there were about 20 steel knockdown targets placed 100 yards beyond the second house. A couple of them took multiple hits to down because the wind was blowing straight into their back.

This was a favorite stage for us, and we completely owed the first part of it: I killed my steel on the first hit (booyah) and none of us took more than three. The RSO was actually really impressed by us here.

I'm going to split out my general thoughts and other individual experiences that are non-stage-related into another post.


[ permalink | 0 comments (add one you lazy bastard!) ]

Tue, 16 Mar 2010

mixin fixin

"To me, making a tape is like writing a letter—there's a lot of erasing and rethinking and starting again. A good compilation tape, like breaking up, is hard to do. You've got to kick off with a corker, to hold the attention (I started with "Got to Get You Off My Mind", but then realized that she might not get any further than track one, side one if I delivered what she wanted straightaway, so I buried it in the middle of side two), and then you've got to up it a notch, or cool it a notch, and you can't have white music and black music together, unless the white music sounds like black music, and you can't have two tracks by the same artist side by side, unless you've done the whole thing in pairs and...oh, there are loads of rules." - High Fidelity (wr. Nick Hornby)

Here's the problem: no one really uses tapes any more. Hell, no one really wants to use CD-Rs either: you just have to rip them again, or copy MP3s from them to your iPod or whatever. No, today's mixtape medium of choice is a USB stick. The problem with this is that there's just too much freaking room on a USB stick. Giving someone a dozen songs on a USB stick is... flaccid. Be generous, for Chrisake.

For myself, when I run into a problem like this, I just ask: what should any reasonable engineer do? Go up a level in the hierarchy. It's time for a new kind of mixtape: the album mixtape, a mixtape of albums rather than of songs. Now, I'll be the first to admit, the album as an art form seems to be dying: pop artists just aren't good or prolific enough to make an entire album of songs, let alone a cohesive, gestalt kind of thing. At the end of the day, yes, we end up eliminating some good one-hit wonder types from consideration, but hey, if you want that you wouldn't be making an album mixtape anyway.

So I set out to make my first album mixtape. My criteria: around ten albums in length; each album has to be one that I consider a really good album on its own (you don't put crappy songs on mixtapes, so...); has to have some kind of glue to it, be it smooth transitions from album to album or some kind of overarching theme (in the end, I went with the former). Fair game here would be Ari's suggestion from earlier today, viz., an album mixtape of concept albums.

Anyhow, this was my raw list:

  • Polo Club - Greenskeepers
  • Silent Alarm - Bloc Party
  • We Are Not Alone - Breaking Benjamin
  • At War With the Mystics - The Flaming Lips
  • The Soft Bulletin - The Flaming Lips
  • Come to Daddy - Aphex Twin
  • Oracular Spectacular - MGMT
  • Carnavas - Silversun Pickups
  • The Bends - Radiohead
  • Superunknown - Soundgarden
  • Songs for the Deaf - Queens of the Stone Age
  • Surfer Rosa - The Pixies
  • Mer de Noms - A Perfect Circle
  • eMotive - A Perfect Circle
  • Listening Tree - Tim Exile
  • There is Nothing Left to Lose - Foo Fighters
  • Forever Changes - Love
  • Turn on the Bright Lights - Interpol
  • Lateralus - Tool
  • The Mollusk - Ween
  • Close to the Edge - Yes
  • Loveless - My Bloody Valentine

Now, I needed to start striking stuff. First, Carnavas, while decent, isn't by itself an awesome album. Gone. Between AWWTM and Soft Bulletin, there's really no comparison; the former didn't make it. TiNLtL is a fucking great album, but it's kind of been overdone; between that and the QotSA album, I'll take the latter for novelty and musical range. Given the surviving albums, MGMT and Radiohead are starting to stick out as a bit incompatible, so they're out. Breaking Benjamin's a good band, and WANA is their best album easily, but it's also not quite right for this collection. This leaves us with a bit more than a dozen, and then it's just a matter of sorting them. It's at this stage that I ended up eliminating the last to go, viz., Lateralus, Close to the Edge, and Superunknown. All are fucking awesome, they just weren't fitting anywhere in the mix in my mind's ear.

So, the final list—in order! which is important for a mix tape, even of albums:

  • Polo Club - Greenskeepers

    This album starts really strong, and it's quirky and awesome throughout. C'mon, a loungey pop rendition of Slayer's "Raining Blood"?

  • Come to Daddy - Aphex Twin

    Polo Club's bonus track is a kind of creepy song with lyrics including "it puts the lotion on its skin / or it gets the hose again." It segues nicely into "IIIIIIIIIIIIIIIIIIII WANT YOUR SOULLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLL".

  • Songs for the Deaf - Queens of the Stone Age

    While CtD starts all crazy, it ends on some pretty chill strains with "IZ-US", which always felt to me like a bus ride through a bombed out city. After that, a car starting and a faux AM radio asshole deej introducing the next song seems like a good flow.

  • Forever Changes - Love

    This album starts with a folksy guitar riff, which transitions nicely from SftD's "Mosquito Song". This album is fucking great.

  • The Soft Bulletin - The Flaming Lips

    After the acid-washed depression of Forever Changes, which is kind of an end-of-the-60s retrospective on what was ultimately Timothy Leary's failure to expand our minds with copious amounts of acid, the Lips' album about depression and madness, starting with the deceptively upbeat "Race for the Prize", slides right into place. The Lips' constant stream of psychedelic rock homage is a fitting coda for Forever Changes.

  • Silent Alarm - Bloc Party

    Scratchy, guitar-driven rock is precisely what you need to get yourself back out of the dumps of "Waiting for a Superman [Remix]". Yeah, it's already too heavy to lift—and now it's like drinking poison and eating glass. Don't worry, though, this album sweeps you right up and takes you through "Positive Tension" and "This Modern Love" to "Compliments", which closes it out nicely and does a pretty good job of putting us in a darkish, synthy mood—just in time for

  • Listening Tree - Tim Exile

    This dude is relatively unknown; I saw him open for Imogen Heap. He has some good IDM/D&B/&c riffs on here, and the mood starts and stays relatively dark throughout. I'd be hard pressed to claim that this is actually one of my favorite standalone albums, but the combination of novelty (c'mon, everyone knows you get points for stumping your listener) and mood propriety saves it.

  • Loveless - My Bloody Valentine

    You might argue that I should've just skipped straight to this and dropped Tim Exile from the mix entirely. If that's your feeling, call Listening Tree the prologue to this gritty, atmospheric masterpiece. These guys were ridiculously exacting in the sound they were after—and it's just what we want here.

  • Surfer Rosa - The Pixies

    Black Francis is like a kid who just kind of bangs shit together, but the result is an awesome sound. This album is probably most popular for "Where Is My Mind," but the whole thing is just freaking great. I'd go with the extended edition with an extra 9 songs on it; they're worth the listen.

  • eMotive - A Perfect Circle

    What? An album of covers? Well, not quite: "Passive" was actually jointly written by Maynard and Reznor, and it shows in how awesome it is. Beyond that, there is a hauntingly awesome cover of "When The Levee Breaks" on here that by itself makes this album worth having. But at the end of the day, I like it for the "mixtape in a mixtape" aspect of it, all touched and poked by Maynard et al. And it's a damn solid album.

  • The Mollusk - Ween

    This is the best album to have been made in the last 30 years. I doubt any of you agree with that statement, but that just means you're wrong. More to the point, this is my mixtape, so fuck you. We start off with a nice little intro that could transition from anywhere—"Dancing in the Show Tonight"—and immediately jump into the nautical concept of the album. "The Blarney Stone" deserves a place at your St. Patty's Day celebration, and "Ocean Man" is both fun and kid-safe. Really, the reason this album belongs last is because "She Wanted To Leave" is—and has—an amazing ending.

    "So go fetch a bottle of rum, dear friend,
    and fill up my glass to the brim,
    for I'm not the man I used to be,
    now I'm one of them."

Welp, that's my album mixtape. Obviously I went for the continuity aspect over the single-concept one, but I'd submit that both are reasonable, as are many other approaches.

Now it's your turn: make me an album mixtape.


[ permalink | 0 comments (add one you lazy bastard!) ]

Thu, 31 Dec 2009

after week 16

Note that Indy's dive throws things off a little bit in terms of their offensive ranking and the Jets' defensive.

combined                offense                 defense
--------                -------                 -------
IND	100.000        	NO	100.000        	NYJ	100.000        
NO	91.646        	SD	91.830        	BAL	95.749        
SD	86.626        	PHI	91.822        	DAL	93.576        
PHI	79.168        	MIN	91.079        	NE	92.607        
MIN	77.052        	GNB	90.935        	CIN	89.327        
NE	75.478        	IND	89.343        	SF	83.683        
DAL	72.214        	NE	88.670        	DEN	79.886        
CIN	70.993        	NYG	88.260        	IND	78.597        
GNB	70.450        	BAL	83.602        	CAR	72.561        
ARI	69.379        	ARI	82.140        	GNB	71.179        
NYJ	59.995        	HOU	81.507        	ARI	69.409        
BAL	59.619        	ATL	81.006        	ATL	67.241        
ATL	56.848        	MIA	80.614        	PIT	66.943        
HOU	56.649        	PIT	79.647        	WAS	66.417        
DEN	56.223        	TEN	79.430        	SD	66.388        
NYG	55.115        	DAL	78.356        	MIN	65.096        
PIT	54.285        	NYJ	75.029        	PHI	65.050        
SF	49.062        	CIN	74.061        	HOU	65.034        
MIA	47.653        	DEN	73.744        	BUF	63.172        
CAR	46.999        	SF	72.777        	NO	58.624        
TEN	46.016        	CAR	72.133        	CHI	51.396        
JAC	43.203        	CHI	70.997        	MIA	48.238        
CHI	37.677        	JAC	68.853        	CLE	46.066        
SEA	29.773        	SEA	66.965        	OAK	45.890        
BUF	28.588        	KC	65.263        	JAC	45.735        
OAK	25.806        	WAS	63.496        	TB	42.616        
WAS	22.032        	DET	62.662        	SEA	41.756        
CLE	20.077        	TB	62.391        	NYG	41.546        
TB	15.091        	BUF	60.792        	TEN	38.025        
KC	15.030        	CLE	58.612        	STL	31.421        
DET	6.833        	OAK	52.066        	KC	31.306        
STL	0.000        	STL	47.825        	DET	14.704        


[ permalink | 0 comments (add one you lazy bastard!) ]

Tue, 01 Dec 2009

return to power

In case you're wondering,

Combined                Offense                 Defense
---------------         ---------------         ---------------
IND     100.000         NO      100.000         CIN     100.000        
NO      96.530          MIN     90.914          IND     99.404        
MIN     85.854          SD      87.094          BAL     99.154        
SD      73.787          NE      86.272          DAL     97.433        
CIN     71.224          IND     85.064          DEN     96.653        
DAL     70.499          PHI     83.040          NYJ     94.711        
NE      66.515          GNB     82.737          NE      90.838        
ARI     63.300          ATL     79.940          SF      85.635        
DEN     60.719          NYG     79.766          WAS     85.147        
PHI     60.670          HOU     77.754          PIT     84.737        
GNB     60.126          ARI     77.707          MIN     84.661        
BAL     54.662          BAL     77.599          GNB     79.654        
ATL     52.455          MIA     77.559          ARI     77.114        
PIT     52.065          DAL     75.316          NO      75.706        
NYG     51.601          PIT     75.068          SD      74.312        
JAC     47.213          CIN     71.825          PHI     73.979        
NYJ     45.441          TEN     71.411          BUF     68.004        
HOU     43.562          NYJ     70.387          ATL     66.263        
SF      43.479          SF      70.307          HOU     65.208        
MIA     42.014          SEA     68.625          SEA     63.467        
TEN     38.591          CHI     67.272          CAR     61.805        
SEA     32.860          JAC     64.340          NYG     61.136        
CHI     29.897          DEN     64.291          OAK     59.830        
CAR     27.723          CAR     64.230          CHI     59.151        
BUF     27.607          DET     62.873          JAC     56.308        
KC      18.676          KC      61.394          MIA     53.770        
WAS     17.154          TB      60.568          KC      49.372        
OAK     15.546          BUF     60.357          CLE     48.835        
DET     9.777           WAS     56.923          TEN     45.520        
STL     1.305           STL     46.451          STL     44.678        
TB      1.101           CLE     44.257          TB      37.409        
CLE     0.000           OAK     42.602          DET     25.697        


[ permalink | 2 comments ]

Tue, 27 Oct 2009

motivation

Based on management's favorite catchphrase:


[ permalink | 1 comment ]

Sat, 19 Sep 2009

now with squid bits!

Your brain cannot repel entertainment of this magnitude!

TriHs r465 adds a major feature: two player mode!

True to my word, I've added in the "asshole button" for each player: swap your opponent's next piece for a random one. I don't know yet whether it's a useful addition or not, but at the very least simple strategies like denying them the I or giving them a neverending stream of S and Z are probably annoying enough to get you punched in the face.

I've also added shadow mode, even though I think it's totally cheese. By default it's off, but you can activate it with <Ctrl>-s.

The other somewhat major change I made was breaking the drawing module out of Main. This is a logical partitioning of functionality, and probably makes it a bit easier to swap out Cairo for, e.g., OpenGL. Not that I have any plans to do this, but perhaps someone else will be adventurous. (Hippo, I'm looking in your direction.)

Update: r466 corrects the previous loss condition to bring it in line with the official rules.


[ permalink | 0 comments (add one you lazy bastard!) ]

Tue, 15 Sep 2009

damnit Jim

Because Jim is such a nitpicking bastard, and after reading the Wikipedia page, I have an update for you. (Seriously, thanks for the feedback, Jim.)

r460 has the following changes:

  • CW and CCW keybindings (that you might hate, depending on your keyboard; just fix it if you don't like mine)
  • Instant (hard) drop
  • Hard drop on the final "down" press (or just wait for the soft drop as before)
  • Updated scoring system so that it rewards multiples a bit more
  • Changed the color scheme to match The New Tetris.
  • a README file!

As I add minor updates, I'll just post them here. (Major ones will go in their own entry.) Here's a summary of every version I've posted so far:

  • r457 - first release
  • r458 - added Makefile
  • r460 - fix detailed above
  • r461 - fixed an erroneous return value from the keyboard handler that was really harmless
  • r462 - took focus off the Quit button so that space bar doesn't cause the program to exit
  • r465 - see 2009091901
  • r466 - fixed loss condition to bring it in line with the official rules


[ permalink | 2 comments ]

Mon, 14 Sep 2009

the (not) long awaited...

...is here! You'll need Graphics.UI.Gtk (a.k.a. Gtk2Hs), Graphics.Rendering.Cairo (also part of Gtk2Hs, but sometimes distributed separately), and Control.Concurrent (I use an MVar for game state in case I want to do something crazy later).

For now, this is just a normal tetris game. Ctrl-R restarts, Ctrl-Q (or Alt-Q, or the Quit button) quits.

Enjoy.


[ permalink | 5 comments ]

I don't wanna sound like an Egyptian or nothin'

...but I really like libcairo. Over the weekend I wrote a Tetris-like game using cairo via Haskell's Gtk2Hs bindings.

I have one more obvious bug to fix before I release the source, so I'll probably post tonight once it's fixed. After that, I'm going to implement a bastard function, then scale it out to two players and allow each player to choose the other's next piece if they want.

Obviously we'll need a computer opponent mode as well...

(If you're wondering, I'm hovering around 300 lines of code, but that's a bit on the high side because I went for readability over smallest LoC, and I basically wrote a library of game state transforms and collision predicates and didn't use all of them.)


[ permalink | 0 comments (add one you lazy bastard!) ]

Wed, 12 Aug 2009

a little diversion

On the road trip I started working on an implementation of Set. To make it slightly easier to play I've given it a shitty CGI UI. It works well enough, I guess.

Here's the source (in Haskell, of course).

Oh yeah, also, here's the latest tarball of the crap I hacked up at DefCon for keyboard acoustic eavesdropping.


[ permalink | 0 comments (add one you lazy bastard!) ]

Thu, 16 Jul 2009

end of an era; stroker and hoopdisk

The world is a different place.

Last night, after a trip to Fry's, I replaced the last proud vestiges of positron Mk. III, the IBM Ultrastar DNES-318350 U2W SCSI boot drive (a whopping 18.2 Gb!).

Not that it died, or anything; it's still running great, and I'm keeping it as a cold backup of my boot drive. The reason I replaced it is that the SCSI controller was unhappy when I put the computer into ACPI S3 (suspend-to-RAM), or more specifically when the computer resumed operation: it would timeout for almost a minute before doing a bus reset, and I was concerned that this could cause problems with filesystem consistency. Since I'm running XFS, I'm not taking any chances—as far as I can tell, it's somewhat less robust against corruption than EXT3.

The replacement drive is a 500 Gb Hitachi Deskstar, née IBM Deathstar. These days the Hitachis have a better reputation and a 5 year warranty, plus I have my trusty old Ultrastar in case something goes wrong.

Because I don't need much space on the boot partition, I decided to short stroke the drive for a bit better seek performance and thus faster boots. Basically, I made a 30Gb partition at the beginning of the disk, and left the rest to other partitions. Since the partition is small, the average seek time within the partition is much shorter than the average over the whole disk. The rest of the drive I devoted to a swap partition (kind of a waste, but whatever) and—horrors!—a Windows partition.

I haven't run windows on positron since late 1998, which means I broke an even longer standing tradition than my 10 year old SCSI drive by installing it last night. I doubt I'll boot it at all until I start playing some fancy computer game that isn't happy enough on my T61, but it feels really wierd to see Windows booting.

Also, even with a "fully updated" XP SP3 install CD, the install took longer and required more intervention (during and post install when it hadn't gotten my drivers right) than the last Ubuntu install I did (I'm not going to say it was harder than a debian install would be for the average person, but it was certainly more painful for me (in a "guilty conscience" kind of way, really)). I guess most people never install Windows since they just throw away their computer when it becomes too full of viruses, but it's nice to see just how good Ubuntu et al have gotten, especially when reflecting on the computer on whose earliest versions I ran a 1.0.2x kernel. (OK, there is nothing left of that machine but the name, but what's good enough for Theseus is good enough for me.)


[ permalink | 0 comments (add one you lazy bastard!) ]

Sat, 11 Jul 2009

dude I got a dell

Since I'm going to be doing a bunch of travelling this summer, I decided I wanted a really portable computer. Now, netbooks are all the rage, but I abhor low res screens, and most of them are a paltry 1024x600—utter shit—so I couldn't really get one of those, right? Well...

In the last couple months a new generation of netbooks has become available with higher resolution screens (1366x768) at reasonable prices. (There's also the awesome but stupidly expensive Sony Vaio P with the 1600x768 screen in 9", but I'm not shelling out for that.) At first I dismissed these as lacking, but then I considered that my 14" Thinkpad T30 is ugly but tolerable at 1024x768, so a 1366x768 screen in 10" probably would look pretty nice. Moreover, given that the T30 was previously my best option for travel, I'm going strictly upwards in res, portability, battery life, and modern niceities like USB2. Computing power might be a very small step back from a 1.8 GHz P4-M to a 1.6 GHz Atom Z530, but it's probably not more than 20% or so—plenty for a little travel laptop!

Of the available models, I was most intrigued by the Dell Mini-10 and the Acer AO751h, which are more or less identical. The deciding factor was that I was able to get a refurbished Mini-10 for $330, whereas new both are about $450. Refurbs also have the virtue of shipping really quickly.

The only wart in hardware support is that the Intel GMA-500 video driver is kind of a mess and only readily available under Ubuntu (but it does work for 2d and 3d basically right out of the box). Don't get me wrong, Ubuntu is better than anything RedHat based, but certain pieces of its not-Debianness are annoying as shit. At the end of the day, as long as I can run some combination of fvwm and xmonad (depending on my mood) and apt-get install still works, I'm more or less happy.

Anyhow, for $330 it really can't be beat, and I'm very happy with it so far. Of course, I'll post updates as events warrant.


[ permalink | 4 comments ]

Fri, 10 Jul 2009

delay this

My Thinkpad T30 had a longtime issue where it would delay for 30 seconds after loading the network card on every boot. I never bothered to debug it until last night, which really makes no sense because I've now got a T61 and (very soon now) a Dell Mini-10 which together obviate the T30 entirely; nevertheless, I'm loyal to this little machine because it's still pretty great.

The issue started after a dist-upgrade several months (or more) ago, so I was thinking it was either the new kernel or maybe udev. After following a couple dead end leads (mostly regarding problems with the Cisco Aironet 802.11 card), I found a couple discussions about udev trying to rename the network cards but getting confused about the dual nature of the Aironet device (i.e., wlan0 and wmaster) and trying to just wait it out. The solution is simple: rm /etc/udev/rules.d/*persistent-net.rules to clear out stale entries from earlier versions of udev.

Note that since I use ifrename I don't care about having persistent network interface names assigned by udev. If you do, your solution may involve deleting this file and then editing the newly created one after a reboot so that your network cards are assigned the right names.

More discussion on this:

Hopefully someone will find this useful.


[ permalink | 1 comment ]

Mon, 15 Jun 2009

wrap this

rlwrap is awesome. It takes any commandline tool and makes it behave like it uses GNU readline.


[ permalink | 1 comment ]

Sun, 14 Jun 2009

yay!(cd)

or, Yet Another Y-Combinator Derivation

In the comp.lang.ml FAQ one of the questions asks about the Y-combinator; the answer is provided without derivation or explanation of the subtle datatype backflip you need to use. So we'll derive it together here.

We've all seen the standard Y-combinator derivation in Scheme, right? Y is a fixed-point combinator which represents, in effect, the distilled essence of recursion. To sketch Gabriel's argument (in Scheme first), we start with an example recursive function—factorial, of course:

(define fact (lambda (n) (if (= n 0)
                             1
                             (* n (fact (- n 1))))))

> (fact 5)
120
>

Now, what we want to do is define fact without using fact—so what if we change it so that we can pass the function in that we'll call recursively?

(define f (lambda (fz n) (if (= n 0)
                             1
			     (* n (fz fz (- n 1))))))

But what function do we pass in as fz? f itself, of course—it'll happily keep passing itself all the way down to the base case, and what we get out is factorial.

> (f f 5)
120
>

Now, for reasons which will become clear in a second here, we will curry this function, i.e., turn one function of two arguments into two nested functions taking one argument each:

(define ff (lambda (fz) (lambda (n) (if (= n 0)
                                        1
					(* n ((fz fz) (- n 1)))))))
> ((ff ff) 5)
120
>

See? Basically the same thing, but now ff takes one argument—another function—and returns a function that takes a number and returns its factorial. But we're not done yet: we started with (fact n) and now we have ((ff ff) 5). Well, let's start by fixing the recursive call, recognizing that we can hide the (fz fz) inside lambda:

(define ff (lambda (fz) (lambda (n) (if (= n 0)
                                        1
					(* n ((lambda (n) ((fz fz) n)) (- n 1)))))))

Well, that lambda in there is ugly, but we can always just pull it out and then pass it in via a variable:

(define ff (lambda (fz)
                   ((lambda (z)
		            (lambda (n) (if (= n 0)
			                    1
					    (* n (z (- n 1))))))
		    (lambda (n) ((fz fz) n)))))
> ((ff ff) 5)
120
>

It doesn't look like we're getting any better in terms of recovering the original (fact 5) syntax, but I assure you we're getting closer. Recognize that we could recover the original behavior by just defining a new function fff like this:

(define fff (lambda (n) ((ff ff) n)))

Yup, we've seen this trick before. But let's expand out the (ff ff) so we can do just one definition:

(define fff ((lambda (fz)
                     ((lambda (z)
		              (lambda (n) (if (= n 0)
			                      1
					      (* n (z (- n 1))))))
		      (lambda (n) ((fz fz) n))))
             (lambda (fz)
	             ((lambda (z)
		              (lambda (n) (if (= n 0)
			                      1
					      (* n (z (- n 1))))))
		      (lambda (n) ((fz fz) n))))))
> (fff 5)
120
>

And we've done it. Nothing but arithmetic operations and passed-in function names for defining a recursive operation. But we can generalize this by realizing that we can separate out the "guts" of factorial relatively easily:

(define Fguts (lambda (z)
                      (lambda (n) (if (= n 0)
		                      1
				      (* n (z (- n 1)))))))

This is a function that requires us to pass in the recursive continuation, so it is not itself recursive, and even better, now that we've defined it we can pull Fguts out of fff and make it somewhat prettier:

(define f3 ((lambda (fz) (Fguts (lambda (n) ((fz fz) n))))
            (lambda (fz) (Fguts (lambda (n) ((fz fz) n))))))

This is identical to fff, but we've folded the mess into Fguts. Note that we are still using (lambda (n) ((fz fz) n)) just as before—because this was really the first glimmer of the prize. Consider adding one more layer of lambda where we completely generalize by passing in Fguts or any other "guts"-style function:

(define Y (lambda (X)
                  ((lambda (fz) (X (lambda (n) ((fz fz) n))))
		   (lambda (fz) (X (lambda (n) ((fz fz) n)))))))

And we've arrived at the applicative-order Y-combinator. Taa daaaaaaa!

> ((Y Fguts) 5)
120
>

So could we do the same thing in Standard ML? Well... kind of. The type system gets kind of bitchy if we try to follow exactly the same derivation:

- fun f fz 0 = 1
=   | f fz n = (n * (fz fz (n-1)));
stdIn:3.20-3.31 Error: operator is not a function [circularity]
  operator: 'Z
  in expression:
    fz fz

Many ML programmers are unaware that there is a trick to deriving the Y-combinator in the same wy as above; we simply have to define a recursive datatype so that the type checking unification function doesn't complain about circular substitutions:

datatype 'a t = T of 'a t -> 'a

Now we can start at the top (almost; we'll take advantage of SML's automatic currying for now):

fun ff (T fz) 0 = 1
  | ff (T fz) n = (n * (fz (T fz) (n-1)))

- ff (T ff) 5;
val it = 120 : int

The above step is conceptually the most important and difficult in terms of getting Hindley-Milner on our side. ff has type (int -> int) t -> int -> int, meaning that we will need to keep the same fz (T fz) structure throughout the rest of this derivation. Without it, the type inference system will shun our circular definitions.

Continuing the same argument as before, we wrap the ugly fz (T fz) inside a lambda, then pull it out as an argument (with a little acrobatics because we can't take advantage of automatic currying for this step):

fun ff (T fz) 0 = 1
  | ff (T fz) n = (n * ((fn n => (fz (T fz) n)) (n-1)))

(* now pulling the new "inner function" out *)

fun ff (T fz) = ( ( fn z => ( fn 0 => 1
                               | n => (n * (z (n-1)))
		            ) )
                  ( fn n => (fz (T fz) n) ) )

Now we're ready for fff, and ditching the fun syntactic sugar completely.

(* fun fff n = (ff (T ff) n) *)

val fff = ((fn (T fz) => ((fn z => (fn 0 => 1
                                     | n => (n * (z (n-1)))))
                          (fn n => (fz (T fz) n))))
           (T 
	   (fn (T fz) => ((fn z => (fn 0 => 1
                                     | n => (n * (z (n-1)))))
                          (fn n => (fz (T fz) n))))))

We're close now! Time for Fguts (returning for the sake of brevity to automatic currying) and then f3:

fun Fguts z 0 = 1
  | Fguts z n = (n * (z (n - 1)))

val f3 = ((fn (T fz) => (Fguts (fn n => (fz (T fz) n))))
          (T
	  (fn (T fz) => (Fguts (fn n => (fz (T fz) n))))))

So close we can taste it. Abstracting Fguts gives us the Y combinator once more:

val Y = fn X => ((fn (T fz) => (X (fn n => (fz (T fz) n))))
                 (T
		 (fn (T fz) => (X (fn n => (fz (T fz) n))))))

Thus sayeth the interpreter:

val Y = fn : (('a -> 'b) -> 'a -> 'b) -> 'a -> 'b
- (Y Fguts);
val it = fn : int -> int
- (Y Fguts) 5;
val it = 120 : int

By the way, there is a ridiculously simple way to define precisely the same Y-combinator in SML:

fun Y f n = f (Y f) n

(* or, using the built in compose operator "o" *)
fun Y f n = (f o Y) f n

Of course, both of these "cheat" because they're explicitly recursive.


[ permalink | 1 comment ]

Mon, 08 Jun 2009

formalism paradox

In perusing the veritable cornucopia of languages mentioned in my previous post (and others), I've noticed a curious pattern: languages with formal standards are, strangely enough, the ones most likely to have several competing, somewhat incompatible implementations. Languages like Standard ML, Common Lisp, Haskell, Scheme, and C are all standards-based, and yet their respective compiler/interpreter implementations have various incompatibilities.

Conversely, Perl and OCaml, whose featuresets are basically defined by their implementations, have essentially one version each (OCaml has VM versus native compilation, but with common maintainers).

Now, having multiple competing implementations certainly has its upsides, and I'm in no way arguing that it's bad to have a formal standard. It is really weird to consider, though: having a standard naturally encourages multiple implementations, which are almost certainly going to have at least some inconsistencies. By eschewing formal standards and adopting the perl "descriptive" (versus authoritative) documentation model, you virtually guarantee interoperability.


[ permalink | 0 comments (add one you lazy bastard!) ]

postpartum bliss

The chip taped out last Thursday; Friday I did some final cleanup stuff, and now I'm off until Friday. So now I'm just hanging out doing nothing.

Not really nothing. I might go out and buy inFAMOUS at some point—the demo is freaking badass and you should stop reading this and play it immediately—but right now I'm busy.

With what, you'll ask? Learning me some new programming languages. Yeah, plural—Standard ML right now, but I also plan to learn some subset of [Haskell, Erlang, OCaml]. In fact, Joe Armstrong's Programming Erlang is sitting right next to me on the couch because the nice mail lady just dropped it off; first impression is that it's a very decent deal at $25. The forthcoming Erlang Programming book from O'Reilly may also be good, but Armstrong seems to be universally loved, so I'm not going to argue.

The SML book I'm reading right now is one available online, Programming in Standard ML by Robert Harper. It's well written and gets you going. I burned through 10 chapters of it in a couple hours yesterday, and I've been playing around with what I've learned so far to help the syntax set in. So far, my impressions are that type inference is an astoundingly cool idea, and while SML/NJ is friendly inasmuch as it has a REPL, MLton produces code that runs substantially faster. Identical implementations of Rabin-Miller (modulo the differences in library calls) yielded a 3500x (yes, ~3.55 orders of magnitude) difference in speed. I'm pretty sure this implies that my implementation is crap and MLton is optimizing away my painful scribblings. Also with regard to SML/NJ versus MLton, the build sequence for the former is more annoying than for the latter—but that's what makefiles are for, so it's hardly worth mentioning (though the documentation on the build process is admittedly somewhat annoying).

Anyway, also on the menu for SML are UNIX System Programming with Standard ML (free online) and ML for the Working Programmer (can be had for like $12 used on Amazon). The MLton.org wiki's Standard ML page and the SML/NJ literature page also list some more resources, and the SML sourceforge project has good SML basis library documentation.

For OCaml, the official user's manual is free, very complete, and is well regarded. There is also Introduction to Objective Caml by Jason Hickey, which despite being distributed from the Caltech website comes with ominous redistribution warnings. Apparently Practical OCaml by Joshua B. Smith is fucking terrible, so I'm not even bothering to link it. On the other hand, OCaml for Scientists seems well regarded. You can find it in DjVu format from a few pirate websites, but please buy the book if it's any good—or steal it brazenly if it's bad, I guess. Wikipedia lists a few online tutorials in the "External links" section of the OCaml article.

Among Haskell books, the best received seems to be the newish one by O'Reilly, Real World Haskell. You can read the whole thing online and perhaps even get lost in the paragraph-by-paragraph comments. I don't know enough about other resources to make specific recommendations, but the Haskell Wiki's Learning Haskell page has a bunch.

While I'm nerding on programming languages, I gave F# a spin under mono and, impressively, it works. It's pretty trippy to see this pop up in an xterm:

[kwantam@muon ~/Desktop/FSharp-1.9.6.16/bin]$ mono ./fsi.exe 

Microsoft F# Interactive, (c) Microsoft Corporation, All Rights Reserved
F# Version 1.9.6.16, compiling for .NET Framework Version v2.0.50727

Please send bug reports to fsbugs@microsoft.com
For help type #help;;

> _

Brings me back to my old QBasic days. Speaking of which, apparently the FreeBasic project is pretty badass. I say this just in case you're missing nibbles or gorillas.


[ permalink | 3 comments ]

Sat, 30 May 2009

mouserx

My old work mouse, a borrowed-ish MS Intellimouse Explorer 3.0A, had this odd habit of causing X to crash every once in a while. I don't know how this is possible, I only know that it had to do with the scroll wheel and it was very hard to reproduce. (OK, I can't say 100% for sure that it was actually the mouse, but the frequency of crashing with the same usage model dropped to zero abruptly after switching, which is good enough for me until I find a counterexample.) It may be that the thing is dying and somehow exposing a flaw in the xorg evdev driver.

All of that is beside the point. I went out and bought a new mouse, which was a frustratingly difficult task: apparently everyone likes their mouse wheel to feel like rotting fruit, whereas I want positive, LOUD clicks like the nearly unused Logitech bottom-of-the-line optical mouse connected to positron. Aside: I really ought to do something other than VGA mode on a text console considering I spent the $80 on an 8800GT when I rebuilt positron last year, right? Oh well.

So, because I wasn't particularly happy with any of the scroll wheels, but because I did still want a new mouse for work, I bought a $10 GearHead LM6000U laser mouse—if I can't be happy, at least I can be cheap. Laser mice, as far as I can tell, all use much higher resolution imagers than their diode-equipped optical siblings. As a result, when I move my mouse an inch, my optical mouse registers a 400-pixel movement, but the laser sees 1600 pixels go by. This is great, except that my fine motor skills haven't magically improved by 4x just because I spent a Hamilton at Fry's. So just turn down the mouse sensitivity, right? Well, kind of...

X has an interesting way of doing mouse sensitivity. Basically, you say xset m <accel> <thresh>, and when your mouse moves more than thresh pixels in a "short period of time" (probably one or two mouse refresh intervals, but I'm too lazy to find out for sure), the movement rate is multiplied by accel. But what if you want to slow down the pointer instead? Well, accel can be a fraction (yes, you specify a fraction, not a float), and thresh can be set to 1, and then all mouse movements end up slower. But then you lose the whole long distance movement acceleration thing which is really the point of this setting.

Well, now that we know that, we have to look a little more closely at the way X interacts with the mouse driver. In most modern implementations, e.g., default Debian behavior, X gets input device information from hald via the evdev module and sets up your pointers, ignoring any InputDevice sections in xorg.conf. While this is all soft and friendly, evdev is still a bit sparse in terms of configurability.

The other option is to use the traditional mouse module, wherein you can specify mouse resolution and, more importantly, mouse sensitivity. To convince X to do this, however, you first have to tell it to ignore hald-detected devices, like so:

Section "ServerFlags"
        Option          "AllowEmptyInput" "false"
        Option          "AutoAddDevices" "false"
        Option          "AutoEnableDevices" "false"
EndSection

AllowEmptyInput disables the kbd and mouse drivers; AutoAddDevices is the setting that tells X to talk to hald. You don't actually need the third line; I just put it in there out of spite. You can see more about all of these options in the xorg.conf(5) manpage.

Now that X isn't autoconfiguring your mouse and keyboard, you're going to have to specify them manually... but you can handle that. The point for us is to enable the use of the mouse driver in an InputDevice section pointing to our nifty high-resolution mouse so that we can take advantage of that driver's greater configurability:

Section "InputDevice"
	Identifier	"Mouse1"
	Driver		"mouse"
	Option		"Device" "/dev/input/mice"
	Option		"CorePointer"
	Option		"Resolution" "1600"
	Option		"Sensitivity" "0.25"
	Option		"Protocol" "Auto"
	Option		"Emulate3Buttons" "no"
	Option		"ZAxisMapping" "4 5"
EndSection

Now our nifty mouse is running at its maximum resolution, but we're scaling down the movements by a factor of four so it feels the same as the old mouse. This means that there are 4x the number of mapped mouse motion pixels in the same distance across the screen, i.e., you have higher precision control over your mouse pointer by a factor of 4 (no claims here about the practical limit of such things... if you don't think you need this, why did you bother buying a laser mouse?). It also means that we can go back to our friend xset and use the long distance accelerator function.

One caveat (this one bit me!): you cannot have two different pointer devices set at two different sensitivities. Don't complain to me, that's how xorg works. If you have multiple pointing devices, the highest (numerically greatest) sensitivity setting provided will be used, meaning if you have another mouse and have forgotten to set the sensitivity option in its InputDevice section, the above snippet will seem not to work because the default sensitivity is 1.0.

Another comment: for various reasons (basically I want firefox to work correctly), I run gnome-settings-daemon even though I use fvwm2 and abhor desktop environments. If you use a desktop environment like gnome or KDE, it will very likely override your xset settings with the settings from whatever crappy mouse config applet you use. If you don't want this to happen, at least in gnome, you can use gconf-editor to set desktop / gnome / peripherals / mouse / motion_acceleration and desktop / gnome / peripherals / mouse / motion_threshold to -1; this will apparently prevent gnome from screwing with your settings. Then, of course, just call xset at login from your .xsession (or whatever you call it) file. Or just use your crapplet to set it up and get off my lawn.

(Lest you point and laugh at my fvwm2 use: come back and talk to me when your windowmanager's configuration file is written in a turing-complete scripting language.)


[ permalink | 0 comments (add one you lazy bastard!) ]

Sat, 18 Apr 2009

whitespace Nazis must die

How am I the only person who sees how retarded Python is? It is, no lie, the worst programming language ever created.

Seriously. This is a language for which scripts can go from working to completely broken because your text editor converted tabs to spaces or vice-versa. I can email a working script to you and have it arrive broken. Newsflash: no one bothers to preserve whitespace because you can't fucking see it. Differentiating between a tab and seven spaces makes you retarded.

If you program in Python and like it, you are dead to me. If I see you programming in Python, I will kill you. Seriously, if you see me walking down the street while you're programming in Python you best jump right in the nearest coffin, I don't care if it's your birthday and you mama needs the coffin 'cause she's dead.


[ permalink | 8 comments ]

Thu, 11 Dec 2008

shackleds' revenge

Some of you might have read about this travesty of education. As a concerned resident of Austin, I did my part to help correct this injustice by writing the following letter to the AISD ombudsman:

From: "Riad S. Wahby" 
To: ombudsman@austinisd.org
Subject: Austin teacher versus Free Software

Ms. Reeves,

I'm writing to you today on behalf of "Aaron," the student mentioned in
this article:
	http://linuxlock.blogspot.com/2008/12/linux-stop-holding-our-kids-back.html
To summarize: "Karen," Aaron's teacher, found him discussing and
distributing copies of the Linux computer operating system, and
responded by confiscating said copies and making outlandish and
factually incorrect claims concerning computer software in general,
Linux in particular, and the legality of distributing same.  I urge you
to familiarize yourself not only with the details of the article above,
but with the facts concerning the Linux operating system and Free
Software in general:
        http://en.wikipedia.org/wiki/Linux
        http://en.wikipedia.org/wiki/Free_software

Before I continue, I'll inform you of my qualifications and experience
in this matter: I am not at all affiliated with Aaron, Ken Starks, or
HeliOS Solutions; I hold a Master's Degree in Electrical Engineering and
Computer Science from the Massachusetts Institute of Technology; I write
Free Software, both as hobby and at times in the past professionally; I
am an avid Linux user nearly to the exclusion of all Microsoft products,
personally and on behalf of my employer---I am a Senior Integrated
Circuit Designer at Silicon Laboratories here in Austin; and like Aaron
I have experienced oppressive ignorance at the hands of primary-school
"educators."

I shall not bore you by fully deconstructing Karen's claims concerning
computer software.  However, please note the following:
        - Dissemination of Linux and related software at no cost is
          completely legal.  There are many organizations whose purpose
          is to package Linux in a user-friendly way and distribute it
          for free:
                http://www.debian.org
                http://www.ubuntu.org
                http://www.fedoraproject.org
                et alia
        - Most Linux-related software is distributed at no cost under a
          software license called the GNU General Public License, which
          requires distribution of human readable source code along with
          the software. For students who are learning about computers
          and programming, being able to examine and experiment upon the
          code underlying a piece of software is of paramount
          importance; thus, Linux and Free Software in general are
          superlative learning aids.
        - The claim that "no software is free" is so incorrect as to
          verge on frightening.  Linux and related software have become
          pervasive to the point where they are used in everything from
          cellular telephones and computer networking infrastructure to
          video game systems and vending machines---precisely because
          the software and source code are available at no cost.
        - Karen's claim that she "tried Linux during college" is
          dubious; more to the point, it's apparent that if she did so,
          she certainly didn't learn anything from the experience!  As a
          seasoned Linux user, the notion that Linux conveys a
          disadvantage is amusingly parochial (especially in light of
          the wide variety of applications in which it is being used).
          That Karen believes this is the case is evidence that she has
          already been surpassed in computer knowledge by her student---
          and doubtless this gap will only grow as Aaron continues to
          use Linux.

In light of the above, I strongly urge you to intervene on Aaron's
behalf; moreover, if necessary I will happily testify in this matter.
That your teachers are misinformed about matters beyond their ken is
hardly surprising; that they would overstep so far as to discipline a
student, confiscate his property, and engage in calumny as a result is
inexcusable.

Thank you for your time,

-=rsw

Bets on whether I get a response?


[ permalink | 0 comments (add one you lazy bastard!) ]

Tue, 25 Nov 2008

heavy irony

Today I stole a book on ethics.


[ permalink | 2 comments ]

Wed, 05 Nov 2008

democracy rules

I'm not normally a sentimental patriotic type, but spontaneous anthem choruses at 2a following an amazing and cathartic election night make me go all tingly.

This is the first time I've ever embedded a YouTube video here. Slouching Towards Gamorrah, certes.


[ permalink | 0 comments (add one you lazy bastard!) ]

Mon, 15 Sep 2008

ultimate rickroll

Last week, Jeff was out of the office on vacation. Since he'd previously pranked Ion, a few of us plotted to even the score. Stretch suggested that we take the MP3-filled 300Gb external hard drive on his desk and replace all the files with some godawful music. We settled on a slight modification of this plan: for each MP3, I took the first 5 seconds of the real song and pasted it onto the front of one of a selection of songs, including

  • "Ventolin"—Aphex Twin
  • "Heut' Ist Mein Tag"—Blümchen
  • "Rollerskate Date"—Group X
  • "Party 4u (Holy Nite Mix)"—Cranky
  • "Call On Me"—Eric Prydz
  • "Dragostea din tei"—O-zone (a.k.a., the Numa Numa song)
  • "Quit Playing Games With My Heart"—Backstreet Boys
  • "What Is Love?"—Haddaway
  • "The Sign"—Ace of Base
  • a few pieces of Romanian folk music provided by Ion
    and of course...
  • "Never Gonna Give You Up"—Rick Astley

As luck would have it, the first song Jeff chose to play had been stapled to "Never Gonna Give You Up"—a dead giveaway to him that something was very wrong. During testing, our favorite combination was "What A Wonderful World" cutting into "Heut' Ist Mein Tag".

I learned a few things from this. First, most MP3 players will barf if you give them an MP3 whose samplerate (not the bitrate, the samplerate of the decoded PCM stream) changes halfway through. This includes some versions of mpg123, iTunes, Windows Media Player, and WinAmp; mpg321 seems to work fine. Second, the quelcom package is very nice, comprising commandline utilities to cut and paste together MP3s without reencoding (and WAV files, too); if qmp3cut doesn't like an MP3 file, cutmp3 probably will. Third, id3cp (from id3lib) is very useful when you want to replace every mp3 on someone's hard drive without raising too many suspicions. Finally, in retrospect putting 10-20 seconds of the original MP3 rather than 5 would probably have been a little more effective on the confusion front.


[ permalink | 1 comment ]

Mon, 25 Aug 2008

semilunar hiatus

Or is it bilunar?

Anyway... I haven't posted in a while, so here's what's new with me:

  • About a month ago, we got a second dog! He's a Nova Scotia Duck-Tolling Retriever. His official AKC name is KD's Ten Thousand Gauss, but we call him Niko (shortened from Nikola Tesla. Get it? 1 T = 10 kG). Niko and Shockley are best friends, and while Niko will eventually be about twice Shockley's size (45 pounds versus 25), for now they're within a couple pounds of one another. To the right is a picture of him and Shocks eating.
  • I'm turning into a soccer mom.
    Well... not really, but I am trading in my beloved STi for a Volkswagen Jetta SportWagen TDi. Apparently I have a penchant for three letter trim designators ending in "i," but this time it's not a rice rocket—it's a diesel. The wagon (similar in size to an Outback, but a little tubbier looking) will hold the pups nicely, transport too many people to ridiculous parties, and carry three or four kegs in the back, all the while getting 50 MPG.
    I'm picking up the car tomorrow in El Paso (the diesel wagons are ridiculously hard to find because there are only like 2000 of them being made this year, so I've heard) and I expect to get back to Austin on one tank with fuel to spare. Eat that, Prius.


[ permalink | 0 comments (add one you lazy bastard!) ]

Tue, 24 Jun 2008

pix plz kthx

Here, you happy now?


[ permalink | 1 comment ]

Mon, 16 Jun 2008

broken promise of a thousand words

No pictures this time, patient readers. My apologies.

Well! We finally taped out the Thursday before last, so I was off all last week catching up with things around the house. The main event was setting up irrigation for my poor parched yard, which involved lots of soaker hose for all the planters and a few impact sprinklers for the grass. I have things divided into two zones on each of the three spigots placed around my house, and as long as I only run one of the two sprinkler zones at a time the water pressure is sufficient to run soakers on the other two spigots.

This strongly suggests my next project: none of the electronic timers I've found can be programmed for the odd watering schedule around here, viz., Wednesdays and Saturdays, so I'll just have to build my own. Either I'll make individual ones for each sprinkler, or I'll do a little control interface for some solenoid valves and hook it up to positron.

Speaking of positron, that was the other time sink this week: positron Mk. V died a slow lingering death. A couple weeks ago I started getting random lock-ups; figuring it was a heat problem, I reduced the CPU core voltage, and this seemed to work for a while. Unfortunately, it started happening again, and the frequency of occurrences increased to the point where it wouldn't even get through a boot sequence. I swapped video cards, pulled RAM, and even swapped the processor (since I found one for $20ish), to no avail. My last effort was replacing the power supply, since I figured if I had to replace the motherboard I'd need one anyway. Fortunately, Fry's had a sale on the Antec Neopower 500 (for $65, no less!). Unfortunately, the new supply did nothing, but that just meant that I had an excuse to build positron Mk. VI.

Initially I really liked the abit IP35-Pro, but decided that spending that much on a motherboard wasn't worth it unless I was actually planning on running a FSB upwards of 500 MHz. Instead, I ended up getting a DFI LanParty DK P35-T2RS, which is a reasonably priced board that's another favorite for dual and quad core overclocking. Since I'm kind of cheap, I only sprang for an Allendale E4600, which should overclock by 30% with relative ease; I figure by the end of the year quads will be even cheaper and I'll trade up. I also picked up 4 Gb of RAM (a new personal best!) and a reasonably-priced GeForce 8800 GT board (thanks for catching me up on the NVidia chipset line, Wikipedia). For now, Mk. VI will inherit Mk. V's RAID array, and yes, I'm still running Mk. III's 18 Gb IBM Wide Ultra2 SCSI drive as the boot drive. Pretty soon I'll go to a small (30ish Gb) 10k RPM SATA drive for the boot and get four 500 Gb SATAs for a new RAID5 array.

Since I'm talking about positron, I think it's time for a retrospective:

  1. 1994: Pentium 133 MHz, 8 Mb RAM
  2. 1997: Pentium-MMX 233 MHz, 40 Mb RAM
  3. 1999: Dual Pentium II 450 MHz, 512 Mb RAM
  4. 2004: (July) Dual Pentium IIIs at 1 GHz replaced Mk. III's processors
  5. 2004: (October) Athlon64 3200+ (2.2 GHz), 1 Gb RAM
  6. 2008: Core2 Duo E4600 (2.4 GHz), 4 Gb RAM

Just brings a tear to your eye...


[ permalink | 2 comments ]

Fri, 30 May 2008

A-team pipevine dream

Phew, busy! It's tapeout season, so layout is life, and life less than layout.

A couple weeks ago one of the Pipevine Swallowtail caterpillars made his chrysalis on the frame of the porch door. I couldn't resist taking him inside and painstakingly hanging him with dental floss and tape from a piece of cardboard that I perforated and cut to fit in place of a mason jar lid. Well, last night my "hard" work paid off—he emerged! (Yes, "he," I checked the markings.) I know, this thread is worthless without pics. Sue me, my real digital camera wasn't charged and my phone has no flash, so taking pictures of him at night before letting him outside for his wings to dry wasn't happening.

Second... virtual insanity. Okay, not really, but another animal! Well, two, kind of. My younger sister moved to Austin, so she's going to stay at my house at least for the time being. With her came Hank, who is now Shockley's new best friend. I'll get pictures of them playing ASAP.

The other new animal was, erm, unexpected. Katherine and I talked a long time ago (before we got Shocks) about getting another cat, specifically a Turkish Van—a crazy swimming cat! Of course, we decided to get Shockley instead, so that never materialized. Well, a few days ago I was just randomly browsing through the Town Lake Animal Center website and was astounded to see that someone had turned in a Turkish Van!

It turns out that her elderly owner had died and passed the cat to one of her children. Unfortunately, they didn't want the cat because the kids were allergic, so they brought it to the shelter. Well, I figured I'd just go down and see this cat, mostly to meet one in person lest I decide in the future to get one. Upon further inquiry, it turned out that she'd already been there a month with absolutely no interested visitors (it's kitten season; everyone's going for a baby), and she was sad and emaciated. Long story short, she was super friendly and polydactylic (6 toes all around) and I'm a huge sucker. Oh yeah, and TLAC has to kill about 70% of the animals that end up there due to over-crowding.

We decided to name her Inara because the breed is from a region of Turkey that was ruled by the Hittites at one point. Also because we're nerds, Firefly is awesome, and Katherine insisted that Mnemosyne was too clumsy. I'll have more pictures up later; for now, here's her shelter portrait:


[ permalink | 2 comments ]

Wed, 21 May 2008

absentee blog-lord

Tapeout is getting in the way of entertaining you, faithful readers. Apologies.


Best of friends.

Ninja cat hides in bush.

Why do they have to do it on my porch?

I've got a bunch of Pipevine Swallowtail caterpillars in the yard.


[ permalink | 1 comment ]

Wed, 23 Apr 2008

hey Hillary


[ permalink | 0 comments (add one you lazy bastard!) ]

Wed, 16 Apr 2008

T + 12 weeks

See, he can stand up:


"I know kung fu."


"Show me."


pwned


[ permalink | 1 comment ]

Sun, 30 Mar 2008

weekend update

New pictures of the little one:


Loving that pig's ear.

Tired after herding the soccer ball.

What? I ain't sayin' nothin'.


[ permalink | 3 comments ]

Mon, 24 Mar 2008

puppy update

I got the puppy Saturday as planned; he's adorable and very smart. In the end the names came down to Shockley or Tycho, and I decided to go with Shockley despite Katherine's preference for Tycho.

I'm not 100% sure yet, but I'm leaning towards feeding him a raw diet because it's better for him, I have backyard space in which to feed him, and he doesn't seem altogether impressed with dry food at the moment.

Meanwhile, the cats are divided in their reaction. Anya is just pissed that we brought another thing into her territory (especially at me, because I'm the one who carried him into the house). If I go near her she'll grumble audibly, and if I pick her up she'll yowl and even hiss. She's not actually all that scared of him: she walked right up to him and sniffed him before deciding he was the enemy. Dinah, on the other hand, is a bit more affectionate since we brought the dog home, presumably in a bid to keep our attention. Meanwhile, she seems like she's trying to work up the courage to play with him. My guess is they'll eventually be best buds.


[ permalink | 2 comments ]

Thu, 20 Mar 2008

my new best friend

This Saturday I'm finally going to exercise one of the privileges of having a fenced back yard and my own house: I'm getting a puppy! That's him on the right. He's a Pembroke Welsh Corgi and is 8 weeks old today.

Though I'm not 100% on the name yet, I believe the leading candidate is Shockley (especially since this has been my planned dog name for approximately forever). Other possibilities include Ampere, Faraday, Heaviside, and Rayleigh. Also, since he's Welsh, I'm considering Aneirin. Katherine has suggested Thorin (since "Corgi" is believed by some to be derived from the Welsh phrase for "dwarf dog"), Panama (imagine yelling after your dog in your best David Lee Roth impression), and Goro, but I'm not particularly partial to any of them.

Obviously I'll post more pictures as soon as they're available (hopefully ones where he looks less like Tommy Chong after a bender). In the meantime, please cloud the name issue with more suggestions!


[ permalink | 0 comments (add one you lazy bastard!) ]

Sun, 16 Mar 2008

can you back it up? no, no, that box... back it up

After a hard drive crash scare on proton (my colo machine) earlier this week (no data lost, fortunately!), I decided it was time to get serious about regular backups.

I did a bit of research and initially settled on Bacula, but because of licensing issues the Debian packages do not link to OpenSSL. This means that I can't encrypt even the handshaking, let alone the data transfer, between client (proton) and backup server (positron).

After a little more searching, I found BoxBackup, a solution geared towards backing up across a WAN. It uses SSL/TLS authentication: the server has a signing key and clients must generate keys and then have them signed with the server key before they can connect. On top of that, each client has another key it uses to encrypt the data it stores on the backup server so that it's transmitted and stored securely, and clients can be sure that their data is secure even from the backup server's admins.

Setup was a breeze (somewhat simpler than Bacula, though neither is particularly difficult), and while the initial 1.6Gb of data was somewhat unpleasant to transfer over my DSL connection, I expect that the incremental change data should not unduly load my network connection.

Now go set up your backup server already.


[ permalink | 2 comments ]

Wed, 05 Mar 2008

adventures in democracy

or, Precinct Captain Sam(ir)

Yesterday was primary day here in Texas. Most of the time the primary results here are meaningless, but this year the Obama-Hillary race is hot and every delegate counts. Thus, I was determined to do my civic duty and vote. Early in the morning, after dropping Katherine off at her lab, I headed to the middle school near my house that served as the voting place for my precinct. Unfortunately, when I got to the head of the line, it turned out that I was still registered in a different precinct—the one I'd been in last election, a 20+ minute drive away. I determined that I'd go vote around 6:00p and wait around to take part in the caucus at 7:15p (yes, Texas has both).

I arrived at the polling place around 6:30p, well in time to get in the doors (which closed at 7:00p) and vote. Since there were only three voting machines, the people who were in the voting place at 7:00p took until almost 8:00p to finish their voting. After that, we waited for over an hour before they were finished "closing the books," as they told us. Apparently some time during that hour they got scared that the 150 people waiting around to caucus would get rowdy, because 6 police officers showed up—you know, to keep the peace.

Now it got interesting. The dude came out with the caucus folder and asked who the Precinct Chair was. Turns out, there was no precinct chair, at which point it became rule of the unlame—in this case, me.

After appointing a Secretary pro tempore, deputizing a bunch of people to run the sign-in sheets (despite starting almost 2 hours late, we still had over 100 people caucusing!), and getting everyone organized and signed in, I explained the process of the caucus meeting to everyone and (as prescribed by procedure) called for the election of a new Chair and Secretary. Now, whereas I was pro-Obama and our temporary Secretary was pro-Clinton, the roles switched: the Chair was a Clinton campaign volunteer (who turned out to be a nice guy once he calmed down a bit) and the Secretary was pro-Obama. Such was the tone for the rest of the meeting: I worked through the sign-in sheets checking voter ID numbers, counted the votes, and computed the delegates, all with oversight from the Clinton camp. Then a Clinton person independently verified my results with oversight from an Obama supporter.

Things got a little hairy because we couldn't verify the identities of two of the people who had signed in, but I moved successfully that we compute everything with and without those two votes to determine if it made a difference in how the delegates were assigned. If it did not, we resolved, we would simply count them (to avoid having to go through the process of striking votes) and proceed. Luckily, the delegates were the same by both counts.

Finally, we got to the fun part: picking the 8 Obama and 5 Clinton delegates to the county caucus (plus alternates). By then we were down to fewer than 30 people, so it was really just a matter of determining who wanted to be a delegate and then convincing the rest of the people that being an alternate probably wouldn't actually entail any work. At midnight—three hours after starting the whole process—we'd finished.

Who knew that dispensing democracy would remind me so much of running a Random Hall general election? For that matter, who knew Robert's Rules of Order would come in handy when arguing with anyone other than Roger Ford or JHawk?


[ permalink | 1 comment ]

Fri, 29 Feb 2008

white event

Tonight I was playing around with Octave et al studying the frequency content of sequences generated by a 16-bit LFSR as a function of its feedback polynomial. Using a random selection from Philip Koopman's list of feedback polynomials that produce maximal 16-bit LFSRs, I generated the corresponding sequence and plotted its FFT in Octave.

What I found, effectively, is that more terms in the feedback polynomial whitens the sequence rather substantially. For example, a short feedback polynomial (0x8148) produces the following spectrum:

On the other hand, the spectrum for 0xfff6 looks like this:

This suggests that feedback polynomials with lots of terms are better for dithering sequences. The downside of this, of course, is that each term requires an additional XOR. Fortunately, if you use a Galois LFSR the computation delay is independent of the number of terms.

In case you're curious (more or less identical to what's in the Wikipedia article):

#include <stdio.h>
#include <stdint.h>

int main(int argc, char **argv)
{
        uint16_t poly;
        uint16_t lfsr = 1;
        uint16_t period = 0;

        if (argc > 1) { poly = (uint16_t) strtoul(argv[1],NULL,0); }
        else { poly = 0xb400; }


        do {
                lfsr = (lfsr >> 1) ^ (-(lfsr & 1) & poly);
                printf("%d\n",lfsr);
        } while (lfsr != 1);
}

All the data, code, et cetera is also available.


[ permalink | 1 comment ]

Mon, 11 Feb 2008

coincident queuage

Over the weekend I finally took the time to code up a little hack to use my AirLinkTek MediaGate MG-35 as the playback mechanism for MP3q. Basically, my solution was to keep the MP3q server running on positron, but to configure the playwrapper.sh script (for those of you who have jacked around with MP3q in the past, you know what I'm talking about) to connect to the MG-35 and start playback.

The default MG-35 firmware has no means by which to do this, but the kind folks over at the mg-35_firmware_mods Yahoo! group have a hacked version that runs a telnet server. Naturally, I'm lazy and don't want to assemble a MIPS uClinux build toolchain, so I just had to make playwrapper.sh smart enough to connect, make sure that positron was mounted, and start playback via telnet. Simple! (A good bit of information about the mp3 player executable on the MG-35 was also gleaned from the mediagate wiki.)

In case any of you want it, you're welcome to the whole MP3q shebang. I'm not really interested in providing tech support for it, so probably if you write to ask questions I'll just berate you for not "getting it." Or maybe just ignore you. Something like that.

As for strange coincidences: my blog is configured such that it always shows the 25 most recent entries on the front page. As a result, each post bumps an old one off the bottom of the list. Strangely, the post that this one is bumping off the post from a bit over a year ago wherein I mentioned that I had found the MG-35 and was intending to make it work with MP3q. A year of good intentions later, it's quite a surprise I'm not already in hell.


[ permalink | 3 comments ]

Sat, 09 Feb 2008

voyage of rediscovery

So it turns out that my discussion yesterday is (as you would expect) a well known one among those who build digital filters. There is even some terminology to go along with it.

The representation of numbers as plus or minus a fractional power of two is effectively canonical signed digit representation, and while my algorithm doesn't explicitly guarantee canonical results, it does so implicitly by minimizing the (log-wise) error in each step. It should be obvious that CSD is more efficient than two's complement at representing numbers, since digits are ternary (0,+,-) rather than binary.


[ permalink | 0 comments (add one you lazy bastard!) ]

Fri, 08 Feb 2008

multiplication is hard, let's go adding

I was considering this problem the other day, and while it's simple to arrive at a solution, I rather like my particular solution. Thus:

Let's say that you want to implement a digital filter of the form

y[n] = Σm=0..N Am⋅x[n-m] + Σk=1..L Bk⋅y[n-k]

such that Am and Bk are arbitrary precision constants. An example is this 2nd order Chebyshev(1) filter:

y[n] = .0027417⋅x[n] + .0054834⋅x[n-1] + .0027417⋅x[n-2] + 1.90020⋅y[n-1] - .91970⋅y[n-2]

(this filter is the result of the octave cheby1() function). An obvious way of doing this is to build some number of multipliers and adders to compute each term. But it's also possible to do this with only an adder as long as we are allowed to take time to do it. The way we do this is by expressing the constant coefficients as sums of powers of two and then do shifts and addition on the variables. For example,

.75⋅x = x - .25⋅x = x - x>>2

.75 is obviously a contrived example, but in general how do I come up with a representation of a number as such a sum? The simplest way I can think of is to express the number in fixed point binary with a chosen precision and then use the bits as a guide. Consider computing .718282 (the fractional portion of e) to 10 bits.

.718282 ⋅ 210 ≅ 736 = 0b101101111

Since I'm using fixed point 0.10 notation, the nth bit from the left represents 2-n. The bits that are 0 are effectively the missing fractional pieces, so I quickly surmise that

.718282 ≅ (1 - 1/1024) - 1/4 - 1/32

(The reason I start with (1 - 1/1024) is because 1 is not actually representable in 0.10 notation; the largest possible number is 1 - 1/1024. If you ignore this subtraction, you will be accurate to 9 bits instead of 10, so you can always just produce the result you want by computing to one more bit than necessary and dropping this correction factor.)

This works great! Let's do another one, say, π/4.

π/4 ≅ .7853982
.7853982 ⋅ 210 ≅ 804 = 0b1100100100
∴ π/4 ≅ (1 - 1/1024) - 1/8 - 1/16 - 1/64 - 1/128 - 1/512 - 1/1024
= 1 - 1/8 - 1/16 - 1/64 - 1/128 - 1/256

Ugh! That is a helluva lot of subtractions. Why so many? Note that .7853982 is just slightly greater than .75, and thus a better way to approximate this would have been to subtract .25 and then start adding small correction factors instead of sticking strictly to subtraction. What we've uncovered is that our initial algorithm, while yielding correct results, is very suboptimal.

How can we improve it? Well, in order to get to the desired accuracy in the fewest number of steps, clearly we want to take the biggest chunk possible out of the error term. This implies that we want an iterative algorithm that makes a guess, then computes the error, then approximates the error as a power of two and recomputes the approximation:

do {
    error = estimate - number
    eapprox = sign(error) ⋅ 2round(log2(abs(error)))
    estimate = estimate - eapprox
} while ( error > tolerance )

Now, running this algorithm to the same precision on π/4 yields

π/4 ≅ 1 - 1/4 + 1/32 + 1/256

I'm sure there's some way of doing this from the fixed point trickery above as well. Let's call that an exercise for the reader.


[ permalink | 0 comments (add one you lazy bastard!) ]

Wed, 23 Jan 2008

Maxwellian riposte

A couple days ago I gave a talk at the company's technical symposium on a power converter. On one slide, I discussed the classic conundrum of energy loss in charging a capacitor. In my discussion of this, I claimed that even if I have a perfect conductor, the energy loss can be understood as having been radiated away from the circuit because of the (infinite, in the ideal case) speed at which the capacitor E fields change.

A member of the audience came up to me after my talk and told me that he disagreed with my summary of the situation, and that instead one need only postulate a resistance in series with the capacitors the limit of whose value approaches zero. I replied that while that model of the circuit seemed a valid one, it did nothing to invalidate my explanation.

After a bit of thinking, some digging through my old E&M textbooks, and a bit of calculation, I concluded that I was right, and was determined to prove it. Gautham and Ion suggested that I might also check if anyone had published a paper on this question, since it is such an interesting one, and lo and behold, someone had! (see links below)

Here, then, is the response I wrote to the disbelieving fellow:

D___ (and cc: recipients, who had a stake in at least parts of the
conversation):

After our discussion yesterday about the problem of cap-to-cap energy
transfer, I took some time to sort out the problem and have concluded
that, in essence, we are both correct (literally, the full answer is a
linear combination of our claims, though with a rather dissatisfying
caveat).

The best treatment of the subject in the literature I've been able to
find on short notice is from Mita and Boufaida:
	K. Mita and M. Boufaida. "Ideal capacitor circuits and energy
conservation."  American Journal of Physics, Volume 67, Issue 8, pp
737-739, August 1999.

It's not available for free from their website, but I was able to obtain
a copy (along with a note in response and a quick erratum) via the MIT
Libraries:

	http://web.jfet.org/~kwantam/AJP000737.pdf
	http://web.jfet.org/~kwantam/AJP000576.pdf
		(quick erratum; see p. 3 of the PDF)
	http://web.jfet.org/~kwantam/AJP000668.pdf
		(beginning on p. 3 of the PDF, see comment)

In brief, your solution to the problem is one possibility, mine is an
alternative one, and they can be combined into a third.  The solution
comes down to this (and here is the disappointing caveat): in order for
the question to be coherent, there _must_ be a resistance or inductive
reactance in the circuit; no solution is possible otherwise (note,
however, that while there is in fact energy associated with the
acceleration of the electrons from one plate to the other, it does not
serve to explain the energy loss).  So we have two choices:

(1) assume electro- and magnetoquasistatic behavior (viz., no
magnetization or displacement current), in which case we insert an
infinitesimal resistance in series with the capacitors and all energy is
dissipated therein, or

(2) instead insert an inductance into the circuit, in which case the
energy is still fully accounted for, though the resultant waveforms are
dependent on the inductance (i.e., the area of the enclosed loop) and
its Q.

A few comments on what I proposed yesterday, which amounts to the second
case: 

First, a finite inductor Q can be explained either by resistance in the
windings or by flux linkage to "the outside world."  You'll note that
the former is simply a generalized combination of (1) and (2), whereas
the latter admits the possibility of a cap-cap loop with precisely zero
resistance but which is either magnetically coupled to a parasitic loop
or via a lossy medium.  If we combine these ideas, we arrive at a fully
generalized picture of the circuit: two capacitors, a real resistor, and
an ideal transformer with a nonzero magnetizing inductance the secondary
of which is terminated on a resistor.  We can vary any element with
impunity as long as we are careful to keep some nonzero impedance in
series with the capacitors.

Second, in retrospect I was too quick in agreeing to your claim that as
R->0 we can always claim that all of the energy is dissipated therein.
While I made some small noise about quasistatic approximations and
problems with KCL/KVL, I wasn't rigorous enough in my objection.  More
properly stated, it is this: as R->0, we have to be careful about when
KCL and KVL break down.  If R*Ctot becomes very fast compared to l/c (l
= length of the loop, c = speed of light), then the resistor no longer
explains the power dissipation because at this point we can no longer
neglect the inductance associated with the loop (and thus we end up with
the generalized combination of (1) and (2) as stated above).  So the
"discontinuity" at R=0 in my explanation does not exist!  Rather, the
loss from the resistor is simply dominated at smaller scales by the
inductance inherent in the loop.

Finally, I claim that while both of us are correct, my answer is more
satisfying given the way I posed the question, to wit, a perfectly
lossless capacitive circuit unfettered by the restrictions of any
quasistatic approximations.  In this case, we cannot possibly get around
the fact that the loop has some dimension associated with it (else we
wouldn't have capacitors, epsilon*A/l et cetera), but I can easily
appeal to a "perfect conductor" (rho=0, E=0, H=0) without any
restriction on the length of the wires.  In a sense, inductance is just
more fundamental to Maxwell's equations than resistance.

Best regards,

-=rsw

You should note that the last PDF above also has an interesting writeup called "Fourier transform solution to the semi-infinite resistance ladder."


[ permalink | 2 comments ]

Mon, 31 Dec 2007

game, set, match

Here's the final regular season results from the power ranker. I survived Giants stadium, and boy was that a helluva game. Dayum.

combined              	offense               	defense               
NWE	100.000        	NWE	100.000        	IND	100.000        
IND	83.550        	DAL	85.473        	PIT	97.353        
GNB	81.437        	IND	84.660        	TAM	96.165        
DAL	81.025        	GNB	82.420        	NWE	94.391        
JAC	69.791        	JAC	80.393        	SDG	92.502        
SDG	69.429        	SDG	79.457        	PHI	88.679        
PIT	63.344        	CLE	77.873        	GNB	87.723        
SEA	61.201        	ARI	77.778        	TEN	87.319        
NYG	60.911        	PIT	76.488        	SEA	87.184        
TEN	60.020        	HOU	76.419        	WAS	84.996        
CLE	59.480        	SEA	76.101        	JAC	84.807        
WAS	55.929        	NOR	75.835        	MIN	81.655        
TAM	54.309        	NYG	75.481        	DAL	77.984        
PHI	49.444        	CIN	75.443        	KAN	73.306        
MIN	47.786        	MIN	73.434        	BUF	72.526        
HOU	46.584        	DET	71.618        	CHI	70.148        
ARI	44.346        	PHI	69.812        	NYG	69.974        
CHI	40.076        	WAS	69.787        	CAR	69.706        
CIN	39.276        	CHI	69.706        	NYJ	68.327        
NOR	38.512        	TAM	68.463        	SFO	62.909        
DET	38.176        	DEN	68.353        	BAL	60.311        
DEN	37.230        	TEN	64.535        	CLE	57.525        
BUF	37.228        	OAK	61.328        	HOU	57.233        
CAR	36.631        	BAL	60.510        	CIN	54.852        
BAL	24.038        	MIA	59.189        	OAK	54.015        
SFO	19.305        	NYJ	59.021        	NOR	53.580        
NYJ	19.274        	CAR	58.823        	DEN	49.725        
OAK	17.474        	STL	57.956        	ARI	47.336        
KAN	17.081        	ATL	57.815        	ATL	46.960        
ATL	15.204        	BUF	56.295        	MIA	42.650        
STL	8.993        	KAN	52.336        	STL	41.817        
MIA	0.000        	SFO	50.157        	DET	40.666        

passing offense       	passing defense       	rushing offense       	rushing defense       
NWE	100.000        	IND	100.000        	MIN	100.000        	MIN	100.000        
NOR	93.634        	TAM	89.678        	JAC	89.477        	BAL	92.623        
GNB	92.761        	PIT	85.517        	PIT	87.538        	PIT	79.423        
DAL	89.694        	MIA	77.027        	NYG	87.413        	WAS	79.171        
CIN	89.081        	KAN	74.569        	TEN	86.048        	TEN	76.518        
SEA	87.335        	NWE	72.792        	OAK	84.324        	DAL	74.625        
DET	86.265        	DEN	69.777        	SDG	82.984        	PHI	72.964        
ARI	86.077        	OAK	69.680        	PHI	82.648        	JAC	72.647        
HOU	85.537        	JAC	68.830        	DEN	81.762        	IND	72.441        
IND	84.744        	NYJ	68.516        	WAS	79.345        	NYG	70.000        
PHI	83.881        	TEN	67.531        	TAM	79.289        	NWE	69.303        
DEN	81.794        	NYG	63.236        	CAR	78.041        	ARI	66.994        
WAS	79.591        	CAR	58.293        	NWE	77.795        	GNB	63.531        
CLE	79.012        	PHI	57.981        	CLE	76.979        	NOR	62.602        
TAM	77.258        	DAL	57.626        	BUF	76.736        	SEA	61.745        
CHI	77.072        	SDG	57.449        	BAL	76.636        	SDG	60.815        
ATL	76.672        	WAS	57.438        	DAL	75.120        	TAM	55.692        
STL	75.370        	GNB	57.400        	NYJ	73.573        	CAR	53.090        
KAN	74.661        	ARI	56.065        	IND	71.723        	HOU	52.057        
NYG	73.790        	SEA	52.650        	SEA	71.206        	STL	47.466        
JAC	73.105        	CLE	51.635        	GNB	69.803        	SFO	45.150        
PIT	72.632        	BAL	50.674        	HOU	69.385        	CIN	44.750        
BAL	72.257        	STL	48.888        	MIA	69.360        	CHI	42.634        
MIA	72.118        	SFO	47.536        	CIN	68.861        	CLE	42.156        
NYJ	72.025        	ATL	46.576        	ATL	68.459        	BUF	40.356        
SDG	71.901        	CHI	46.003        	STL	68.373        	ATL	35.789        
TEN	69.872        	HOU	42.910        	ARI	67.033        	KAN	33.719        
CAR	66.601        	CIN	41.918        	SFO	66.693        	DET	32.676        
MIN	66.389        	BUF	41.319        	NOR	65.671        	NYJ	28.502        
BUF	65.115        	NOR	33.085        	DET	62.578        	DEN	21.225        
OAK	64.461        	DET	25.667        	CHI	61.161        	OAK	16.510        
SFO	58.124        	MIN	22.427        	KAN	57.096        	MIA	10.130        

...and the strength of schedule computation from this week. Note that since New England has San Francisco's 1st round pick, we would have preferred the Chiefs and the Raiders to win this week, but hey, we'll take #7 overall.

NWE	16- 0	120-136 (.4687)		120-120 (.5)		120-136 (.4687)		120-120 (.5)
IND	13- 3	132-124 (.5156)		129-111 (.5375)		 95-113 (.4567)		 95-100 (.4872)
DAL	13- 3	127-129 (.4961)		124-116 (.5167)		 94-114 (.4519)		 94-101 (.4821)
GNB	13- 3	120-136 (.4687)		117-123 (.4875)		 93-115 (.4471)		 93-102 (.4769)
JAC	11- 5	132-124 (.5156)		127-113 (.5292)		 81- 95 (.4602)		 81- 84 (.4909)
SDG	11- 5	128-128 (.5)		123-117 (.5125)		 76-100 (.4318)		 76- 89 (.4606)
NYG	10- 6	132-124 (.5156)		126-114 (.525)		 60-100 (.375)		 60- 90 (.4)
TEN	10- 6	128-128 (.5)		122-118 (.5083)		 70- 90 (.4375)		 70- 80 (.4667)
PIT	10- 6	116-140 (.4531)		110-130 (.4583)		 65- 95 (.4062)		 65- 85 (.4333)
CLE	10- 6	110-146 (.4297)		104-136 (.4333)		 55-105 (.3437)		 55- 95 (.3667)
SEA	10- 6	106-150 (.4141)		100-140 (.4167)		 60-100 (.375)		 60- 90 (.4)
WAS	 9- 7	142-114 (.5547)		135-105 (.5625)		 66- 78 (.4583)		 66- 69 (.4889)
TAM	 9- 7	120-136 (.4687)		113-127 (.4708)		 59- 85 (.4097)		 59- 76 (.437)
PHI	 8- 8	144-112 (.5625)		136-104 (.5667)		 56- 72 (.4375)		 56- 64 (.4667)
HOU	 8- 8	132-124 (.5156)		124-116 (.5167)		 50- 78 (.3906)		 50- 70 (.4167)
MIN	 8- 8	129-127 (.5039)		121-119 (.5042)		 55- 73 (.4297)		 55- 65 (.4583)
ARI	 8- 8	111-145 (.4336)		103-137 (.4292)		 54- 74 (.4219)		 54- 66 (.45)
CHI	 7- 9	139-117 (.543)		130-110 (.5417)		 56- 56 (.5)		 56- 49 (.5333)
DET	 7- 9	139-117 (.543)		130-110 (.5417)		 46- 66 (.4107)		 46- 59 (.4381)
CAR	 7- 9	134-122 (.5234)		125-115 (.5208)		 46- 66 (.4107)		 46- 59 (.4381)
BUF	 7- 9	132-124 (.5156)		123-117 (.5125)		 31- 81 (.2768)		 31- 74 (.2952)
DEN	 7- 9	132-124 (.5156)		123-117 (.5125)		 47- 65 (.4196)		 47- 58 (.4476)
NOR	 7- 9	123-133 (.4805)		114-126 (.475)		 49- 63 (.4375)		 49- 56 (.4667)
CIN	 7- 9	118-138 (.4609)		109-131 (.4542)		 38- 74 (.3393)		 38- 67 (.3619)
BAL	 5-11	132-124 (.5156)		121-119 (.5042)		 30- 50 (.375)		 30- 45 (.4)
SFO	 5-11	119-137 (.4648)		108-132 (.45)		 35- 45 (.4375)		 35- 40 (.4667)
NYJ	 4-12	134-122 (.5234)		122-118 (.5083)		 16- 48 (.25)		 16- 44 (.2667)
KAN	 4-12	132-124 (.5156)		120-120 (.5)		 30- 34 (.4687)		 30- 30 (.5)
OAK	 4-12	132-124 (.5156)		120-120 (.5)		 22- 42 (.3437)		 22- 38 (.3667)
ATL	 4-12	132-124 (.5156)		120-120 (.5)		 30- 34 (.4687)		 30- 30 (.5)
STL	 3-13	131-125 (.5117)		118-122 (.4917)		 16- 32 (.3333)		 16- 29 (.3556)
MIA	 1-15	138-118 (.5391)		123-117 (.5125)		  5- 11 (.3125)		  5- 10 (.3333)

Merry new year! Have some new code and data (with a bonus, too!)


[ permalink | 0 comments (add one you lazy bastard!) ]

Mon, 24 Dec 2007

an early present

A new feature this week! See strength of schedule analysis, below.

Also, note New England's move up the defensive rank this week. Hot.

combined              	offense               	defense               
NWE	100.000        	NWE	100.000        	TAM	100.000        
IND	88.436        	DAL	88.573        	PIT	99.415        
DAL	86.782        	IND	87.421        	NWE	98.846        
GNB	80.736        	GNB	82.202        	IND	96.740        
JAC	75.168        	JAC	80.541        	SEA	95.912        
SDG	68.132        	SDG	79.225        	JAC	91.079        
PIT	67.855        	CLE	79.111        	SDG	90.187        
SEA	66.095        	PIT	77.233        	GNB	83.067        
NYG	64.852        	NOR	76.276        	PHI	82.850        
TAM	58.828        	ARI	75.498        	TEN	80.681        
TEN	56.789        	MIN	74.401        	MIN	80.314        
CLE	56.718        	SEA	74.212        	DAL	78.042        
WAS	51.723        	CIN	73.818        	WAS	77.546        
MIN	51.586        	HOU	73.814        	NYG	71.733        
PHI	45.870        	NYG	73.599        	CHI	69.183        
HOU	42.632        	DET	73.079        	BUF	68.755        
NOR	42.057        	PHI	70.841        	KAN	68.433        
DET	41.323        	WAS	69.036        	CAR	67.810        
BUF	40.461        	TAM	68.515        	NYJ	62.419        
ARI	40.166        	CHI	68.271        	SFO	58.647        
CHI	36.059        	DEN	68.200        	BAL	57.390        
CIN	35.342        	TEN	65.152        	HOU	56.162        
DEN	33.238        	OAK	61.394        	NOR	54.164        
CAR	32.540        	NYJ	59.973        	CIN	53.944        
SFO	21.324        	BAL	58.677        	OAK	53.517        
BAL	18.968        	MIA	58.019        	CLE	49.687        
KAN	18.287        	STL	57.996        	ATL	49.320        
OAK	18.168        	BUF	57.756        	DEN	45.991        
NYJ	14.726        	CAR	56.270        	STL	45.538        
STL	10.441        	KAN	53.330        	MIA	44.466        
ATL	10.132        	ATL	52.623        	ARI	43.372        
MIA	0.000        	SFO	51.803        	DET	40.314        

passing offense       	passing defense       	rushing offense       	rushing defense       
NWE	100.000        	IND	100.000        	MIN	100.000        	MIN	100.000        
GNB	94.996        	TAM	84.417        	JAC	90.704        	BAL	85.323        
NOR	93.844        	PIT	79.103        	PIT	89.889        	PIT	83.172        
DAL	92.275        	MIA	78.007        	NYG	88.749        	JAC	76.069        
CIN	88.368        	NWE	70.465        	TEN	86.960        	DAL	74.292        
HOU	88.199        	KAN	67.352        	OAK	84.321        	PHI	73.169        
IND	86.852        	NYG	64.381        	PHI	84.133        	TEN	69.497        
DET	86.829        	DEN	63.881        	SDG	83.429        	IND	69.070        
SEA	86.469        	OAK	62.337        	DEN	81.087        	WAS	68.784        
ARI	85.763        	NYJ	62.214        	NWE	79.624        	NWE	64.526        
PHI	83.088        	TEN	60.451        	TAM	79.599        	NYG	62.889        
DEN	82.475        	JAC	60.383        	DAL	78.509        	ARI	62.110        
WAS	80.182        	GNB	54.503        	WAS	78.468        	SEA	60.946        
CLE	80.169        	DAL	53.685        	CAR	75.713        	NOR	59.875        
CHI	78.236        	CAR	53.482        	BUF	75.323        	SDG	59.325        
TAM	78.001        	SDG	53.170        	CLE	74.956        	TAM	58.587        
STL	76.698        	PHI	50.588        	BAL	73.695        	GNB	57.017        
ATL	76.660        	WAS	49.755        	IND	73.615        	CAR	50.521        
KAN	75.773        	SEA	49.577        	NYJ	70.209        	HOU	48.562        
NYJ	73.624        	ARI	49.276        	CIN	69.668        	SFO	46.378        
SDG	73.476        	STL	48.063        	MIA	69.505        	STL	46.176        
NYG	73.432        	ATL	47.029        	STL	69.033        	CIN	40.586        
BAL	73.400        	BAL	46.799        	SEA	68.952        	CHI	40.244        
PIT	72.729        	CHI	45.059        	ATL	67.304        	CLE	40.184        
JAC	72.044        	SFO	41.995        	HOU	66.415        	DET	38.006        
MIA	71.632        	HOU	41.834        	ARI	66.105        	KAN	37.538        
TEN	68.602        	BUF	41.179        	SFO	65.996        	ATL	37.500        
CAR	67.101        	CLE	41.156        	GNB	65.693        	BUF	35.123        
MIN	67.065        	CIN	39.393        	NOR	65.288        	NYJ	22.827        
BUF	66.372        	NOR	26.865        	DET	63.978        	DEN	21.607        
OAK	64.299        	DET	19.035        	CHI	60.565        	OAK	14.164        
SFO	60.235        	MIN	18.631        	KAN	57.978        	MIA	5.477        

...and a standard strength of schedule/victory analysis. In each column, the second ratio is strength of schedule excluding the team in question.

		SoS						SoV
		incl			excl			incl			excl
NWE	15- 0	102-123 (.4533)		102-108 (.4857)		102-123 (.4533)		102-108 (.4857)
IND	13- 2	113-112 (.5022)		111- 99 (.5286)		 88-107 (.4513)		 88- 94 (.4835)
DAL	13- 2	110-115 (.4889)		108-102 (.5143)		 88-107 (.4513)		 88- 94 (.4835)
GNB	12- 3	106-119 (.4711)		103-107 (.4905)		 81- 99 (.45)		 81- 87 (.4821)
JAC	11- 4	117-108 (.52)		113- 97 (.5381)		 75- 90 (.4545)		 75- 79 (.487)
SDG	10- 5	116-109 (.5156)		111- 99 (.5286)		 66- 84 (.44)		 66- 74 (.4714)
NYG	10- 5	108-117 (.48)		103-107 (.4905)		 54- 96 (.36)		 54- 86 (.3857)
PIT	10- 5	102-123 (.4533)		 97-113 (.4619)		 60- 90 (.4)		 60- 80 (.4286)
SEA	10- 5	 94-131 (.4178)		 89-121 (.4238)		 55- 95 (.3667)		 55- 85 (.3929)
TEN	 9- 6	107-118 (.4756)		101-109 (.481)		 52- 83 (.3852)		 52- 74 (.4127)
TAM	 9- 6	106-119 (.4711)		100-110 (.4762)		 53- 82 (.3926)		 53- 73 (.4206)
CLE	 9- 6	 97-128 (.4311)		 91-119 (.4333)		 45- 90 (.3333)		 45- 81 (.3571)
WAS	 8- 7	122-103 (.5422)		115- 95 (.5476)		 49- 71 (.4083)		 49- 63 (.4375)
MIN	 8- 7	114-111 (.5067)		107-103 (.5095)		 51- 69 (.425)		 51- 61 (.4554)
PHI	 7- 8	131- 94 (.5822)		123- 87 (.5857)		 47- 58 (.4476)		 47- 51 (.4796)
DET	 7- 8	118-107 (.5244)		110-100 (.5238)		 43- 62 (.4095)		 43- 55 (.4388)
BUF	 7- 8	115-110 (.5111)		107-103 (.5095)		 26- 79 (.2476)		 26- 72 (.2653)
HOU	 7- 8	114-111 (.5067)		106-104 (.5048)		 37- 68 (.3524)		 37- 61 (.3776)
NOR	 7- 8	108-117 (.48)		100-110 (.4762)		 45- 60 (.4286)		 45- 53 (.4592)
ARI	 7- 8	102-123 (.4533)		 94-116 (.4476)		 48- 57 (.4571)		 48- 50 (.4898)
CHI	 6- 9	126- 99 (.56)		117- 93 (.5571)		 45- 45 (.5)		 45- 39 (.5357)
CAR	 6- 9	119-106 (.5289)		110-100 (.5238)		 35- 55 (.3889)		 35- 49 (.4167)
DEN	 6- 9	118-107 (.5244)		109-101 (.519)		 38- 52 (.4222)		 38- 46 (.4524)
CIN	 6- 9	109-116 (.4844)		100-110 (.4762)		 32- 58 (.3556)		 32- 52 (.381)
SFO	 5-10	103-122 (.4578)		 93-117 (.4429)		 32- 43 (.4267)		 32- 38 (.4571)
KAN	 4-11	119-106 (.5289)		108-102 (.5143)		 28- 32 (.4667)		 28- 28 (.5)
BAL	 4-11	114-111 (.5067)		103-107 (.4905)		 18- 42 (.3)		 18- 38 (.3214)
OAK	 4-11	113-112 (.5022)		102-108 (.4857)		 20- 40 (.3333)		 20- 36 (.3571)
NYJ	 3-12	122-103 (.5422)		110-100 (.5238)		 12- 33 (.2667)		 12- 30 (.2857)
ATL	 3-12	117-108 (.52)		105-105 (.5)		 18- 27 (.4)		 18- 24 (.4286)
STL	 3-12	116-109 (.5156)		104-106 (.4952)		 15- 30 (.3333)		 15- 27 (.3571)
MIA	 1-14	122-103 (.5422)		108-102 (.5143)		  4- 11 (.2667)		  4- 10 (.2857)

New data and code.


[ permalink | 1 comment ]

Tue, 18 Dec 2007

ain't no dollar short

Only a couple weeks until James and I get our asses kicked at Giants stadium. I am psyched.

combined              	offense               	defense               
NWE	100.000        	NWE	100.000        	PIT	100.000        
IND	87.299        	DAL	88.799        	TAM	98.917        
GNB	86.205        	IND	85.330        	IND	92.640        
DAL	84.669        	GNB	83.911        	NWE	91.703        
JAC	73.349        	CLE	79.743        	SEA	87.818        
PIT	65.448        	SDG	78.730        	GNB	86.782        
SDG	65.237        	JAC	76.365        	JAC	85.521        
TAM	63.496        	NOR	75.080        	MIN	82.794        
SEA	62.470        	PIT	73.759        	SDG	81.548        
NYG	61.005        	HOU	73.652        	PHI	81.290        
CLE	60.814        	ARI	73.544        	WAS	75.354        
MIN	55.584        	MIN	73.393        	TEN	73.470        
TEN	54.100        	CIN	73.356        	DAL	73.289        
WAS	47.508        	SEA	72.628        	BUF	72.923        
NOR	46.339        	DET	71.634        	NYG	70.644        
HOU	46.132        	DEN	70.123        	KAN	68.614        
BUF	43.938        	NYG	69.883        	CAR	64.580        
PHI	41.405        	TAM	67.885        	CHI	62.336        
DET	37.476        	PHI	67.054        	OAK	60.647        
DEN	36.905        	TEN	65.821        	HOU	58.949        
ARI	36.097        	WAS	65.813        	NOR	57.761        
CAR	35.233        	CHI	64.574        	BAL	57.481        
CIN	31.052        	OAK	61.390        	NYJ	57.050        
CHI	29.838        	NYJ	60.897        	SFO	55.682        
BAL	21.616        	BAL	59.430        	ATL	49.940        
KAN	20.910        	MIA	58.659        	STL	49.883        
OAK	20.819        	CAR	55.887        	CIN	49.634        
NYJ	16.381        	BUF	55.583        	CLE	47.292        
SFO	16.207        	STL	55.171        	ARI	44.356        
ATL	12.770        	KAN	51.503        	DEN	44.241        
STL	12.403        	ATL	49.489        	MIA	43.679        
MIA	0.000        	SFO	49.243        	DET	38.718        

passing offense       	passing defense       	rushing offense       	rushing defense       
NWE	100.000        	IND	100.000        	MIN	100.000        	MIN	100.000        
GNB	95.962        	PIT	79.472        	JAC	87.437        	BAL	89.156        
NOR	92.751        	TAM	79.025        	PIT	87.391        	PIT	82.301        
DAL	91.153        	MIA	75.957        	TEN	85.633        	JAC	76.632        
CIN	89.608        	NWE	65.958        	OAK	82.962        	DAL	71.052        
DET	88.200        	OAK	63.291        	NYG	81.854        	PHI	70.034        
HOU	86.935        	DEN	62.230        	SDG	81.200        	TEN	66.995        
SEA	86.458        	KAN	61.423        	DEN	80.394        	IND	66.615        
IND	84.065        	TEN	60.448        	PHI	80.142        	WAS	66.328        
DEN	83.042        	NYG	60.094        	TAM	79.670        	NOR	66.022        
ARI	82.598        	NYJ	58.950        	WAS	76.645        	NWE	65.165        
PHI	81.692        	JAC	54.535        	NWE	75.908        	NYG	63.893        
CHI	79.333        	CAR	53.729        	DAL	75.667        	ARI	62.535        
CLE	78.697        	ARI	53.173        	CAR	75.336        	SEA	61.375        
WAS	78.428        	PHI	52.710        	BUF	73.295        	GNB	60.463        
STL	75.108        	ATL	52.535        	CLE	72.630        	SDG	58.627        
NYG	74.559        	DAL	50.783        	BAL	72.073        	TAM	58.546        
TAM	74.097        	WAS	49.806        	IND	71.520        	CAR	54.062        
ATL	73.731        	STL	49.785        	NYJ	69.837        	STL	50.192        
BAL	72.484        	GNB	48.819        	MIA	67.591        	HOU	50.092        
SDG	72.392        	SDG	48.783        	STL	67.535        	BUF	47.262        
KAN	72.163        	SFO	48.261        	CIN	66.045        	CLE	44.210        
NYJ	71.666        	SEA	47.689        	HOU	65.879        	SFO	43.750        
MIA	71.523        	HOU	46.095        	ATL	65.347        	CIN	43.061        
PIT	70.235        	BAL	44.803        	ARI	65.170        	CHI	42.099        
JAC	69.982        	CHI	41.370        	SEA	65.159        	KAN	40.649        
TEN	68.269        	CIN	39.863        	NOR	64.564        	ATL	36.255        
CAR	66.817        	CLE	36.129        	SFO	64.246        	DET	35.746        
BUF	66.186        	BUF	35.502        	GNB	62.915        	DEN	24.334        
MIN	65.263        	NOR	27.030        	DET	60.616        	NYJ	23.580        
OAK	64.555        	DET	24.301        	KAN	57.297        	OAK	20.169        
SFO	60.110        	MIN	20.745        	CHI	56.634        	MIA	11.090        

data


[ permalink | 0 comments (add one you lazy bastard!) ]

Mon, 10 Dec 2007

another one bites the dust

combined              	offense               	defense               
NWE	100.000        	NWE	100.000        	PIT	100.000        
DAL	89.822        	DAL	90.351        	TAM	88.205        
IND	85.988        	IND	84.798        	IND	86.466        
GNB	85.537        	GNB	81.785        	NWE	84.689        
PIT	70.829        	CLE	80.893        	JAC	82.309        
JAC	70.389        	SDG	73.729        	SEA	82.165        
SEA	67.774        	CIN	73.413        	GNB	81.664        
NYG	66.274        	JAC	73.301        	MIN	77.028        
SDG	62.794        	SEA	73.042        	SDG	75.722        
TAM	61.223        	NOR	72.558        	PHI	72.961        
CLE	58.273        	MIN	72.547        	TEN	69.547        
MIN	53.866        	ARI	71.913        	WAS	69.023        
TEN	51.696        	PIT	71.898        	NYG	68.940        
BUF	50.089        	DET	71.234        	KAN	67.700        
WAS	45.102        	HOU	70.902        	DAL	67.049        
DET	44.225        	DEN	70.225        	BUF	65.568        
NOR	44.069        	NYG	70.121        	CHI	59.727        
HOU	43.470        	PHI	67.383        	CAR	57.775        
DEN	42.949        	CHI	64.190        	OAK	57.319        
ARI	42.471        	TAM	63.836        	BAL	56.220        
PHI	38.986        	WAS	63.783        	NOR	55.836        
CIN	37.578        	TEN	63.013        	NYJ	53.734        
CHI	35.956        	NYJ	60.686        	HOU	53.401        
CAR	32.960        	OAK	60.501        	ATL	52.712        
BAL	27.529        	BAL	58.247        	STL	50.915        
KAN	26.223        	BUF	57.292        	SFO	50.896        
OAK	25.203        	MIA	55.988        	CIN	48.519        
NYJ	20.290        	CAR	55.010        	ARI	45.325        
ATL	17.745        	STL	53.917        	DET	45.202        
STL	17.203        	ATL	50.276        	DEN	44.802        
SFO	15.702        	KAN	49.480        	MIA	41.482        
MIA	0.000        	SFO	46.916        	CLE	38.969        

passing offense       	passing defense       	rushing offense       	rushing defense       
NWE	100.000        	IND	100.000        	MIN	100.000        	MIN	100.000        
GNB	94.333        	PIT	84.137        	PIT	87.012        	PIT	97.420        
DAL	89.831        	MIA	79.923        	TEN	83.947        	BAL	91.635        
NOR	89.249        	TAM	74.246        	JAC	82.651        	JAC	80.913        
CIN	87.234        	OAK	69.815        	DEN	81.322        	DAL	77.610        
HOU	85.129        	NWE	67.499        	OAK	81.046        	IND	73.253        
DET	84.721        	DEN	65.722        	NYG	80.249        	WAS	72.682        
SEA	84.116        	TEN	65.327        	PHI	78.770        	NYG	71.549        
IND	80.887        	KAN	64.569        	DAL	76.944        	GNB	69.906        
ARI	80.712        	NYG	61.741        	TAM	76.267        	PHI	69.780        
DEN	80.561        	ARI	60.900        	SDG	74.833        	TEN	69.354        
PHI	80.039        	NYJ	58.959        	NWE	74.644        	NOR	69.348        
CLE	78.268        	CAR	58.873        	CAR	74.187        	NWE	67.656        
CHI	77.909        	SDG	56.363        	WAS	74.142        	ARI	66.728        
WAS	77.033        	PHI	55.166        	BUF	72.550        	SEA	65.010        
ATL	74.958        	STL	53.878        	IND	72.450        	TAM	61.806        
TAM	73.956        	JAC	53.822        	NYJ	69.466        	SDG	55.332        
STL	73.046        	SFO	53.451        	BAL	69.402        	BUF	54.966        
NYG	72.805        	DAL	53.303        	CLE	69.001        	CAR	51.398        
SDG	71.389        	BAL	52.954        	MIA	67.490        	DET	49.282        
BAL	70.222        	SEA	52.131        	CIN	66.587        	CIN	49.059        
NYJ	70.222        	WAS	52.108        	SEA	66.133        	HOU	48.956        
PIT	69.720        	GNB	51.900        	ARI	63.863        	STL	48.484        
KAN	69.341        	HOU	50.959        	ATL	63.632        	CLE	46.298        
JAC	67.223        	ATL	50.854        	GNB	63.538        	CHI	45.395        
MIA	67.033        	CHI	46.767        	STL	63.282        	KAN	44.528        
TEN	65.902        	CIN	43.209        	NOR	62.548        	ATL	43.030        
BUF	65.133        	CLE	36.239        	HOU	62.476        	SFO	42.258        
CAR	63.854        	BUF	35.616        	DET	62.316        	DEN	28.574        
OAK	63.664        	NOR	30.694        	SFO	60.750        	NYJ	25.561        
MIN	61.666        	DET	24.997        	CHI	57.821        	OAK	16.917        
SFO	57.576        	MIN	22.588        	KAN	55.695        	MIA	14.288        

data


[ permalink | 1 comment ]

Mon, 03 Dec 2007

this just in

combined              	offense               	defense               
NWE	100.000        	NWE	100.000        	PIT	100.000        
DAL	90.507        	DAL	90.971        	TAM	86.841        
IND	86.448        	IND	82.543        	IND	82.682        
GNB	85.885        	CLE	81.880        	SEA	78.677        
PIT	76.479        	GNB	80.224        	NWE	77.681        
JAC	68.156        	CIN	74.689        	GNB	72.804        
TAM	67.674        	SDG	73.787        	JAC	72.382        
SEA	66.180        	PIT	73.372        	KAN	70.639        
NYG	64.851        	MIN	72.092        	SDG	70.372        
SDG	60.517        	ARI	72.084        	MIN	68.388        
TEN	56.809        	NYG	71.203        	PHI	66.943        
CLE	56.283        	JAC	70.971        	TEN	65.553        
MIN	50.736        	NOR	70.930        	DAL	64.920        
DET	48.348        	DET	70.273        	WAS	63.523        
ARI	47.582        	SEA	70.053        	NYG	62.167        
BUF	47.534        	HOU	69.722        	BUF	60.480        
PHI	42.574        	PHI	68.743        	BAL	58.636        
WAS	41.242        	DEN	66.839        	CAR	58.477        
NOR	40.163        	TAM	64.947        	OAK	57.653        
CHI	39.734        	CHI	64.663        	CHI	56.484        
HOU	38.863        	TEN	63.109        	ATL	52.720        
DEN	37.945        	WAS	62.939        	NYJ	49.916        
CAR	37.162        	OAK	62.553        	NOR	49.826        
CIN	33.551        	NYJ	61.115        	SFO	48.476        
BAL	29.581        	BAL	57.244        	ARI	47.807        
KAN	29.559        	CAR	57.119        	HOU	46.990        
OAK	27.067        	MIA	55.685        	STL	45.796        
NYJ	21.933        	STL	55.378        	MIA	43.547        
ATL	20.019        	BUF	53.070        	DET	42.019        
STL	19.278        	KAN	50.968        	CIN	41.075        
SFO	17.962        	ATL	50.371        	DEN	36.435        
MIA	0.000        	SFO	48.561        	CLE	34.285        

passing offense       	passing defense       	rushing offense       	rushing defense       
NWE	100.000        	IND	100.000        	MIN	100.000        	MIN	100.000        
GNB	96.504        	PIT	95.037        	PIT	83.290        	PIT	91.622        
DAL	91.780        	MIA	78.431        	TEN	82.026        	BAL	89.325        
CIN	91.160        	TAM	72.183        	OAK	80.749        	DAL	84.505        
NOR	90.006        	OAK	71.421        	NYG	79.076        	JAC	77.856        
HOU	88.265        	KAN	64.672        	JAC	79.019        	NYG	76.510        
DET	86.849        	NWE	64.545        	DAL	76.767        	NWE	74.867        
SEA	85.484        	TEN	63.420        	NWE	76.569        	IND	74.458        
PHI	83.287        	ARI	62.031        	TAM	76.462        	TEN	74.422        
DEN	82.284        	DEN	59.353        	DEN	76.343        	PHI	72.183        
IND	81.793        	CAR	59.140        	PHI	76.110        	WAS	70.761        
ARI	81.132        	NYG	57.082        	WAS	75.995        	GNB	69.724        
CLE	81.129        	NYJ	55.330        	CAR	75.053        	ARI	66.480        
CHI	78.003        	SEA	54.033        	IND	72.616        	NOR	65.643        
WAS	76.690        	WAS	53.429        	SDG	71.598        	SEA	61.743        
STL	76.215        	BAL	53.330        	BAL	67.947        	TAM	60.560        
ATL	75.242        	ATL	53.055        	MIA	67.556        	SDG	58.646        
TAM	75.193        	PHI	52.079        	NYJ	67.375        	CAR	58.085        
NYG	74.480        	DAL	51.102        	BUF	66.797        	STL	57.462        
SDG	73.072        	HOU	49.212        	CLE	65.702        	KAN	53.163        
BAL	72.700        	SDG	48.722        	SEA	65.219        	BUF	53.007        
KAN	72.635        	CHI	48.653        	ATL	64.673        	DET	49.062        
PIT	71.838        	STL	48.649        	ARI	64.130        	CIN	48.721        
NYJ	70.385        	SFO	48.507        	HOU	62.092        	CLE	48.330        
TEN	69.144        	GNB	45.945        	STL	61.921        	ATL	47.817        
MIA	68.023        	JAC	45.386        	CIN	60.957        	HOU	47.091        
CAR	67.313        	CIN	36.178        	SFO	59.643        	SFO	43.156        
JAC	67.216        	CLE	34.718        	NOR	58.761        	CHI	40.173        
BUF	66.815        	BUF	30.923        	GNB	58.724        	NYJ	29.473        
OAK	65.787        	NOR	28.577        	DET	57.450        	MIA	22.825        
MIN	63.250        	DET	20.790        	CHI	57.378        	OAK	22.712        
SFO	57.949        	MIN	16.881        	KAN	57.290        	DEN	22.168        

As always, new data available.


[ permalink | 0 comments (add one you lazy bastard!) ]

Tue, 27 Nov 2007

week 12 power rankings

combined              	offense               	defense               
NWE	100.000        	NWE	100.000        	PIT	100.000        
GNB	91.348        	DAL	88.412        	TAM	91.899        
DAL	87.502        	CLE	81.795        	IND	88.280        
IND	84.628        	IND	81.040        	SEA	83.732        
PIT	73.969        	GNB	78.505        	NWE	83.169        
JAC	73.190        	CIN	75.524        	GNB	80.832        
TAM	63.483        	SDG	72.373        	JAC	77.369        
SEA	61.943        	PIT	72.216        	KAN	74.473        
NYG	61.109        	DET	71.292        	PHI	72.405        
CLE	59.826        	ARI	70.420        	DAL	69.258        
SDG	56.212        	NYG	70.343        	SDG	69.141        
DET	53.405        	NOR	69.105        	TEN	67.777        
TEN	51.866        	JAC	68.731        	MIN	66.864        
PHI	45.569        	HOU	68.715        	WAS	64.877        
MIN	44.916        	MIN	67.397        	NYG	62.132        
WAS	44.288        	SEA	67.305        	BAL	61.330        
CHI	42.684        	PHI	66.754        	BUF	61.091        
NOR	42.629        	DEN	65.643        	OAK	59.663        
BUF	42.103        	CHI	64.351        	CAR	58.424        
HOU	41.820        	WAS	62.505        	CHI	58.162        
DEN	41.362        	TAM	62.311        	ATL	57.281        
ARI	41.339        	TEN	60.242        	SFO	53.944        
CIN	35.116        	OAK	58.616        	NOR	53.142        
KAN	32.132        	NYJ	55.344        	MIA	51.429        
CAR	30.489        	MIA	55.247        	HOU	50.821        
BAL	29.212        	BAL	53.785        	DET	49.637        
ATL	20.853        	CAR	52.832        	NYJ	49.264        
OAK	19.455        	STL	51.484        	ARI	48.391        
SFO	18.359        	BUF	51.433        	STL	45.438        
NYJ	14.322        	KAN	50.767        	CIN	42.556        
STL	11.407        	ATL	48.921        	DEN	41.844        
MIA	0.000        	SFO	47.145        	CLE	36.398        

passing offense       	passing defense       	rushing offense       	rushing defense       
NWE	100.000        	PIT	100.000        	MIN	100.000        	MIN	100.000        
GNB	96.487        	IND	93.316        	JAC	85.481        	PIT	96.717        
CIN	91.415        	MIA	84.576        	PIT	85.406        	BAL	95.448        
NOR	90.787        	OAK	75.990        	TEN	81.914        	DAL	93.793        
DAL	90.072        	TAM	73.950        	OAK	80.568        	NWE	87.075        
HOU	88.177        	NWE	69.465        	DEN	78.990        	TEN	81.780        
DET	86.451        	TEN	66.651        	WAS	78.721        	PHI	80.144        
IND	86.087        	KAN	65.019        	IND	78.708        	NYG	78.202        
SEA	85.777        	DEN	63.093        	NYG	78.328        	NOR	75.435        
CLE	85.650        	ATL	62.469        	DAL	78.313        	WAS	74.430        
ARI	85.513        	NYG	62.175        	NWE	78.269        	GNB	73.229        
PHI	82.731        	WAS	60.301        	PHI	76.086        	JAC	72.006        
DEN	81.538        	CAR	58.975        	TAM	74.879        	IND	68.346        
CHI	76.256        	STL	58.883        	CAR	73.957        	SEA	68.256        
WAS	76.106        	SEA	57.932        	MIA	71.569        	KAN	62.558        
NYG	74.211        	BAL	57.409        	CLE	71.393        	TAM	61.679        
SDG	73.406        	NYJ	55.063        	ARI	69.885        	STL	59.905        
STL	72.539        	HOU	54.241        	SDG	68.897        	SDG	59.488        
TAM	72.128        	DAL	53.992        	BUF	67.623        	ARI	58.839        
KAN	71.935        	ARI	52.965        	NYJ	66.070        	DET	57.621        
ATL	71.133        	GNB	52.897        	BAL	65.125        	CAR	55.492        
JAC	71.051        	PHI	52.479        	ATL	64.762        	BUF	51.748        
PIT	70.923        	SDG	50.298        	SEA	64.094        	HOU	51.553        
BAL	70.810        	CHI	49.698        	STL	62.251        	CIN	48.104        
NYJ	68.722        	SFO	48.823        	CIN	62.240        	ATL	48.050        
MIA	67.803        	CIN	36.637        	SFO	61.845        	SFO	47.780        
CAR	67.090        	JAC	35.728        	HOU	61.282        	CHI	44.510        
TEN	66.896        	NOR	34.315        	DET	61.212        	CLE	38.427        
OAK	63.995        	BUF	31.657        	NOR	59.513        	MIA	23.702        
BUF	63.564        	CLE	24.313        	CHI	59.096        	DEN	23.594        
MIN	61.092        	DET	22.418        	KAN	57.651        	NYJ	20.708        
SFO	57.466        	MIN	16.898        	GNB	57.358        	OAK	16.649        

...or you can have the updated data.


[ permalink | 0 comments (add one you lazy bastard!) ]

Mon, 19 Nov 2007

week 11 power rankings

A couple changes this week: I included individual yards for/against data for each team, and for the off/def rankings (including yardages) I scaled to 100 but did not shift; this lets us say, e.g., "Dallas has been 88% as effective as New England on offense this year."

combined              	offense               	defense               
NWE	100.000        	NWE	100.000        	PIT	100.000        
GNB	89.948        	DAL	88.125        	TAM	98.084        
DAL	87.434        	CLE	81.142        	NWE	96.117        
IND	84.182        	IND	79.909        	IND	94.656        
PIT	72.766        	GNB	76.340        	SEA	92.243        
JAC	70.157        	PIT	75.912        	GNB	91.090        
NYG	67.255        	CIN	73.013        	JAC	82.399        
TAM	59.928        	NYG	70.745        	PHI	81.381        
TEN	58.593        	SDG	70.119        	KAN	80.971        
DET	58.409        	DET	70.034        	TEN	79.308        
SEA	57.878        	HOU	69.357        	NYG	76.497        
CLE	55.563        	ARI	68.045        	BUF	73.135        
SDG	51.351        	NOR	66.693        	SDG	72.200        
PHI	48.928        	SEA	66.328        	BAL	71.062        
WAS	48.751        	JAC	65.021        	MIN	70.304        
ARI	46.286        	PHI	64.132        	WAS	70.139        
HOU	46.240        	WAS	63.292        	DAL	68.006        
BUF	46.227        	TEN	62.536        	CHI	67.927        
DEN	45.535        	MIN	62.337        	CAR	67.404        
MIN	38.415        	DEN	61.969        	ATL	64.935        
CHI	37.000        	TAM	61.747        	OAK	63.164        
KAN	35.755        	CHI	60.339        	SFO	62.156        
NOR	35.554        	MIA	58.782        	ARI	60.005        
CAR	35.457        	NYJ	57.953        	DET	57.693        
BAL	32.697        	OAK	57.090        	NYJ	56.483        
CIN	27.393        	CAR	54.860        	HOU	55.949        
ATL	22.319        	BAL	53.537        	NOR	51.081        
NYJ	15.555        	BUF	50.768        	DEN	50.339        
OAK	12.721        	STL	49.504        	STL	48.884        
STL	12.007        	KAN	49.457        	MIA	48.326        
SFO	11.159        	ATL	48.534        	CIN	39.694        
MIA	0.000        	SFO	40.331        	CLE	36.990        

passing offense       	passing defense       	rushing offense       	rushing defense       
NWE	100.000        	PIT	100.000        	MIN	100.000        	MIN	100.000        
GNB	96.241        	IND	94.924        	PIT	86.426        	BAL	96.494        
DAL	93.756        	MIA	83.989        	JAC	84.965        	PIT	93.830        
NOR	92.684        	TAM	83.613        	TEN	83.786        	DAL	92.796        
CIN	92.543        	NWE	80.982        	NWE	80.100        	TEN	90.362        
HOU	90.274        	OAK	74.020        	NYG	78.808        	NWE	84.442        
DET	89.256        	TEN	72.574        	OAK	77.840        	NYG	81.602        
SEA	88.335        	ATL	65.589        	IND	77.661        	GNB	79.707        
IND	87.520        	SFO	64.217        	PHI	77.610        	WAS	76.569        
CLE	87.004        	KAN	63.288        	WAS	77.385        	PHI	76.410        
ARI	81.640        	CAR	62.229        	DEN	77.383        	JAC	73.582        
DEN	81.265        	DEN	61.431        	CAR	76.143        	IND	71.732        
PHI	80.910        	BAL	60.435        	DAL	74.956        	NOR	71.138        
CHI	78.497        	PHI	60.345        	TAM	74.224        	SEA	70.164        
TAM	76.287        	STL	59.110        	MIA	73.060        	KAN	68.557        
STL	75.044        	NYG	58.184        	ARI	69.101        	TAM	64.435        
NYG	74.965        	ARI	56.332        	SDG	68.567        	ARI	64.271        
WAS	74.907        	HOU	56.049        	CLE	67.940        	STL	59.606        
KAN	74.813        	SEA	54.899        	BUF	66.412        	DET	59.124        
ATL	73.792        	CHI	54.203        	NYJ	66.374        	CAR	58.095        
PIT	73.721        	WAS	52.424        	BAL	65.870        	HOU	57.049        
BAL	73.254        	NYJ	51.089        	SEA	63.124        	SDG	55.997        
SDG	73.207        	GNB	50.571        	ATL	62.646        	BUF	54.536        
NYJ	71.848        	DAL	47.193        	HOU	60.938        	ATL	50.168        
MIA	70.683        	SDG	45.577        	STL	60.199        	SFO	47.750        
JAC	69.687        	CIN	36.339        	SFO	58.075        	CHI	47.443        
CAR	69.304        	BUF	33.569        	CIN	57.624        	CIN	44.197        
TEN	66.335        	JAC	32.741        	DET	57.485        	CLE	36.528        
OAK	65.296        	NOR	27.343        	NOR	56.993        	NYJ	25.887        
BUF	63.750        	DET	24.614        	CHI	56.371        	DEN	24.843        
MIN	63.215        	CLE	20.395        	GNB	55.273        	OAK	21.659        
SFO	55.519        	MIN	11.868        	KAN	52.643        	MIA	20.537        

Updated code for those following along at home.


[ permalink | 0 comments (add one you lazy bastard!) ]

Wed, 14 Nov 2007

moooooooore powerrrrrrrrrr

...rankings.

I was bored and decided to write some code to produce NFL power rankings. Perhaps one of my perenially disappointed faithful readers might care to peruse. (Gautham actually suggested splitting the offensive and defensive power rankings; previously I'd only looked at overall power rankings, which I present below.)

First, a little explanation: these are split offensive and defensive power rankings; in other words, normalized rankings by points for and points against considering the record of the opposition as given by the same ranking. My assumption here is that my rankings should be zero-sum when offense and defense are combined. That is, every (adjusted) point counted towards an offense is counted precisely the same against the opposing defense. The rankings are determined as follows:

  1. Rank offenses and defenses by adding up points for and points against. Normalize to a 0-100 scale, with 100 being most points for and least points against.
  2. Given the above rankings, normalize the points scored: pnorm = pscore * (1 - (offensive_rating - opposing_defensive_rating)). Note that this is zero-sum, since the defensive rating for the team on defense is used against the offensive rating of the team on offense.
  3. Repeat the above, but this time use the rankings returned in the last step. Continue iterating until the algorithm converges on a set of rankings. These are now both perfectly self-consistent (that is, using the rankings to normalize the scores yields exactly the same rankings) and zero-sum (all points counted for a defense are also counted against an offense).

Note that this is very much a discrete feedback system, and as such is subject to instability. To ameliorate this problem, we add a "gain" term as such: pnorm = pscore * (1 - gain*(offensive_rating - opposing_defensive_rating)), where gain < 1. While monitoring the state variables, we experiment with gain until we get close to the largest value that yields a stable system, in this case 1/4. Yes, this is hacky. Bite me, Hippo.

Finally, using approximately the same algorithm (details if you insist), I do the same thing for total performance, taking into account win/loss, point differential, defensive performance, and home field advantage.

So now we have a mess of numbers. What are they? Well, in one sentence, they are normalized offensive and defensive ratings adjusted for relative strength of schedule. How, relative? Well, we look at the difference between the opposing defense and our offense (or vice-versa), not our defense versus the league average or some such. Think of it this way: if the worst team in the league had to play a bunch of mediocre teams, those would be hard-fought wins; conversely, the best team in the league should have little trouble with those same teams. Relative strength of schedule takes this into account.

Here are the numbers:

combined                offense                 defense
NWE	100.000        	NWE	100.000		PIT	100.000
GNB	88.877        	DAL	83.321		SEA	89.290
DAL	85.341        	IND	72.842		TAM	85.638
IND	83.189        	CLE	67.917		NWE	84.650
PIT	80.843        	PIT	64.065		GNB	83.451
JAC	66.579        	GNB	58.556		IND	81.508
TEN	66.043        	DET	54.766		TEN	76.748
DET	64.926        	CIN	54.511		BUF	70.769
NYG	63.272        	NYG	53.387		JAC	66.878
SDG	56.904        	SDG	51.525		KAN	59.164
TAM	53.994        	HOU	49.478		BAL	56.930
SEA	53.481        	NOR	48.993		PHI	56.024
WAS	52.787        	ARI	41.471		SDG	53.106
CLE	51.385        	PHI	40.369		CAR	51.544
BUF	50.391        	JAC	38.916		CHI	51.263
PHI	43.508        	SEA	37.553		MIN	49.928
CHI	41.806        	TEN	36.275		NYG	49.785
HOU	40.583        	WAS	34.992		ATL	49.339
ARI	40.051        	MIA	34.039		WAS	49.119
DEN	39.732        	MIN	32.003		DAL	45.858
NOR	39.701        	CHI	29.441		OAK	43.484
KAN	38.975        	TAM	29.306		ARI	36.620
CAR	38.408        	DEN	28.936		SFO	30.923
BAL	36.894        	NYJ	26.355		DET	23.899
MIN	32.504        	OAK	23.123		NYJ	21.136
CIN	31.475        	CAR	21.660		NOR	19.135
ATL	26.070        	BUF	17.196		HOU	18.749
OAK	15.436        	KAN	15.675		DEN	15.649
SFO	13.263        	ATL	15.238		MIA	7.479
NYJ	6.447        	BAL	14.313		STL	6.008
STL	3.783        	STL	14.185		CIN	5.766
MIA	0.000        	SFO	0.000		CLE	0.000

Sucks for Cleveland that they have a terrible defense, since their offense pretty much rocks...

I'll keep these updated weekly until the end of the season.

Edit: here's the code if you want to play with it yourself.


[ permalink | 0 comments (add one you lazy bastard!) ]

Thu, 06 Sep 2007

for those keeping track

my first post in a long time is kind of an inside joke. sorry.

  • priestlich
  • priestlanchette
  • honkpeen

anyone recall any others?

p.s. if you hafta ask you'll never know


[ permalink | 3 comments ]

Thu, 07 Jun 2007

knock yourself...

...a ProSLIC.

Bust out the cigars, 'cause that's my baby.


[ permalink | 0 comments (add one you lazy bastard!) ]

Sun, 29 Apr 2007

mucho badassery

Tonight I saw Chris Cornell at Stubb's.

Holy shit.

He played songs from Soundgarden, Temple of the Dog, Audioslave, and his solo album, as well as covers of Led Zeppelin, Bob Marley, and—I shit you not—"Billie Jean" by Michael Jackson as a bluesy rock song.

Cornell is a great performer and a seemingly nice guy. He interacted well with the audience and drove the emotional state of the crowd perfectly. In addition, umm, holy shit does he have some pipes. He didn't even get really warmed up until "Hunger Strike" or so, and by the time he hit his stride and belted out "What You Are," I knew we were in for a treat. "Rusty Cage" and "Pretty Noose" later, we were basically going nuts, and they finished off the show with 5 or 6 encores, including "Black Hole Sun" and "Jesus Christ Pose."

His new stuff sounds really cool; can't wait for the album!


[ permalink | 0 comments (add one you lazy bastard!) ]

Thu, 26 Apr 2007

this is the ultimate showdown

Actually, it's the Ultimate Power Converter Showdown of Ultimate Destiny. Unfortunately, you have to be a SiLabs employee to attend.

The accompanying paper is called "The Si3226 dc/dc Converter, or, Groundwork of the Metaphysics of Telephony Power Conversion."

Beamer is hot.


[ permalink | 0 comments (add one you lazy bastard!) ]

Mon, 09 Apr 2007

getting it is easy. filling it with illegal substances and sending it across the border is not.

Gentle(wo)men... behold!

Bear witness to the first stuffed Ignignokt board in all its insanely bright glory. The lit picture does not do it justice—in person, it just hurts.

Now for the Andy Warhol-style panel of differently colored ones...


Edit: have a look at the writeup for a bit more info.


[ permalink | 2 comments ]

Tue, 03 Apr 2007

a sneak peak at the silent rage

Pictures and a proper writeup are forthcoming, but for now, feast your eyes upon the pocket Ignignokt and a writeup of the cheapest dc/dc converter I could design.


[ permalink | 0 comments (add one you lazy bastard!) ]

Sun, 11 Mar 2007

rain, mud, snow, blood

All these make one helluva weekend.

First of all, Woz is in town until Thursday for SXSW. That's very hot! Thanks for visiting me, Woz... now if only other people would do so *ahem*

Right now we're having our first thunderstorm of the year. This is most excellent, as I always enjoy a good thunderstorm. Earlier today, it hadn't quite started storming yet, but it rained a bit before we went out and played football, which made for quite the wet game. I wasn't the greatest of receivers, but on the play involving my glasses, a couple cuts on my nose, Matt's arm, and a relatively well-placed pass, I did manage to hold onto the ball. You know it was a good play when you're bleeding and you still did your job.

So that takes care of the rain and the mud. By snow I actually mean Snow Patrol, whose concert Woz and I attended yesterday. I enjoyed it muchly, as they are very good on their instruments and I knew more of the songs than I expected to. Sweet!

Finally, blood, and in no less than two forms. The first, electronic, courtesy of much Starcraft slaughter—always a fun time—and the second courtesy of our good friend Frank Miller, et al. Yup, I mean 300, which was more or less, umm, awesome. It was everything I wanted it to be, and then some. I'd say it might have a chance of unseating Braveheart, but I'll have to watch it a few more times—y'know, to be sure.

Tomorrow, back to work, my beautiful baby (the new dual ProSLIC, whose functionality and performance are unparalleled; nya nya to those who said I'd never build a power converter—this one's getting sold by the millions, mark my words), and other good shit. And probably Pan's Labyrinth tomorrow night.

Until next time, faithful readers!


[ permalink | 2 comments ]

Thu, 22 Feb 2007

awareness

FlightAware is really cool! You can track by tail number, airport activity, operator (i.e., FedEx, JetBlue, et cetera), or type, or you can just watch the pretty dots dance. If an airplane isn't currently in the air, it'll give you its last filed flight plan instead.

Totally sweet.


[ permalink | 2 comments ]

Sun, 18 Feb 2007

CircuitCon

I spent last week in San Francisco at ISSCC, which was very cool. Among other things, I saw an awesome paper on a hysteretic power amp for ADSL, learned more than I ever wanted to about imaging sensors, and saw bunches of papers on exotic futurey stuff like carbon nanotube and organic transistors.

Also, I got to see some Bay Area buddies, went to a hottt sushi place with Katherine, and picked me up a new suit at Ralph Lauren. Unconscionably hot, unreasonably expensive.

Next up: IVy, the aforementioned IV-18 clock. Also, Ignignokt and Err PCB layouts, one-sided for easy thermal transfer and home etching, and including a very clever 555 circuit for controlling a boost converter as cheaply as humanly possible. More details soon.


[ permalink | 0 comments (add one you lazy bastard!) ]

Mon, 05 Feb 2007

12 hot watts; senor senior; inGrid and IVy

For this year's superbowl party, Cyrus and I decided that we should celebrate the happenings of last week by welcoming our guests with a hoax device. Twelve-and-some watts of pure LED brightness later, the image to the right was born. It's made of 192 LEDs, each of which are conducting about 30mA and dropping about 2.1V, and it is bright as all fuck. You can see it from the entrance to our cul-de-sac.

Also, some good news today: I was promoted to Senior Design Engineer! I guess that means I'm getting old, or something. It also means that I beat my target, Senior Designer by 26, by almost 8 months. Woot.

In yet other news, I'm running a group buy on the inGrid VFD clock for the NEONIXIE Yahoo! group. If you're interested, send me an email (hopefully with "inGrid" or "IV-18" in the subject) in the next couple days and I'll get a board for you, too. Soon to come, "IVy," the through-hole version (inGrid is SMT) based on an Atmel AVR processor and possessed of a crystal timebase and battery backup. This one will be available as a full kit (including case) from Adafruit Industries, Limor's site of kit hotness. Watch here for details.


[ permalink | 1 comment ]

Sun, 28 Jan 2007

down with the tickness

New clock. Again. Hot.

Y'know... clocks... tick? Yeah...

Ari starts at SiLabs tomorrow. Hotness!


[ permalink | 1 comment ]

Wed, 17 Jan 2007

house arrest

...or so it seems. Since Monday, Austin has experienced freezing rain and snow. Since they don't plow or salt here, and because Texas drivers are so bad they even scare me when the roads are slick, I've been trapped in the house with Matt, Lyra, Cyrus, and Katherine for the last few days. Normally this would be fine, except that Mike and Cyrus broke a window fighting over a pizza a couple weekends ago and it still hasn't been fixed, and on top of that on Monday the septic tank started to act up. All in all, not a great time to be trapped in the ManHouse. Of course, Katherine made it more bearable, first by being so kind as to keep me warm despite our lack of window, and second by being understanding with respect to the no showering on account of the septic tank.

Now the weather is getting warmer, I worked out and then showered at the gym, Austin is mostly functional again, Cyrus has tomorrow off, and Austin Books has new comics. With the exception of the fact that Katherine returned to Berkeley today, Thursday is looking good.


[ permalink | 0 comments (add one you lazy bastard!) ]

Fri, 12 Jan 2007

it's like a koala bear crapped a rainbow in my brain

Should my physical self feel created from untold millions of bubbles?

No... but I do feel taped out. Bitches. Let the comp week begin (at least, after tomorrow, when I have to sit around and babysit the PG).


[ permalink | 2 comments ]

Mon, 08 Jan 2007

medialicious hotness

For Christmas I bought myself an AL Tech MG-35, basically a USB 3.5" hard drive enclosure that is also a media player. It's got coax and optical digital out; component, composite, and S-video; and is equipped with an Ethernet interface. It doesn't come with a hard drive (which was great for me, since I had an extra 160 Gb drive lying around), but in default trim it can mount NFS volumes and play all kinds of audio and video formats. The best part, though, is that it runs Linux and its firmware is therefore GPLed—and there's a Yahoo! group dedicated to firmware hacks if you're too lazy to do one yourself.

I think I'm going to hack together a firmware image that uses mp3q so that I can get my bigass server machine out of the living room. Stay tuned if you're digging what I'm shoveling.


[ permalink | 0 comments (add one you lazy bastard!) ]

Sun, 07 Jan 2007

a new clock arrives

Though I designed it a long time ago, I've only now put up the (very short) writeup of 2nix, my two-digit NIXIE clock. Have a look.


[ permalink | 0 comments (add one you lazy bastard!) ]

Sat, 30 Dec 2006

on the road

...but no boxcar for me.

Since I worked through Christmas vacation this year, I'm only now beginning any kind of break, and that's only because I already had a flight and wouldn't even consider cancelling it. At the moment I'm in Denver waiting to connect to Oakland, where Katherine will also be arriving later this evening. Woot!

Christmas this year was actually pretty damn good despite the fact that I worked. By some stroke of luck, Christine was in town visiting her aunt and uncle, so we hung out when she arrived. Then, in a demonstration of undeserved kindness, Christine et al invited me to celebrate Christmas dinner with them. Delicious, and muchly appreciated.

By way of repayment, I showed Christine my three favorite places in Austin: my office (hah!), Sullivan's Steakhouse, and the The Gingerman. Oh yeah, and I came back from an amazing almost defeat at darts to win on two sudden death rounds. Ha HA!

No really firm plans for New Year's Eve yet, except that we're hitting Chez Panisse early for some grub. In your face, Marissa!

Now back to watching the Giants pummel the Redskins in a shitty sports bar in DIA...


[ permalink | 0 comments (add one you lazy bastard!) ]

Mon, 18 Dec 2006

lord of the stare, heck of a guy

Today at work I'm crunching along on some layout or verilog or something when I get a call from Jeff. "Have you seen the eye? Come to my office, quick, before it disappears."

Apparently someone decided to project a very bright, very creepy eye onto the side of the water treatment plant's tower. Now I'm feeling like the next logical step is a laser projection vector graphics system so we can play asteroids.

Click the picture to enlarge


[ permalink | 2 comments ]

Thu, 14 Dec 2006

Rear Admiral "Tapeout" Crunch

Ahh, the final push for tapeout, that time of year when a young man's fancy turns to digital synthesis, place and route, top-level simulations, ESD structures, and—of course—layout.

I hope you'll pardon the fact that I haven't blogged in a month and a half. I've been embroiled with not one, not two, but three tapeouts of three completely separate parts. The last, "mine" (inasmuch as I am the project leader), is going to take a miracle to come out before Christmas, and Herculean effort to keep it from pushing more than a few days past. At this point I'm sure that Christmas will be spent poring over DRC violations (if I'm lucky and we're at top-level DRC). Such is the level of my dedication. Thank you, Catholic schools: you really taught me how important it is to hate myself.

So yeah, after that I'm driving to Iowa for a couple days before heading to Cali on the 30th to spend New Year's with Katherine. Given that I haven't seen her since Thanksgiving, and considering that both of us have had rough Decembers, that will be a relief in several respects.

In other news: Ariel accepted an offer from SiLabs, so he'll be starting at the end of January. Yeah, bitches! Now the rest of y'all have to move here. It'll be bad ass.

Ahh yes, one last thing: someone (not me, honestly) came up with a more realistic schedule for my project than the one we'd been officially working from. Note that, much to my chagrin, we haven't actually hit the "Act of God" phase quite yet. We'll get there soon, I'm sure...


[ permalink | 3 comments ]

Mon, 30 Oct 2006

all the news unfit to print

Nigh on four weeks since my last post. Sorry, dear readers. I know you wait with bated breath to hear the details of my rockstar life. Let's see here:

  • Work.
  • Three(ish) weeks ago I went out to Cali to visit Katherine and wound up hanging with all my West Coast peeps (even Hippo and his hawt chica) for a night. I'll be back there over Thanksgiving, so if y'all'll be around, let me know.
  • I posted my first (and second, as of this week) fantasy loss in each of the leagues I'm in, but I'm still well in the running for the playoffs. I know you wanted to know that.
  • Work.
  • I'm presently sitting in Phoenix Sky Harbor waiting to catch a flight back to Austin after a week in Hawaii for Mike's wedding. There were a few notables from this trip, so I'm whipping out the sub-bullets:
    • I surfed the North Shore of Oahu. This sounds much more impressive than it actually is, but I'm actually a not-altogether-horrible surfer. The downside can be summed up in two words: nipple chafing. Ouch.
    • We went fishing on Thursday the 26th and I caught a 90 pound Striped Marlin. I also assisted Katie's (Mills, née Todd) dad in reeling in a 200(ish) pound Blue Marlin. Altogether we caught four Marlin, two tagged and two taken.
    • Matt, Cyrus, and I observed that the women who live along the north shore of Oahu are unreasonably hot. Surfing apparently does a body much good.
    • It may well be the case that in the pursuit of the perfect wedding, all women become completely unreasonable. I nevertheless have hopes that my future wife won't go psycho. Am I just dreaming?
    • Our last day in Hawaii was almost perfectly engineered: Jacksonville @ Eagles with cereal (and later, burgers and chicken), then a hike up Diamond Head preceeded by a quick stop at the Banzai Pipeline (at which point Mike, having been there swimming earlier that morning, admitted to having come across a bikini photo shoot, much to Matt's chagrin). After the hike, Matt, Cyrus, and I repaired to LuLu's to watch the Cowboys @ Panthers. Finally, we swung through Honalulu's Chinatown and feasted at a noodle house before repairing to the airport (by way of what must be the sketchiest alley in Honalulu, courtesy of my apparently unfailing nose for the seedy underbelly of any city).
    • Believe it or not, I was the week's designated cook, preparing fish, chicken, burgers, and vegetables in various ways to absolutely no complaints (I highly recommend searing Marlin: take a half to three quarter inch steak, add a little lemon juice, some season salt, pepper, and paprika, then eight seconds a side in peanut oil heated to its smoke point; the center should still be only barely warm if done right). Woot.
  • Katherine arrives in Austin on Thursday and will be there until early Sunday morning. Nice.
  • Ariel gets here Sunday for an interview in my group on Monday. We'll take him out for some Austin-style carousing, fer shizzle.
  • Ahh yes, work. I'm supposed to be taping out a chip in two weeks. All I can say is, that shit best get done before Thanksgiving, 'cause I's got plans to be with mah baybee. (Imagine that last in a sort of Tim McGraw drawl. Really. I know you want to.)

That, folks, about wraps it up. Signing off, but not for long: pictures from the trip are forthcoming, along with details of Ariel's visit. Fear not: details of Katherine's visit will be withheld.


[ permalink | 0 comments (add one you lazy bastard!) ]

Thu, 05 Oct 2006

questionable verbiage

(17:27:05) viscellaneous: i get to pick her up after 4
(17:27:15) viscellaneous: but the vet called to say she did well
(17:27:33) viscellaneous: and i microchipped her
(17:27:48) viscellaneous: so she is my little robokitty now
(17:27:50) scrap1r0n: is it RFID compatible?
(17:27:53) viscellaneous: yep
(17:27:55) scrap1r0n: nice
(17:28:01) scrap1r0n: I'm totally gonna hax0r your cat
(17:28:07) viscellaneous: nooooooo


[ permalink | 0 comments (add one you lazy bastard!) ]

Thu, 21 Sep 2006

adhocronism

n - an inelegant but expeditious solution; a kludge

Act now! I'm only charging a nickel for use of the above. That's 50% off my standard rate!


[ permalink | 2 comments ]

Mon, 04 Sep 2006

mixed bizzness

or, breaking radio silence

It's been a busy three weeks! I finished and (preliminarily) wrote up Heaviside, my headphone amp. Work was crazy busy, culminating in a mostly-complete architecture specification (and partial design, really) for the block I'm currently working on. Matlab is officially my best friend, but xcircuit and LaTeX rate up there too. Oh yeah, and I saw Talladega Nights. The Ballad of Ricky Bobby, indeed.

Most interestingly, I was on vacation last week. Starting on Friday the 25th, I headed from Austin to Fort Dodge, where I intended to drop off the truck and pick up the Harley for the rest of the trip. Unfortunately, the weather in Iowa didn't cooperate, so I ended up driving the whole trip. Also, though I'd originally intended to head to the east coast, I instead turned left at Iowa and went to the other ocean. Starting Monday the 28th, I drove from Fort Dodge to Berkeley, CA over two days, stopping overnight in Wendover, UT (on the UT-NV border).

From Tuesday through Saturday I stayed with Katherine in Berkeley and hung out with her along with Sherv and May—even making it to May's b-day party and getting May, Justin, Sherv, and Katherine to accompany me to, yup, Motherfuckin Snakes on a Motherfuckin Plane. Saturday Katherine, Sherv, and I threw a rather successful barbeque involving not only the standard BBQ fare but some rather delicious seared tuna with an awesome wasabi something-or-other that Sherv whipped up for us. It went quite swimmingly with Katherine's tequila-lime chicken and my humble-by-comparison-but-I-didn't-hear-any-complaints burgers.

The drive back occupied Sunday and Monday. I made it from Berkeley to El Paso on Sunday by way of an interesting route: I-5 to CA-46 to CA-99 to CA-58 (to Barstow!) to I-40 to US-95 to CA-62 which becomes AZ-95 to AZ-72 to "Vicksburg Road" (it has no other name) to I-10 to US-290 to Austin. If/when I figure out how to put precisely this route into Google Maps without spending hours on it, I'll do so.

To cap it all off, I got a ticket for doing 7 MPH over on I-10 just 5 miles from where I was going to turn off onto US-290. Fucking bastards. Oh well, maybe I'll reqest a trial by jury. Also, entertainingly (though not at the time), I was caffeinated (and, well, myself) to the point where the policeman was asking me why I was so nervous, and whether I was on drugs or transporting contraband or weapons. He went so far as to ask me to smile so he could confirm from my teeth that I wasn't a meth user. As Peter Griffin would say, "This isn't the first time my magnetic personality has gotten me into trouble."

To make myself feel better, I did an oil change and hair cut when I got home. Call it centering, or something. Oh, and that reminds me, screw Mobil1 for replacing the old badass 5W-40 "Truck and SUV" oil with this ersatz 5W-30 shit. It's got friction modifiers, for Chrissake!

Breeeeeeeeathe.


[ permalink | 2 comments ]

Fri, 11 Aug 2006

like eating glass

I went and saw Bloc Party last night at Stubb's BBQ with Alida. Those dudes don't need no instruction book to know how to rock. They are, all four of them, excellent musicians, the lead singer dude is entertaining, and of course all the girls swooned because they all had British accents.

I believe they're going to be releasing a new album soon, and they claimed that they'd "be back next year," so I'll be looking for them to tour again. I just wish I had two more hands so I could give them four thumbs up.


[ permalink | 1 comment ]

Thu, 10 Aug 2006

can't catch me

Last night, Matt and I discovered the McCormick and Schmick's has an awesome bar food menu that is extremely cheap, e.g., a half pound burger and fries for two dollars! A ton of hummous and pita for three!

After this discovery, we walked the couple blocks to the Ginger Man to celebrate, or maybe just to play darts. Last night marks the single worst dart defeat I've ever suffered. I couldn't hit the broad side of a barn, and Matt was on. The game ended 319 to 0 and I left bulls wide open. On the upside, good ole' Ginger Man had some new arrivals, including a restock of St. Bernardus Abt 12 on tap, which was excellent shit (but not really better than in a bottle, since it's a bottle conditioned beer). In addition, I finally tried Chimay Cinq Cents, which I found entirely underwhelming. It had a thin, unremarkable flavor and mouthfeel like a glass of water. Chimay Gran Reserve is, to my memory, much better, but I'll admit it's been a good long while. The other new one I tried was Avery Maharaja, continuing my IPA kick. This has hop content rivalling the hoppiest beers I've ever had (it's over 100 IBUs for sure), but its flavor doesn't go much beyond that. Since Wednesday is $1.50 "taster glass" night, I back-to-backed it with my current favorite, at least in this arena, the Dogfish Head 90 Minute IPA, and there's simply no comparison: the latter has a complexity of flavor that puts Avery's offering to shame. If you're a nut for hops, though, Maharaja will punch your ticket.


[ permalink | 0 comments (add one you lazy bastard!) ]

Tue, 08 Aug 2006

complexify

First off, a couple new t-shirt designs: [ 1 | 2 ]

I've been lax about posting my new beer experiences, so I'll give a quick rundown: La Fin du Monde, Rochefort 10, Hercules Double IPA, Oak Aged Yeti, St. Bernardus Tripel, and Ayinger Celebrator. They're all pretty awesome. La Fin du Monde and St Bernardus are both excellent tripels, though I think the latter is slightly more complex and in the end gets the nod. Rochefort 10 cannot be described by any word short of "ridiculous." The Oak Aged Yeti was excellent, like Samuel Smith's but with a bit more hops; I'd have to do them back-to-back to decide which I favor. Celebrator is a damn good beer, but I'll have to have more before I really form a more specific opinion than that.


[ permalink | 0 comments (add one you lazy bastard!) ]

Fri, 28 Jul 2006

good ol' sam

Last night, while we watched Ong-Bak: The Thai Warrior, I nursed a pint of Samuel Smith's Imperial Stout. Call it followup research, call it what you will, I call it a damn good beer. It has none of the harsher notes present in Old Rasputin, and yet is every bit as flavorful. This is the hands-down winner between the two. Next up is the Oak Aged Yeti.


[ permalink | 0 comments (add one you lazy bastard!) ]

Wed, 26 Jul 2006

ego trippin at the kalends of august

Last weekend I visited May and Sherv in the Bay Area—a totally badass trip! What with the hanging with Sherv and classmates (...and in particular...), seeing Clerks 2, the Flaming Lips, and Ween, and Dim Sum on Sunday before heading out, the weekend was packed with teh awesome.

Clerks 2 was actually good! Don't expect the first Clerks—I'd say this is Kevin Smith's take on a romantic comedy (by contrast, Chasing Amy would probably best be called a romantic tragedy), but with the usual View Askewniverse trappings. Go see it, but maybe see the original first if you're fuzzy on the details, since you'll surely appreciate the references more that way. I have to admit, though, seeing Randal and Dante in Clerks 2 made me feel old. Fuckin' fuck.

Now that I'm back in reality, my head is spinning. I have basically no time for my own crap at work ("can't-say-no-itis" has apparently rubbed off of Marius), which means this weekend will probably be flooded with midnight oil to get some architectural design done. Fuck it; at least after that I'll be able to hide in the lab and have some real fun.

I picked me up a Fluke 175 at Fry's today, and promptly came home and found the nagging bug on my headphone amp board (which has been sitting in my room waiting for attention for too long now). Flukemeters are hot.

And now, to bed. Yay.


[ permalink | 1 comment ]

Mon, 17 Jul 2006

epicaricacy

(n) Taking pleasure in others' misfortune.

a.k.a. Schadenfreude.

According to wikipedia, this word does not appear in most modern dictionaries, but appears in Nathaniel Bailey's Universal Etymological English Dictionary.

The more you know...


[ permalink | 3 comments ]

Thu, 13 Jul 2006

never say die

Grabbed me a four-pack of Old Rasputin Russian Imperial Stout at my local liquor store. Matt and I each had one, and agreed that while it's just as flavorful as your average stout, it ends on a much sharper kick than, e.g., Guinness or Young's Double Chocolate Stout. As this is my first Russian Imperial Stout, I don't know if that's a peculiarity of the beer or of the type. More research is clearly needed.


[ permalink | 4 comments ]

Mon, 10 Jul 2006

undead shirt returns from the dead; football shoes, but for football

It's back! Of the Dead, one of my most favorite Threadless designs, has just been reprinted. You know you love killing zombies.

Also, yesterday I got what seemed to me a total steal on a pair of Puma soccer shoes. Now, you might say, "but Riad, you don't play soccer!" Well, yeah, but I do play football, and soccer cleats are comfortable, readily available, and, it turns out, reasonably inexpensive. Man, you can really work out your legs when you're running routes in cleats—but I think the bigger difference is actually when playing defense. All around, an incredibly satisfying investment in weekend fun. And who knows, maybe I'll start playing soccer now. Then I can get really famous and then headbutt someone.


[ permalink | 0 comments (add one you lazy bastard!) ]

Sat, 08 Jul 2006

in the noise

Mike, Katie (Dominus), Cyrus, and I were grabbing a bite at T.G.I. Friday's last night and talking about Al Gore appearing on the Daily Show and claiming (tongue-in-cheek, at least to an extent) that he really did win Florida. This jump-started us on a discussion of the issue, and opinions flew: Gore really did win it, we fucked up, this, that, whatever. I take exception to such claims, not because I'm a fan of Bush (at this point it must be admitted that the country has taken a turn for the worse under his presidency, and no I'm not turning into some pinko commie liberal weenie), but because the reality of the matter is one that our electoral system is not designed to handle, namely, the result was so close that it was literally undecidable. The 190-odd votes one way or the other were below the noise floor. In other words, because of the particulars of the way votes are taken and counted, the election cannot be resolved with enough precision to give a number to each candidate which is more accurate than, say, plus or minus a thousand votes. The election in Florida was metastable, and the Supreme Court ended up acting as the bounded-time arbiter.

Having stated the matter this way, I realized something else: the electoral college makes this problem much worse. Here's how: the noise level in the system is more or less independent of the number of participants, since it arises largely from very local phenomena (i.e., it is generated in each voting precinct, and the number of people per precinct is approximately constant). The signal, on the other hand, scales directly with the number of people participating in a given election. Because of the electoral college system, however, the apparent number of people voting is artificially limited, since each of the states happens as an independent voting event (and thus we really have 50 small elections, not one large one). Thus, assuming that we had 50 equally-sized states (we'll come back and deal with this in a second), we have 50x less signal versus the same noise, i.e., an apparent 34 dB rise in the noise floor per election event due to the electoral college. Now, when you average all of these back together, you should get exactly a 34 dB fall in the noise floor, right? Wrong.

The problem is this: because of the way electors are assigned (one per Senator or Congressman), the SNR cannot be recovered completely: small states are actually overrepresented in the electoral college (because Representatives are a function of population, but Senators are a constant for every state, and in small states the Senators represent the majority of the electoral clout), and it is in these very states that the SNR is worst. Thus, we end up averaging a set of results which has been distorted in a way that cannot fail to increase the noise—the results which get greater marginal weight are exactly the ones where the SNR is worst.

So what is this added noise, really? It's distortion and quantization noise! Instead of keeping everything high resolution (i.e., in terms of actual votes), we quantize on artificial boundaries and then make the final decision on a set of discrete values which are not only low-rez, but skewed. What, then, does this suggest about fixing the electoral college? Clearly, one way to fix it is to get rid of it. But it's worthwhile to imagine instead what would happen if we had a thousand states instead of fifty: we'd be making a final decision based on bits which, while they each hide a greater quantity of "thermal" noise (due to imprecisions at the precinct level, et cetera), contribute less quantization noise to the final outcome. At this point, the quantization portion of the noise goes away, and we're left only with the problem of distortion. So really, to fix the electoral system, we need each elector to represent precisely the same number of voters, and for the number of electors to be enormous.

Isn't a popular vote just better?

Side note: what if instead of electing based on a single event, we oversampled the voting population? Say, everyone votes in 16 elections, and we actually feed back the results from the previous election, in effect shaping the quantization noise from the decision while simultaneously attenuating (by way of the gain in the feedback loop) the noise contribution of the election process itself. Seems like overkill, but holy shit it would be cool if our electoral system were more like a delta-sigma data converter.


[ permalink | 5 comments ]

Fri, 07 Jul 2006

yaaargh

Saw a Pirates 2 matinee with Mike and Cyrus today. Honestly, don't bother. Wait until it comes to video and then watch it the night before Pirates 3 comes out. There is absolutely no resolution whatever, just an abrupt ending. Davey Jones is really badass, as is the rest of his crew, and the Kraken is also awesome. Unfortunately, they just can't carry the movie. There's also about thirty minutes of worthless non-plot-advancing crap shoved in at the beginning, and Kiera being all "oh no do I love Jack or Orlando 'The Hotness' Bloom?" Jack does have some good lines, though.

When is Pirates 3 out? I have a feeling that Pirates 2 will be a better movie when it can be followed directly by 3.


[ permalink | 1 comment ]

Thu, 06 Jul 2006

beersperado

Central Market was useless in locating the 120 Minute, so I turned to Grape Vine Market. They were most helpful in locating not only the 120 Minute, but also the 90 Minute, some Delirium Tremens, and a newcomer, Delirium Nocturnum. Also, I've now got some Victory HopDevil and some Duvel in the fridge waiting to be drunk. Wow we have a helluva beer shelf going on right now.


[ permalink | 0 comments (add one you lazy bastard!) ]

el beeriachi

Sid and I had intended to go to the Ginger Man on Monday night because it was Saint Bernardus Abt 12 logo glass night. Unfortunately, they ran out of logos early on, and Cy and Mike wanted chicken wings first, so by the time we were ready to head over to the GM we instead decided to hang out at the Man House and digest. Turns out, this wasn't the best plan: when we finally went to the Ginger Man last night (two days late...), they were out of the Abt 12, its spot on the wall now occupied by the Saint Bernardus Tripel. I didn't get a pint of it, but I did back-to-back taste it with my "go-to" beer, the Tripel Karmeliet. I'll have to drink a bit more of it (facilitated by the 750 in my fridge—thanks, Sid!), but the Bernardus offering is a bit more complex and finishes on the slightly sour side, as opposed to the Karmeliet, which is sweet through and through.

So I've told you what I didn't drink, now how about what I did?

  • Stone Arrogant Bastard. I can't get over how much this tastes like grapefruit at the start!
  • Next up were tastes of several different IPAs, including Stone, Titan, and Dogfish Head 90 Minute. Surprisingly, though it is technically a "double IPA" and should thus be much stronger than the former two, it was the latter upon which I settled as my favorite of the bunch. Damn good stuff!
  • Next, two sharp turns to the left. First, a quick sample of Live Oak HefeWeizen, at which point I dropped to my knees, forsaking all other Hefe Weizens before the Live Oak offering. Goddamn is it good. Not to mention, the Live Oak guys are friendly! I went and watched a Texas game at the Live Oak brewery last year, and it was totally cool.
  • The other sharp turn was a New Belgium 1554. I've enjoyed this one before, but I felt like it was time for operation get-behind-the-dark-ale, since we were heading to the pool table (where I managed to run both Cyrus and Sid right out of our cutthroat game before scratching on the last ball, bringing them both back to life and giving Sid the winning setup). Don't ask me why dark ale is the right thing to drink when playing cutthroat. I declare it so.
  • Next, some head-to-head sampling in little 1/6-pint nips, starting with my beloved Karmeliet versus Pauwel Kwak. The Kwak is damn good stuff, in a broad sense comparable to Delirium Tremens, though much more straightforward: caramel up front, tailing off nicely but not really going anywhere else.
  • After those two, another interesting pairing: Maredsous 8 versus Aventinus. The Maredsous served as a reference point, since I've enjoyed it many times (it's Matt's default Ginger Man selection). (Moreover, I really wanted to taste the 8 again because the night of the 4th I finally broke into my bottles of Maredsous 10 and Delirium Tremens. I didn't like the 10 nearly as much as I thought I would—it was a bit too harsh and finished with a very sharp ethanol taste.) As regards the Aventinus: holy shit! This is, quite honestly, the first German beer that I've ever thought I could marry. I shall be coming back for more of that one, guaranteed.
  • Finally, as the night was finishing up (just after defeating Cy and Sid at darts despite the fact that I let them throw twice for each time I threw—hah!), I had a half pint of Mackeson XXX Triple Stout, something I'd enjoyed in bottles but never on tap. Interestingly, unlike many other stouts, Mackeson's is pumped with carbon dioxide, not nitrogen. I suppose one would expect this to make the beer a bit more tart, but that's the furthest taste from your tongue when drinking this stuff—it's like a loaf of sweet bread. Delicious.

So what did we learn? For one, I absolutely must swing by Central Market and pick up a bottle of the Dogfish Head 120 Minute IPA. I expected the 90 Minute to be so abusive that I wouldn't even want to think about the 120, but instead it rocketed itself into my top ten beers. The 120 Minute is a very different beast (and hard to find for sale, the reasons for which include its high cost and 21% ABV!), but I expect that if they do the 90 that well, the 120 is worth a try. Meanwhile, I think I'll have to make a concerted effort to try out the other well-regarded IPAs—perhaps they'll even get me off my Belgian kick (hey, the probability isn't high, but it's there). Another thing I learned is that my recollection of Leffe Blonde was embarassingly inaccurate, except for the part where I remembered that I was underwhelmed. Finally, I learned that I get better at darts and pool when I decide to showboat a little bit.


[ permalink | 1 comment ]

Sun, 02 Jul 2006

speeding bullet

Went and saw Superman. It was really good. I especially liked all the references to older Superman stuff and other DC lore. Examples: at the beginning of the movie, when it shows Superman as a kid, he can only jump (this is consistent with the early Superman cartoons, where his travel power of choice was leaping, hence, "able to leap tall buildings in a single bound"). Marlon Brando plays the voice and face of Jor-El (which is to say, they reuse the footage from the Fortress of Solitude in Superman 2). More subtly, at one point a newscaster mentions Gotham City. Woot.

Another reason to catch the movie: the Spiderman 3 teaser beforehand is pretty awesome. Yeah, you can just download it, but whatever, it's still great to see in the theatres.

Upcoming excitement: Pirates 2 (next weekend), the Flaming Lips in Berkeley (7/22), and Miami Vice (7/28). Woot.


[ permalink | 7 comments ]

Mon, 26 Jun 2006

Groupe Spécial Mobile

or the modern title, "Global System for Mobile Communications," is far and away the most popular form of mobile telephone service in the world. In the US, T-Mobile was the first to provide GSM service, but Cingular has established an extensive network and is slowly subsuming the TDMA remnants of AT&T Wireless Services (mostly by "upgrading" TDMA towers to GSM, thereby dismantling the old network and forcing their subscribers to move from their old cheap plans to newer, more expensive ones).

Because of its worldwide popularity, cell phone manufacturers tend to make their best phones for GSM, and other services (notably QualComm's CDMA, used by Sprint PCS in the US) often don't get comparable models. This means that the cell phone hardware market for non-GSM service providers is much less than efficient—in other words, having Sprint forces you into a phone that's crappy, expensive, or both. Moreover, with GSM you can swap your SIM into another phone and you're good to go—a thoroughly awesome feature of the GSM standard.

Why am I telling you all this? Because I switched to GSM, of course. Real Soon Now I'll disconnect my 617 number and replace it with a shiny new 512 (yes, I could have taken my number with me, but I know Johnston agrees with me that phone number portability is an abomination). My old number will work for a while, and I'll send out my new number to everyone in my phone book at some point, but if you don't get it from me, send me an email.

And the hardware? Motorola's hot little L2, with nothing a phone doesn't need (no more camera phone for me). Exactly the phone I wanted, and it was free from Cingular.


[ permalink | 4 comments ]

Sun, 25 Jun 2006

no sharks were jumped in the making of this Sunday

Matt, Mike, Marissa, Dylan, and I rented a ski boat and went water skiing for a few hours today. Having elected to wear no sunscreen, I'm deliciously burned (yes, Christine, despite my protests when you claim to like getting sunburned, I actually wanted to—I'm trying to move away from the whole "day-glo white" thing). Also, as of now I claim the "best of" title—at least for this weekend. Matt must not have brought his A game, 'cause his attempts at wake jumping met with considerably less success than mine.

Also, he didn't manage to show off an open-handed windmill air-asspunch.


[ permalink | 1 comment ]

Fri, 23 Jun 2006

mister fix stuff

who do you think you are?

The other day I was in Whole Foods at the self check-out machines. Two of the three of them were dead, and this guy was trying to get them to work. Some cryptic error message was coming up, and he had no freaking idea what was going on. I (correctly, it turns out) surmised that it must be because they were trying to warm-boot and failing to retrieve their previous state from the server. I said to him, "here, just... do this." I guess I'm kind of like the fairy godfather of broken computers.

Also of interest: we went to Central Market for lunch yesterday, and I swung through the beer aisle on the way out. Sitting on my desk impatiently waiting to be drunk are a nice-looking Maredsous Tripel (the Maredsous "8" Dubbel is one of my favorites from the taps at the Ginger Man, though it turns out that my Ginger Man default beer, Tripel Karmeliet, is Beer Advocate's third- or fourth-favorite tripel-style beer—gotsta get me some Saint Bernardus) and my old friend, Delirium Tremens, the latter courtesy of my intern, Sid (thanks, Sid!).

Lastly, I bought Blue October's new album, Foiled. You might know the single, "Hate Me," which has received lots of radio airplay (in these parts, anyway). The whole album is extremely solid vocally, instrumentally, and with respect to production. The songs are great, and several of them are really catchy. The mood of the album is well represented in the single, viz., life-on-the-edge-of-depression-and-madness (though not in the same way as The Soft Bulletin by any means). It's kind of like if Trent or Maynard decided to go with ballads and wrote the album just as they ran out of Prozac and were riding their falling blood concentration back into oblivion (what's the halflife of Prozac in the body, anyway? Too short to write this whole album, I'd say). It's not depressing, exactly, but it's getting there. Of note: "She's My Ride Home" (a strange Natural Born Killers-syle love song), "Into the Ocean" (the opening reminds me of Simon and Garfunkel, somehow), "Congratulations" (features Imogen Heap!), and "Drilled a Wire Through My Cheek" (Prozac levels falling critically low, you can feel insanity's barbwire fence cutting the insides of your elbows on this one).

Forgive me if my descriptions are self-indulgent. I got to work at 7a today as part of my master plan to never hit traffic once we move downtown by coming in unconscionably early.


[ permalink | 1 comment ]

Tue, 20 Jun 2006

the girls with the bulletproof vests

Saw Beck tonight, accompanied by Meester Hester. Bad. Ass.

Highlights:

  • the "puppetron"—they had four live puppeteers putting on a puppet show of the performance as it happened, and had it on a projection screen via cameras and some whiz-bang visual effects.
  • Beck's mid-Debra break wherein he told us the story of writing the song, involving R. Kelly, some Alice in Chains references (unfavorable ones, at that), some sort of gospel radio station, and undershirt shopping. Hilarity itself.
  • Two songs apparently from a forthcoming album. No, I didn't just fail to recognize them.
  • A rendition of "Clap Hands" wherein he segued into "One Foot in the Grave"—and back again!
  • At least one song from every album since Mellow Gold except for Mutations (admittedly, that was somewhat disappointing, but still, the man played for a straight high-energy 90 minutes, so it's hard to really get upset).
  • Superb renditions of "Get Real Paid," "Sexx Laws," "Devil's Haircut," "Novacane," and "Pay No Mind."
  • an amazing back-to-back "Lost Cause" and "Golden Age" involving a dining table in the middle of the stage with four of the umpteen band members sitting around it banging on myriad vessels of liquid. Astoundingly cool sound from such a simple idea.
  • Oh yeah, the opening/backup band was Jamie Lidell (on the same label as Aphex Twin, Autechre, and Boards of Canada). We got there a bit too late to really enjoy the opening performance (though now I think I'll pick up the album), but they were damn good as backups.

Wow. Just wow.

Next week: INXS.


[ permalink | 0 comments (add one you lazy bastard!) ]

Fri, 16 Jun 2006

biannualism

I forgot to mention that as of Wednesday the 14th, I've been working at SiLabs for 2 years. Woot. I love my job.

(Now I need to start taking vacation—I'm clipping 'cause I've still never used a vacation day.)


[ permalink | 0 comments (add one you lazy bastard!) ]

pleasing the customer

Atlanta was both entertaining and educational. This, this business of sales, is somewhat different than I'd thought, but it seems to work out in the end. I met our regional sales manager for the southeast, a fine gentleman who has previously worked with the likes of Bob Widlar. Most impressive!

This weekend, who knows. The Heaviside boards came in yesterday, but I haven't started looking at them yet because Miz September and I were hanging out downtown last night. I'm sure I'll have time at some point, and I'll of course! report any significant developments (after all, I know you all wait with bated breath).

revC came back the day before yesterday, and things are looking pretty good. I've made a firmware fix or two, but on the whole things look damn solid. Always good.


[ permalink | 1 comment ]

Sat, 10 Jun 2006

scene d'un ballet

Or something. I don't actually speak French.

Last night, SCS and I went to this amazing show called Requiem, performed by Blue Lapis Light. Think Cirque, but actually performed in the shell of a 6-story building. There was rappelling, the giant sheet climbey things, and lots more amazing stuff. In short, holy balls!

You Austin types should check it out. It's this weekend, next weekend, and the weekend after on Thursday, Friday, and Saturday nights at 8:30. The crowd gathers in front of the gate to the ex-Intel construction site at San Antonio and 5th. Yes, this is a dance production that takes place in a construction site. That's kinda cool, isn't it?

Oh yeah, also, I actually took half a day off to go to Fredericksburg (also with SCS) yesterday. That was supah coor!


[ permalink | 0 comments (add one you lazy bastard!) ]

Wed, 07 Jun 2006

quick turn

Wow. Someone decided it would be a good idea to unleash me (in my capacity as lead analog designer, not because of my awesome personality or marketing know-how, though the latter are of course self evident—now I'm really earning my last post's title) on some of our difficult customers, so I'll be going to Atlanta one night next week to meet with them. How can they fail to appreciate that I'm a danger to both the living and the dead, and as such shouldn't be allowed to venture outside my office, let alone trapse across the country to go scare the nice people who might otherwise buy our products?

I guess this means I need to peruse the latest GQ (which I should have done already, given that Christina Aguilera is ruthlessly gorgeous on the cover) to learn the latest styles in summer suits. Can I get away with a khaki, or will I look like I lost my Pith helmet on safari?


[ permalink | 0 comments (add one you lazy bastard!) ]

Mon, 05 Jun 2006

too big for my britches

On a whim, I decided on the following title for the paper I'm writing at work:

An Essay Concerning Human Understanding

of Short Loop Ringing1

1 With apologies to John Locke, who in no way condones or endorses any particular method of ringing.

It's important to entertain the well-read members of your audience.


[ permalink | 2 comments ]

Sun, 04 Jun 2006

tunes and two-steppin

Quite the busy day yesterday! Some swimming and general lazing around in the sun (at least I look a little less day-glo now, jeezus, and for the record, sucks to you paleface bastards who can't take a few hours of direct sun without burning—I'm the fairest I've ever been and I have nary a touch of the stuff) followed by some general walking around downtown ending up at this nifty authentic Mexican place. A tacos al pastor and guac-made-right-at-the-table later, we were out and about again, only to stumble into some gelatto (including what's probably the strongest lemon-lime flavored shit ever—like eating concentrated lemonade powder in sorbet form). After a bit more ambulation, it was time to head home and clean up for the evening's festivities, but not before stopping by Waterloo Records and picking up entirely too many Van der Graaf Generator CDs, and one by a newish local band, Thirteen of Everything. All you prog lovers will enjoy their shit immensely—a dash of Floyd, a punch (no, not a pinch, a punch) of Genesis, and a solid instrumental foundation slathered in originality.

Said festivities comprised Texas two-step (and some swing and waltz and what-have-you) at the Broken Spoke. SCS and I were joined by Marissa and Dylan, and we all had a grand ole' time (once the drama of accidentally running into The She-Devil and Sloppy Seconds blew over, anyway).

Now, back to work for a little while. Little baby VoIP boxes everywhere will be lost without their ringing spec.


[ permalink | 0 comments (add one you lazy bastard!) ]

Mon, 29 May 2006

wahboid omnibus

A few things of note: Wednesday night I went to a 30 Seconds to Mars concert. It was kinda cool, though I have to say that I think they were better opening for Sevendust back-in-the-day. Jared needs to be a bit more disciplined with his vocals, and for fucks's sake turn up the mic!

Saturday night, Mike, Matt, Cyrus, and I had one of the greatest days of all time. We started off with some sammiches, played Starcraft while our food digested, then went to the park and played football. After that, we returned to the ManHouse for some swimming and then a bit more Starcraft before heading out for dinner. On the way home from dinner, we noticed that there was a movie theater up north playing Transformers. No shit. We had to burn a little time before the midnight showing, so we played some pool. How can you beat a day like that?

Yesterday we had a barbeque, so I mowed the lawn, cleaned off the deck, and cooked up some mean shit. We ate and then all hung out in the pool (like a dozen of us at one point), which was truly excellent. Especially water football.

Now, bed. I know, it's not technically Monday until I wake up.


[ permalink | 2 comments ]

Thu, 25 May 2006

intense research

(01:35:18) scrap1r0n: y'know
(01:35:22) scrap1r0n: I was doing some rezerch
(01:35:48) scrap1r0n: and I've come to the conclusion, as you can see from my earlier missive to F-A, that I need to know more about nonlinear dynamics
(01:36:00) krazyllama: I see
(01:36:17) krazyllama: maybe you should focus on the classical humponic oscillator instead


[ permalink | 0 comments (add one you lazy bastard!) ]

Tue, 23 May 2006

a momentary lapse of reason

In a fit of duty-to-the-company, I decided to forego the opportunity to work on the project I really wanted to do in favor of being the lead analog designer on the Si3226 project (because there's no one else to do it, and business-wise this is the more important part). This means that I will actually have up the threeeeee (probably more like four or five) people working dirrrrectly under me. It also means that all the fun design stuff I'd already done on Kiera is kind of lost (but not quite, because I think I'll still try to work some with Tim on the design). Too bad Mike went over to the Wireless *cough*evil*cough* division, else he'd have done the job that's now mine. He's better at organizing stuff...

Strangely enough, somehow he's still doing a block similar enough that we're probably going to share digital design and a good bit of the architecture. I wonder if that means one of my previous ADC designs I'd been planning to reuse will end up in a Wireless part. That would be kinda hot!

Tesla (the new name for my headphone amp) is nearing completion—I just have to sit down and grind out the last of the layout. I have my Digi-Key order together, and the power transformers and tubes are already here.

...which reminds me, I'm probably building enough of them that I can give away one or two at cost. Let me know if your headphone listening needs aren't presently being satisfied and we'll see what we can do.


[ permalink | 1 comment ]

Mon, 15 May 2006

business is good. business is booming

I've been doing my best impression of a shiftless layabout for the past week—they comp'ed us a week of vacation after tapeout to thank us for all the overtime we put in, so I've been catching up on life—but I did manage to do a couple interesting things.

First, embarassingly enough, Mike convinced me to start playing City of Villains (remember last summer and City of Heroes? I sure don't), but I've only played a small bit of it thus far. It does seem damn cool, and I'm intrigued by the way they've subtly changed the hero archetypes to make altogether different-feeling characters that are still very familiar in their powers. May, you gonna start playing with me now?

Second, I decided that I'm done "missing out" on that "magic vacuum tube sound," so I've designed and am now in the process of building the amplifier you see to your right. whamp (Wahby's headphone amplifier) is the best name I've come up with thus far, but please feel free to suggest others. Note that a couple years designing circuits for ICs has rendered me completely incapable of anything approaching simplicity. Also, the extent to which an op-amp with a non-inverting second gain stage is a pain in the ass to compensate is left as an exercise to the reader (and then note my solution, a pretty cute one if I do say so myself).

For those of you about to protest, "but that's mostly solid-state!" you're absolutely right, but consider that the majority of the amplification is coming from the vacuum tubes, and thus the majority of the audible distortion (which is what really creates the "magic"). Put another way: input refer all the distortion, and all but the distortion from the 12AX7s is attenuated by the gain of the input diff pair. Thus, the "sound" of the amplifier will be mostly dictated by the input pair. This claim is supported by my simulation results, which show that most of the harmonic distortion is in the even-order overtones, the characteristic distortion profile of a vacuum tube amplifier. By the way, I expect that at reasonable volumes I'll get less than .002% THD into my 250 Ohm beyerdynamic DT-880s, which may actually mean that I've designed it so well that it doesn't sound like a glass amp after all. At least it'll look cool...

Edit: updated the schematic to the latest version, which now uses a slightly different compensation scheme and some snazzier output transistors.


[ permalink | 5 comments ]

Sat, 06 May 2006

taking no responsibility

Wow.


[ permalink | 0 comments (add one you lazy bastard!) ]

then cigarette

Guys, go find yourself the video of the Pussycat Dolls featuring Big Snoop Dog (his newly-assumed moniker, it would appear) performing "Buttons."

Girls are also welcome to watch it, but either (1) I'm right and you won't enjoy it nearly as much as the guys, or (2) you've been keeping secrets from Papa Wahby.


[ permalink | 0 comments (add one you lazy bastard!) ]

Thu, 04 May 2006

and we're off

Just got the email. The PG has been inspected and approved. Hawsome.


[ permalink | 0 comments (add one you lazy bastard!) ]

next time, it's a grenade

My boss has started giving me cans of soda and warning me that next time it'll be a grenade. I wonder if I should be worried about this.

We've just about finished the arduous PG checklists, but we already know we're taping out with a code bug—one that I introduced. Shit. Fortunately, we have the ability to patch the ROM while the chip is running, so it's not a problem (literally a one-line patch), but how much does it suck to be the source of the first known bug?

This whole leakage cal fiasco really bothers me, but hey, screw it. I mean, yeah, it was my fault and all...

In my defense, what the hell were they thinking having an analog designer write the code?


[ permalink | 0 comments (add one you lazy bastard!) ]

Wed, 03 May 2006

in the throes

Tapeout hasn't happened yet, despite 18-hour days since last Friday. It looks like today will be the day, assuming that we can get the ROMs generated and all the antenna diode violations fixed. Then I shall take some comp time.

Much-needed relief came today in the form of two beautiful new Dell 20 inch 1600x1200 flat panel displays the IT guys delivered to my office. LCDs may suck for gaming, but for shit like layout they are a God-send. Between these two and my laptop running dual-headed with my 2401FPW, I could theoretically have a 7040x1200 display going on my desk (using xdmx). At some point I might just have to do that for shits and giggles.


[ permalink | 0 comments (add one you lazy bastard!) ]

Wed, 26 Apr 2006

from the boardroom

Today I gave an extremely well-received presentation to a boardroom full of SiLabs's finest, and participated actively in the ensuing discussion. It was a great opportunity to get cozy with the brass and get better acquainted with the really cool badasses who steer the Good Ship SiLabs.

Also, I could swear I heard the Jeffersons theme song playing at some point in there.

Moooovin' on up...


[ permalink | 1 comment ]

Wed, 19 Apr 2006

fs la

or, the other kind of acl

It turns out that the Flaming Lips will be playing at this year's Austin City Limits Festival. Upon learning this, I immediately bought my three-day pass to the show. It doesn't even matter who else is playing (though usually it's a bunch of really good bands, so I'm sure that things are even better than they seem now). It's September 15 to 17. Get yer asses down here.

Edit: according to the ACL News and Rumors Blog, the New Pornographers have also confirmed that they'll be appearing, along with a bunch of others. Badass.


[ permalink | 2 comments ]

Sun, 16 Apr 2006

at war with the mystics

is the title of the latest album from everyone's favorite Okie band, The Flaming Lips. It's great, especially in the way that the various songs on the album throw back to different periods in their earlier work. For example, track 1, "The Yeah Yeah Yeah Song," rekindles images of Clouds Taste Metallic (Kim's Watermelon Gun, maybe?), and some other tracks go back even further. There's also a very Beck opening to the second track, "Free Radicals."

In looking back to their earlier work, however, the Lips don't ignore the polished, tight sound that they've developed over their last few albums. Yoshimi Battles the Pink Robots was an achievement for them in terms of how "professional" it sounded while retaining the essence of Lips, but it was also made of altogether different stuff than, e.g., Finally, the Punk Rockers are Taking Acid. That they've been able to leverage their technical development and simultaneously return to their, what, youthful? roots is both impressive and really freaking cool.

I'd totally recommend buying this album ASAP. I'm also going to go out and buy the 5.1 DVD version of it when it comes out (to go along with the 5.1 versions of Yoshimi and The Soft Bulletin, both of which I highly recommend). It's on Lapnap and positron, so you can test drive it first, but dudes, please buy this one. It's just that damn good.

Also of note: today I think I broke my finger playing some football with Mike and Matt (maybe it's just jammed, but fuck is it swollen). I know you wanted to know that.

Oh yeah, and Beck is going to be in town on the 20th of June. I'm gonna get tix, so if anyone wants to make the trek down and watch, lemme know and I'll pick one up for you. The man puts on a helluva show.


[ permalink | 0 comments (add one you lazy bastard!) ]

Fri, 14 Apr 2006

Rube-Goldberg variations

Most impressive.


[ permalink | 0 comments (add one you lazy bastard!) ]

morality, squats, and a twenty-four incher

Until a couple weeks ago I considered the use of wrist straps for deadlifts a travesty—after all, you should have forearm strength commensurate with your back strength if you're going to do deads! Then I realized that my deadlift routine was way too easy for me because my forearms were unable to keep up, and I changed my tune. Now I use them twice a week (normal deads on Tuesday, Romanian deads on Thursday) and they completely rule.

While we're on the topic of the gym, I might as well also mention that I've started doing front squats instead of normal squats in order to more effectively work my quads while keeping my back from suffering too much. In addition I do work on the sled at higher weight, since my front squat technique isn't quite up to three-and-a-half plates yet (though hopefully in a few weeks...). I highly recommend them to you lifting fools—they're great fun, and inflexibility doesn't cause nearly as much cheating.

Finally, I should mention that I finally broke down and bought a flat screen monitor—and boy did I get a doozie. In particular, I got a refurbished Dell 2405FPW that was even cheaper because Ms. Todd graciously allowed Mike and me to exercise her employee discount. Holy jeebus this thing is large, and hot (1920x1200, 24 inches... wow).


[ permalink | 6 comments ]

Sun, 09 Apr 2006

punch you ROUND EYE

I finally went back and dug through the image of kung-foo's hard drive, only to strike gold: Midnight Snack starring Sean and Dwip.

Also, PORK CHOP SANDWICHES!


[ permalink | 3 comments ]

Tue, 04 Apr 2006

b to the izzay

My bay area visit this weekend was some good shit. In no particular order, impressions from the weekend: Maymaymay!, the new Spike Lee movie is good, wow I'm allergic to Katie's cat, the community of MIT alums out there is pretty impressive in its extent, holy shit you can deep fry a turkey (the official food of France, which is now called RoboFrance 29), Sherv's apartment is cool, sup Hippo, let us all bow before Woz's powers of perception, and did I mention the turkey?

I can totally see why people are irresistably attracted to the Bay Area. Some day, when Mike, Matt, and I buy the 49ers, I guess...

Oh yeah, at the right is me in bad lighting most of the way up a lamppost right near Sherv's house.


[ permalink | 2 comments ]

Thu, 30 Mar 2006

bathroom display

Sweet. The foo bathroom display has been resurrected. That's some funny shit.


[ permalink | 0 comments (add one you lazy bastard!) ]

Sun, 26 Mar 2006

ex recto

Tonight, in a rousing round of Trivial Pursuit pitting me, Katie Todd, and Katie Butler against Matt, Cyrus, and Mike, we pulled off a victory that verged on humiliation. In the process, I pulled answers ranging from "James Cagney" to "Baghdad Betty" straight out of my ass, laying them on the table in exchange for slices of pie. Apparently my ass is a gamer.

Once again, the master of minutiae pulls off the ridiculous victory. Score another for the fat man.


[ permalink | 2 comments ]

Fri, 24 Mar 2006

trent

I went to a Nine Inch Nails concert tonight with Cyrus, Jame, Dylan, and Katy, and dizzam was it badass. We were pretty high up in the nosebleeds, all better tickets having sold out within minutes of the box office opening (I called continuously until I got some and we still ended up on the second level), but it was nevertheless a stupendous concert. Having seen Nine Inch Nails from the moshpit before (on the Fragile tour with Christine, Rodin, Matt, Amrys, Tanis, LeeAnn, and Stephanie), I actually kind of appreciated being able to see throughout the concert and not being bruised and battered by the end of it.

It cannot but be said that Trent is a consummate performer. He had superb control over the mood of the audience throughout the show, bringing them "up" in time to introduce songs from their new album, relaxing the tempo a bit to encompass Hurt, gradually bringing things back up, and ending on the frenzied screams of the audience singing along to Head Like A Hole. Listening to him perform, it's no wonder he's credited with having revolutionized (or is it created?) the genre.

Head (almost) back down: layout calls this weekend, but football, the driving range, and probably some biking lie in wait as well.


[ permalink | 8 comments ]

Thu, 23 Mar 2006

g dawg

Whoa dey! A warm welcome to Dr. Dahlsim, a.k.a. gva. Bad ass.


[ permalink | 0 comments (add one you lazy bastard!) ]

Fri, 17 Mar 2006

abrasive rhinoplasty

I'm not bitching here, I'm explaining: my silence is not due to lack of interest, but lack of time.

I have averaged over 12 hours of work a day since returning from Boston last week. Tapeout has been delayed due to an error in the generated digital route (a complete rework takes nigh on two weeks because our timing is so fucking tight), which means that firmware freeze (Mike and I, both nominally analog designers, are making the lion's share of the code changes, mostly having to do with self-calibration routines) is pushed back, cal work can continue, and I'm now in charge of all layout fixes and verification.

The good news is that, other than being exhausted, I'm very happy with work at the moment. I take great satisfaction in the steady-to-breakneck pace of progress, and believe it or not my social life isn't actually suffering all that much—only my ratio of waking hours to those spent in much-needed (just look at me, for Chrissake) beauty sleep.


[ permalink | 0 comments (add one you lazy bastard!) ]

Mon, 13 Mar 2006

three things

I only did three things this weekend. They were:

  • breakfast at Magnolia
  • football
  • layout

Guess which one took up all but 19 hours of the weekend?


[ permalink | 0 comments (add one you lazy bastard!) ]

Fri, 10 Mar 2006

by way of the fates

—and by that I mean Sherv, a.k.a. fates at berkeley dot edu—a new entry can be found in the blogroll. Yo Stephanie.


[ permalink | 0 comments (add one you lazy bastard!) ]

Fri, 03 Mar 2006

another milestone along the road to the perfect email subject line

From: Riad Wahby <riwahby@...>
To: DL.ProSLIC@...
Subject: the lkgcal or: how I learned to stop worrying and love the discrete BOM


[ permalink | 0 comments (add one you lazy bastard!) ]

Thu, 02 Mar 2006

a nice fellow

It's official: as of two(ish) weeks from now (when we tape out), I'll be working for our newest company fellow. Tim Dupuis is a cool guy and a card-carrying Analog Ninja, and I'll be the lead designer on a chip with his mentorship.

I'm psyched as all hell. So much so, in fact, that I've already started designing one of the hard blocks. Yay.


[ permalink | 1 comment ]

Mon, 27 Feb 2006

hot lot

On very short notice, I'll be in Boston over the weekend for VI-A interviews. I arrive some time midday on Saturday and leave on an early morning flight on Wednesday. Cool beans.


[ permalink | 2 comments ]

productivity

Last weekend was thoroughly productive. Friday I went out clubbing—starting at the Firehouse, we then hit Oslo, Glass, Barcelona, and then headed back to Oslo. Given that I was parked by the Firehouse, that amounts to walking across town and back twice—and thank God! because I don't know what I'd do if women weren't so fickle.

Saturday Cyrus, Marissa, and I hit Juan in a Million for the Breakfast Tacos Touched By Christ. Cyrus and I then went to Game Stop and Fry's, and there was much rejoicing (in addition to the music I detailed below, I picked up a used copy of God of War for the PS2 and a copy of the American Psycho DVD—woot). After that, I went to the office for a few hours and did some layout, then Cyrus, Matt, and I got dinner and played Starcraft.

Sunday it was biking with Alida in the morning/early afternoon (out along Bee Caves to Lakeway and back, almost exactly 20 miles and a thoroughly excellent ride, though quite hilly). Then it was work-on-car time: Dagny got synthetic rearend and tranny fluids courtesy of Specialty Formulations (yes, I shamelessly put "boutique" lubricants in my car. So what, wanna fight about it?). Also, some good ole "German Castrol" Syntec 0W-30 (it may smell like bubblegum, but it still tastes like motor oil). Thank you, Castrol elves.


[ permalink | 0 comments (add one you lazy bastard!) ]

Sun, 26 Feb 2006

resurrection

Over the last week, I've been doing a metric assload of layout, which means I've consumed (in a manner of speaking) lots of music. Through a strange series of associations, I was thinking the other night about Nimrod from the Enigma Variations by Elgar, so I listened to it. Somehow this turned into listening to that entire CD, which contains what has become a new favorite among orchestral pieces, Elgar's In the South (Alassio) (check it out, it's hot). Having gone through that, I turned to some other standbys, including Mahler's 2nd and 5th symphonies (now do you get the title?), Beethoven, Shostakovich (a certain piano quintet never fails to bring a smile and a minor deluge of memory), Prokofiev, Strauss (Also Sprach Zarathustra remains, to my mind, the ultimate test of any speaker system), and more. Basically, what I'm saying is that I'm listening to more classical music than you can shake a stick at.

Today when we were at Fry's, I picked up some more Mussorgsky, Stravinsy, and Prokofiev, and also got my hands on Sir Andrew Davis's complete Dvorak cycle—a 7 cd set for $30. Bad ass.

Also on its way: more Mahler, Tchaikovsky, Shostakovich, and Brahms. You might be wondering why the hell I'm buying the CDs, and the answer is simple: you can't download good recordings of much of the more obscure stuff, and the recording makes a huge difference (my Beethoven cycle is an el cheapo one, and it's painfully obvious when you listen to it). Moreover, even the best classical recordings are pretty damn cheap compared to pop music.

I'm not sure I agree with this list 100%, but it's a damn good start. Get to work.


[ permalink | 1 comment ]

Wed, 22 Feb 2006

fornicaliabound

Hey all you Bay Area peeps, this is a heads-up that I'm flying into SJC at 6:44p on Friday, March 31. Y'all betta bring it.


[ permalink | 5 comments ]

Mon, 20 Feb 2006

Japan wins

There was a moment yesterday in which I realized why Japanese cars are just better. That moment occurred as I was finishing up a brake job that, on a Bimmer, would have taken the better part of three hours. That's because BMW doesn't design their cars to be quickly and easily maintainable. Acura (or their parent company, Honda, really), on the other hand, most assuredly does; as a result it took all of 10 minutes per wheel, including pulling off the wheels and putting them back on. As Matt points out, designing your cars not to fail (as the Germans claim to) is just not as effective as designing them to be quickly and cheaply repaired if they do fail—Gauss and Poisson just aren't on your side.


[ permalink | 0 comments (add one you lazy bastard!) ]

Fri, 17 Feb 2006

heading 090

I got an email this morning letting me know that Woz's baby, the Women of the East Side Calendar, has been born. It's for a good cause, and it's eye candy. How can you say no?


[ permalink | 0 comments (add one you lazy bastard!) ]

Wed, 15 Feb 2006

knock-down drag-out

This week I've called two meetings which have turned into the electrical engineering equivalent of a barroom brawl. This is a good thing—in the first one, we made two decisions critical to the way that we will proceed towards the tape-out of the two chips I'm currently working on, and in the second we discovered and subsequently fixed what would have been a show-stopping error in a modification we only had to make because somewhere between customer and marketing we were never told that we had to support a mode of operation we'd never before seen (in particular, ringing the telephone with both a positive and negative battery as opposed to just one big negative one, the historically preferred approach because (a) telephones are fully differential systems anyway, so you can get positive and negative tip-to-ring voltages even with only one battery, and (b) with a negative battery you don't get electrochemical corrosion).

Also, that was quite a friggin sentence.


[ permalink | 0 comments (add one you lazy bastard!) ]

Fri, 10 Feb 2006

plasma facelift

How's that for a burning discharge?

To the right you see the new face of my plasma tweeter, i.e., my old Sony CDX-F7705X (now sans CD mechanism because it broke and I decided that if I couldn't fix it, at least I could have fun breaking it more). I'm using it for three purposes: further preamplification, audio filtering, and for EMI isolation of whatever is actually providing the audio. If I got an antenna, I could use it as a radio, too, I suppose.


[ permalink | 4 comments ]

their powers combined

What do you get when you take an old Dell laptop power brick and a car stereo with a broken CD mechanism? You guessed it, a nifty-looking preamp for your plasma tweeter. Unfortunately, replacing the 22V zener in the brick with a 13V one to get something more like automotive voltages seemed to trip some sort of overload sensor, so I just went with the poor man's solution: a 4 ohm resistor in series with the supply drops the voltage by between 2.5 and 5 volts. So what if I'm burning 6 watts in the process? That's what power resistors are for.

OK, it's 3a. I've got a design review (attending, not giving) in 7 hours, so it's definitely bed time.


[ permalink | 0 comments (add one you lazy bastard!) ]

Thu, 09 Feb 2006

moved in

As of last night, the last of my crap is put away. I'm officially moved into the manhouse. OK, well, not quite, since my bicycles, air compressor, and one or two other random things are still hanging around the garage of my apartment, but I plan on grabbing that crap on the way home from work tonight.

To save space at the manhouse, I'm just leaving my truck parked at work all the time. It makes me look very dedicated, since mine is the only car in the parking lot at, oh, 1a on a Saturday. Also, it means that I can move stuff even if I drive Dagny (my STi—had I mentioned previously that I've named her Dagny? Think: some linear combination of Gabrielle Anwar's character in Things to Do in Denver When You're Dead, and Atlas Shrugged heroine Dagny Taggart) to work.

On a different note, yay for design reviews. Two today, one tomorrow, and, to cap it all off, a meeting with the boss. Hooray.


[ permalink | 1 comment ]

Sun, 05 Feb 2006

sharp lateral move

Sweet. Steelers won.

This weekend I moved from my apartment to Mike's house, where I'm now roommates with Matt and Cyrus (Mike moved out in observance of the end of his life, i.e., his imminent marriage to Katie. No offense to Katie, who is totally cool—mostly I just like making fun of Mike). After I grab the last of my stuff tomorrow, I'll be completely moved in.

Watch out, Woz: if you're not careful, I'll actually manage to move twice before you finish unpacking.


[ permalink | 1 comment ]

Mon, 30 Jan 2006

jetblue

...is great. I flew roundtrip Austin-Boston over a weekend for under $170, and since they were nonstop flights, I was able to leave early Monday morning and get back to Austin in time for work. How hot is that?

To those I missed this time around: fear not, I'll be back.

To those whom I saw: be afraid, I'll be back.


[ permalink | 1 comment ]

Wed, 25 Jan 2006

do not taunt the metal rev

Tonight (well, this morning, whatever) I stayed at work until about 1a heroically (yeah... my ass) fighting to PG (= "Polygon Generation" = tapeout) a metal rev of the Quad so we can get it to the fab before the start of the Chinese New Year (if it gets in before, it gets processed through the holiday, otherwise it doesn't start until afterwarfds—ugh). I am basically the owner of this whole thing; Ion made the couple little schematic changes, then handed it over to me for layout, and now I'm doing all the PG verifications. I guess it's good practice for when I'm leading a chip.

I took the opportunity while waiting for the LVS, DRC, etc to run (fuckin' DRC takes almost two hours on a dual Xeon with 4 gigs of RAM) to finish designing the ESD pads, so now it's just a matter of getting them to fit into the pad ring, doing some sim-yoo-lation, and getting them consecrated by Marius, High Priest of HBM.


[ permalink | 0 comments (add one you lazy bastard!) ]

Mon, 23 Jan 2006

a new soul arrives

...the title I wanted and couldn't quite have a few days ago. Hooray Soul Calibur.

I've been meaning to add Cyrus to my blogroll for a while now, and have continually forgotten to do so. So now he's added, and everyone knows I'm lame. We cool?


[ permalink | 0 comments (add one you lazy bastard!) ]

burning discharge

Not that kind, sicko.

I've just been tasked with the ESD clamps for a high-voltage (200V) telco line interface chip (SOI, baby). It has been handed down from on high that they shall be finished this week, since tape-out looms close on the horizon. I'm pretty pumped to be working on them, and I see plenty of opportunities for area-saving cuteness already.

...after all, everyone knows I'm all about cute.

For the record, transistors in high-voltage processes look funny. They're hexagonal! (You know, like the IRF "HEXFET" thing).


[ permalink | 0 comments (add one you lazy bastard!) ]

quux nexxus

FYI, quux.ws is now officially pronounced kwuks-us.


[ permalink | 0 comments (add one you lazy bastard!) ]

Sun, 22 Jan 2006

an oldie but a goodie

God I love the internets.


[ permalink | 2 comments ]

Out of my way! I WILL RUIN THIS PLAY WITH MY ANGER!!!!!

Troy Polamalu is an unstoppable juggernaut. I have decided I will grace his jersey with my torso come Superbowl Sunday.

Also, more info on the Flutie drop-kick—video of it happening, and an interesting article about Flutie from 1998. Also, see Wikipedia's entry on the drop kick.


[ permalink | 0 comments (add one you lazy bastard!) ]

Sat, 21 Jan 2006

denouement

The cases are done. Feast your eyes.


[ permalink | 3 comments ]

Thu, 19 Jan 2006

a new career path arrives

Just in case I get demoted from design, I can always become a layout mercenary. I had to do some emergency metal revisions for a chip we're sending out next week, and I ended up scavenging a few dummy transistors into a couple usable circuits. It's always fun to take a random assortment of transistors, some of whose terminals are connected to points in the circuit from which they can't be disconnected, and turn them into a useful functional block.


[ permalink | 1 comment ]

Wed, 18 Jan 2006

talkee talkee

Wow, lots of entries today.

After work and a quick dinner (after which Mike managed to spill a soda all over the front seat of my car) a bunch of us headed over to Tim's to watch Underworld—in preparation, of course, for the release of the sequel this Friday.

I couldn't sleep when I got home, so I went ahead and made the magnetic shields for the CRT clocks. It seemed like one layer of 6 mil AD-MU-80 (80 Ni/20 Fe) would have been enough, but I went ahead and did two on each just to be certain. Success! I suspected given the magnitude of the distortions I was seeing that the field strength wasn't too great, and it appears that I was right.

Now what to do with the 14x60 sheets of 4 mil AD-MU-80 and AD-MU-00 and the remaining 4x36x6 mil... what else needs some shielding?


[ permalink | 0 comments (add one you lazy bastard!) ]

maybe it's just the ozone talking...

...but I strongly prefer the nitrogen peroxide that the tweeter is feeding me. I think Marduk still prefers Stimutax, though.

Someone ought to give me a helium environment for Christmas so I don't kill myself or something. From an article on tweeter technology by NewForm Research:

Think of it as an arc welder driven by an audio signal. No moving parts, therefore no resonances. As fast as the air itself. And now the fatal flaw. The developers left the driver on overnight and returned the next morning to find everything in the room white from the ozone produced by the process. If this tweeter had proved otherwise practical in the early 60's, we would probably all be dead of skin cancer by now.


[ permalink | 0 comments (add one you lazy bastard!) ]

random thought before I go to sleep

What if we weren't engineers? We wouldn't be able to dream up stuff and just make it.

Mmmm... I love making. And dreaming.

'nite.


[ permalink | 0 comments (add one you lazy bastard!) ]

from the frontline

It's 1a and I'm still at work.

To be sure, I haven't been working for the last several hours—I was just using the wondrous laboratory facilities here to build up the new audio modulator for my plasma tweeter.

Success! After adding an LC pi network between the emitter of the output follower and the plasma modulator, the audio section worked perfectly. Good thing we have an assload of high voltage caps and high current inductors around this place—I needed 'em.

Even with the filter, when the plasma is running the E fields coming off the stub are strong enough to induce 5Vpp ripple on the 300V supply—which is bypassed with no less than 680 microFarads of bulk capacitance! Admittedly, I do need to add a liberal sprinkling of lower-valued caps whose impedances actually look capacitive above, say, 10 kiloHertz...

By the way, do the math on that shit... those caps are storing a lot of energy! Those of you who were around at the time probably remember when I literally VAPORIZED a resistor—leads and all—on the very power supply from which this whole thing runs.

...oh yaah, and measurements indicate that when the flame is about half an inch high, I'm burning about 180 Watts into the 22 MHz carrier. Fuck yeah RF burns, baby.


[ permalink | 0 comments (add one you lazy bastard!) ]

Mon, 16 Jan 2006

on the epistemology of humor (excerpt)

It's a work I'm planning for later this year, but for now you get this glimpse:

Humor in its most basic form draws from one or more of five areas, which I will call the Five Pillars of Humor. These are,
  • Xenophobia—Is it different? Then it's funny. This includes homophobia, racism, sexism, and religious humor.
  • Violence—pain is good for the soul. Also, it's good for a laugh.
  • Irony—it may seem like a compliment... until your sarcasm melts their flesh off. (...and that was funny because it was violent.)
  • the Ridiculous—the one category that truly does not require humor at someone else's expense, the ridiculous is humor nevertheless. Puns and Chuck Norris's cancer-curing-too-bad-they-don't-exist tears go here.
  • Poop—in the words of Lord Opticord, "dog poop! ahhh hahahahahahaha, dog poop! That's a good one!"

Regular readers will note that this is a substantial revision of my earlier work on the five pillars. I feel that broadening its scope from the previous instantiation makes this a theory which appeals more to the masses, thus driving up book sales.

Also, before anyone else says it, "yay, a non-technical blog entry!"


[ permalink | 0 comments (add one you lazy bastard!) ]

gorgeous models for whatever you want

I found a stash of spice models. Man, that's just hot.

Also, reading this makes me sad. I always thought that the audio hobbyist community was at least a little competent, but these guys understand almost nothing about circuits. It's kind of painful, and a little disappointing. I will continue to choose to believe that amateur radio hobbyists are more knowledgeable than these guys—admittedly, given that there's even more voodoo up in the closer-to-daylight reaches of the spectrum, if I were a betting man I might have to reconsider my position before setting any odds. (In case you're wondering, I ran across that page searching for a spice model for the MPSA42 transistor.)


[ permalink | 0 comments (add one you lazy bastard!) ]

Sun, 15 Jan 2006

a thought experiment

Every once in a while, one ought to derive the complete transfer function for some relatively nasty circuit by hand—just to, you know, stay in shape. Simulation is an evil crutch.

In that vein, I decided to redesign the audio modulator for my plasma tweeter and make it a bit higher performance (the last one was embarassingly simplistic and st00pid). To make it more fun, I decided to make it closed-loop but ac-coupled, and I wanted to use a minor loop for the DC biasing.

Thus, the circuit you see to the right, which is perfectly serviceable as a gain-of-100(ish) audio amplifier with independently variable DC output voltage (via the pot in the loop). This'll let me run the screen bias where it wants to be for the appropriate plasma flame size, and simultaneously give me decent audio fidelity.

Note the DC loop right around the op-amp to bias the common-emitter stage and the inverting feedback (to the wrong terminal on account of the inversion in the external circuitry) that handles the AC loop.

Yay.


[ permalink | 0 comments (add one you lazy bastard!) ]

Thu, 12 Jan 2006

...but I only have eyes for μ

After a minor circuit redesign (resulting in the savings of two high-voltage caps) achieved with the old boards by way of some trace-cutting, my first scope clock now has a friend. Like George says, you just need two of some things, like helicopters.

The next thing I had to start thinking about was how to magnetically shield the clocks when I put them in their cases. Since space will be tight, the CRT will be sitting basically right on top of the power transformer, which rudely spits off this rather large 60Hz field that causes the picture to swim (very!) noticeably. Since my refresh rate is not quite at 60Hz, the swimming ends up happening at the beat frequency between the mains 60Hz and the draw rate from the PIC. If the two are synchronized—something I've played with in code—you don't get swimming, but you do get static distortion. Plus, I can't quite get the refresh rate up to 60Hz with the code as it is right now, and while I can probably hit 55Hz, I'd have to draw fewer points in order to squeeze out that last bit of performance. I'd rather just shield the bastards and not worry about synchronizing the refresh.

After some research on what's available, I've decided to turn to Advance Magnetics, purveyors of a few different kinds of flexible high-permeability materials with which I"ll wrap the neck of the CRT. There is something very suspenders-UNIX-jiggaHertz cool about talking to the guys who work at a company like that—I mean, how often do you call up a company and start talking physics with the person who answers the phone? But don't take it from me—have a look at their engineering catalog. OMGHAWT.


[ permalink | 2 comments ]

Wed, 11 Jan 2006

scientific progress goes boink

...but only after much fizzling, popping, etc. I cooked a good half-dozen transistors and several high-voltage caps getting this sonofabitch working (mostly because I was being an idiot with respect to the return current paths), but that's to be expected—after all, any time I build a power supply, some magic smoke earns its freedom.

The results speak for themselves, and yes, the time displayed on the clock is correct.


The whole enchilada.


Old and busted? Blue hotness.


Let me count the hacks.


[ permalink | 2 comments ]

Tue, 10 Jan 2006

productivinsanitillness

RCA

Also, clock construction is progressing nicely. The board is assembled except for the deflection amps (didn't have the 430k resistors; I'll have to borrow some from work), and I actually fired up the CRT and got a hot little blue-white dot. A tweak or two on the focus and control grids and it was dialled in nicely. Since the trafo is rated for 480 VRMS center-tapped (240-0-240) at 40 mA and I'm only drawing about 3 mA from it, I'll have to add a series resistor on the primary or risk blowing up the power supply caps (they've got about 390 V across them right now, whereas they're only rated for 350 V—by the way, the United Chemi-con KXG line of electrolytic caps gives exceptionally high charge storage density; I highly recommend them for your next high-voltage project).

Pictures forthcoming, and enclosure on its way.


[ permalink | 0 comments (add one you lazy bastard!) ]

will of the overmind

Submit.


[ permalink | 1 comment ]

Mon, 09 Jan 2006

step aside, James Brown

Get up, get down, get dressed.

I couldn't find the logo in high enough resolution, so I just drew my own. The corners of the square overlap the diamond more than they should. Such is life.

I think I'm going for bright green. Ladies, don't be shy—we all know that pink is the new black.

Edit: not satisfied with just one, I also had to do a General Radio one. That's a hot little logo. Next up is probably the old-school RCA (with the lightning bolt coming off the bottom of the A).


[ permalink | 0 comments (add one you lazy bastard!) ]

Sat, 07 Jan 2006

can't stop the funk

I can't claim credit for the title—Woz suggested it when I failed to come up with anything. I guess I'm in an unstoppable funk of my own.

Wow. That's completely hot, and art.com actually sells them.

Also at Woz's suggestion, I'm going to make a bunch of t-shrets out of the logos of various old-school engineering firms. I'm thinking Telefunken, RCA, Burroughs, Weston, General Radio, stuff like that. Respond with other ideas—you know you have a favorite or two I'm forgetting.

Oh, also, feast your eyes upon my latest clock project. The boards were delivered via FedEx on Friday, so next week I'll be assembling, testing, and tuning.


[ permalink | 2 comments ]

Fri, 06 Jan 2006

leavin' on a jet plane

...bound for Vegas. Today I head out for a weekend of CES, Cirque, and general schwag whoring with Ms. Wozniak. I'm psyched as all shit.


[ permalink | 0 comments (add one you lazy bastard!) ]

Thu, 05 Jan 2006

coming up roses

Last night Tim, Mike, and I joined many others in watching UT play USC in the Rose Bowl at Dylan's (on his breathtakingly gorgeous Runco 3-chip DLP projector). Despite the best efforts of USC, the announcers, the fans, and even some of their own players (witness the many fumbles), UT came out on top in what turned out to be a game every bit as great as we'd expected. You heard it here first: Vince Young is some sort of cybernetic alien being from a planet where football isn't just a game, it's the only viable means of survival (as well as the mating call, although I'd imagine it functions well that way here on earth too, at least for Mr. Young).

This morning at the gym, I met a very interesting person, Seton Motley, a rock musician-cum-conservative political columnist here in Austin. I spotted him on the bench, and we got to talking about music—his knowledge of Cornell, Vedder, Gozzard, and their ilk was first-rate, and from talking to him I'd guess he is himself a reasonably good musician as well. He recommended to me, and so I shall recommend to you, Soulhat, a band from Austin whose song Bonecrusher I've just realized I have heard on the radio (and even enjoyed). I'll have to check them out further.

After going from Axl Rose to Dave Brubeck by way of Robert Plant, we moved on to politics, local, national, and international. Being somewhere rather far to the left socially, he and I needless to say didn't see eye-to-eye on several issues, but the conversation was at the very least entertaining. At the end of it (after the passage of no small amount of time!), he mentioned his website, NewsOfTheDay.org.

Interesting people are cool.

Sonofabitch my 5-day simulation just died because some incompetent jackass in IT decided to kill the license server. I'm going to make a quick stop by his office on my way to what I can only assume is prison given how angry I've just become.


[ permalink | 0 comments (add one you lazy bastard!) ]

Mon, 02 Jan 2006

<title goes here>

Well, I'm disappointed that my last attempt at finding a USB-serial converter that'll work with my PIC programmer has failed miserably. Now I have to send the sumbitch back—but at least I get the shipping back, since UPS screwed up.

If you were waiting with bated breath for a link to the Imogen Heap album, wait no more.

Also check out So Young But So Cold, a collection of underground French music from 1977-1983. This is what the French were doing while we were punking out, apparently. Whatever else you can say about it, you have to admit it's damn good stuff. Enjoy.


[ permalink | 1 comment ]

Sun, 01 Jan 2006

backbreaking criticism

I'm not clever enough to keep my titles entertaining. Shoot me. With a .30-30.

I went with Cindy and Casey to see Brokeback Mountain. I didn't have any particular expectations, except that it would be something of an Oscar-chaser. Turns out, I was wrong to expect that—it was a genuinely well-done film and a very good story. It's one of those movies you should probably see so you can talk about it at cocktail parties or on dates, or if you genuinely like somewhat depressing unrequited love stories. If I were you, I'd wait for DVD.


[ permalink | 0 comments (add one you lazy bastard!) ]

Fri, 30 Dec 2005

more new music

Watching the last few OC episodes of Season 2, I noticed a cool song during the funeral scene (sorry, not to ruin it—at least I didn't tell you who dies). Turns out, it's by an artist who calls herself Imogen Heap. I don't have it up on positron yet, but it'll get there eventually, at which point those of you "in the know," as it were, ought to grab it, give it a listen, and buy the CD. Yeah, yeah, the feedback loop is attenuated somewhat, but some positive feedback is better than none.

If you like Bjork, give Imogen a try. I think it's pretty good stuff.


[ permalink | 7 comments ]

Wed, 28 Dec 2005

shiftless layabout

Apparently, until a couple days ago, I was the only person in my family who knew the joy of teh OC. Like I said, until a couple days ago, when Aziza decided to pick up the DVDs of seasons 1 and 2. As I write this, we are in the final minutes of episode 26. Once season 1 is defeated, I'm going to bed. Anna is still the best of the Seth coven, and I'll never forgive him for fucking that shit up.

My work at the bench (conveniently located in front of the Provider-of-teh-OC) has been fruitful, and various documents shall soon be published discussing my progress.


[ permalink | 1 comment ]

Tue, 27 Dec 2005

old friends, new progress

Vacation has treated me well thus far. I've been slaving away at my makeshift workbench, the coffee table in the family room—now the home of two laptops, my trusty Tek 2465 (brought along from Austin in lieu of my usual Christmas companion, my PS2), a breadboard, and assorted signal and power wiring for the whole thing. My work thus far has produced a reasonably large amount of PIC code, a brand-spanking-new PCB layout, a couple really nifty high-voltage circuits, and a newfound appreciation for the GNU PIC utilities, notably gpasm and gpsim.

Today Dave Crimmins, a friend I haven't seen in something like three or four years, came over and hung out for an hour or so. He just got back from Iraq three days ago—he was in the Army in Korea just after we got out of high school (yup, we still have an active military presence there) and was called up from the reserves a bit over a year ago. He was in an engineering crew sweeping roadways for explosives, and had some interesting stories to report, from Iraqi police helping the insurgents plant bombs along the roadways to the overblown reports of the quality of the Republican Guard. Quoth Dave, "It would've been fun to go out and fight those guys in the desert—it would have been like a video game." Indeed.

I'll probably go get a drink with Dave later this week, and will certainly pass along any other interesting stories I hear.


[ permalink | 0 comments (add one you lazy bastard!) ]

Wed, 21 Dec 2005

xmas xperimentation

I adore my laptop, but it is pretty friggin big. Beyond that, it doesn't have a serial port, and as we all know, USB-to-serial converters are never good enough (with the exception of this one, I believe—we shall see tomorrow). That really sucks, because I was planning on doing some stuff at home over Christmas that would require a PIC programmer, and for that I need a real serial port. Then it hit me: I can just get IT to give me a Thinkpad T30 over the break, complete with a real honest-to-God serial port sticking out of the back. Hotness.

Next problem: Windows! The answer, of course, is Knoppix to the rescue. Persistent data? Thanks to Dell (who gave me a "free" 128MB USB stick when I got my computer), I have that taken care of, too, as Knoppix can, since version 3.8 or thereabouts, save persistent data on a USB stick and seamlessly reintegrate it at the next boot.

This vacation, then, will be a test of two things: first, how well does this Knoppix persitent thing work? Second, can my cantankerous disregard for all windowmanagers post-fvwm2 survive the week with nothing but KDE to get me by?

All of this, and more, shall be revealed!


[ permalink | 0 comments (add one you lazy bastard!) ]

Mon, 19 Dec 2005

a look at what's to come

Just a little peek.


[ permalink | 0 comments (add one you lazy bastard!) ]

ace (defensive) driver

Hey, remember that whole ticket thing and the defensive driving and all that jazz? Well, I took the course yesterday, and I am truly a changed man. I'll never speed again.

No, the course didn't convince me to drive better. It was, however, fucking torture. According to the rules set out by the State, the course must take a minimum of 6 hours, including 1 hour of mandatory break. So I couldn't just run through it in an hour like any reasonable person would—I had to flip back and forth between the course and a few lively games of C&C Generals while watching the Chargers defeat the Colts (woot!) and then the Cowboys get eaten alive by the Redskins (Little Big Horn, indeed).

But hey, apparently I'm a really safe driver, because I got 100% on the final test. Remember that next time you're clawing for the oh shit! handle as we blow past some poor old woman at 140, horn and stereo punctuating the screams of the passengers and the sirens blaring behind us.

...and just think, we won't even have three stars yet!


[ permalink | 2 comments ]

Sat, 17 Dec 2005

wardrobe, in spare oom

I went and saw Chronicles of Narnia tonight, and it made me way happy. My older sister called me last weekend to tell me that she'd gone and seen it, and recommended that I do so as well. See, when we were little, my sisters and I loved the Lion, the Witch, and the Wardrobe—and the new version stands up to the test of memory-inflated-over-time.

Visuals get two thumbs up. The special effects were done by Industrial Light and Magic (Lucasfilms's CG/makeup/effects house), and they were everything you'd expect. Best visual in the whole thing, for me, was the brief phoenix animation in the middle of the big battle.

Tilda Swinton was great as the White Witch, Liam Neeson's voice acting as Aslan was everything you'd expect it to be, and (as I managed to call in the theater!) Michael Madsen lent his voice to Maugrim, the Witch's wolfish chief of security. The kids were, well, kids, but they played their roles well enough. Oh yeah, and the Professor, despite his very brief appearances (just as in the book), was very cool, too.

Go see it in the theatres. It's worth the big screen.

Next up, King Kong.


[ permalink | 3 comments ]

Fri, 16 Dec 2005

digital in disguise

I'm slouching towards Gomorrah, and it's DSP code all the way down. As of yesterday, I'm being so presumptuous as to write patch code for the DSP on the ProSLIC, which is actually an interesting challenge. The code that's already in there is on a ROM, so it can't be modified, but we have a 1024 word patch RAM and an 8-entry patch table, so with a little sleight of mind you can turn its brown eyes blue, so to speak.

In other news, I've found a new project to work on over Christmas break. I can't tell you what it is, but it does involve the AD7302, mostly because I'm too lazy to bother assembling a pair of 8-bit resistor/op-amp DACs.


[ permalink | 0 comments (add one you lazy bastard!) ]

Tue, 13 Dec 2005

a cappucino machine. no no, a sno-cone maker.

Watched Mr. and Mrs. Smith with Mike and Cyrus tonight. It's like a combination of Assassins and True Lies. Really fun. Angelina is almost as hot as Charlize—pretty much the highest praise I can give.

Guerolito isn't as much a remix album as an album remix; that is, the track ordering is the same as Guero, except they're all remixed. I haven't gotten all the way through it yet, but it's really fucking good.

Now it's bedtime. Tomorrow I get to start on calibrations!


[ permalink | 4 comments ]

with a quickness

Running to Best Buy to pick up Beck's new album, Guerolito. I don't care that it's a remix album, it's still badass that he's got another one out.

Full report forthcoming.


[ permalink | 0 comments (add one you lazy bastard!) ]

Mon, 12 Dec 2005

that's unpossible!

What's more incongruous: a guy wearing a football jersey walking into an Aveda store, or the notion that anyone would wear a Tim Rattay 49ers #13 jersey?

Either way, I was getting some funny looks.


[ permalink | 0 comments (add one you lazy bastard!) ]

Sun, 11 Dec 2005

a pyrrhic victory

Another such fantasy football victory and I am undone.

Actually, I'm undone regardless, but I managed to pull out a win on the last game of the season to keep Mike from going to the playoffs.

With regard to fantasy football, I am talented in one respect: to cause injury. This year, I drafted Javon Walker (out for the season after the first game), Patrick Crayton (out after three or four games), Braylon Edwards (out for the rest of the season as of last week, the only week in which he had a decent game), Brian Westbrook (out for the season and probably half of next season with a Lisfranc fracture), Darrell Jackson (out for most of the season, but coming back just in time for the last couple games, and probably the playoffs, if the Seahawks make it), and probably some others I'm forgetting.

Apparently getting drafted by me is as bad as appearing on the cover of the Madden NFL video game. Anyone have any requests for next year?


[ permalink | 0 comments (add one you lazy bastard!) ]

Fri, 09 Dec 2005

gooooooooooooooooooooooooooooooooooooooooooooooooooooooooal goal goal goal goal goal goal goal

It's official: the FIB fix I proposed on Monday and worked out Tuesday with Marius works perfectly. Also, I've confirmed on more than one part that Zhiwei's "40μA" current isn't. Score one for the fat man.

In other news, I've decided that amber (#FFBF00) makes a much better foreground color than gray for my XTerms. It looks horrible against this medium gray, but against either white or black it's quite visible. I knew you wanted to know that.


[ permalink | 0 comments (add one you lazy bastard!) ]

Wed, 07 Dec 2005

Texans are idiots

...when the weather turns "cold." Right now outside it's pretending to spit "freezing rain." I drove home from Mike's and people were literally going 25 MPH on the highway—and they just don't get that it's braking you have to worry about. On one hill on Loop 360, there were about a dozen cars just pulled off—some crashed into others, some just stopped out of fear, apparently—and the people still on the road were doing unspeakably stupid things in an obvious attempt to claim money from their insurance company.

Oh, also, we watched D.E.B.S. tonight. Holy crap that's a bad movie—about high school-aged female spies, one of whom happens to get into a lesbian tryst with the archvillain. I think they knew their target audience well.


[ permalink | 2 comments ]

we can't stop! it's too dangerous!

I've begun to bittorrent every episode of Top Gear I can find, because this show is awesome. In short, it's a (very!) humorous show about serious cars.

It's funny to hear British guys making fun of the French and Germans (and, well, everyone else, too).


[ permalink | 0 comments (add one you lazy bastard!) ]

Tue, 06 Dec 2005

allow us to probe you...

More probing today at work. This time, I discovered the solution to the other mystery I've been chasing down—the supposedly accurate 40μA current I'm getting from the bandgap is a couple percent off!

Woot. Acquitted on all charges.

We now return me to my regularly scheduled programming, consisting of finding shit other people fucked up (not that I wasn't doing that already, as it turns out)!


[ permalink | 7 comments ]

Mon, 05 Dec 2005

Sunday slumber mirthfully broken; manic Monday; submitted for thirsty Thursday

On Sunday morning, I dreamed that a group of Fort Awesomeites were sitting around shooting the shit. Someone (I'm not sure who) asked, "what the fuck is a brainchild?" Ian, in my dream, replies (with perfect Ian nuance), "deeelicious." I actually laughed myself awake.

Monday was an extremely productive day. First, I learned the basics of probing a de-capped, de-passivated chip fabricated in .18μM CMOS with a probe tip so small that you don't actually see the tip under the microscope—you see only an interference pattern in approximately the spot where the tip should be. Man that fucker is small.

After learning some probing techniques, I was able to track down (with Marius's help) the source of all (most?) of the problems we'd been seeing with my circuit—a switchcap resistor which had been unaccounted for and which managed to screw up the gain of a particular sensor by a good 5%. Holy shit! I'm fucking pumped as shit about this, since I've been beating my head against a wall on this particular issue for a week or more, and have just cracked it wide open. Bad ass. A FIB fix is in the works as we speak.

Finally, Cyrus suggested tonight while hanging out with Mike and me that we needed to invent a new drink—the Basra Bunker-Buster. After much brainstorming, we settled (by way of thoughts of Bomb Pops, Jell-o shots, and some godawful ideas too horrible to even mention) on the following:

  • Fill a highball glass a bit over halfway with a strong mix of Red Bull and vodka
  • Pour a shot of Blue Curaçao into a shot glass
  • Add a packet of red Pop Rocks to the shot glass
  • Immediately drop the shotglass into the highball and drink like it's going out of style

This Friday is the SiLabs Christmas party. The afterparty, at Mike's house, will feature these.


[ permalink | 1 comment ]

Sat, 03 Dec 2005

sex in a (six-speed gear)box

The KartBoy shifter and bushings are installed. My transmission officially makes me horny.

Rodin, if you're looking for a relatively inexpensive upgrade to your car that will make you smile every time you drive it, they make short shifter and bushing kits for the Impreza wagon, too...


[ permalink | 0 comments (add one you lazy bastard!) ]

Fri, 02 Dec 2005

a Monican agent!

I went and saw Aeon Flux tonight with Alida, Matt, and Cindy. I know, this movie has been completely panned by the critics, and I guess I can kind of see why—I doubt any of them have seen the entire animated series, which would probably have enhanced their appreciation for the whole thing a lot more.

So how do the two compare? Well, they don't, really. The cartoon is still clearly better, but I appreciated the way that the movie borrowed certain elements from the cartoon—a nod to fans of the series—and turned them into something distinctly different. How else are you going to turn a show consisting of fifteen episodes (comprising the 6-part pilot, four shorts, during each of which Aeon dies, and ten full-length episodes) which provide only a glimpse at some overarching plot into a coherent film that lasts ninety minutes?

So the world is somewhat different and the plot and characters are a patchwork of transplants from different parts of the series. How about the action? Well, not great, but not bad. The special effects, though not altogether in-your-face, are kind of cool nevertheless. The fight scenes are the standard too-close-and-cutting-too-fast bullshit that Hollywood tends to produce on account of a fundamental lack of martial arts talent and bad choreography. Oh yeah, and Charlize Theron is almost believable in her role as the best and most ruthless covert ops agent in the world. Hey, at least they eventually get the hair pretty close to right—though, since it's Charlize, the scenery, though not always correct, is always good.

The verdict: unless you're catching a matinée or, like me, you absolutely couldn't wait for this movie to come out, wait until video (hey, you can probably even get Muth to rent it for you). Oh yeah, and if you have the chance, watch the cartoon series first.


[ permalink | 1 comment ]

Thu, 01 Dec 2005

rabbit rabbit

Happy December.

Also, for your viewing pleasure, another Nürburgring run, this time in a Subaru STi Spec C. Seven minutes, fifty-nine seconds, baby.


[ permalink | 2 comments ]

Wed, 30 Nov 2005

skillz

This video is hot as hell.

Executive summary: the Nürburgring Nordschleife is one of the most fearsome racetracks in the world. Many people would kill for the chance at a few laps, and some are even lucky enough to get them. One such person is one of the guys from the BBC2's show Top Gear, Jeremy Clarkson. After taking lessons from a professional and practicing like a bastard, he barely manages to break a 10 minute lap. Upon announcing this accomplishment to his instructor, she (yes, she—how hot is that?) replies "ten minutes? I could do that in a van."

This woman has done about 15000 laps around the Nürburgring—now including two in a diesel-powered Ford Transit. Note that a 10 minute lap time equates to an average of 80 MPH.

Edit: another link.


[ permalink | 4 comments ]

he's got the sickness

Yeah, yeah, I just can't leave well enough alone. I promised myself that I wouldn't make any power mods to Dagny until after she hits 10k miles, then promptly found a loophole—suspension and drivetrain don't count.

By the end of the week she'll be sporting a brand new KartBoy short shifter. Suspension will have to wait until I get more time, but springs, hats, sway bars, and end links are all happening eventually.

The sickness is here, and in full force. Nothing appeals to me like the intersection between tinkering and optimization.


[ permalink | 0 comments (add one you lazy bastard!) ]

Sun, 27 Nov 2005

didn't ask for a fuckin' travelogue

Nothing major happened on the way back, but there were two minor incidents of note.

  • I was stopped in Wichita for going 80 in a 70, but he only gave me a warning and made fun of me for trusting my radar detector too much ("just slow down and stop payin' attention to that thing!").
  • In Missouri I saw a pretty bizarre scene: a truck hauling bales of hay had caught fire and was parked on the side of the road. Fire and police crews were just arriving as I drove past. I don't think anyone was hurt, which makes me feel OK saying that it looked pretty damn cool.


[ permalink | 4 comments ]

Sat, 26 Nov 2005

positive flux

Scott (one of my best friends from high school, and sadly one of the few with whom I'm still in contact, though even in his case somewhat rarely) and I watched the Aeon Flux box set in its entirety last night: ten episodes, four shorts, and the pilot. Damn, but that show ruled.

The box set saw a substantial amount of rework. It's been fully color corrected, sharpened, and, in certain parts, recut and even revoiced. I don't have a list yet of the differences between the original cuts and this "director's cut," but I'm sure someone more knowledgeable in the ways of Flux will put up a list somewhere. Maybe I'll even link to it.

The verdict is a strong yes on this box set—super excerrent; two thumbs up, fine holiday fun.


[ permalink | 0 comments (add one you lazy bastard!) ]

Thu, 24 Nov 2005

happy Thanksgiving!

I haven't slept since 6a Wednesday. This is what I call a throwback T-day.

The Aeon Flux DVDs arrived just as I was leaving my apartment yesterday; I'll watch them soon and let y'all know what I think.

Also, I drove my dad's new M3 convertible when I got home. Hot damn, that's a sweet little car. The two features which most assert themselves upon your senses are the incredible feel of the brakes and the absolutely silky smooth Getrag six. If it were me, I'd have gone for the coupe—I hate convertibles—but the point is somewhat moot given that neither could unseat Dagny as the automotive queen of my heart.


[ permalink | 0 comments (add one you lazy bastard!) ]

Wed, 23 Nov 2005

someday...

...I'll synthesize one of these and use it for something hot.

Also, I think it would be badass to build a discrete, fully-analog OPL3 synthesizer. I might just have to do it. If you think that's dumb, check this out.


[ permalink | 0 comments (add one you lazy bastard!) ]

talk about lilly friggin white

Holy crap. My high school is as crackerass as they come.


[ permalink | 0 comments (add one you lazy bastard!) ]

don't pick up hitchhikers?

My mother called me yesterday because a friend of hers has a niece in Austin whose family still lives in Fort Dodge (Algona, actually). Would it be OK, she asked, if Nicole hitched a ride with me to Fort Dodge? Hell, why not—company is (almost) always welcome on a 14-hour car ride, and how can one refuse someone a chance to see their family on Thanksgiving when there's room in the car?

It is kind of weird to drive across the country with someone you've never met before, though. Here's hoping she's not psycho.


[ permalink | 0 comments (add one you lazy bastard!) ]

Mon, 21 Nov 2005

frustration is...

...successfully debugging everyone's problem but your own.

There have been several breakthroughs with the chip thus far, and pretty much all of them have been as a result of some suggestion I made—"try it without the choppers," or "move the common-mode around," or whatever.

No one has come forward with any brilliant ideas regarding the gain error in my beloved monitor ADC. The precision is there, but some strangeness is causing channel-to-channel variation in the gain (to the tune of a couple percent). Fuckin' shit.

Here. Y'all read this and tell me what I'm doing wrong.


[ permalink | 3 comments ]

Sun, 20 Nov 2005

don't know my own strength

Last night doing a brake job I managed to tear apart a Craftsman 16mm 6-point socket. I didn't think such things ever happened, but now I have proof. I'll definitely take a picture before I exercise my lifetime warranty (thank you, Sears!) and get me a new one.


[ permalink | 2 comments ]

Thu, 17 Nov 2005

magic smoke mirage

Sweet. I'm officially attending CES in January. Unlike some *cough Woz cough* my employer isn't sending me, so in addition to attending the show I'll probably be relocated to the basement and asked to take care of the roach problem, but screw it. Given that in previous years I've bowed towards Las Vegas five times a day over a certain weekend in January, I'll be way too embroiled in the hotness to notice the rats gnawing at my toes while I sleep.


[ permalink | 0 comments (add one you lazy bastard!) ]

whoa, good

No need to comment; I know I'm a l00zer for appreciating this.

Edit: the original link went down, but here's another one. This also answers the question "who rendered this?" since it's apparently an easter egg on the Revenge of the Sith DVD.


[ permalink | 4 comments ]

Wed, 16 Nov 2005

money laundering

I spent my morning laundering drug money.

OK, not really. What I did was sold my Camaro to a guy from Louisiana who drove up with a flatbed and drove her off—after paying me in cash.

I then went to the bank and deposited said cash, whereupon several forms were produced, identification checked, various documents stamped, identification rechecked, money counted, amount noted, surreptitious glances exchanged between clerk and manager, and finally I was given a deposit slip and sent on my merry way.

That is without a doubt the largest amount of cash I have ever handled. All I can say is, transactions that "sanitize" the process (electronic banking, credit cards, &c) do not do proper justice to our great instrument of commerce—there's nothing quite like holding a fat stack of cash in your hands. I recommend you sell a car in cash some day—it's breathtaking.


[ permalink | 2 comments ]

Mon, 14 Nov 2005

milking the system

I've been meaning to do this for a while, but I finally got my ass in gear and went about abusing my position at SiLabs in order to get free shit. In particular, I got one of the development kits for the C8051F320 microcontroller on the cheap (free, really). Now I have to figure out what I want to do with it.

Y'all should totally start using these things (6.115, anyone?). They're really sweet.


[ permalink | 0 comments (add one you lazy bastard!) ]

portability, here we come

The 300-MHz 2465 and 150-MHz 2445 represent the leading edge of technology, establishing higher standards in both value and performance for today's portable oscilloscopes. They enable faster and more precise measurements than ever before possible in a portable oscilloscope.

So reads the datasheet on the Tektronix 2465 scope. I just managed to pick one up off eBay for a cool $250—a damn good deal, even now, as most of them will go for upwards of $400. Woot.


[ permalink | 2 comments ]

Sun, 13 Nov 2005

a cute trick

Marius showed me an interesting way of thinking about the input stage of the classic μA741 as designed by Dave Fullagar (not Bob Widlar, as many people think—he designed the first monolithic op-amp, the μA702).

The first picture to the right is a Widlar current mirror; as you'll remember, it's a feedback-biased mirror that copies the input current to the output current as shown. If we add a PNP transistor between the NPNs on the output side, we can crank on its base in order to change the voltage on the input side, thought the current is unaffected. We can also modify it by splitting the upper NPN; assuming matched transistors, the current is split perfectly between the two outputs, since they share the same collector-emitter voltage.

If we combine the two modifications, what do we have? As we move the common-mode voltage on the two PNP transistors, we change the voltage on the input side, but don't change the way the current is shared. If, however, we apply a differential voltage, we change the way the current is shared between the two sides; add a mirror on top in the standard op-amp fashion and you get a pretty cute input stage.

Why would you do this? The transconductance of the input PNP diff pair actually adds with that of the NPNs; if you can only make (extremely shitty!) lateral PNPs, as was the case in Fairchild's process at the time, you get fucked either in the input stage or the output stage if you want to have any reasonable common-mode range. This lets you get around the biasing problem and the transconductance problem by using PNP inputs in the first stage without sacrificing Gm.

Note that I've drawn this flipped around—the schematics to the right are a sex-changed version of the real μA741 (also, they have a "helper" transistor, some degeneration, and offset nulling inputs for the turnaround diff pair).


[ permalink | 4 comments ]

Sat, 12 Nov 2005

marvellous diction

I think that's what struck me the most about Good Night, and Good Luck—David Strathairn's amazing diction as Ed Murrow. That, and the observation that literally anyone could look cool if filmed in black-and-white while smoking a cigarette. Too bad they kill you.

GNGL is a quality movie—even Hippo might approve of it, after a fashion. It covers serious material, so don't go if you're looking for a lighthearted flick or date fodder, but do see it (on DVD, at the very least, as it doesn't get all that much from the big screen, but is good enough to be worth the money anyway).

Oh, I also caught a sneak of Just Friends on Thursday night. It's one of those painfully funny movies (main character gets shat upon something ferocious) on completely trite subject material, but I still laughed a whole lot. I rate it a must-rent-and-get-drunk—two beers up.


[ permalink | 0 comments (add one you lazy bastard!) ]

Thu, 10 Nov 2005

xcircuit, Xorg, and NVidia GLX

In case you're wondering, Xcircuit now supports OpenGL (though I don't know why it's really necessary, as such...). If you want to get it working with a machine that's using Xorg and the NVidia GLX drivers, you'll have to go through some contortions, though. In particular, you'll need to link against libpthread and libXxf86vm, which can be accomplished by adding -lpthread -lXxf86vm to the configure script everywhere that either LIBS="-lGL" or LIBS="-lGLU" appears.

Also, how awesome is it that two Panthers cheerleaders were arrested for battery after getting into a fistfight with a woman who was yelling at them for fucking in a bathroom stall?


[ permalink | 3 comments ]

Wed, 09 Nov 2005

in the court of the traffic king

I got a speeding ticket last week for doing 70 in a 55. Now, in Texas, you can plead no contest and take a defensive driving course once a year to nullify a ticket, but doing this sucks for a couple reasons: first, it costs $100 plus the course (another 50ish), and second, you have to actually spend six hours doing the fucking class.

Here's the beauty: there are a couple attorneys in town who specialize in traffic law. By that, I mean that when you get a ticket, you hire them and they make it disappear. I've used their services once before, when I got four simultaneous moving violations (80 in a 50, following too closely, failure to use turn signal, and passing unsafely). They just went away, and for less than a third of the cost of the ticket itself (not to mention the insurance rate hike and all that).

I believe you can actually have these guys on retainer if you'd like, and for a monthly fee, they'll take care of all the tickets you want.

Texas is kind of crazy.


[ permalink | 2 comments ]

Sun, 06 Nov 2005

delaying the magic

Boston ruled, as expected. Also, as unexpected—but definitely ruled.

Now I'm dying of boredom in the Newark airport. Delayed flights can suck the root.


[ permalink | 2 comments ]

Fri, 04 Nov 2005

thirsty thursday fallout, or stars and bruises in and around my eyes

Well, this week's Thirsty Thursday was a rousing success. The handles of Daniels (that almost rhymes...) and Cuervo seemed to go over well (though somehow I remained almost wholly unsuccessful at forcing the adoption of the Armadillo Sunrise—George and Ian tried it, but I noted that they didn't ask for seconds).

Also, I punched Radio after he threatened (empowered by vodka muscles) that if I did so he'd punch me back, and in the face. Apparently the man doesn't bluff when faced with vodka, 'cause I now have my very own little black eye. I'm kind of proud of him, actually...

I got up (after about 3.5 hours of sleep—when I called to ask for a wakeup call, the woman on the other end of the phone said "but that's less than three and a half hours from now! Is that enough sleep?"), showered, and headed to campus, where I'm now burning some time before the CICS review starts. So here I'm sitting when who but Paul Gray (of Gray and Searle, not Gray and Meyer) walks by. I stopped him to say hi, and while I'm pretty sure he didn't remember me from 6.002 back in 1999, it was still pretty cool.


[ permalink | 4 comments ]

woot

That is all.


[ permalink | 0 comments (add one you lazy bastard!) ]

Mon, 31 Oct 2005

quality ringer material

I've always thought the best cell phone ringers were NES game songs (evidence: I've got a good couple dozen of 'em on my phone), and now the hotness gets hotter: the NES Sound Format is basically a wrapper around the 6502 code that drives the NES sound system; the result is a perfect facsimile of the original songs. The OCRemix website has a reasonable archive of NSFs, and you can find more laying around in various places. Moreover, Zophar has a (windows only) utility that converts them to MIDIs. Swoot.

Of course, that one isn't quite good enough, so I'm planning on writing my own soon enough...


[ permalink | 2 comments ]

Sun, 30 Oct 2005

doom, doooom, DOOOOOOOOOOOOOM

It has the Rock and the BFG. What else does it need?

OK, it also has plot holes big enough to pass a chick with whom George might have slept after getting drunk, but you shouldn't attempt to pick apart the marvellous tapestry of plot placed in front of you. Instead, appreciate the hotness of the chick, watch the Rock discover "a big fucking gun," and note the altogether-too-long "first person shooter" homage scene.

Yeah, maybe you should see it in the theatres. Don't worry, once you tell people you went and saw Mortal Kombat with Christopher Lambert, they're not gonna bother making fun of you for this.

Also, go listen to the Doom Song. Edit: Alida points out, rightly, that I failed to mention that she's the one who finally sat me down and made me watch Invader Zim. It's hawsome.


[ permalink | 1 comment ]

Fri, 28 Oct 2005

the ultimate song

Gonna be in Boston again. Getting in Wednesday night, leaving Sunday night.

Woot. SiLabs is paying for it.

If you understand the origin of the title of this entry (yes, it has a specific, semi-sensical meaning), one thousand bajillion ego points to you.


[ permalink | 9 comments ]

Thu, 27 Oct 2005

late for a very important... rendezvous

The story goes something like this: Charles Lelouch, a French filmmaker, released a short film called C'Etait Un Rendezvous in 1976, apparently in an attempt to answer the question "what do you do when you want to see Paris and only have 9 minutes and a Ferrari?" There are apparently no special effects, and the speed of the film is not altered in any way.

Holy crap.


[ permalink | 1 comment ]

Mon, 24 Oct 2005

now I get it, George

Remember when you were completely addicted to Project Gotham? Now I understand. As of Saturday, I'm hooked on Gran Turismo 4.

Also, Soul Calibur 3 is coming out tomorrow. My week is shot.


[ permalink | 5 comments ]

Fri, 21 Oct 2005

Jeff Goldblum...

...is watching you poop.


[ permalink | 2 comments ]

the interviewee has become the interviewer

Sweet! I did my first interview today. It was kind of cool.

Last night, while trying to come up with reasonable interview questions, I got to thinking about how an emitter follower can have a negative real input impedance when driving a capacitive load. In particular, I wanted to show that it was the case, so I busted out the small-signal model and started burning through some lead. It only took two pages of engineering paper, but I decided that it made an exceptionally poor interview question (because it was all math and no intuition).

Instead, I went with a simple question about BJT device physics and a basic switched-capacitor integrator.

The BJT question is cute and quick: say we have an NPN transistor. OK, now consider that a diode is just PN, so if I have two of them back-to-back, I have NP-PN—somewhat similar, but does it act like a transistor? No. Why? Ohmic contacts; more specifically, what we get is infinite recombination velocity in the base, which reduces β to 0. So what does that imply about the relationship between base doping and β? Lower doping gives higher beta, because it increases the time before the minority carriers we inject recombine. We could also change β by making the base region narrower.


[ permalink | 0 comments (add one you lazy bastard!) ]

Thu, 20 Oct 2005

UNIX admin?

I hear tell that we're presently looking to hire a "very talented UNIX admin to help support the design engineering environment." UNIX, in this context, means a mix of Solaris and linux.

Anyone want a job in Austin?


[ permalink | 0 comments (add one you lazy bastard!) ]

Wed, 19 Oct 2005

fully fluxified

Rodin, your wishes are coming true: there is a complete Aeon Flux collection slated for release on November 22.

Mine's already pre-ordered.

Yes, that's 3 Aeon Flux posts in 2 days. Shaddup.


[ permalink | 0 comments (add one you lazy bastard!) ]

spammers, begone

I finally got sick enough of the comment spam to implement one of those authimage things. I just hacked it right into the writeback plugin (a 5ish-line change) and made a script to generate the images with PerlMagick. Simple. If you want to use my kludge in your blog, let me know and I'll help you get it set up.


[ permalink | 1 comment ]

Tue, 18 Oct 2005

greasemonkey to the rescue

Have you noticed that the Aeon Flux website is broken in Firefox? It is for me, anyway...

greasemonkey is an extension that lets you modify web pages using JavaScript. Until now I'd dismissed this as total crap, but it turned out to be useful here. Observe:

(function () {
 t=document.getElementsByTagName("table");
 for(x=0;t[x];x++) {
                t[x].setAttribute("width",768);
  }
 t=document.getElementsByTagName("td");
 for(x=0;t[x];x++) {
                t[x].setAttribute("width",768);
 }
 t=document.getElementsByTagName("th");
 for(x=0;t[x];x++) {
                t[x].setAttribute("width",768);
 }
 t=document.getElementsByTagName("col");
 for(x=0;t[x];x++) {
                t[x].setAttribute("width",768);
 }
 t=document.getElementsByTagName("embed");
  for(x=0;t[x];x++) {
                t[x].setAttribute("width",768);
 }
t=document.getElementsByTagName("object");
 for(x=0;t[x];x++) {
                t[x].setAttribute("width",768);
 }
})();

The above is a large hammer for a small problem, I'll admit, but it does what it needs to do.


[ permalink | 0 comments (add one you lazy bastard!) ]

flux capacitor

OK, not really. But I did find the entirety of "Aeon Flux 1995," a two-DVD set that came out in (you guessed it) 1995. It's encoded as divx, but it still tastes good to my palate.

If you want it, let me know. You can either download it from me (1.4 gigs, so it'll take a while) or I can do the old burn shuffle. Or, if you're in the Cambridge area, talk to George, who will have it shortly on account of torrenting it.

"What doesn't kill us makes us stranger."


[ permalink | 0 comments (add one you lazy bastard!) ]

Sun, 16 Oct 2005

certainly no Samus Aran

A bunch of us went and saw Domino last night. Yeah, she's a bounty hunter, and yeah, she's pretty hot, but no, this movie wasn't as cool as I'd hoped it would be. Lessons learned: wait for video, and always trust the tomato.

All was not lost, however: the Aeon Flux trailer looked pretty friggin sweet. I also want to go see Serenity at some point; maybe I'll just wait for video...


[ permalink | 6 comments ]

Thu, 13 Oct 2005

rally addenda

For those of you who are fans of a certain Xbox driving game, another car which is comparable to the STi and the Evo is the Nissan Skyline GT-R (though both my Subee and the Evo are somewhat faster). The GT-R is not, nor has it ever been available in America (and why the hell not!?), but it would appear that the Infinity G35 (the US-spec Skyline equivalent, after a fashion) might some day be made in GT-R trim. Wouldn't that be hot?

Take a gander over at rsportscars.com for more on these and other cars you can take off of totally sweet jumps.


[ permalink | 2 comments ]

road rally

Dagny, as I've named my STi, belongs to a class of cars known as rally racers. On the US auto market, only two other cars, the Mitsubishi Lancer Evolution and the Audi S4, are similarly classified. Of those two, the S4 is the much milder-looking, lacking the gigantic spoiler and bigass (yes, that's a technical term) hood scoop.

Last night (really, this morning) driving home from Mike's, I happened to spot on the road ahead of me a fellow rally car driver piloting his Mitsubishi Evo. By happenstance we both took the same exit, and the same turn onto Southwest Parkway, a several-mile stretch of mostly-straight road. Having spotted each other's telltale "shopping cart" wings, we had no choice in the matter: it was pedal to the metal "lessee whose rocket is faster." After hanging more or less neck-and-neck for a couple miles at 120+ MPH, we both slowed down and drew abreast for a "slow" 80ish MPH conversation through open windows. We exchanged thumbs ups, a bit of the old "sweet car" kind of stuff, then waved good-bye just before he came upon his turn.

A single-serving rally buddy. Cool.


[ permalink | 2 comments ]

Wed, 12 Oct 2005

data heaven

Yesterday I happened to stumble across a couple bittorrents on isohunt which together comprised a nearly exhaustive collection of Shadowrun books. As Stormy would say, "Holy bejeezus!"

So yeah. If you want me to burn you a DVD of all of 'em (upwards of 4 Gb, all told), let me know. So far, one's on the way to George, and one will live over at the Man House (wow... can you believe manhouse.org wasn't taken? It is now...)


[ permalink | 0 comments (add one you lazy bastard!) ]

Fri, 07 Oct 2005

such dynamic range!

Less than a week ago, it was over 105 degF here. Today, it's been around 52. A factor of two in a matter of days... wow.


[ permalink | 6 comments ]

Wed, 05 Oct 2005

all you ever wanted to know about motor oil...

...can be found at Bob is the oil guy.

Wow.


[ permalink | 2 comments ]

Tue, 04 Oct 2005

caffeine of the ottomans

Yesterday, Marissa gave me a superb birthday present: a Turkish coffee pot and some delicious coffee to go with it. I'll need practice to become a real pro, but I'd say my first try was a success.

My grandmother (on my father's side) used to make this stuff when I was little. I was still in the yummy phase (I owe you a dime, Hippo), so I didn't really appreciate it, but damn is it good stuff.


[ permalink | 3 comments ]

Fri, 30 Sep 2005

entertainment and sports weekend

A couple interesting things:

I saw my uncle, Peter Bonventre, on ESPN this morning at the gym. That was cool. It also reminded me that I have to call him and say hi.

On Sunday, because Katrina killed the Superdome, the Saints are playing a "home" game in San Antonio against Buffalo. Tickets were plentiful and cheap, so Mike, Matt, and I picked some up. An especially exciting aspect of this game is that I'm starting Willis McGahee and Ernie Conwell in my fantasy league this week. This means they'll actually have a chance of hearing me yelling at them to get me some more fucking points. (To be honest, I'd be yelling even if I were watching them on TV...)


[ permalink | 0 comments (add one you lazy bastard!) ]

literary acquisitions

I forgot to mention that Marissa and I hit Barnes and Noble the other night and I was sucked right into the sale rack. I was thinking "I should get a Chuck Palahniuk book," and Choke was sitting right there in front of me on the buy-N-get-M free rack. It was a sign.

Also in my sights that night were Breakfast of Champions, The Big Sleep, and American Psycho. Unfortunately, since it was buy 2 get 1 free, Chandler failed to get the nod. I'll get some Sleep later.


[ permalink | 4 comments ]

Thu, 29 Sep 2005

a STi-mulating birthday present (to myself)

Even as we speak, my plan to reduce the number of vehicles I own is progressing. Unfortunately, before taking a step forward, one must often take two steps back.

To that end, I've purchased a 2006 Subaru Impreza WRX STi (and in that color, too). Any comments about the rear wing (no, it's not optional, and yes, it's functional), how many miles it can drive on a pound of Uncle Ben's Long Grain, or how many illegal immigrants I can hide in the hood scoop will probably be, umm, right on target. I defy you to find a car more fun to drive, though. This thing is a fucking ROCKET.

Up next: divest myself of the Celica and the Camaro. Yes, I've only had the Camaro for 9ish months, but I've realized in that time that as a form of transportation it's not terribly practical, and I have neither the time nor the shop space to keep it as a tinkering car at the moment. On the upside, I should be able to get out of it more than I put into it. As far as the Celica is concerned, hell, I've saved enough money on gas driving that piece of shit that any money I get out of it is just gravy—or perhaps remunerations for my suffering (and that of my passengers).

That will bring me down to the truck, the STi, the Ducati, and the V-Rod. I have a sneaking suspicion that my father really wants my truck (my first clue was when he said "I want your truck!"), so I might dip into single-car territory before the year's end.

What is the world coming to?


[ permalink | 4 comments ]

hat trick

I'm officially 24.

Yes, this makes two birthday blog entries in a row where I've made reference to that cartoon. So what? Wanna fight about it?


[ permalink | 7 comments ]

Wed, 28 Sep 2005

Spartacus outdoes himself

At lunch today, Powell busted out with this one for the scrapbooks:

"I'm not committed to the idea that women are stupider than men; I'm just committed to the idea that they're stupider than me."


[ permalink | 0 comments (add one you lazy bastard!) ]

new music

I've recently grabbed a few new albums from the aether. While I haven't listened to any of them enough to form an opinion yet, I thought I'd mention it just in case one of y'all wanted to grab them. They include a couple each by My Chemical Romance (I Brought You My Bullets, You Brought Me Your Love and Three Cheers for Sweet Revenge) and The Mars Volta (De-Loused in the Comatorium and Frances the Mute), Out of Exile by Audioslave, Lullabies to Paralyze by Queens of the Stone Age, Pressure Chief by Cake, and To the Teeth by Nine Inch Nails. I'll report on them as I form opinions.


[ permalink | 4 comments ]

Mon, 26 Sep 2005

drunken postscript

Oh yeah, another thing that came of Saturday's party is a firm definition of the Armadillo Sunrise: (diet) Mountain Dew, Tequila, and a splash of Grenadine. I can't speak to how good it is, because I was already somewhat toasted by the time I decided to make it, but anecdotal reports from others on the scene indicate that it might not actually be fit for human consumption.


[ permalink | 3 comments ]

party on, Wayne

Saturday's Hurricane Party was a success. Decent music, ping-pong (I'm not bad at all when I'm drunk, except that I can't for the life of me hit the forehand with any accuracy), several drinking games (quarters, up and down the river, &c), and even a round of Settlers of Catan (which I managed to win by taking longest road and then getting largest army on a gamble) numbered among the festivities.

Yesterday consisted of football, chicken wings, and dancing. I decided to ride Rosalyn on over to Mike's house to watch the games. In retrospect, it wasn't the greatest decision, considering that it hit 105 degF in the afternoon. Today it's only supposed to get up to 102, and by the end of the week we should have fallen all the way to the high 80s on account of a cold front coming through. Here's hoping for good golf weather next weekend.


[ permalink | 1 comment ]

Thu, 22 Sep 2005

hurricane fever

As I write this, traffic along I10 in Houston is moving at a whopping 2 miles per hour, and has been doing so for the last 14 hours or thereabouts. Better yet, every gas station in Houston is out of gas, and many people on the road are starting to run low. Pop quiz, hotshot: what exactly do you do when you have 5000 cars on an interstate all of which have run out of gas?

On a lighter note, I'm encouraging Mike to have a Hurricane Party this Saturday (when it should be hitting us, more or less). It's gonna rule.


[ permalink | 2 comments ]

Tue, 20 Sep 2005

tri-force... in da hood?

At Elysium the other night I saw a dude wearing a shirt that said "Don't Make Me Go Zelda On Your Ass" and had a bunch of the power-up graphics from the original Nintendo game (potion, shield, sword, boomerang, bomb, &c). I was utterly compelled to walk up and pay him a compliment, at which point he informed me that he's an aspiring DJ who remixes video game music. Some samples of his work, he told me, can be found at his MySpace site.

Wow! You do that for science?


[ permalink | 4 comments ]

Thu, 15 Sep 2005

back in the saddle

This is what's called convergence.

First, I went back to my gym-in-the-morning schedule. It makes me 1000% happier. Anyone who doesn't get up at 6a is a heathen.

Next (actually, I've known this since last week, but didn't blog about it), the Monitor ADC works. That was one of the first circuits to be in an known working state once we figured out that there was a PLL problem at powerup (and FIBbed some parts to fix it). It's also completely badass, because that fucker was complex as shit and I was worried that somewhere along the line I'd failed to specify some aspect of the digital controller properly with some catastrophic failure (think: powering the chip up causes a tsunami) as the result. Fortunately, no Pacific Islanders were harmed in the testing of revA silicon—as far as I know...

Third, it appears that as of last night we're confident that the other ADCs are doing their thing. I haven't gotten to testing them just yet (I want to run the piss out of the MADC first), but Ion reported that he was able to get it working in a mode that requires several blocks, the DC ADC included, to work. Hua.

Fourth, I'm spending all my time in the lab now. Damn does it make me happy. I'm an engineer again! I'm soldering shit, poking at stuff with meters and scopes, controlling the thing via USB... OK, scratch that last one (all real engineers—in the Roberge sense—despise USB instinctively).

...and finally, I think I'm becoming convinced that I can actually control the neon JUST FRIENDS sign that apparently floats overtop my head whenever women are around. Who'd'a thunk it?


[ permalink | 14 comments ]

Tue, 13 Sep 2005

mod_proxy + openssl s_client

At the gym today, I was ruminating on how to run both an HTTPS and an SSH server on port 443 of a machine so as to allow it to both serve secure content and function as the outside endpoint for proxy tunnels which exploit open HTTPS access and/or HTTPS CONNECT tunnels.

Until earlier today, I'd completely forgotten about Apache's mod_proxy, a cute little module that provides basic proxy functionality from Apache. Clearly, this little honey is exactly what we want, though: a proxy server which supports CONNECT and runs in parallel with your HTTP server.

Setup is extremely easy on the server side. For you debian users, make the appropriate symblinks in /etc/apache2/mods-enabled and edit /etc/apache2/mods-available/proxy.conf as appropriate.

You can telnet to port 80 and verify that CONNECT works as expected. Now, give it a whirl using the OpenSSL binary (openssl s_client -connect yourserver:443 -nbio -quiet is a good start) and you'll be disappointed. Yup, there's a bug in mod_proxy_connect that makes it bypass HTTPS and just dump unencrypted data directly on the socket once the CONNECT session starts. Never fear, however, for that same link has the patch you'll need to fix it. apt-get build-dep apache2, apt-get source apache2, cd into upstream/tarballs, untar it, apply the patch, tar it back up, and dpkg-buildpackage -rfakeroot -b.

Now, armed with your hot new Apache build, you're ready to take on the world. The only thing left is a daemon for the client side. Mine is called sprox.pl. I decided to use a wrapper around the openssl binary because I found that IO::Socket::SSL is substantially slower.


[ permalink | 0 comments (add one you lazy bastard!) ]

Thu, 08 Sep 2005

silicon cherry

Today our first silicon came back. At the moment they're going over a bunch of digital stuff, but the first thing they tested was one of my circuits—the digital regulator. After some initial reports of brokenness, it was discovered that the sockets we were using, putting it mildly, sucked ass.

One hundred soldered pins later, the Vdd18 regulator comes up and happily runs.

Hooray for my first silicon circuit.


[ permalink | 3 comments ]

Mon, 22 Aug 2005

hello, room

Back home. Hooray. No one blew up my plane, and I didn't trip and fall off the jetway onto conveniently placed spikes left over from the Prince of Persia set (ye gads! only ten minutes left!).

After some laundry, I went to bed. This morning I practiced the fine art of sleeping while listening to Ventolin. I'm getting good at it.

Updates will continue as events warrant.


[ permalink | 0 comments (add one you lazy bastard!) ]

Wed, 17 Aug 2005

green grass

Damnit. Damnit damnit damnit.

Why is the grass greener in Boston? (No, I'm not referring to the fact that it doesn't rain enough in Austin.)

Remember that part in Mulholland Drive where they put the blue key thing in the blue box thing and, as Rodin puts it, it's like someone just grabs the whole movie, shakes it up, and lets things resettle at random? That's kind of what it's like coming back to Boston—the actors are the same, but the roles are different. Thing is, I'd prefer the new lay of the land—'cept I'm nowhere to be found.

Fuckin' hell. Couldn't someone have done the key-in-lock thing three years ago, when I was still here?


[ permalink | 1 comment ]

Mon, 25 Jul 2005

Coming Soon To a City Near You

You've been waiting for it, and now it's here: the Wahboid Monstrosity Northeast Tour is hitting Boston August 12 through the 21st, and you're invited to come and party hardy with, um, me.

Green Violinists for everyone! LAN gaming, hacking of various electronic equipment, Beiruit, gratuitous ATHF quoting, sitting around and bitching about the twinkies—it's all gonna be there.

Post a comment and let me know you're gonna be there or I'll throw down and blow your ass away.


[ permalink | 4 comments ]

Thu, 14 Jul 2005

Armadillo Sunrise

This morning I watched a beautiful sunrise through the Armadillo conference room windows at work. Today officially marks the first all-nighter I've dedicated to the ProSLIC—and hopefully also the last, at least for revision A. As of 7a, Mike and I finished the last of the layout verification matrix, saved it, and checked it in.

Some random factoids concerning my recent life, for those of you who are curious:

  • Since June 26th, I have had one day off from work.
  • Since Mike and I have been burning the midnight oil pretty constantly for the last couple weeks, we've started just leaving our speakerphones on and talking while we work. Our longest telephone conversation to date was six hours and forty-five minutes. For a couple short times, Sherv, Mike, and I were all on speakerphone, thanks to the magic of Sanyo cell phones.
  • I've been listening pretty much nonstop to a combination of the Foo Fighters album In Your Honor, "Such Great Heights" by the Postal Service, di.fm's Vocal Trance channel, Justice Radio (yes, the City of Heroes web radio station—shut up, sometimes the music is pretty good), and Mahler's Symphony No. 5.
  • At this point everyone in Starbucks knows me by sight if not by name, and they're more or less undaunted when I order 8 iced espresso shots.

Thought I'd be able to come up with more than that... oh well.

There it is.

Edit: Doesn't the Armadillo Sunrise sound like a drink of some sort? What would you put in it? Maybe some tequila, some sort of citrus... hrm. Suggest away.


[ permalink | 5 comments ]

Tue, 05 Jul 2005

tossing corncobs...

The ProSLIC will be done next week. I have decided.

This also means I have decided to live, breathe, eat, and sleep ProSLIC. Not much of the latter, though.

More updates when I emerge from my work-cocoon.

(BTW, a million ego points for anyone who gets the title.)


[ permalink | 6 comments ]

Thu, 16 Jun 2005

you know you're going nuts when...

Me, speaking to myself, just a second ago:

"That's some fucking ground right there. Damn, woman!"


[ permalink | 9 comments ]

I am layout

Yesterday Marius decided that today was the day that we'd finish all the layout reviews. All of them. Like twentysomething reviews.

A layout review takes between an hour and two hours, depending on the complexity of the block. If it's not a block you designed, it'll take longer, since you have to familiarize yourself with the design before trying to screw around with the layout. Mike is mired in the throes of a design review, so he's not doing any reviews. That leaves me, Marius, and Ion. At 8 blocks each, we're talking about 16 hours of straight layout goodness.

The work isn't quite going to get divvied up that way, though. So far today (since 10a; it's now about 5p) I've done 7 reviews. A good average, but several of them were quick ones. The big hurdles are yet to come, in the form of a few op-amps I didn't design (and one VERY simple one that I did—that review should take me half an hour, I'm going to start it as soon as I'm done writing this, and I'll reward myself at its completion with a break for dinner. Mmmmm... dinner...)

Tonight I'm going to dream very regular geometric shapes in green, yellow, blue, and red.


[ permalink | 3 comments ]

Wed, 15 Jun 2005

new tunes

Yesterday I finally grabbed (off the internet, not the shelf at BBY) the new Foo Fighters, Garbage, and System of a Down albums. I must say, all three are good, but In Your Honor (the Foo Fighters album) is certainly the best. I don't know if it gets the Petarman seal of approval, but it definitely gets a thumbs-up from me.

It's good to hear new tunes from Shirley et al., but Bleed Like Me isn't as strong as their self-titled or Version 2.0. Then again, I haven't given BLM all that much time to grow on me, and Garbage and V2.0 are both pretty high standards to begin with. One could argue that In Your Honor, which required no time to grow on me, must be better, but I don't necessarily buy it, since Beck's two most recent albums both took at least a couple listens to get me really going, and both are excellent, IMHO.

I haven't had a chance to listen to Mesmerize all that much yet, but judging by the single it's much weaker than Toxicity was. "BYOB" just doesn't compare to the likes of "Aerials," "Toxicity," or "Chop Suey!" (POWER CORD!!!).

Enough. If you know how, download them from positron.


[ permalink | 1 comment ]

Mon, 13 Jun 2005

debootstrap and knoppix

In the past I've been a vocal supporter of the debian-installer project; it's a much better installer than debian's previous attempts, and it lets you configure, among other things, md and/or LVM very nicely.

Now I've found a glaring weakness: it's based on kernel 2.6.8. This means that it doesn't support the SATA controller in my new laptop. What I really should do is make a version of the debian-installer with the latest kernel on it and release it so that others can enjoy the hotness, but I'm a lazy bastard.

My solution is to use Knoppix and debootstrap. This allows me to use the shiny new kernel already built into the latest Knoppix CD without doing very much work at all.

I know, y'all have probably discovered and squeezed every ounce of hotness out of this idea already. I'm still entertained.


[ permalink | 3 comments ]

Sat, 11 Jun 2005

exceeding lowered expectations

Dell reported to me when I ordered my machine that it would probably ship on or around Monday, June 13. You can imagine my surprise when I found it shipped on Wednesday—and it actually arrived in time for the weekend!

All silver linings have a cloud, though. The cloud in my case is the fact that Dell computers no longer come with an OS install CD. Instead, they have a "restore" partition that will re-image your hard drive. Fuck that—I want to be able to dual-boot. I called them up and talked to "Sam" (no, really, that's what he told me his name was), and convinced him to send me the system restore CD set.

I guess I can't worry about wiping and reinstalling until they get here, so in the meantime I'm going to "enjoy" my hot new Windows XP machine. My god Windows sucks my ass.

I'm not all complaints today, though. The NVidia 6800 is a beast of a video card, and this must be the most gorgeous display I've ever seen on any computer, period. This laptop is a fucking MONSTER, no doubt about it, but OMGSS!!1!one is it sexy.


[ permalink | 4 comments ]

Tue, 07 Jun 2005

bitten

...by the MMORPG bug. As if I didn't already get too little sleep, I'm now playing lots of City of Heroes with Mike, Matt, Cyrus, and the gang. I have to admit, it's addictive as hell.

May, tell them I'm not a loser because I play MMORPGs. You're still playing WoW, right?


[ permalink | 6 comments ]

Sun, 05 Jun 2005

glutton for punishment (or just a cheap whore?)

Considering how much I've bitched about Dell in the past, you'd think that I would never purchase another Dell product as long as I live. The problem is, my desire to optimize my monetary expenditures kind of overrides my desire not to deal with "Dan" in Delhi.

Check it out: Dell has a promotion going on right now where you can get $750 off of an Inspiron 9300 (that's the beastly desktop replacement with a 17-inch screen). It's a gorilla of a machine (both power- and size-wise), and it can be had for about $1400. Compare that to $2600 for an IBM in a not-really-comparable configuration, and you see the problem.

When it gets here I'll let you know how I like it.

BTW, what should it be called? wahboid-monstrosity, perhaps?


[ permalink | 5 comments ]

Tue, 31 May 2005

it's a wrap

I just got back from turning over the keys to my old apartment. It's official, I am no longer a North Austinite. I have to say, that thirty-second commute this morning was HAWT.

Another thing: the Gold's I now go to has substantially better-looking women than the one to which I used to go. I first noticed this when I went in yesterday, but chalked it up to the fact that I was in there late (10a) on Memorial day—the place was truly packed. This morning at my regular time (6a), however, I was stunned to note that the quality hadn't declined any on account of the early hour. Damn.

Oh, one other thing regarding last night: apparently I'm now "the little guy," or at least that's what the waitress noted as I shattered the previous second-place record: "it's always the little guys..." I dunno, though; it really took all my fatty powers to pack away those last eight.


[ permalink | 8 comments ]

Mon, 30 May 2005

...like giving birth in reverse

Tonight Mike, Cyrus, and I went to Pluckers for all-you-can-eat wing night. Prominently featured on one wall (the "Wall of Flame") are the top five wing-eaters of each gender. The women's records are somewhat unimpressive—first place is 50, and second through fifth are all in the 30s. The men, on the other hand, put away substantially more. In particular, when we arrived, the records were 119, 77, 75, 74, and 71.

I'm happy to report that 71-guy is now off the list, and yours truly holds second place with 78 wings.

I'm gonna kill the next chicken I see.


[ permalink | 0 comments (add one you lazy bastard!) ]

Sat, 28 May 2005

move: defeated

I'm now basically moved. Everything from my old apartment is now in my new apartment, and I've transferred everything between my garages as well. The only thing that remains is cleaning up my old apartment a little bit (to ensure that they don't try to withhold some of my deposit), dropping off a shitload of clothes at Salvation Army (why didn't I do that last year?), and shuttling my unreasonable number of vehicles to my new place.

Since I don't have DSL any more, I'm not planning on having a land line at all this year. I guess this means I'll need to be more diligent about charging my cell phone...


[ permalink | 0 comments (add one you lazy bastard!) ]

Thu, 26 May 2005

that's where I keep my stuff!

I'm now in the process of moving. Tonight, I moved most of my non-furniture stuff into the garage in preparation for tomorrow, when it will actually be moved from here to there.

Observation: milk crates are still the king of moving supplies.


[ permalink | 5 comments ]

ddns is cool

Now that I'm not going to have a static IP at home, I'm probably going to use dynamic DNS so that positron.jfet.org still points to my home address. It turns out that this is pretty easy with bind9.

The first thing to do is generate yourself a new dnssec key:

[kwantam@positron ~]$ dnssec-keygen -a HMAC-MD5 -b 512 -n HOST positron

This generates two files, one called foo.private and one called foo.key. Take the key (a base64-encoded mess) from the foo.private file and put it in /etc/named.conf on the static machine:

key positron {
        algorithm "hmac-md5";
        secret "<your key here>";
};

Now, in the zone entry for the domain you want to dynamically update, add an appropriate allow-update clause:

zone "jfet.org" {
        type master;
        file "named.jfet.org";

        allow-update {
                key positron;
        };
};

Now you're all set. You can use nsupdate to perform the updates from any client machine on which you have the foo.private and foo.key files:

[kwantam@positron ~]$ nsupdate -k /etc/bind/tsig/foo.private
> update delete positron.jfet.org A
> update add positron.jfet.org 1200 IN A 18.243.0.246
> ^D

For more info, see the dnssec-keygen, nsupdate, and named.conf manpages.


[ permalink | 0 comments (add one you lazy bastard!) ]

now I can relax

Everything seems to be working fine. ...except that I forgot to alias rsw to myself, and have been bouncing lots of email for the last 12 hours or so. Oh well. That's fixed, and cypherpunks seems to be working. What more could I ask for?


[ permalink | 2 comments ]

Wed, 25 May 2005

the waiting begins

All necessary setup is (should be?) done; at this point, all that remains is for dns changes to propagate. The name of my CoLo'd machine is proton.jfet.org, in case you're wondering.

Here's to getting it right on the first try...


[ permalink | 0 comments (add one you lazy bastard!) ]

Mon, 23 May 2005

nope, just dead

After much celebration last week at the fact that I was to become a Speakeasy customer, it turns out that I'm, well, not. Apparently the loop on which I'll be living just doesn't support DSL, period, so I'm going to have to get a cable modem instead.

This is good and bad. Good because now I'll actually have cable instead of stealing it, and bad because I won't have a static IP at home.

ServerPronto to the rescue—I now have a dedicated machine at a CoLo (dedicated means I'm basically renting an entire machine plus network from them, so I'm root and they're not). This has the additional benefit of letting me transition pretty much seamlessly from my current situation without any downtime. I just have to get everything working on that machine first.

To do:

  • kernel
  • dns
  • mysql
  • sendmail
  • imap
  • apache2
  • svn
  • horde2
  • cypherpunks
  • ???
  • profit


[ permalink | 7 comments ]

Fri, 20 May 2005

revenge of the Sith

I went and saw Sith yesterday. (No, I wasn't insane enough to go to a midnight showing.) It's certainly the best of the first 3, but I still don't think it's as good as 4, 5, or 6. (OK, maybe it's about as good as 6.)

But it is nice and violent—lots of severed limbs—and Yoda and Windu are both badasses.

Be warned, Mar: Natalie Portman hit a wall. Hoooooooooooooooooooooooly crap. Also, she can't act for shit.


[ permalink | 5 comments ]

Thu, 19 May 2005

vader is everywhere

...or at least, he's hiding in some very strange places.


[ permalink | 0 comments (add one you lazy bastard!) ]

dsl is dead! long live dsl!

Looks like I can't get SBC service at my new apartment. Fortunately, I can get Speakeasy! It's cheaper, and I don't even have to have a working phone line (they now offer "dedicated" packages). Hot.


[ permalink | 0 comments (add one you lazy bastard!) ]

Wed, 18 May 2005

fancy footwork

After literally months of saying to myself "I need a new pair of shoes," I finally went to Nordstrom's and bought me some Puma NuMostros. I highly recommend them to all y'all; they're fucking comfy as hell.


[ permalink | 0 comments (add one you lazy bastard!) ]

deep thoughts

(19:33:09) scrap1r0n: layout is kind of like masturbating to thoughts of an ex-girlfriend---it's the kind of guilty pleasure in which everyone participates at some point, and you're just not supposed to admit to doing and/or liking it.
(19:33:29) truculent eunuch: ?
(19:33:36) truculent eunuch: i admit both to doing and liking layout
(19:34:03) truculent eunuch: and, for that matter, masturbating while thinking about ex-girlfriend(s)

Look out, Sherra.


[ permalink | 2 comments ]

taking out the euro-trash

I hate when people spam all of campus. That's why I always respond, also spamming all of campus. Cognitive dissonance rules.

From: Rachel Ingwer
Subject: Ask MIT to Divest from Sudan
Date: Wed, 18 May 2005 08:59:53 -0400
To: (lots of people)


                                       WWW.MITDIVEST.COM

                        Don?t let MIT support the Sudanese government.

                       Sign the petition and Speak out against Genocide.



For more information, see www.sudanactivism.com or www.divestsudan.com


Never again, pledged the international community after the Holocoust
Never again, it repeated after Cambodia, Bosnia, Rwanda
Now, a genocide is being committed again
DARFUR, SUDAN
Since February 2003, the crisis in Darfur has killed more than 380,000 and displaced almost 3
million.  UN Secretary-General Kofi Annan calls Darfur little short of hell on earth.
While governments and the UN stall, 15,000 people die every month.
Citizens can and must take a stand against this genocide.

From: "Riad S. Wahby" Subject: Re: Ask MIT to Divest from Sudan Date: Wed, 18 May 2005 08:34:55 -0500 To: Rachel Ingwer (lots of people) Rachel Ingwer <ingwerr@MIT.EDU> wrote: > [snip] Perhaps you should put your money where your mouth is and go volunteer or something. Hopefully you'll become another statistic. -- Riad S. Wahby rsw@jfet.org
Date: Wed, 18 May 2005 08:57:04 -0500 From: "Riad S. Wahby" To: "Dustin J. Rabideau" Subject: Re: Ask MIT to Divest from Sudan "Dustin J. Rabideau" <rabideau@MIT.EDU> wrote: > So, sure. List spamming--not that cool. Wishing someone dead? > Pretty much off the scale. > > Grow up. Take a minute to think about the shit that's coming out of > your mouth. You ought to consult a dictionary for the definition of hyperbole. -- Riad S. Wahby rsw@jfet.org
Subject: Re: Ask MIT to Divest from Sudan From: Heather M Pressler To: "Riad S. Wahby" Date: Wed, 18 May 2005 09:51:23 -0400 Cheers, I was thinking the same thing when I got that email and just didn't have the balls to say it. The website is ridiculous... MIT "might" be funding companies that "might" be funding the Sudanese government. The petition is a waste of time. Heather
Date: Wed, 18 May 2005 10:42:31 -0500 From: "Riad S. Wahby" To: jxxxxx@alum.mit.edu Subject: Re: Ask MIT to Divest from Sudan Jxxxx Gxxxxx <xxxxxxxxxxx@gmail.com> wrote: > Totally unnecessary. You should be ashamed of yourself. > > ...and, yet, as much of an ass as you have made yourself, I wouldn't > wish death upon you. Hmmm, perhaps you're a better person than me? No, wait, I've got it: you're weak-minded and unable to discern sarcasm. -- Riad S. Wahby rsw@jfet.org
Date: Wed, 18 May 2005 11:08:17 -0500 From: "Riad S. Wahby" To: jxxxxx@alum.mit.edu Subject: Re: Ask MIT to Divest from Sudan Jxxxx Gxxxxx <xxxxxxxxxxx@gmail.com> wrote: > whatever helps you sleep at night, dude. You imply that I have a guilty conscience, yet you're the one spewing sanctimony. -- Riad S. Wahby rsw@jfet.org
Date: Wed, 18 May 2005 10:38:01 -0500 From: "Riad S. Wahby" To: Ben Ward Subject: Re: Ask MIT to Divest from Sudan Ben Ward <benward@MIT.EDU> wrote: > You're a jerk. Just because you don't like someone sending a message to > you, you spam everyone a second time. > No one wants to hear you spewing malignant thoughts about a tragedy > involving millions of people. Actually, I was spewing malignant thoughts about Rachel. I could care less about your so-called tragedy. -- Riad S. Wahby rsw@jfet.org
Date: Wed, 18 May 2005 10:38:50 -0500 From: "Riad S. Wahby" To: Shankar Mukherji Subject: Re: Ask MIT to Divest from Sudan Shankar Mukherji <mukherji@MIT.EDU> wrote: > You really thought that your two line little comment was so beautifully > insightful that you had to send it to virtually every student on campus? > Holy hell, I think I see the light now! God..thanks man, if only you had > responded I little earlier - I wouldn't have wasted my *thirty seconds* (!!!) > helping out a cause I have spent 2 years working on!!111!!! > > How come you right-wingers never know when to just shut up? Just do me a > favour - next time you feel like showing off what an incredible moron you are > to thousands of people, remember that without liberals like us there would be > no America, no precious freedom of speech that allows us the pleasure of > learning what a pathetic excuse for drivel passes for discourse on the right. Do me a favor, stop breathing. You're wasting valuable oxygen. -- Riad S. Wahby rsw@jfet.org
Date: Wed, 18 May 2005 11:34:38 -0500 From: "Riad S. Wahby" To: Shankar Mukherji Subject: Re: Ask MIT to Divest from Sudan Shankar Mukherji <mukherji@MIT.EDU> wrote: > The oxygen's only valuable because you wingnuts keep burning trees. Hey I > hear there's a war going on Iraq, I bet the military is looking for smart > people like you to go blow themselves up "for freedom" - interested? > > Stop sending e-mail. You're wasting valuable electrons. You're so cute when you're pissed off! The women must go CRAZY! -- Riad S. Wahby rsw@jfet.org


[ permalink | 3 comments ]

the end of an era?

Last night the right hinge on kung-foo broke. I'm definitely going to have it fixed—it's still under warranty, so it's free—but this has me thinking that maybe I ought to get a new laptop.

Maybe an IBM this time?


[ permalink | 0 comments (add one you lazy bastard!) ]

Tue, 17 May 2005

nude no more

Yesterday I got my new I Am Analog t-shirt from threadless, so today I wore it to work.

Shut up. My co-workers already know I'm a nerd.

I really want Ctrl + Z, but unfortunately it's sold out at the moment. Maybe the'll reprint it.


[ permalink | 5 comments ]

Fri, 13 May 2005

embrace the dark side

I like being pissed off. I don't think that's quite normal—most people are upset when they're, well, upset. For the most part, when I get angry, there's an undertone of amusement.

This isn't always the case—when I really lose my shit and my vision goes red and I actually want to kill, that's different, but that doesn't happen more than once or twice a year. You might think I'm in this state when I'm repeatedly punching the steering wheel while shouting "I'll fucking KILL YOU" at the sonofabitch in front of me going ten below the speed limit, but even that doesn't count as truly losing it. (Hint: those of you who witnessed me nearly tear apart one of my Kinesis keyboards in Destiny Kitchen have seen the real thing.)

Anyway, back to "normal" pissed. Let me give you an example. I walked out of the gym today and found that some fucking bitch (not an assumption—her purse was clearly visible on the passenger seat) in an Eddie Bauer edition Explorer had parked about six inches from me. I was pissed. Then it occurred to me—I have paper (and not just any paper—my emergency stash of engineering paper) and a pen!

next time
why don't
you park
even closer
you dumb

cunt

I hope she's crying right now. I smiled all the way home.


[ permalink | 9 comments ]

Mon, 09 May 2005

surrounded by midgets

If you watched the heart-wrenching idiocy of the 49ers in the draft this year (I was subjected to substantial discussion on this topic because Mike is—though after this draft he claims was—a die-hard 49ers fan), you were probably completely appalled at the fact that most sports analysts actually gave them a good grade on their draft performance.

It's a painful fact that basically everyone in a position of power in the NFL completely misunderstands the correct way of running a draft. Yes, there are exceptions—but they generally pick at the bottom of the draft, since they tend to be the good teams. Teams at the top, on the other hand, tend to stay there, because they overextend their cap in an attempt to pick up a magic pill of a player who will carry the rest of their pathetic franchise to—being optimistic here—a better than 50/50 record.

If you've gotten this far, you'd probably have some interest in reading Overconfidence vs. Market Efficiency in the National Football League, an analysis of the draft which concludes something basically anyone with half a brain should be able to intuit—picks at the top of the first round are just not worth it.

Some day I'll fix this, though I haven't figured out how to become the GM of an ailing NFL team just yet.


[ permalink | 4 comments ]

badass 101

If you want to look cool in the gym, be sure to wear a t-shirt prominently featuring Horowitz and Hill's transistor man on the front.

For extra style points, add the simplified LM741 schematic to the back.


[ permalink | 1 comment ]

Sun, 08 May 2005

...it's highly addictive!

I went into 7-eleven today and bought two cans of sugar free Mad Croc and a couple summer-sized (translation for non fa-ites: 20 oz.; other possibilities include term-sized, i.e. 1 liter, and diabetes-sized, i.e. 2 liter) diet Mountain Dews. The cashier sort of looked at me funny—"that's a lot of caffeine," she said.

"Once you get locked into a serious caffeine habit, the tendency is to push it as far as you can," I replied without pause. She was confused for a second, then she chuckled when she decided I must be joking.

In other news, here's another candidate for bachelor chow:

  • 1 can tuna
  • 1 can Great Northern Beans

    Open tuna, drain water. Open beans, drain fluid. Transfer contents of tuna can to bean can (yes, there's enough room) and mix well. Add condiments to taste (I recommend pepper, garlic, and vinegar, though some of you will doubtless opt for mayo instead).

Note that on top of requiring no cooking, this requires the use of nothing but a can opener and a fork. You don't need a dish at all—a sign of true bachelor chow greatness.


[ permalink | 8 comments ]

Sat, 07 May 2005

heaven in a handbasket

Tonight I went and saw Kingdom of Heaven with Tim, Mike, Katie, and Alida. I went into it expecting Braveheart, but set in the crusades. It wasn't that exactly.

First of all, the ratio of battle to not-battle is way too low. Don't get me wrong, there's some high-quality medieval gore in this movie, and the siege machinery is delicious, but at times it really drags. Also, and maybe this is the towel-head in me talking, it's hard care that much about the Christian army—I really wanted Saladin to crush the Crusaders.

On the upside, Jeremy Irons is a badass as always, and Liam Neeson, though his role ends pretty early on, is sweet, too. If you read the credits, you'll see that Edward Norton plays the king, but don't get your hopes up too high, ladies—he's a leper, and his face is always covered by a mask. Whatever... you're all gonna swoon at Orlando Bloom the whole time anyway.

By far the best part of this movie is Sibylla, played by Eva Green. Her eyes are, in a word, breathtaking—think Jennifer Connelly in Hulk.

If you haven't seen it yet, my vote is you can wait for it to come to DVD.


[ permalink | 0 comments (add one you lazy bastard!) ]

Thu, 05 May 2005

fuck it dude, let's go bowling

OK, you have to admit: a movie theater that has a wait staff serving food (and alcohol!)—during the movie—is pretty sweet. That's the Alamo Draft House.

Check this out, though: they also do a "rolling roadshow." They bring a projector, sound system, and screen somewhere thematic and show a movie. Currently, that would be The Big Lebowski—at a bowling alley. Admission includes a lane.

Other entertaining rolling road shows of the past (according to Tim): raft down the river to a remote undisclosed location and watch Deliverance. Better yet, float on a tube on Lake Travis with a screen set up on the shore and watch Jaws.


[ permalink | 1 comment ]

MASTer blaster

OK, I have to vent a little bit.

At work I'm using a simulator called Saber to do mixed-signal simulations (Verilog code alongside analog circuits). In place of some big nasty analog circuits I'm using behavioral models. These models are written in Saber's modelling language, MAST.

An aside: have you ever considered that creating a good circuit modelling language requires a decent knowledge of mesh theory? It's actually kind of cool, when you think about it...

OK, so here's what I need to bitch about: the MAST parser requires a particular bracing style—what kind of crap is that?

if (output_state == l4_0) {
	// ummm... do something
}

Yeah, it doesn't matter that much, but it just bothers me on general principle that their parser is so bad it can't accept any other kind of bracing.


[ permalink | 1 comment ]

Tue, 03 May 2005

something cute

At work recently, I was trying to make a bunch of ratiometric resistors robust against systematic process variation (of, e.g., poly sheet resistance). A good way to do this is to build all of the resistors out of identically-sized subunits. The problem was, I had to make some rather inconvenient values, e.g., 25.3666...

After some reflection, a rather elementary method of synthesizing an arbitrary resistance occurred to me. Now, I'm guessing that this is not a new discovery, but since I'd never seen it before, I figured some of y'all might appreciate it, too.

Basically, you normalize the desired resistance by the unit resistor. The integer portion of the quotient tells you how many unit resistors to connect in series; you then invert the remainder, resulting in a normalized conductance value. This tells you how many parallel branches you need, plus the remainder, which you convert back to resistance to get more series branches, et cetera.

For example, let's say I want 8.7k out of 2k units. Then:

  • 8.7/2 = 4.35, so I put 4*2k in series.
  • 1/.35 = 2.8571, so in series with the above I put 2*2k in parallel.
  • 1/.8571 = 1.16666667, so in parallel with the above I put 2k.
  • 1/(.16666667) = 6, so in series with the above I put 6*2k in parallel.

So we have 4*2k+(2k||2k||(2k+(2k||2k||2k||2k||2k||2k))) = 8.7k.

Note that while this will always give a solution, it's not guaranteed to be a minimal one.

In perl:

#!/usr/bin/perl

$unit = $ARGV[0];
$res  = $ARGV[1];
$precision = $ARGV[2] || 1e-2;

unless ($unit && $res)
{
        print "Usage: $0 <unit> <resistance>\n";
        exit(-1);
}

$norm = $res/$unit;

for ($i=0;;$i++)
{
        $whole = int($norm);
        $norm -= $whole;

        print "(" . ($i%2?"1/":"") . $whole . "x";

        last if $norm<$precision;

        print ($i%2?"||":"+");

        $norm = 1/$norm;
}

print ")"x($i+1) . "\n";

By the way, the above syntax highlighting was done using code2html.


[ permalink | 0 comments (add one you lazy bastard!) ]

dear santa...

I already sent this to fort-awesome, but I'm going to put it here anyway.

You know what I want? I want to be able to synthesize board layouts directly from Verilog. Also, I want the synthesis tool to be able to use different logic families—including families based on discretes.

A 64-bit carry lookahead adder in 2N3904 ECL would be like the Raquel Welch of circuits.


[ permalink | 0 comments (add one you lazy bastard!) ]

Mon, 02 May 2005

a great molecule

On Saturday, Mike, Cyrus, Matt, and I celebrated the first of what promises to be the greatest holiday of all time. Initially it was called "Man Day," appropriate because it was celebrated at Mike's house, a.k.a. "The Man House." In the tradition of Fort Awesome, however, I suggested that we instead dub it "Misogyny Day."

The inaugural Misogyny Day went down like this: get up, cancel plans to go biking because the weather was rainy in the morning (I went to the gym instead), grill up some meat in Mike's back yard (utilizing copious quantities of lighter fluid and strike anywhere matches—you know, for kids—in the process), watch Fist of Legend (quite possibly the greatest Kung Fu movie of all time, though Iron Monkey would also be a strong contender), then watch a bunch of battle scenes from other movies (including The Last of the Mohicans, Braveheart, Gladiator, and The Matrix). After that, we wasted several hours playing video games, then finished up the night by going to The Yellow Rose (no, "Joanie" was not working).

Ahh, 17-ß-hydroxy-4-androstene-3-one, how we love thee.


[ permalink | 0 comments (add one you lazy bastard!) ]

Thu, 28 Apr 2005

happiness is

[kwantam@positron ~]$ set -o vi


[ permalink | 4 comments ]

hot sluts

...er, actually, thermal strippers.

Recently Mike, Ion, and I were sitting around talking about this and that when Ion provided a nugget that I just had to pass along to all y'all.

Ion is from Romania; before he came to the US he was a professor of EE. He's one smart dude, and he's got tons of stories and some damn good interview questions tucked into his sleeves. During our conversation yesterday, we somehow strayed onto the topic of winding inductors. One thing led to another, and I was reminiscing about burning the shit out of my hands trying to get the shellack off of Litz wire. Ion said to me, "well, of course, you just use Aspirin, right?"

Turns out, if you put the Litz on top of an Aspirin tablet (no fancy enteric coating or any of that shit) and heat it with a soldering iron, the salicylic acid reacts with the insulation and it's gone in no time.

Bad ass.


[ permalink | 2 comments ]

Mon, 25 Apr 2005

hit the road...

Summer's here, and I'm happy to say I'm finally getting back into road biking. Step one: buy a bike.

It turns out that the used bike market strongly favors the buyer. That is to say, fancy road bikes hold value about as well as a wet baby T holds in Britney Spears's implants. I was able to pick up the ridiculously hot Kestrel 500SCi (see picture, right) for about 1/4 of what it would have cost new.

A Kestrel with Dura-Ace all around for less than a new Cannondale R700 with 105s. Score.


[ permalink | 7 comments ]

mothafuckin' hustla!

It's official: you must go see Kung Fu Hustle. It is fucking hilarious.

Watch for an incredible number of references to other movies, including the Matrix (duh), about a million other Kung Fu movies (double duh), Spider-Man, the Shining, and others.

Also, prepare to laugh harder than you've laughed at any movie since, oh, Jackass or so.

Best. Movie. Ever.


[ permalink | 1 comment ]

Thu, 21 Apr 2005

fun with design reviews

Once again exercising my design review announcement skillz, I just wrote and fired off this beauty:

SI3240a MADC Design Review, or How I Learned to Stop Worrying and Love the ProSLIC
Summary: SI3240a MADC design review, Friday, 2p, Gecko.
It will almost certainly not fill up all 3 scheduled hours.

-- The long form:

Gentle(wo)men... BEHOLD!  Short on notice, long on caffeine, it's...

The design review for the ProSLIC's shiny new MADC!  I'll be discussing
incremental delta-sigma theory, its application to our lovely MADC, and
the implementation thereof.  You'll be dazzled with tales of integral
nonlinearity and regaled with intimate phase diagrams you
can't get anywhere else!

...but that's not all!  Respond now and I guarantee there will be no
mention of the dreaded phase margin.  That's right!  Not a single
previously-unreviewed transistor-level block will be presented,
guaranteeing maximum design review efficiency.

Where will you find this spectacle, this marvel of modern meetings?
ConfRM.Gecko, Friday, 2PM!  Be there or 4*a^2*x^2/(b^2-4*a*c).

Humbly submitted,

Riad Wahby


"Knock yourself a pro, slick."


[ permalink | 4 comments ]

Tue, 19 Apr 2005

cheap Sox tickets, illness, and guilt

One advantage of watching the Sox other than at Fenway is that the tickets are MUCH cheaper. In particular, Tim and I picked up lower infield seats (section 20, row 13) at the July Sox-Rangers game at Ameriquest for just a bit more than bleacher seats go for at Fenway. Total hotness.

In other news, I managed to catch some sort of mutant superflu (which is to say, I've been sick for more than my usual 24 hours) from Cindy—no surprise there, since she works with little kids all day. I ended up staying home from work in the morning yesterday, but by the time the afternoon rolled around, guilt overtook malaise and I went in and ended up working a (very productive!) full day anyway. Oh well.


[ permalink | 5 comments ]

Wed, 13 Apr 2005

strange bedfellows

What do the IEEE and Playboy have in common? Apparently, an interest in naked chicks.

"I don't care who you are, that's funny right there."


[ permalink | 2 comments ]

Sun, 10 Apr 2005

trophy husband

Damn, is this really only my second April entry? Fuck me... life has been nothing but work, and will continue that way until we tape this bitch out. Yay!

OK, no, it's not that bad. Weekends have been relaxing, and the weather here is gorgeous. Today I went to the driving range for a few hours and discovered that my swing hasn't completely left me! I had some trouble with my hands on the mid irons, but I managed to figure out what I was doing. What had left me were my callouses, and now they're on their way back—heralded by some moderately painful blisters. Maybe next weekend I'll play 9 holes instead of just going to the range...

Right now I'm watching the Discovery Channel, and I've just learned the strangest thing: the male deep sea anglerfish is actually a parasite on the female. It attaches itself permanently to the female (they even share a circulatory system!) and basically degenerates to nothing, except that its testes develop substantially, giving the female a permanent supply of sperm.


[ permalink | 2 comments ]

Fri, 01 Apr 2005

Sin City is...

AWESOME!

I wish there were something bigger than <h1>. No, really. A few reasons why:

  • Cyrus is a really big Frank Miller fan, and according to him the storyline is preserved almost perfectly from the books.
  • Quentin Tarentino is a guest producer, and you can tell. Jeffrey Westhoff's quote from rottentomatoes sums it up well (even though apparently he didn't like the movie—unwashed miscreant): "You know you've gone beyond run-of-the-mill movie violence when you need to use the plural for 'castrations.'" Yup.
  • The visual style is literally breathtaking. It's insanely cool.
  • Clive Owen is a badass.
  • Mickey Rourke is even more of a badass.
  • Elijah Wood is a fucking psycho.
  • Holy shit there are a lot of hot chicks in this movie.
  • No, really. Take a glance over the credits.

By the way, have any of y'all ever noticed how much Kurt looks like Josh Hartnett?

Also, one of the trailers before Sin City is for a movie called Domino that looks really cool. It's based on the true story of Domino Harvey, daughter of Laurence Harvey, who was a fucking bounty hunter. Samus-style, biaaaatch (but without the Metroid).


[ permalink | 7 comments ]

Wed, 30 Mar 2005

the engineers' conceit (or is it just MIT?)

Haven't blogged in a bit, but I had a realization a few days ago that I thought I might share with y'all.

The other night, I went to TGI Friday's with a horde of friends. During dinner, I was talking with Matt Powell, a co-worker of mine who's also MIT '02, M.Eng '04. Somehow, the topic of raising children came up, at which point I asked the age, in his opinion, at which one was capable of grasping calculus and differential equations. After some discussion, we settled on 12ish as probably the earliest one would want to teach their child such things.

A couple of the people sitting near us (not engineers) overheard this and questioned why any sane person would ever do something like that. I immediately, almost instinctively, responded that a person couldn't carry on an intelligent conversation about anything technical, or even really understand much going on around him, without a grasp of calculus and diff. eq., and (in so many words) that people who didn't have such a grasp were basically worthless. Matt expressed agreement.

Then we remembered that we were in non-engineer company, and that there were maybe two or three other people at the table of fifteen who'd taken anything beyond maybe "college algebra." This apparently failed to cause Matt any discomfiture, since, well, he's Matt, and he tells it like he thinks it is no matter how unpleasant that might be. I, on the other hand, was somewhat embarrassed.

I still think I'm right, though. People who don't have at least some basic grasp of calc, diff. eq., mechanics, and E&M (the latter two being little more than the application of the former) must go through life in some sort of epic fog.


[ permalink | 11 comments ]

Mon, 28 Mar 2005

spoken of in legend, it's...

brilliant! (so say the Guiness guys).


[ permalink | 1 comment ]

Wed, 23 Mar 2005

no going back now

...at least not for a couple months. I'll put up a pic of my new hairdo at some point...


[ permalink | 2 comments ]

Tue, 22 Mar 2005

get 'em all cut?

I'm considering going back to the clipper-number-two-in-the-bathroom approach to hair cuts. What do y'all think? Will I look like even more of a retard as a skinny guy with a buzzcut than I did as a fatass with a buzzcut?


[ permalink | 2 comments ]

Mon, 21 Mar 2005

9 days of... nothing

Yeah, it's been a while, but there's honestly not been much to blog about! Yesterday it was gorgeous outside, so I woke up and ran my new 12k loop. I think my loop is hillier than the course is going to be in July (though I don't know for sure yet), so I think I'm in good shape. I need to try and get my speed up a bit, though—at the moment I'm only averaging about 6.5 MPH (shut yer ass, I know I'm slow), and I'd like to run the 12k in under an hour in July (gotta have goals, even if you can't quite hit them). I'm guessing my HIIT routine during the week will help with this...

This morning I got a call from a recruiter out of southern New Hampshire. He apparently had an old copy of my resume (well, OK, a completely up-to-date one doesn't actually exist at the moment...), and thought he was trying to hire me away from Analog Devices. I talked to him for a little while, telling him essentially nothing about myself but eventually worming out of him that he was trying to recruit me for Silicon Labs! Heh...

Unfortunately, I didn't get a chance to go see the Ring 2 yet, but maybe I'll try and go some night this week... hmmm...

Oh yeah, by the way, the PDF I linked to on MAX-OT kind of sucks. If you want to read more about it, go to AST's site and log in with username max-ot@jfet.org and password max-ot.


[ permalink | 0 comments (add one you lazy bastard!) ]

Sat, 12 Mar 2005

great things to come

Holy shit there's a lot of good stuff coming up.

Other upcoming events (dates not yet fixed): ProSLIC tapeout, me visiting Boston... have I left anything out?

Mmmmm... here's to the future.


[ permalink | 3 comments ]

Fri, 11 Mar 2005

editing a URL = hacking

Wow. Sloanies are even dumber than I thought.

According to this post over at The Volokh Conspiracy, Sloan has decided to deny admissions to several people who did nothing more than edit a URL provided to them by the admissions department, discovering in the process that their admissions letter had already been posted to the webserver and reading same.

Sloan claims that they "hacked in" to their files in order to view their admissions status; meanwhile the fucking morons made the admissions letters publicly available on their webserver.

This goes to show you that stupid people should not be permitted to be aware of the existence, let alone in any way have a hand in the operation, of computers.


[ permalink | 4 comments ]

a new routine

I'm a routine kind of person. Yeah, I know, this might be surprising to some of you. Honestly, though, I like to have things planned out, I like to know what's happening when, I like to feel completely in control of the forseeable future (this last part being key: I'm an unmitigated control freak; perhaps even :s/control// applies here...).

Even though I like the control afforded by having a plan, I do tire of same old, same old eventually. That's why it's time for a new routine. By this, I mean a new lifting routine. Stop reading now if you just don't give a rat's ass.

Since it's getting nice here (i.e., it's almost warm enough to ride my bike to the gym before dawn in shorts and a T-shirt), I want to start riding to the gym and back (5 miles each way) so that I'm getting a bit of cardio every day. Doing this with my current lifting schedule is nearly impossible while still getting to work at a reasonable time, though—my current split has me lifting 75 to 90 minutes four days a week. So I'm going to a new one, known as MAX-OT. The MAX-OT philosophy is that shorter sessions (30 to 40 minutes a day, leaning towards the low end of the range) with a 5-day split is much better for you. Moreover, MAX-OT claims that you should never train the same muscles within 5 days of each other, meaning that my current routine (3-day split plus full body workout on Saturday) needs a complete makeover.

Not only does this change things up, which ought to break the plateau I've been seeing lately, it gives me time to ride to the gym and back every day. Total hotness.

I start Monday. Damn, I'm excited. My only worry is that since I haven't been riding much, my ass is going to get sore. I did about 9 miles on my bike this morning (started around 6:15a or so) and I was OK (it was also a hillier course than the route to the gym), so I'm guessing all will be well.

Hooray for controlled change.


[ permalink | 1 comment ]

Mon, 07 Mar 2005

scrolling hotness

One of the many things that sucks about Cadence is that it doesn't support the scroll wheel at all. The same is true of Acrobat Reader and many other programs.

Today I was thinking that I should write some code to capture button 4 and 5 events and massage them into some form that older programs could digest. Then it occurred to me that someone must already have done this, and it turns out that I was right: imwheel is a package that grabs events from mouse buttons 4 and 5 (and more, if you've got a sideways scroller as well) and translates them into keypresses. It's pretty sweet.

In addition to being compatible with X, it's apparently compatible with GPM, so you can even use your scroll wheel on a console. Now that's pretty hot.

A quick tip: it seems that imwheel will die if you have a catchall @Exclude rule, but you don't actually need one—if it doesn't have a rule in place, it'll apparently just pass the events through to the underlying window.


[ permalink | 3 comments ]

Sat, 05 Mar 2005

best. game. ever.

Next time I'm in Boston, I expect to play a rousing round of the getopt game.

How was I reminded of the existence of this game? Dragonball GT just came on Cartoon Network and I misheard the name of one of the characters (Trunks) as "Trux." That got me thinking, "Hmmmm... trux... -Acdtrux... tar!"

Wow.


[ permalink | 2 comments ]

don't panic

I know this isn't really new, but if you haven't yet, go see the trailer for the Hitchhiker's Guide to the Galaxy movie. I'm, like, dying of excitement. April 29, here we come...


[ permalink | 0 comments (add one you lazy bastard!) ]

Fri, 04 Mar 2005

no soup for you

Looks like the ProSLIC well and truly hates me. We're in "critical crunch mode," so vacation ain't gonna happen—at least, not until we tape out. Currently that puts me in Boston around finals at the earliest.

Y'all should let me know right now what your plans are before and after finals so I know when to plan my trip.


[ permalink | 3 comments ]

Wed, 02 Mar 2005

my new clock

I got the boards back from Advanced Circuits yesterday, and promptly made a mess of my kitchen table stuffing one of them. My desk at work has a new decoration, and my GOD is it hotness.

You know you want to make one for yourself...


[ permalink | 0 comments (add one you lazy bastard!) ]

decisions, decisions

DAMNIT.

On May 25, Nine Inch Nails is going to be playing at Stubb's Barbequeue. Normally that would be great, except that Autechre is playing The Parish that very same night!

Why must I choose!?


[ permalink | 3 comments ]

Tue, 01 Mar 2005

a young lady's illustrated primer

Generally my blog entries at least attempt to have some original content, but not this one. Reason has a good interview with Neal Stephenson that I thought y'all might enjoy.

edit

If you haven't already, go and read In the Beginning Was the Command Line. It's great.


[ permalink | 1 comment ]

Sun, 27 Feb 2005

motorcycle diary

It was really nice out here today, if a little cool (bright, sunny, 60ish), so I went and hit Lime Creek Road (perhaps the most awesome stretch of motorcycling road on the face of the earth, or at least in Texas) on Rosalyn, and DAMN was it a blast.

The disposition of my motorcycle ownership has seen some changes recently. First, Rosalyn got a new Termignoni full race exhaust and an STM slipper clutch (funny, STM doesn't seem to have a website; I suppose that's not surprising, considering it's a tiny little shop in Torino, Italy where they make clutches by hand). The difference in performance (not to mention sound!) with the new exhaust system is nothing short of incredible, and the new clutch makes her shift like a dream.

Simultaneously, I reexamined my overall vehicle situation and discovered two things:

  1. I have too many vehicles.
  2. There's no way I'd choose to ride Layla over Rosalyn.

As a result, I decided a while ago that I would sell Layla if the opportunity arose. A couple weeks ago, said opportunity did arise: a guy contacted me saying he was looking for a black ZX-10R (they stopped making the black ones in 2005, dumb bastards). Mine was fucking trick (damper, stainless brake lines, -1 countershaft sprocket, double-bubble windshield, speedo healer, exhaust, swingarm and frame sliders... the works), so we both walked away happy: he with a hot motorcycle, me with my asking price. Hooray for free enterprise.

Maybe I'll ride Valentina to Elysium tonight...


[ permalink | 5 comments ]

Thu, 24 Feb 2005

some look-and-feel updates

My blog started annoying me because the load time was getting too long, so I cut down the default number of posts displayed to 25. Then, so that it was easy to get to older stuff, I had to add the index links you now see off to the left. These are generated by a slightly modified version of the flatarchives plugin.

The other thing I did was hack the writeback plugin slightly so that it put an extra little piece of encouragement in the writeback link for stories with no associated comments. It's so simple, it's a wonder there's an entirely separate plugin to do this in the blosxom plugin registry.

Has anyone implemented some sort of authimage thing for blosxom yet, or am I going to have to do this at some later date?


[ permalink | 5 comments ]

Wed, 23 Feb 2005

ghetto fabulous

Today Tim's car had a flat, so he asked me to give him a ride over to the tire place to pick up his car. On the way, we spotted perhaps the most ghetto thing ever: a golf cart with motherfucking spinners. Behold:



Thanks to Tim for taking the pictures while I drove. Also, thanks to whomever owns the golf cart for not spending as much on the rest of the cart as he did on the wheels; otherwise, we might never have seen it riding down the road on the back of a flatbed.


This is the kind of event that makes me glad I carry my camera with me at all times.

By the way, there are some new pictures available.


[ permalink | 0 comments (add one you lazy bastard!) ]

fruit of last weekend's labor

Last weekend I had some spare time while I was doing laundry, so I decided that it was time to set down a board layout for the single-digit Nixie clock I made a long time ago. I didn't have any more B-5853 tubes, but I do have a large number of B-5440s, which are even better for this purpose because they have stiff legs. I even found this nifty little page, the soculator, that will generate an Eagle script given some tube parameters. Hawt!

I was pretty anal about this layout, and I actually put the switches and transformer directly on the board. I ended up making a few Eagle library parts in the process, but it was a good refresher in using Eagle (though I suspect that these days the Orcad interface might be more intuitive, given that I'm using Cadence, which is made by the same company). Other than the Nixie and the 74141, I believe all the parts are available from Digi-Key. I love Digi-Key...

By the way, gerbv is a hot little program. It'll do cool things like superimpose several Gerber files, and it allows you to turn individual layers on and off. You can also control how it superimposes layers (e.g., xor, or, and, invert), which would probably make for some interesting pictures given the right Gerber file. It can also export PNG files, the result of which you see on the right.

Another incredibly hot utility is gbtiler, which lets you take one or more Gerber files and tile it, thereby putting several copies of the same (or even several different) layout(s) in the same Gerber file. Since Advanced Circuits allows 66 square inches (used to be 88; I'm not sure when it changed) for $33, you may as well take full advantage, right? Technically, they don't want you doing this, but I just put through an order for four of these guys tiled up and they didn't bitch too much. You just have to explain that you need several on the same PCB for an "experimental apparatus" or some such nonsense. Hehe.

I can't wait for everything to get here...


[ permalink | 8 comments ]

another reason fvwm2 rules

I'm a devout fvwm2 user. My desktop is ugly and plain, but it's completely useable.

For example (from my .fvwm2rc):

# shift- to move a few pixels
Key   Left   A   S   CursorMove -1 +0
Key   Right  A   S   CursorMove +1 +0
Key   Up     A   S   CursorMove +0 -1
Key   Down   A   S   CursorMove +0 +1

# shift-meta- to move 1/4 page
Key   Left   A   SM  Scroll -5 +0
Key   Right  A   SM  Scroll +5 +0
Key   Up     A   SM  Scroll +0 -5
Key   Down   A   SM  Scroll +0 +5

# shift-control- to move a full page
Key   Left   A   SC  Scroll -50 +0
Key   Right  A   SC  Scroll +50 +0
Key   Up     A   SC  Scroll +0  -100
Key   Down   A   SC  Scroll +0  +100

So I can hit shift-<up|down|left|right> to move my cursor around the screen, thereby shifting focus (sloppy focus goes without saying, and anyone who doesn't like it needs a trip to the Ministry of Love). I can do basically everything without taking my hands off the home row—no time wasted moving my hand to the mouse. (Note that the reason that ctrl-shift-<left|right> only moves 50% in the x-direction is because I have a double-wide screen thanks to my dual-headed setup. A virtual screen fills both of them, but by moving over 50% I can straddle two adjacent ones.)

I think fvwm2's slogan should be something like

fvwm2: finally GUIs don't suck


[ permalink | 7 comments ]

Tue, 22 Feb 2005

homeless fireman

Like George, I've now had the experience of starting a large fire on my stove (my experience ended with a pan cover and a wet towel, however). Fortunately, I was able to continue my cooking unhindered. It's interesting to note that my smoke alarm is nothing more than a very loud particulate-activated beeping device; no one beyond earshot is alerted to its state. Is that a good thing?

Speaking of my apartment, I am apparently "in danger of being evicted" because one of my fucking neighbors keeps complaining about the volume of my stereo (what "in danger" constitutes is unclear... I have a feeling it just means "we are now giving you a warning"). What pisses me off is not that there's some danger of eviction, but that if I hadn't gone into the office to retrieve a package today, I would never have known about any of this. I checked my lease agreement, and my landlord is required to notify me of complaints from my neighbors. Guess I'll just have to turn off my subwoofer until I move out...


[ permalink | 4 comments ]

OSX Exposéd

I finally got around to, ahem, obtaining a copy of Panther, and I installed it on dagny (did I mention that I decided to rename the GettoBook dagny-taggart?) last night. Seems pretty cool; most things appear not to have broken too badly, with the notable exception of XDarwin, but that's nothing a little dedicated poking can't fix. Having been looking forward to it for a while now, Exposé still managed to impress. Man, it's too damn sexy. I just wish I could run it on an x86 instead...


[ permalink | 1 comment ]

Mon, 21 Feb 2005

Beck-tacular!

There's a new Beck album, Guero, coming out on March 29th. Moreover, it's being released not only on CD, but on vinyl. Holy SHIT.

In addition to that, he's already come out with a new single and a new EP this year, all based on tracks on the forthcoming album. Because I drink way too much Diet Mountain Dew, I've already gotten all of it for free from the iTunes music store:

These tracks all rule, but my two favories are the first and last from GameBoy variations.

As an aside: Apple has made it increasingly difficult to break these damn songs out of m4p format. I'm glad I got these for free or I might be annoyed at the inconvenience.


[ permalink | 4 comments ]

Sun, 20 Feb 2005

movies movies movies

I went and saw Constantine yesterday, and it was actually somewhat better than I expected! Who would have thought that cancerous exorcists made good superheroes? Also, I want one of his crucifix-flame-shotguns.

Almost as exciting as the movie itself were the trailers that preceded it: the Ring 2, Sin City, and Batman Begins are all coming out in the not-too-distant future. I am like crapping my pants in anticipation!

OK, well, since I have off from work tomorrow (yeah, OK, I'll probably work anyway...), I'm gonna party like a rockstar tonight. Gotta go get ready...


[ permalink | 2 comments ]

Fri, 18 Feb 2005

I... am... job.

Goddamn I've been working a lot. I've been at work past 9:30p every day this week. We're now in emergency-get-this-motherfucker-taped-out mode. In fact, we got an email from the division manager saying that they need everyone to push hard, and that they understand that this is a burden, so any time we work late, feel free to expense meals.

Mike's response: "sweet! The ProSLIC team just got a raise!" I'm just glad that digital is the critical tapeout path.

Amazingly, working late didn't stop me from going out to a couple bars last night, which in turn led to meeting some new people, which led to dinner plans for next weekend. Sweet!


[ permalink | 2 comments ]

Wed, 16 Feb 2005

an anti-policy move

Normally I don't touch "satisfaction surveys" with a ten-foot pole, but when I saw a SPAM from Dell asking me to rate my satisfaction (which reminds me... how in the fuck did they get my email address when I explicitly refused to give it each and every time they asked for it?), I couldn't resist. Highlights from the survey:

If Dell failed to keep any commitments made to you, please explain what happened:
I explicitly informed the technician that I had changed my address, and that the computer should be shipped to the new address. This was at least somewhat understood, since the RMA box arrived at my new address in Texas. Unfortunately, upon completion of service, the computer was shipped to my old address—in Massachusetts. I spent a total of five hours on the phone with Dell and DHL straightening things out. The majority of that time was with Dell, not DHL, and I found that while DHL's agents where knowledgeable and helpful, Dell's were unable to communicate effectively, did not know what to do, and were completely unhelpful. This experience has convinced me that I will never buy another computer from Dell again. Sure, the price is right, but that savings of a couple hundred bucks is more than made up for in the abysmal technical support and customer service.
What does Dell Technical Support currently do well, and what can be improved?
I can only assume that the first half of that sentence is intended as a joke. As to the second part: bring your call centers back to the US, for the love of God.


[ permalink | 0 comments (add one you lazy bastard!) ]

Tue, 15 Feb 2005

hey-la, hey-la...

...my laptop's back. Perhaps Handel would be more appropriate than Feldman, Goldstein, and Gottehrer [1], but you get the point.

Turns out that they decided to go all-out; in addition to the aforementioned replacements (mobo, cpu, heatsink, fan), I also got a new keyboard out of the deal, this one with a working stick-pointer-device-thingie (a.k.a. "clitoris"). HAWT.

[1]Robert Feldman, Gerald Goldstein, and Richard Gottehrer wrote the words and music to The Angels's My Boyfriend's Back. No, I didn't know that off the top of my head, I just work that hard for you, dear reader.


[ permalink | 4 comments ]

Fri, 11 Feb 2005

instant karma

I think that I've now been repaid for my angry rampage against poor "Kim." That, or Dell's incompetence is some unbounded function of a random variable.

I sent back my laptop. The technician called me yesterday to tell me that he was replacing the motherboard, CPU, heatsink, and fan—basically, everything but the keyboard, display, and case. They send it out yesterday, it's supposed to get here today, everything is happy.

They sent it to Boston.

I just spent an hour and a half on the phone straightening things out. Hopefully I'll see my laptop again some day. I'm just glad that I didn't send them the hard drive.


[ permalink | 1 comment ]

did I ever tell you...

...about the time I had three stars? Y'all can decide for yourselves whether this is a true story or not.

I was out riding Layla with a couple buddies last Labor Day weekend along FM 1431 from Lago Vista to Marble Falls. It was around noon, and we were doing about 110 or thereabouts when we blew by a police officer going in the opposite direction.

I don't know why I decided to do it, but as soon as I'd done it I couldn't go back: hammering the throttle to the stop, I took a few miles of 1431's wide sweepers at 150+ MPH, all the while looking for a side road onto which to turn and hide. After putting some distance between me and the po-po, I dropped off onto a little twisty side road, got out of sight, and dismounted. About a minute later, I saw the cop blast by, siren blaring, and decided that the best thing would be to lay low for a while.

Remember, this was Labor Day weekend, which means that the cops were out in full force already. Moreover, 1431 is close enough to Lake Travis that there was a roving police chopper aloft. Noting that, although I was well hidden from the road, my bike was quite conspicuous from the air, I hid it and myself under a small stand of trees and tall weeds, took off my riding gear, and hunkered down for a while.

The buddies of mine who had been riding with me weren't so, ahem, decisive as I, and had pulled over immediately upon seeing the trooper's lights. Not able to be in two places at once, however, Mr. Trooper had left them unmolested on the shoulder of 1431 as he gave me chase. Now they were calling my cell phone, leaving messages warning that "the cops are pissed and looking for you; get off the road and stay off for a few hours!" Of course, I'd already planned on doing this, but having confirmed that I'd be laying around for a while, I decided it was best to take a nap.

When I woke up about an hour later, I decided I was sick of having three stars (remember, there were choppers involved...), so I called another buddy of mine (who owed me something of a favor, considering that I'd found him and called for assistance after he supermanned off the outside shoulder of Lime Creek Road while taking its nastiest turn and ended up hidden from the view of the road with a pelvis fractured in three places) and had him bring me a change of helmet and jacket. (He happens to live not far from where I was, so it wasn't a terrible inconvenience for him.)

Having new clothes (and thus down to only one star), I pulled my bike out of the ditch, hopped on, and cautiously followed him back to his place, where I returned his gear and recovered my own.

I didn't ride Layla again for a couple weeks. You know, just in case.


[ permalink | 0 comments (add one you lazy bastard!) ]

ugliest... code... ever.

Or, at least, close. I have a feeling that my bash coding is going to get uglier now that I've started regularly using array variables.

for i in *; do IFS='%'; DATA=($(id3v2 -l "$i" | perl -e \
  'chomp(@foo=<STDIN>); $outstr = 
  int(${[split(/: /,${[grep(/^TRK/,@foo)]}[0],2)]}[1]). "%". 
  ${[split(/: /,${[grep(/^TT2/,@foo)]}[0],2)]}[1]. "%". 
  ${[split(/: /,${[grep(/^TP1/,@foo)]}[0],2)]}[1]; 
  $outstr =~ s/\//-/g; print $outstr."\n"')); \
  mv -i "$i" \
  $(printf "%2.2d" ${DATA[0]})"-""${DATA[1]}""-""${DATA[2]}".mp3; done;

Yes, Jim; at the point where I'm invoking perl, I may as well just have it do everything. Whatever. This is the product of my evolutionary style of commandline coding, not some (clearly aesthetically inferior) process of careful design.


[ permalink | 1 comment ]

Mon, 07 Feb 2005

fucking tech support

It seems like everyone's bitching about tech support, so I figured I'd join in the fray.

My laptop has, for the third time, decided that it wants a new motherboard. That is, it refuses to power up, instead flashing its Caps Lock light at me. "Call Dell," it's telling me. So I did.

"Thank you for calling Dell technical support, my name is Kim, how may I help you?" a voice answers. Fuck you, I think, with that accent there's no way in hell your name is Kim; it's fucking Vishnu or something. I politely give her my name, then read off the "express service code" (express my ass) and service tag number (what's the point of having two separate numbers, anyway?) from the back of my laptop. That's when things start to go downhill.

"Riad, can I please get your email address?" No thank you, I tell her, I'd rather not receive emails from Dell. She starts to protest that they won't give out my address, that I'd only receive customer catalogues and other information of interest to Dell customers, and I explain—just as patiently, for now—that information of interest to Dell customers is of no interest to me. She insists, telling me that the information they would send me via email was necessary for a happy life or some such bullshit. Honestly, I'm not exactly sure what reason she was giving the second time around, because I interrupted her halfway through, saying "ma'am, I am not going to give you my email address. I do not wish to receive any email from Dell regarding anything at all, period. If you insist that I give you an email address in order to continue this call, I'll give you a fake one. I don't have time to waste arguing about this with you; let's proceed directly to my technical issue." She gave up.

I explained what was going on, noting that this had happened several times before, and that each time I'd gone through the same debug process, only to arrive at the conclusion that I needed a new motherboard. As I expected, she launched straight into the boilerplate debug process as if I hadn't said a thing. I played along, and we reached the conclusion that yes, my Caps Lock light was flashing. Her next approach was new: "you said this has happened before; has the memory been tested?" Wow, she's more clever than the last few tech support people I've spoken with, but no cigar this time, "Kim." Between the first and second motherboard failures, I completely replaced the memory, upgrading from two 128 MB DIMMs to two 512 MB DIMMs. I explained that the last time I experienced this failure, I swapped back in the old memory and still got the same behavior. This, I thought, will surely put this line of questioning to bed. I was wrong. "Kim" kept at it, saying "let's try removing the new—"

"Kim, I've already explained to you that I've ruled out memory issues, and I've explained the process by which I ruled them out. The computer fails to behave whether I have one or two of the new DIMMs, one or two of the old DIMMs, or no memory at all. It is most emphatically not caused by the memory, nor is it caused by any other device installed in the system. We can remove the hard drive and the PCMCIA cards as well; it'll do the same thing. I assure you, the only course of action that will result in a working computer is a motherboard replacement. Let's skip this futile debugging effort; just issue me an RMA number and stop wasting my time."

It worked! By some miracle, "Kim" skipped the remainder of the debugging charade and just issued me a return! By God, being a prick got me somewhere!

I think I managed to shock "Kim" when, just before hanging up, I thanked her for her quick help and wished her a great day. She kind of choked, then returned the greeting and cut the line.

Look, I realize it's not her fault, but frankly I don't care. Whether she's the motivation or just a cog in the machine, she's a waste of my time, and that's a good enough reason for me.


[ permalink | 3 comments ]

Fri, 04 Feb 2005

I am your nerd-God; you shall have no false idols before me

Issel offered up a nerd quiz on her blog. According to this quiz, I am a nerd GOD.

I am nerdier than 96% of all people. Are you nerdier? Click here to find out!

Then again, given my previous entry, y'all knew this already.


[ permalink | 0 comments (add one you lazy bastard!) ]

when I think apt-get synaptics, I touch(pad) myself

Gentlemen... BEHOLD!

[root@kung-foo /home/kwantam]# apt-get install xfree86-driver-synaptics
(foo foo foo)
[root@kung-foo /home/kwantam]# more /etc/X11/XF86Config-4
(foo foo foo)
Section "InputDevice"
        Identifier      "Synaptics TouchPad"
        Driver          "synaptics"
        Option          "CorePointer"
        Option          "Device"                "/dev/psaux"
        Option          "Protocol"              "auto-dev"
        Option          "LeftEdge"              "1700"
        Option          "RightEdge"             "5300"
        Option          "TopEdge"               "1700"
        Option          "BottomEdge"            "4200"
        Option          "FingerLow"             "25"
        Option          "FingerHigh"            "30"
        Option          "MaxTapTime"            "180"
        Option          "MaxTapMove"            "220"
        Option          "VertScrollDelta"       "100"
        Option          "MinSpeed"              "0.06"
        Option          "MaxSpeed"              "0.12"
        Option          "AccelFactor"           "0.0010"
        Option          "SHMConfig"             "on"
EndSection
(foo foo foo)

Now I can use the far right side of kung-foo's touchpad as a scroll wheel.


[ permalink | 0 comments (add one you lazy bastard!) ]

Thu, 03 Feb 2005

problem-solving

Mike and I decided that we weren't going to waste our time with part 2 of Monday's design review, scheduled for this afternoon. Thus, we both brought laptops to the meeting and proceeded to do work and ignore the review except when interrupted by the one or two nuggets of relevant information.

Unfortunately, the conference room in which we were having the meeting only had one conveniently-located network jack; fortunately, both of us had wireless network cards. Thus:

[root@kung-foo ~]# cat /root/adhoc-route.sh 
#!/bin/bash

if [ $1"x" = "x" ]; then
        OUTIFACE="eth0"
else
        OUTIFACE=$1
fi

iwconfig eth1 essid "kung-foo"
iwconfig eth1 mode ad-hoc
iwconfig eth1 channel 3
iwconfig eth1 rate 11M
ifconfig eth1 192.168.1.1 netmask 255.255.255.0

modprobe iptable_nat
iptables -t nat -F
iptables -t nat -s 192.168.1.0/24 -A POSTROUTING -o $OUTIFACE -j MASQUERADE
echo 1 > /proc/sys/net/ipv4/ip_forward
/etc/init.d/dhcp3-server start

I can specify a different outgoing interface so that I can, for example, route through ppp0 when I'm connected to my cellphone.

Note that this entry was written while in the design review. I should blog from meetings more often...


[ permalink | 1 comment ]

Wed, 02 Feb 2005

elevator music

Here at work they just installed a new transparent HTTP proxy that does virus scanning and filtering. I dislike it for two reasons: first, it's slow, since all the HTTP traffic in the company has to go through it, and second, you have to authenticate to it. I'm not willing to send my password over the network in cleartext, so I, well, don't. Instead, I'm back to doing what I did for years at Analog Devices: I ssh (fortunately, I don't have to tunnel through a proxy to do so; I can just ssh directly anywhere I like) to graviton (yes, the machine in Random), where I have squid set up as a proxy, and I forward a local port to the squid proxy port on graviton. My browsing is faster and more secure than everyone else's, and I don't have to be subjected to occasional "this site is being scanned" tripe.

I've once again gotten into is bittorrenting lots of stuff at home. This makes positron slightly too unresponsive (due to an easily-saturated uplink; fuckin' SBC...) to stream MP3s, which is how I'd been handling my need for a constant audio barrage at work (delivered via my supremely sexy Bose TriPort headphones). Fortunately, I've rediscovered (yet again!) Digitally Imported, a web radio station that broadcasts several streams of (IMHO) good trance—the perfect music to work to, at least if you're me (I listened to di a whole lot while writing my thesis, which cemented my association of trance music with productivity). di's free stream is only 96 kbit; you can pay to get up to 160 kbit, and I used to be a Platinum subscriber, but frankly the difference in quality isn't so noticeable when it's only background music. Nevertheless, I might renew my subscription just to support the service.

See? People are willing to pay for web radio if it doesn't suck.


[ permalink | 0 comments (add one you lazy bastard!) ]

Mon, 31 Jan 2005

today's design review

Also, it was at fucking 9 in the morning on a Monday. Marius, Mike, and Jiangtao didn't actually show up until after 10, leaving the first hour or so in the hands of Ion, Shaung, and me. Bastards.

Yes, the font in the above image is none other than Apple's Chicago. You have to take pleasure in the little things.


[ permalink | 2 comments ]

Sun, 30 Jan 2005

running man

As of Friday, I'm the captain of Team Posse; we're competing in the Silicon Labs Relay. I guess I'm gonna be a runner. Yay!

You know, I never realized what a difference the shoe makes. I bought myself a pair of running shoes today, and man do they feel much better on the ol' ankles than my Airwalks! Because they felt really good, they'll double as trail shoes, and they were on sale, I got me some Adidas ClimaProof Radiates. They're also ugly as all hell (see picture), so I can be sure that I won't be tempted to wear them unless I'm actually going running.

So Hippo, you wanna come down here this summer and run with us?


[ permalink | 4 comments ]

how to parallel park

I both entered and exited this spot with the cars on either side of me in precisely the configuration captured in the images below. Casey can bear witness to this fact.


Incidentally, new pictures are up. The skating rink party was in Casey's honor. It ruled.


[ permalink | 0 comments (add one you lazy bastard!) ]

on "other people"

Tonight I went out to a few bars downtown. On leaving one bar, whose patrons had been Harvey Danger's prototypical cretins—cloning and feeding—I remarked to Tim and Casey, "if people weren't so fucking contemptible, I might be a misanthrope."


[ permalink | 0 comments (add one you lazy bastard!) ]

Fri, 28 Jan 2005

a little ancient history, #2

Some of you never got a chance to see this. Since it is, in my opinion, one of Sherv's most brilliant pieces of work, and indeed a goldmine for insulting phrases (especially those pertaining to the carriage in the midsection of an excess of triglycerides), I've reproduced it here in full for your enjoyment and erudition.

To: random-hall-talk@mit.edu
From: The.Seat.of.Justice@mit.edu
Subject: Random Hall, arise!
Date: Mon, 29 Apr 2002 22:03:56 -0400
Sender: gkl@mit.edu

Random Hall, arise!

I must call your attention to a monumental problem which asserts
itself more strongly by the day: Riad Wahby. His creeping flab-heap
shell drags itself sickeningly through our collective consciousness
with the sound of a wet explosion. His loathsome ejaculations
reverberate unsettlingly through our skulls, nesting uncomfortably
between the limbic system and the pituitary like a cancer. Riad Wahby
is the source of all the adipose evil which affronts our otherwise
normal lives. Wahby must die.

To this end, I suggest we as a society bring to bear the full force of
the blessed Social Contract which binds us all: The Random Hall
Constitution. We must provide, from this day forward, for the
elimination of Wahby from our hallowed halls.

The Random Hall Constitution states in its second article (hereafter
referred to as "Purpose") that our government, first and foremost, is
intended "to promote the welfare and well-being of its members." This
overarching consideration is being flaunted: Wahby, enemy of all our
happinesses, is allowed to stalk through our home, his frowning gut
rubbing the paint slowly from our walls.

No matter how distasteful the thought, the third article (hereafter
referred to as "Membership") provides that all official residents "at
282 and 290 Massachusetts Avenue, Cambridge, Massachusetts, shall be
members of Random Hall." This further indicates that Wahby the
Woe-Bringer is a part, if a parasitic part, of our collective person.

This brings us, finally and most satisfactorily, to the fourth article
of the Random Hall Constitution (hereafter referred to as
"Authority"). I have reproduced Authority here, in full:

"Random Hall shall govern itself through the House Meeting and the
Executive Committee of Random Hall. Together they shall have full
governing authority in making judicial and executive decisions for the
members of Random Hall as granted by the Dormitory Council at MIT and
in accordance with the Uniform Judicial Codes and this
Constitution. All acts and decisions of the House Meeting of Random
Hall and the Executive Committee of Random Hall shall be considered to
be acts and decisions of Random Hall. Random Hall shall have sole
authority to regulate the use of the name 'Random Hall'."

It is indisputable that the Dormitory Council will lend its assent to
any judicial decision made by the residents of Random Hall proper as
well as its Executive Committee, especially in light of the menace
with which Wahby hangs over our heads and those of our peers in the
glorious MIT community.

I call for the immediate pursuit of the following goals:

1) That Wahby be expelled from our premises in cooperation, based on
mutual distaste, between MIT, its Housing authorities, the Dormitory
Council, and Random Hall proper.

2) That a place be appointed for the quenching of Wahby's lipid-rich
flame through both corporal and capital punishment, including but not
limited to:

     a) hanging,
     b) shooting by firing squad,
     c) drawing and quartering of Wahby's person,
     d) mincing of Wahby's flesh,
     e) lethal injection,
     f) gassing in a suitable chamber,
     g) alcohol poisoning a la the late M. Scott Krueger,
     h) bamboo shoots underneath the finger and toenails,
     i) burning at the stake,
     j) drowning as a witch for the creation of flesh golems,
     k) work as a poisonous animal masturbator,
     l) tickling by women of great beauty,
     m) whips and chains,
     n) &c. &c. as provided at the time of execution.

3) That Wahby's remains be transported to a location suitable for the
disposal of (bio)hazardous waste and distributed widely, to prevent
creation of a hideous Wahboid mostrosity from beyond the grave,

4) That President Vest donate funds for the execution of the stated
plan.

5) Finally, that the proceedings be recorded for posterity and posted
at each door of Random Hall as a proud declaration that problems,
indeed, have solutions.

To this end, I have drafted the following petition, to be signed by at
least 20 voting members of the Random Hall community (viz Random Hall
Constitution Article IV, Section 3), as provided by Membership, which
calls for the exercise of Authority in pursuit of our all-important
Purpose:





Dated on the 29th day of our Lord, in the blessed Spring month of
April, in the year 2002,

We, the Undersigned, call for a House Meeting on the 10th day of May
of this jubilee year in our history. In light of the encroaching,
flabby menace of Riad Wahby, it is imperative that we gather to
discuss what must be done. Let us gather together and bring the full
force of our collective will against Riad Wahby: The Triumph of the
Grill.

Ozok be with you.

Signed, 
Shervin Fatehi 
(further signatures to be gathered)





Yours in Christ,
Shervin Fatehi,
JudComm Member at Large,
Defender of Justice and the Thin, Sexy Way of Life


[ permalink | 1 comment ]

two new additions to the roll

My blogroll has been updated with two new additions. The first is Captain Sam Makes a Generalization—it's Captain Sam in all his glory! Let's hope he puts in some choice nuggets about Asian women and orgo recitation instructors. I'm sure he will; he's a big boy.

The other one is Left2Right, a blog written jointly by a couple dozen people, all of whom seem to be philosophy or poli sci professors. Among them is none other than MIT's own Joshua Cohen, the professor from whom I took 24.04J (a.k.a. 17.01J). Larry Bacow once described Professor Cohen as one of the three smartest professors at the Institute. Since I can't imagine how one can possibly evaluate intelligence precisely enough to make such a claim, or indeed how you compare the intelligence of a political science professor to that of a member of the electrical engineering faculty, it's almost certainly the case that what Bacow meant (whether he knew it or not) was that he is a most impressive rhetoritician, conversationalist, and lecturer. I know I don't disagree with the latter, and it bodes well for his posts at Left2Right. (As you might guess by the name, Left2Right is a blog where (politically) left-minded thinkers make arguments whose intended audience is the right. (Note also that this parenthetical contains (other) nested parentheticals. Wow.))

Anyway, enough of my drivel. Go read them.


[ permalink | 0 comments (add one you lazy bastard!) ]

Thu, 27 Jan 2005

in case you were wondering

The smallest valid GIF image can be generated with the following command:

/usr/bin/printf
    "GIF87a\x1\x0\x1\x0\x80\x0\x0\xff\xff\xff\xff\xff\xff\x2c\x0\x0\x0\x0\x1\x0\x1\x0\x0\x2\x2\x44\x1\x0\x3b"
Correction:

Jim correctly points out that you don't actually need a color table. Moreover, only one byte of image data is actually necessary. Thus,

/usr/bin/printf "GIF87a\x1\x0\x1\x0\x0\x0\x0\x2c\x0\x0\x0\x0\x1\x0\x1\x0\x0\x1\x1\x0\x0\x3b"


[ permalink | 2 comments ]

Wed, 26 Jan 2005

a new (multi)home?

I've recently become frustrated with my lack of bandwidth at home. The main issue is that I live far enough away from a CO that I'm instead serviced by a remote terminal on a DLC. The problem is, unlike at the CO, Speakeasy doesn't operate through the RT, since SBC owns it. This means that my only option for DSL service is through SBC Yahoo!. Since I'm within a mile of the RT, I can get very good bandwidth; the problem is, SBC Yahoo! won't sell me anything faster than 384k upstream. If I want faster upstream, I have to go to cable through RoadRunner—costing me about $200/mo, since I'd have to get a business package in order to get a static IP address.

Recently I did a little research, and it turns out that for $30/mo I can essentially rent hardware and bandwidth from, e.g., ServerPronto, and get root on my own Linux box housed at their colocation facility. Once I have this, it's as if it's my machine sitting in my house—vi /etc/apt/sources.list, apt-get update, apt-get dist-upgrade