IBM Geekness

I guess I have a weakness for IBM’s full system descriptions. The z990 is the latest of these. It’s just neat to read about things all the way from instruction sets and microcode, to the way that cooling happens in card cages.

Ooooh, an issue on tapes. I remember the IBM mass store that I saw at the Federal Systems Division; a couple of robot arms were used to bin tape cartridges in a honeycomb, transferring them to a few readers on demand and putting them back once they were cached on disk. Occasionally the arms would drop cartridges on the floor of the unit. Our tour guide: “The techs draw lots to see who gets to go in and fetch them.” The arms were pretty quick and strong…

Slashdot poll

This morning’s Slashdot poll. I have not paid this much attention to baseball in quite some time.
I’m looking forward to taking our baby boy to baseball games at some point in the future (though my wife demands to come along, saying that I’ll get all the info about the game wrong . . . which sadly, is probably true unless I do some serious reading between now and then 🙂 ).

Fun papers

Some fun papers (papers being shorter than books, which has been important lately…)

Rob Pike’s Acme editor. I admire it for being lightweight and having interesting ideas rather than being usable (from reading, it looks like a user-interface train wreck). I wish Pike had seen the MPW Shell (which had some similar interesting ideas, with better UI).

Google’s MapReduce processing.

Code Snippet technology in Visual Studio 2004 (from MSDN).

Line Drawing, Leap Years and Euclid (or: Bresenham is everywhere!)

The Old Guard (3)

(here was part 2)

He’d been at XXQ for a week, and every day things had gotten worse. The sobbing engineer in the cubical next to him had turned out to be XXQ’s Chief Software Architect. On the second day Zeke met the marketing team, and he had come away shaking in frustrated rage. On Wednesday his project was cancelled and he’d been told to start writing code for Spoon-T. On Wednesay afternoon his manager quit.

The microcomputer revolution had come and gone while Zeke had been in that midwest skyscraper. But despite hope and hype to the contrary, the software revolution had never come. Twenty years earlier, software projects were nearly always late, often stillborn, mostly unmaintainable, and always very, very buggy. Nothing had changed. The buzzword of the 70s had been Structured Programming, the death of the GO-TO statement; it was going to save the industry, and hadn’t. The buzzword of the 90s had been objects and the death of procedures, and it had similarly failed to deliver on salvation. The current buzz was web services and distributed applications, and things were looking just as crufty, slow, buggy and un-saved as ever before.

Zeke’s apartment-mate was a fourty-year-old geek named Hassan “Chop” Smith. He had gone to MIT twice; once as a teen-age “ninth floor computer groupie,” who simply hung out and hacked away on the free mainframe accounts, and the second time as a janitor who spent most of his time helping out grad students with their projects at night. He knew more about computers than a lot of the people who left MIT with degrees. Hassan had bookshelf upon packed bookshelf stacked two and three rows deep with computer textbooks and bad science fiction; Zeke wanted to read them all.

Hassan was a fount of wisdom about Silicon Valley. If he didn’t know the back-story behind a particular start-up, he knew someone who did; if he didn’t have friends in the right places he he could still read a company accurately given thirty seconds on a web site. “These guys are loser dope-smoking freaks with too little code and too much funding,” he’d remark, or “This company has shit-hot technology, but their idiotic marketing is going to kill them.”

Hassan didn’t *need* to share his apartment, but he was a loner who liked to talk. He’d been in the same apartment for fifteen years. Former roommates had gone on to found some of the Valley’s most successful software companies. He was connected.

On Wednesday evening over a shared spaghetti dinner Hassan remarked “There are going to be layoffs at XXQ tomorrow. Get your stuff out of there the first thing when you go in.”

“Layoffs on a Thursday? I thought they always did those on Fridays?”

“No way. You can’t lay anyone off on a Friday, everyone expects that. And you can’t do it on a Monday because you have to arrange for the rent-a-cops the prior business day, and the news would leak. So you’ve gotta do it in the middle of the week. This year the fad is for Thursdays.”

On Thursday morning he’d gone into work and surreptitiously moved his few personal effects (a CD player, some music, and some books) to his Rabbit. He noticed half a dozen other people also carrying small boxes of things to their cars; no one looked at each other. He pretended to type code until lunch, then went to a local deli. When he returned, there was a young, fat rent-a-cop at the door checking badges against a clipboard.

“Zeke Hamming? Okay, you can go in,” said the youth.

“I thought I was laid off,” said Zeke.

“Naw. You’re just not that lucky.”

Zeke slunk back to his cubical, feeling depressed. The soft sobbing in the cubical next to his was still going on; Zeke felt like chiming in. He started typing where he’d left off.

* * *

That evening he and Hassan went out drinking in the yuppie-laden bars of downtown Palo Alto. The nominal excuse was to pick up girls, but neither of them was really trying.

“Why’d you have me move my stuff to my car?” he asked Hassan.

“So you’d get to keep your job.”


“Not everyone in that company is a moron. They watch people. The people who were putting their stuff in their cars were the ones who were connected enough to know that there were going to be layoffs; those are the ones that you want to keep. Connected people are the ones you want working for you.”

“Jesus H.”

“Stick with XXQ. They’re idiots now, but they’ve got some decent heavies coming on board in a few weeks, and it’ll be worth the wait.”


“Just wait. When the guy next to you stops crying and starts typing and playing Christian Rock at full-crank at all hours of the day, things are going to happen fast. When they ask if you want to buy some options, just fucking get your checkbook out.”

Zeke raised his beer.

“Of course, they’re going to have to change their God damned name.”

The Old Guard (2)

(part 1)

Four days after leaving the midwestern mainframe/mini company that had employed him for so many years, Zeke found himself in the middle of a desert. He’d read that it seldom rained for six months at a time, and that in mid-summer the air could be unbreathable. But there were many like himself around, and there was water and food and drink, and there were many jobs in that time, and all of the jobs were in cube farms that had replaced real farms.

The job market was on the rebound from the last cyclic crash. Zeke’s roommate called it the Hype Oscillator. “See, the lies build up. The Silly Valley tailors are always making new clothes, and venture capitalists spend money in order to cover the lies that they bought into earlier. Eventually there are VCs handing out cash on street corners to homeless guys who have a little Perl, HTML and SQL. Then, boom, suddenly there are no clothes, everyone panics, and that’s a great time to take a sabbatical.”

Zeke had found a job in thirty minutes at a job fair. He’d been collared by a company whose name included at least two Xs and a Q. He was practically dragged to an interview room, then given an offer on the spot and told to show up after lunch. He ditched the other fourty nine copies of his resume on the way out of the fair.

XXQ was located in an anonymous tilt-up underneath the airport’s flight path. Zeke parked his car and breathed deep the fumes of jet fuel. He looked at the company logo; it was so badly designed and fully of little swirly-cues that he could not tell how many Xs were in the name, but he was pretty sure about the Q. Unless it was a C married to a G.

Orientation consisted of signing some legal paperwork and being told to find an empty cubical and his manager. A cubical in back looked promising. His manager was playing darts in the lunchroom.

“I’m Zeke,” he said to his new boss, “They told me to show up and find you.”

“Great,” said his manager, who barely turned around from his game. “Go write a spec for RSpoon 1.0 and see me at four.”

“Okay,” said Zeke. He wondered where he’d find a computer. He wondered what the heck a software company was doing with spoons.

* * *

In the cube farms, the carnage never stopped.

“How can I possibly make that schedule!?” cried one engineer. Another engineer a few cubicals over was sobbing quietly. Far across the cavernous single room that XXQ occupied, Zeke could see objects flying over cube walls, sometimes getting stuck in the metal rafters far above. In his own corridor, a team of young geeks was nerfing out a design question.

“Head shot!” one called out, “We use XML!”

“No it wasn’t! Besides, XML is still lame!”

Bap, a head shot. “Now it is!”

Zeke had found a new in-the-box monitor and computer in his cube when he returned to it. He spent an hour setting it up while the XML versus something else battle continued to rage. The quiet sobbing had been replaced with rapid keystrokes.

Zeke logged in and started reading code. It was horrible. He munched an apple. An hour later he realized he’d eaten the apple’s plastic price sticker. He paged through some more code, faster and then even faster. He wanted to throw up, and it wasn’t the tag’s fault; what he was looking at was his first inkling that something was seriously, fundmentally broken at XXQ. He was starting to regret having pitched the fourty nine copies of his resume at the job fair.

I’m in a train wreck, he thought, and it’s still sliding to a halt.