"That which is overdesigned, too highly specific, anticipates outcome; the anticipation of outcome guarantees, if not failure, the absence of grace."
-- William Gibson, All Tomorrow's Parties
February 1, 2004

Woke up this morning with an urge for radioactive pizza and Primitive Radio Gods. You probably remember PRG as the "telephone booth" song, Standing Outside a Broken Phone Booth (With Money In My Hand).

In late 2000, I picked up White Hot Peach, their then-new album and Rocket, their initial release. Immediately falling in love with the 80s rock-style, mixed with an eclectic, understated electronic sense, quite a few of the songs on both albums took on meaning in my own life, as music tends to do.

I haven't felt the urge to listen to PRG in quite some time, though, likely due to the lack of any sort of romantic interest in my life (music that becomes ingrained with associations tends to be like that, at least for me), so this morning is an oddity.

But the music is still amazing.

It appears, even, that there's a new album out: Still Electric. An independent release, it's been out since May 12th, 2003, apparently.

Why does no one tell me these things?

It can be ordered here.

9:31 AM | Music

Last year, one of my random whim purchases was John C Wright's The Golden Age, the first book of a self-same named trilogy. Taking place somewhere in the region of ten thousand years in the future, they are definitely Big Idea Books wrapped up in a shroud space opera.

9:56 AM | Books

Spent the majority of the day yesterday hanging out with Kyle and Pete at Factory. Went to lunch at the supergood Mexican place on ~9th and Washington, then chilled at the space until 2000 or so.

Got SMTP-TLS working on the Factory mailserver, did a little more work on gate, the new firewall, and spent a couple hours reading bash.org.

With regards to SMTP-TLS, a couple years ago I waded through getting Postfix TLS and sasldb for a machine at work. This run through, I just used The Perfect Setup HOWTO and was done with it.

The only thing that really bugs me was having to use a couple backports for libsasl2, which possibly I didn't need (since I'm using the pwcheck daemon, authenticating against /etc/shadow), but I didn't think about it too much.

There are also a few useful notes here.

Around 2000, Ian showed up with his friend Mike and Samid. Ian had his LinuxWorld swag, including a copy of Sun's Java Desktop System, which we've all been very interested in seeing.

Shortly after that, Pete and I took off, as it was getting late and it was already hovering around 0 degrees out.

Ah, Pennsylvania winters. How I love you like truck.

10:13 AM | Life
February 4, 2004

Rather than bothering to come up with my own opinion, I'll just link to the sfgate.com article deriding all this Janet Jackson OMG WON'T SUMONE THINK OF TEH CHKLREN?!? nonsense.

Recently someone complained about how often American media uses the word "tragedy" to describe things that aren't.

Janet Jackson's rancid boob on the telly for half a moment isn't a tragedy.

How many Americans have died in this most recent invasion of Iraq? How many Iraqis were killed for no good goddamn reason?

We just can't be fucked to care until its in our face, on fire, and all 110 stories of it are collapsing.

If you die when there's no one watching
and your ratings drop and you're forgotten
If they kill you on their TV
You're a martyr and a lamb of God
12:40 PM | Linkwhore | Comments (1)
February 9, 2004

So Microsoft Research has released the source to Allegiance, which was a great game. It combined aspects of RTS and typical space sims to form something that was altogether new.

The idea behind the game is that each team has a Commander who decides what to build, where to mine, and when and where to attack.

All the other players control space craft such as miners, bombers, fighters, and cap ships. Each class of ship requires a certain number of players to control: eg, a bomber requires one pilot and two turreters (if I remember right), and a cap ship requires upwards of half a dozen players.

The high-volume of players required to have an actual game is probably what really caused Allegiance to not work out in the long run. But it was a lot of fun.

Apparently if you actually check out the license, it appears that any derivative works are owned by Microsoft. Which is less than surprising though still sort of sad. :-)

12:55 PM | Linkwhore

Spent Friday night rewriting a my daemon prototype. Around 0300 (Saturday morning) I was twitchy enough to realize my mistake:

First off, following JdBP's common mistakes guidelines, I don't have the daemon background itself (which is something that should be left up to a daemon manager, like inetd or preferably, djb's daemontools). So my prototype starts up, attaches to a socket, and starts listening.

When a request from a client kicks off, it spawns off a child using a while() loop. The while loop is structured in such a way that it's only running as long as the process is listening to the socket. So once the last child exits (non-blocking I/O, etc, so multiple clients can talk to multiple children, yadda yadda -- no max children options yet, though, as I haven't started on my queueing code), the parent process dies. It doesn't go through the cleanup code, so it's actually hitting the child exit statement.

This was a problem.

After rewriting the damn thing, however, I realized that for the parent to keep running, I should have an until() around the child while() loop.

eg: until ($term) { ... } where $term is global and defined 0 until $SIG{TERM} (the TERM signal) is caught.

So after that all was happy.

The next goal for this prototyping project is to class it all out into a module which does Actual Useful Stuff, and takes commands from clients and whatnot. The module/daemon will actually be a monitoring suite of some sort: it'll ping hosts, store their stats, etc. Minor stuff.

Once that's complete, I'll move on to writing a CGI::Application application (the prototype will probably be for a small kbase type thing).

And after that, well, I'll be putting all the techniques together and writing a new backup solution for work, which will replace our Veritas NetBackup setup.

Rather intimidating, really.

1:50 PM | Programming | Comments (1)
February 11, 2004

Been looking for this for ages: virtual desktops for OS X.

Or I should say, decent virts for OS X.

Also: free.

Application seems happily configurable, hasn't crashed or caused my machine to start spurting blood in my face like some sort of horrible Hell clam.

This is always a plus.

The only major problem concerns more how OS X deals with applications than the virt manager itself, and really, it only has to do with applications that allow hotkeying to windows (eg, Terminal.app). You're going to be sharing hotkey space throughout all the virts.

Not a huge issue, mind you, but total segmentation of desktops is nice.

I haven't tested to see how well it works with X11, as I don't use X11 for anything since Terminal stopped sucking boatloads of poor refugees into its gaping maw of doom.

Doom.

update: rjbs is complaining about many crashes. Haven't happened here. I have noticed that it doesn't work so well with hidden applications, though. If you hide an app in one virt, it tends to show up in another.

I suppose I don't just want virtual workspaces, but actual desktops. I expect that requires purchasing something or other.

11:04 AM | Linkwhore

rjbs pointed this one out last week sometime.

Mostly I suspect only us UNIX to OS X converts will care (though solios seems to be enjoying it quite a bit), but Quicksilver is a nice little command launcher.

Tired of mousing around to open apps or bookmarks, or whatever? Miss the good old days of tab completion? Too damn lazy to use ``open'' from Terminal?

Well, QS is for you. command-space (or whatever you tell it to), type in the first couple letters of what you want, hit enter.

I don't even see the Dock anymore.

11:23 AM | Linkwhore
February 15, 2004

If you know me at all, you know I'm a pretty big Buffy dork, and have been since season one. Angel has been getting better over the last three seasons, and while we really have no idea what the hell Joss was planning on for the end of this season, it was still a pretty decent show (except for this last ep, with the Nazis :), far better than just about anything else on television.

And as always when we're wondering what Buffy or Angel are doing, exactly: In Joss We Trust.

But apparently it's been cancelled, which is poop.

Via Engler, here's a post by The Man Himself, Joss Whedon.

4:26 PM | Television | Comments (2)
February 18, 2004

Ever seen Trekkies? It's a documentary about Star Trek fanatics. In it, there's this dentist whose practice is made up with all sorts of ST kit. They wear Star Fleet uniforms. I thought it was the most horrible thing I'd ever seen.

Like letting Dr Billy Bob Joe Donny operate on your brain, only with toy phasers and tricorders along with their stethoscopes.

This is worse. While I'm all about finding new ways to reach kids to make them interested in learning, Jesus fuck, those kids are never going to have normal social interactions. Ever.

Linkwhored from mdxi.

10:38 AM | Linkwhore

Yesterday was William Gibson day.

Philadelphia's Free Library was his last stop on his paperback release tour for Pattern Recognition, and the place was packed. We showed up an hour and a half early, and our group took up about half the third row.

After an essay read by some woman from Rutgers (which admittedly was a good essay, and captured a lot of the hard to describe things about Gibson's work), he seemed to sway out onto the stage.

The podium is bronzed, shaped like a large tome. He leans on it heavily. The man himself is 6'6", 6'7", with his hair all messed up, eyes squinting out behind round frames. He looks exhausted.

He read the first chapter of PR, with much laughter from the crowd in all the right places.

The Q&A session was interesting. He rambled a bit, but always brought it back and managed to make a point. A third of the questioners had British accents, which I thought was odd.

One of the questions related to how print is apparently dead (again? someone should probably mention it; people seem to claim print is dead just as often as people claim Apple's marketshare is about to completely collapse), and the questioner asked if printing books was a rebellious action on Gibson's part.

(possibly paraphrased, I wasn't taking notes)

"Hell, I don't know. Ask Barnes and Noble or Borders. Why are there more book stores and books being printed than ever before? Why does selling books have such a huge retail slot, bigger than it ever has?"

I've long maintained that there is some undefinable thing about a book, something that can't be replaced by a digital copy. Reading long pieces of text on a display of any sort invariably gives me a headache (including, unfortunately, code). Even when smart paper becomes marketable, and business-viable, it'll still have to be shaped, I think, in some way not entirely unlike a book.

"I'm sure there are some people who read books on their PDAs, but I don't know them."

We all looked pointedly at Andrew, who is the gadget freak of the group. He gave us a What?! look in return. :-)

The crowd itself was perhaps 10% geek, the rest lit people, most of them old. Back in the day, reading Gibson was part of what being in the scene was (not that I've ever been in the scene, just on the fringes of it, enough to know that everyone'd read Neuromancer at least), at least for the cyberpunkish kids.

It was the same mix at the Stephenson signing, in fact. Most of them were literature people; a sprinkling of computer or EE dorks.

The signing itself is where the only really good story comes in.

O'Donnell had decided to give Gibson a copy of Hacker's Challenge 2, a computer/network security book series he co-authors. There's a Gibson quote in the front, and one of the stories O'Donnell wrote is very cyberpunkish. So he marks the cpunk chapter with his business card.

We mocked him relentlessly for this, calling him many names.

However, Gibson thanks him and said it could be useful, and that he'd put it on his research shelf.

Afterwards, we all agreed it was cool and a nice thing for Gibson to say, but remained adament that O'Donnell is just a big dork.

So this morning O'Donnell gets a call, waking him up:

"O'Donnell."
"Uh, hi, Adam? This is William Gibson."
"HI!"

Needless to say, a very cool way to get woken up. Gibson had a couple compsec questions for him, for a friends book. Adam can answer just about any security question you have, so.

The moral of the story here is: Being a superdork pays off.

Have you exercised your inner nerd today?

February 20, 2004

Nothing new here, for those of us who follow Gibson and his work, but a relatively interesting read anyway.

1:15 AM | Linkwhore
February 21, 2004

It's not like Rhode Island really matters, but it's good to see this crap get thrown out.

I think my favorite part is where he didn't even read the entire bill before submitting it.

Also, "Everything is terror now. That thing where you go outside and say how fucked up it is that there's all these homeless people, and abused, obese citizens sucking down their daily load of crap TV, suckling at the teat of Mother Distraction so they don't have to look at how inane, trite and horrible their own life has become", that thing. That's terror now.

Trying to find a better way to live is terror.

When your rulers want nothing more than for you to be static, living in fear, that's the final wake-up call.

4:46 PM | Linkwhore

Walking up South St is always an adventure. You never know what you're going to see, what diverse and overly specialized sub-culture you'll get to interact with. It's like going to the zoo, without the cages. However, you'll still see the same depressed looks you see in the lions or bears eyes, wishing they were anywhere but here, living this life, entrapped by social forces they can barely comprehend but have little choice pushing against, acting out in whatever way they can. Their little rebellions.

Eventually giving up and just wanting it to end, rubbing their fur off against the tree branches and fences that contain them. Genetic memory telling them how wrong this is, living like this, constrained and tame.

Maybe that analogy was too much.

But really, I like South St. Overhearing the random conversations as you walk and weave between the bubbles of cliques, you hear the damnedest things. You also begin to realize that while these groups of people, these punks or preps, gangsters or nerds, the old, the young, no matter how different they look, they have things which bind them together, culturally. They wear different colors and clothes, they put their hairs up in liberty spikes or dye their hair black and wear thick nerd glasses and whine about ex-girlfriends who done them wrong, but they're all really the same people.

It doesn't matter if they're a big fat black woman or a big fat goth chick, a hardcore Hell's Angels wannabe, or a Honda-riding crotch-rocket toting pretty boy.

They all use the word "like" every two goddamn seconds.

(Also, sometimes you get random crazy people demanding if Scarface was Cuban or not. Poor Adam.)

5:13 PM | Life

Couldn't remember what the hell sea animal is that switches shells when it outgrows its current one, or finds a pretty one with better plumbing and hardwood floors.

Engler, of course, knew it was the hermit crab. A quick google search confirmed it, I got the stupid analogy I needed for this latest iteration of system, and I discovered a few amusing facts.

The foremost of these is that when a more aggressive crab comes across another, occupied shell it wants, they fight for it.

Not sure why this wouldn't have occurred to me otherwise, but dude.

Shelljacking.

5:26 PM | Linkwhore
February 23, 2004

Ordinarily I wouldn't share this sort of nonsense, but this is both new and fucking funny:


An online order was submitted by
(balas_balasubr@aol.com) on Monday, February 23, 2004 at 07:00:15
---------------------------------------------------------------------------

ckNVZiUKqO10884: About ninety six percent (96%) of all computers are unknowingly
infected with spy ware. Vital information can be stolen and entire
identity theft can occur. Spy ware can also lead to
easier "Virus Infection". Spy ware often gives its Author
Total control of any personal information on your computer.
Your only method of protection is to erase this information now.
Most Spy ware is undetectable by a common virus scanner.
Please Copy and paste this link in your web-browser to do a total system cleaning.
http://218.12.56.230/cgi-bin/track.pl?id=[[UNIQ]]
If you do not copy and paste that link into your web-browser your personal
information is still at risk.
Are you willing to risk your family's safety?
warriors patriot chariot Cypriot patriotic patriotism patriots.
chariots Marriott
spurious glorious usurious gloriously ascription sobriquet Osiris ferris. Tigris Norris debris hubris.

realname: bailey balakris

---------------------------------------------------------------------------

9:14 AM | Interworldwebbernet

Went to see Bubba Ho-Tep with Evan last night. Great movie. Bruce Campbell was, as always, excellent. Even in the worst movies, he manages to bring some sort of worth to bear. And this was far from the worst movie. Very B, of course, but good stuff.

It really wasn't what I was expecting, though that's certainly not a bad thing.

Ossie Davis saying, "It had it's mouth on my asshole!" was uh. Disconcerting, yet hilarious.

A lot of the humor was subtly incredibly sad, and in a way it annoyed me a great deal that the audience laughed at parts that struck me as being particularly horrible (mostly about getting old, becoming obsolete..), but maybe I was just into it too much.

Before the movie started, Evan and I were talking about Marvel Comics being turned into movies, and I asked him if he'd seen the original Punisher movie, with Dolph Lundgren.

Crazy guy in front of us spins around, "Hey! I hate you, I hate you, that movie ruled!"

"What the fuck, dude, 'We Come in Peace' Dolph Lundgren. C'mon."

Humans, I swear.

At any rate, if Bubba Ho-Tep is coming through your town, support indie whatever and do yourself a favor. Check it out.

10:36 AM | Movies

10:28 <@ralfiboy> sweet ... www.cray-cyber.org
10:29 < bda> That sounds less than safe for work.
10:29 <@ralfiboy> crusty old hardware makes me happy.
10:31 < bda> I'm having unhappy thoughts about that URL and that statement, Andrew.

10:42 AM | irk
February 27, 2004

Spent the last two days working with CGI::Application and Template to create the UI::CGI framework for my NetBackup replacement, Archivist.

I am really not much of a programmer, and I hate doing web stuff, but I'm mildly enjoying myself with this. The code is roughly 200 lines, decently structured, very clear (because I'm not smart enough to do complex things).

In fact, the only complex thing I tried to do was use method calls as the CGI::Application run modes. That way I can just subclass all the functionality and not have to maintain the parent class for anything except the %runModes hash.

However, as rjbs pointed out (because he is a programmer), CGI::App is Just an Object, gets passed the run modes as a hash, and invokes $self to call the appropriate subroutine. So there went that idea.

Not a huge thing to maintain a sub for each section, which can then call to the subclass, but eh. I think I spent two hours on that, when I could have just looked at the damn CGI::App code and figured it out myself.

In an effort to follow the application design philosophies in The Pragmatic Programmer (which is a book everyone who codes ever should read), I showed the framework to my manager and our librarian. Seemed to go over well, for something as simplistic as it is. No major issues with the overall UI design, which is good. It's simple enough to make changes to later if something crops up, though.

Noting rjbs and mdxi talking about PAUSE last night, I signed up for an account. Got my confirmation today (along with the username "bda", which is supercool), and I'll probably be uploading what I have of Archivist after confirming (again) with the COO that it's cool to GPL this stuff (he has never had any problems in the past with doing so), and checking to see how people package things that aren't just modules.

All in all, a pretty productive and instructive last few days.

12:55 PM | Programming

Just got done with my brief pseudo-meeting with the COO, explaining that while we could in theory sell Archivist as a stand-alone product, he understood how unlikely that was (and if it ever become sellable, we could just offer support and customizations for it instead).

His comment was the same as it's been for the last three years when I ask him these questions (for stuff that isn't really worth releasing, unfortunately): "If we're gaining from open source, or Free, software, I think we, morally, should give something back."

Which just plain rules.

2:03 PM | Work