Saturday, December 23, 2006

We are empowered again, not to mention eminternetted. It was a long, strange week, though.

Starting on Christmas cards tonight. Err... yeah. Anyways... :-)

Wednesday, December 20, 2006

Still no power. Haven't sent Christmas cards as a result because I can't get at my address book. Nor have I been able to read personal e-mail in that time.

Worse, there's another storm coming up today. From what I understand we will be pushed back to the bottom of the priority list for power restoration. This is contrary to the claims being made by PSE that they'll restore power to those without it longest; the reality is they have no way of tracking how long you've been without power since their systems automatically reset you to "power restored" after 48 hours.

I'm close to just giving up and heading back to Pittsburgh. At least I have heat there, and basic utility outages are treated seriously.

I'm also getting in trouble at work because I haven't been checking up on things from home. Folks assume that, since they have power, you should, too.

Friday, December 15, 2006


Tuesday, December 12, 2006

Today was the busiest day of the year at work. We also came frighteningly close to a large (though not total) meltdown. My role in this was mostly canary ("Uh, guys, these systems don't look good..."), a bit of Chicken Little ("No, really, the sky is falling, and we need this team in the war room now."), a dash of resolver ("Well, the problem isn't here, and it's not there, so let's look thataways."), with a topping of reassurance ("Yes, the graphs look good now, we really can stop panicking now, thanks, now let me step out of the way while you manager types affix blame.").

Alas, I ended up spending the entire day in the war room and got no work done. Bleh. I also like to talk in italics. So sue me.

Speaking of suing, the SeaTac Christmas holiday tree fiasco amazes me. Basic gist: Rabbi wants a menorah included in holiday decorations at the airport, is met with typical bureaucratic "I'm going to answer in the way that involves the least amount of work for me" responses ("Your request is important to us, please stand by"). He gets fed up, threatens a federal lawsuit if they don't comply within 48 hours. Bureaucrats panic, consult lawyer, lawyer says you'd better take them down or prepare to include symbols of every possible faith including demonic worship, etc. So the trees come down.

Is anyone surprised by this? Apparently, Rabbi Elazar Bogomilsky, who had threatened the lawsuit, was.

Either the parties involved are truly nefarious and disingenuous, or they're idiots. I find both plausible. Taking DAC's law into account ("Never attribute to malice that which can be attributed to stupidity"), I'll say they're idiots all around.

Sunday, December 3, 2006

I have a cold. Nothing terribly bad, but it's kinda gross to be around me right now and I'm likely contagious.

Alas, I cannot stay home from work tomorrow. I'm on-call from noon Monday until noon Wednesday. Normally, an on-call shift is the ideal time to stay home (you're not going to get much work done anywhere you are). During December, however, my team is required to have our on-call present in the "war room" during peak traffic hours -- a crowded place with a bunch of graphs projected on the walls. I don't expect this to be pleasant for myself or anyone around me.

Fortunately, I've found a mask which will filter out most of the germs. It looks a bit silly, though -- more like I'm about to do some carpentry rather than the surgical-style mask I was looking for.

Friday, December 1, 2006

Tuesday, November 28, 2006

Apparently the commute yesterday around Seattle was so bad that rush hour lasted until well after midnight. The trip from Seattle to Tacoma -- usually about 30 minutes or so -- required five hours.

For those of us who take the ferry, though, it was a normal, though chilly, commute. (Well, aside from having to get around the crowds swarming Qwest Field for the Monday night football game.)

Tuesday, October 31, 2006

Argh! I just encountered another instance of the following code from one of our developers:
    try {
// some stuff
catch (NumberFormatException e) {
throw e;

Do some folks just enjoy typing for the sheer fun of it?

Sunday, October 29, 2006

Random silliness related to a new project I'm working on at home: visualizing the keep-out regions for an ATX motherboard for a case I'm working on.

(A higher quality video is available here, but $)@(*#$ LiveJournal won't let you link to videos if they're not on YouTube or Google).

Tuesday, October 24, 2006


You've seen them. The cardboard boxes simulating computers, TVs, and other electronic equipment used in furniture stores. The most familiar names are Proptronics and Box Props, though I'm sure there are others.

What I never realized was just how expensive these things are.

That 42" corrugated plasma TV? Box Props wants $76.95. A 60" box-o-vision from Proptronics will set you back $123 ($133 if you want a static color image on it). Complete computer systems with the latest Cellulose processor will run you $46-$95, depending on configuration.

At least the laptop is somewhat affordable -- $13.95. I don't think I've seen one that clunky since the late 80s/early 90s, though.

Sunday, October 22, 2006

Technology sucks

Apparently, the good folks at Apple have coded up a way to simulate CD scratches into iTunes 7. Songs which were intact before -- as well as those purchased on iTunes -- are now skipping. <sigh> Or maybe it's a ploy to push me over to Zune.

I'm guessing the Victrola emulator had to be deferred to version 8.

Also, I'm on-call again this weekend. We've reduced the number of folks available for on-call by half, which means the rest of us are now on-call twice as often. Oh, and now we can't do anything -- including rebooting a dead host -- without filling out a bunch of paperwork and getting it approved by a manager. Only 304 days, 2 hours, 23 minutes, 51.25 seconds until I can go to another job...

Monday, October 9, 2006

More as a reminder to myself; this place apparently has all sorts of oddball fasteners, screws, etc.:

Monday, October 2, 2006

Ah, some of you make me feel like Electron Mike from today's Diesel Sweeties. For some of us, e-mail practically was the internet for a long time. (Ok, there was the occasional use of Usenet and Gopher, and we had our own version of Google and Bittorrent in Veronica and Archie.)

My younger coworkers who ask me how I could forget to update my here/away status on IM and who laugh at the plain-vanilla stock ringtone I use on my cell phone (it just beeps a few times) are also guilty.

For those who are into retro-internet, Firefox still supports Gopher. I even discovered a few active sites, like this one.

Sunday, October 1, 2006

I love this movie.

Let x equal the quantity of all quantities of x.
x equal the cold.
It is cold in December.
The months of cold equal November through February.
There are four months of cold and four of heat, leaving four months of indeterminate temperature.
In February, it snows.
In March, the lake is a lake of ice.
In September, the students come back and the bookstores are full.
x equal the month of full bookstores.
The number of books approaches infinity as the number of months of cold approaches four.
I will never be as cold now as I will in the future.
The future of cold is infinite.
The future of heat is the future of cold.
The bookstores are infinite and so are never full except in September.

Wednesday, September 20, 2006

Halloween costumes I'd never let my teenage daughter1 wear #6573:
Circuit Breaker, from Transformers

1 Hypothetical -- I didn't run out and adopt one in the last couple of weeks...

Saturday, September 16, 2006

I supposed it was only a matter of time... Mail-order husbands

Friday, September 15, 2006

For those in Seattle: If you ever get a chance, I recommend seeing a performance by the Squirrel Butter duo. Yes, those percussion sounds are all generated by her feet.

Monday, September 11, 2006

I've updated my tidal calendar creator so that the UI doesn't suck as much, it outputs PNGs instead of SVGs that nobody can really read, and autoscales according to the data received (rather than hardcoding -3ft and +18ft, which is only reasonable for Puget Sound).

It's also much slower, alas... generating PNGs is not easy. Also, I threw in an expensive antialiasing call in there to make things prettier.

Oh, and because I forgot to mention it earlier: the source code is also up there for the curious. You'll also need the location database I generate for this.

Sunday, September 10, 2006

Silly xtide tricks

Working on automagically rendering tidal calendars. It's a work in progress -- the scale is optimized for one location (Eagle Harbor, Bainbridge Island), you need an SVG enabled browser to see the results, the interface sucks, and a number of important disclaimers ("NOT FOR NAVIGATION") and credits are missing, but...

Tuesday, September 5, 2006

The pains of REST

No, I'm not talking about sleep. Rather, some ranting about REST originally sent to a work alias.

I felt the need to actually write a bit of code this weekend, but wanted a distraction from actual work. I decided to try writing a C/C++ interface into S3 (with the ultimate goal of making a filesystem driver, but that's more than a weekend). This also gave me a chance to take a good look at REST.

After hacking on this for about 10 hours, I don't get it. Why is this an appealing "protocol"? (I put protocol in quotes because REST is all about not having a protocol, piggybacking entirely on top of HTTP.)

The major disasters I encountered:

1. What would have been about 10 lines of code interfacing into the Sun RPC library exploded into a mess thousands of lines of code getting libcurl (HTTP library) talking to libxml (XML parsing library).

2. Application errors and transport errors are completely indistinguishable. HTTP error codes are used for both. I spent 2+ hours debugging my "list buckets" implementation, trying to figure out why S3 was sending a 302 code back to me ("Location moved? This isn't in their list of errors..."). Breaking out ethereal and comparing its output vs. the S3 sample client finally revealed that S3's documentation is not entirely up-to-date, and the HTTP server I was talking to wasn't the actual S3 application server.

3. HTTP has a massive forest of possible states (chunked encoding, keep alive connections, continuation responses, etc.), but only a subset of these should be applicable to a given call. With REST, you need to deal with all of these if you want a robust client.

4. There are 3,527 different ways of encoding the same data, and you have to do it properly for this day of the week. For example, all requests into AWS have to be signed with your secret key; the request to be signed includes a subset of the HTTP headers and the date. In this case, the date must be in the form, "Tue, 05 Sep 2006 10:42:33 GMT". You duplicate this in the Date: HTTP header. Unless you have an X-Amz-Date header, in which case you use that. Unless you have an expiration date, in which case you use an integer representing the number of seconds since the epoch, and you put that in the HTTP request line. When S3 returns a date to you, it's another beast entirely: "2006-09-05T10:42:33".

It seems like REST came about because people didn't like any of the existing protocols (ok), but realized that designing a protocol is hard (yes) so they just threw it out the window entirely (uh oh) and just started hacking on code without any regard for the consequences (cries).

Sunday, September 3, 2006

I'm sure that this is some internet phenomenon which happened way back when, but this is the first I've heard of it. (all hail the company) recommended a DVD called Bikini Calculus to me today. (No, I don't know why. Yes, my recommendations are all messed up because I have to test the site frequently. At least, that sounds like a plausible explanation to me.) Yes, it's two girls in bikinis. Giving a tutorial on the calculus of a single variable.

There's even a snippet on Google Video.

I'm undecided whether it's amusing, sexist, or effective. Probably all three to varying degrees.
On Tuesday, my laptop started acting flaky. Well, ok, it's been flaky for awhile, but I just attributed that to Amazon's weird setup. This was flakiness in ways I've never before observed.

And then it bluescreened. Hard. Upon bootup.

I took it down to deskside, the folks who support user computers. They confirmed that the hard drive was toast. "But don't worry, you can have this new laptop."

Insert paniced look on dacut's face here. I mean, shiny new laptop is good, but it doesn't have my files. And I don't back up my files because I currently have nowhere to back them up to in a way that doesn't violation our IT security policy. The one place I can put them -- my desktop -- is perpetually full. Oh, yeah... I'm also lazy.

Thankfully, they managed to recover most of my documents. I don't really care about the rest.

I'm currently working on an interface to S3 that will let me mount a bucket there as a filesystem. If necessity is the mother of invention, panic is the drug which induces labor...

Wednesday, August 30, 2006

Oh, , you're going to hate me for posting this...

The Boston Globe

August 21, 2006

Roxbury MA (AP) - A seven-year-old boy was at the center of a Boston
courtroom drama yesterday when he challenged a court ruling over who
should have custody of him. The boy has a history of being beaten by
his Parents and the judge initially awarded custody to his aunt, in
keeping with child custody law and regulations requiring that family
unity be maintained to the degree possible.

The boy surprised the court when he proclaimed that his aunt beat him
more than his parents and he adamantly refused to live with her. When
the judge then suggested that he live with his grandparents, the boy
cried out that they also beat him.

After considering the remainder of the immediate family and learning
that domestic violence was apparently a way of life among them, the
judge took the unprecedented step of allowing the boy to propose who
should have custody of him. After two recesses to check legal
references and confer with child welfare officials, the judge granted
temporary custody to the Boston Red Sox, whom the boy firmly believes
is not capable of beating anyone.

Thursday, August 24, 2006

I hate Amazon's plogs (blogs written by authors). I've been disappointed just how bad most authors come across when they don't have an editor between me and them. That and plogs take up room on the website.

So I wrote a Greasemonkey script to get rid of them: plogs-die-die-die.user.js. You'll need to be running Firefox to use Greasemonkey.

Monday, August 21, 2006

To clarify, I was not responsible for that outage. In fact, I was in the place where I could cause the second-least damage: a meeting.

The place where one can cause the least damage is, of course, management.

In a pardoxical twist, the most amount of damage is caused by a manager in a meeting... but I digress.

Friday, August 11, 2006

According to an article in today's Seattle Post-Intelligencer: is developing a system to gather and keep massive amounts of intimate information about its millions of shoppers, including their religion, sexual orientation, ethnicity and income.

Gee, if only I knew someone who managed the customer database at Amazon to check up on this. Wait a second. I'm one of the folks who manages the customer database.

But... there aren't any fields in the database for this. Oh, wait -- this is a super-duper-ultra-black-top-secret project, right? After all, I did learn about it in the newspaper and not from my bosses. Let me check -- oh, I know! I'll bet that IS_TAX_EXEMPT column is actually storing sexual orientation!


Wednesday, August 9, 2006

I can type faster than I can write. However, I can talk faster than I can type.

As a project lead, this means that I can sketch out an idea on a whiteboard and someone will go off and implement it. In the meantime, I can start working on something else; evetually, the person I was sketching this for comes back with the idea implemented.

It's all a bit strange, and I'm not used to working on interrupt cycles like this. At the same time, it's neat; it's almost like I'm parallel processing without resorting to cloning myself.

Monday, August 7, 2006

My cats have found out how to get my attention when I'm out of town. They've learned to press the power button on the power extension/tree which my router is plugged into.

Monday, July 31, 2006

1. Grab the nearest book.
2. Open the book to page 123.
3. Find the fifth sentence.
4. Post the text of the next 3 sentences on your blog along with these instructions.
5. Seriously, grab the first book you see. Not the most impressive book you see.
In the Visualization Toolkit, we call this collection of graphics primitives polygonal data. The polygonal dataset consists of vertices, polyvertices, lines, polylines, polygons, and triangle strips. The topology and geometry of polygonal data is unstructured, and the cells that compose that dataset vary in topological dimension.

Wednesday, July 26, 2006

Wow. I don't even want to think about how much money I lost today.

Channeling Dilbert

Last Monday...
Program manager: We promised our client feature X, and discovered it doesn't work. How come?
My team: Um, because you never told us about it?
PM: Ok, well, we're really in a bind here. How soon can you do this?
Us, grumbling... Well, let's see. If we stop everything we're doing and put Dave on the task, we can hit August 9th with 80% confidence.
PM: Hm... how about August 2nd?
Us: Not really, that's awfully tight. We might pull it off, but there's less than a 50/50 chance. You should tell [client] August 9th.
PM: Well, ok. August 9th it is.

Last Wednesday...
Me: Ok, I've gotten the changes made and have a sample available on my desktop. Can someone verify this?
Other teams: Hm... there are a few issues we didn't expect as a result of this. Can you fix those, too?
Me: Ok, I'll look into them.

This past weekend...
Me: Issues resolved. Can you re-run your tests?
Me: Hello? Hello?

Other teams: Yeah, ok, verified that the issues are resolved. Thanks for working on this over the weekend, even though we weren't willing to sacrifice our free time to help with this urgent feature we needed.

PM: Why isn't this out to QA yet?!!
Us: Um, because today's the 26th, and we're still packaging things up to get it to them by Friday.
PM: But... but... you can't! You have to do it today!!!11!1one!!eleven!!!
Us: Why?
PM: Because it has to be out by August 2nd!
Us: No... we told you August 9th. August 2nd was if a miracle happened.
PM: But... but... it did! You got it working already! And I sorta promised it to [client] then.
We fume, steam comes out our ears, etc.
My manager, cc'ing our VP: Gee, that's too bad. Good luck explaining that to [client].

Monday, July 24, 2006


For those who don't care about chips -- silicon, not potato -- skip this post.

For those who do, you've probably heard that AMD has agreed to purchase ATI for US$5.3 billion in a deal which has been rumored to be in the works for a few months now.

I have mixed feelings about this. On the one hand, I've been advocating the need for tighter integration for awhile now. Having a full computer-in-a-package -- processor, memory, and even magnetic storage -- where the only ports are power, video/audio, and human interface device ports will enable a wide variety of devices we've only started to think about.

On the other hand, why did it have to be ATI?

I've found Nvidia's offerings much more interesting in this area. They got the idea right in the first place: they made GPUs, then chipsets, then chipsets with GPUs in them. (Admittedly, these were low end and many people reading this have probably panned them, but I'm not focusing on the power-user market here.) In some respects, the only things left were the processor, memory, and storage. Perhaps AMD felt threatened by them?

Wednesday, July 19, 2006

Ferry security announcements

You'd be surprised at the frivolous things people complain about. (Yes, I'm guilty as charged, here.)

Recently, the ferry system here changed the security announcement which is played over the public address system at the beginning of every run. Instead of having an unnotable voice read through it unemotionally, they're now recited by local celebrities, and in such a manner that their personalities come through.

You can't help but notice them -- which is the point.

Mariner's play-by-play announcer Dave Niehaus is generally regarded as the most annoying. I've tried to ignore it and focus on my work -- it's darn near impossible. Local radio personality Ciscoe Morris is amusing; he finishes the announcement with, "Enjoy your trip, and don't forget to eat your Brussel sprouts."

Governor Christine Gregoire's tape doesn't have her actually read the announcement itself. She gives an intro (in a strangely depressing voice) about how the Washington State Ferry system is one of the safest in the world and asks you to heed the security message, which is read by an unnamed assistant.

At any rate, the announcements are the subject of more conversations (that I overhear, at least) than the major world crises. Still not as prevalent as the conversations about Dilbert-like working conditions, though.

Sunday, July 16, 2006


They say you can get around in Victoria without a car quite easily. What they meant to say was, "You can get to all the tourist traps in Victoria without a car quite easily."

We were rather disappointed. Don't get me wrong; it's one of the prettiest towns around -- nice harbour, seaplanes landing every few minutes, gardens, nice architecture, etc. Underneath, though, there's just no substance.

The Royal BC Museum was a letdown. The First Peoples gallery was rather dry (mostly fact after fact); the modern history gallery was amusing for all the wrong reasons (a display on life in Canada in the 1990s...). The temporary exhibits (think: games with a thin veil of education applied) were a strange sight, as they were on loan from the U.S. The "Speed" exhibit used imperial units and bits of U.S. history everywhere. The "Fore the Planet" mini-golf game was non-location centric up until we got to the part about the migratory path of some bird. The map of the Americas you putted on omitted Canada entirely.

Ah, well. Vancouver should be better, from what I've been told. And Toronto, Montreal, and Charlettetown (PEI) were all quite enjoyable.

Everything has gotten more expensive, though, with the C$ up near US 90¢.

Thursday, July 13, 2006

Making a run for the border...

With my wife and parents-in-law, we're infiltrating deep into Canada this weekend.

Ok, not exactly that far beyond the border, and parts of B.C. which are south of the 49th.

Hm... we insisted on carving Point Roberts out of Tsawwassen, yet we let them keep all of Vancouver Island?

Monday, July 3, 2006

Grr. I have managers up my ass this morning, asking me to help get this nasty bug fixed. We've proven it's a compiler bug; I've shown it can be fixed by updating our compiler from its 1998 vintage to something a tad more recent, like 2002 or 2003 . We're now trying to write code which does nothing, but coaxes the compiler into doing the right thing.

In the meantime, the entire Amazon build infrastructure is conspiring against me.
  • "Your password is about to expire in 37 seconds. Change it on this page -- oops, sorry, we broke that page!"
  • "This host isn't bootstrapped for builds -- oops, sorry, you don't have permission to bootstrap it."
  • "You haven't deployed the build infrastructure to this host -- oops, sorry, our deployment servers aren't responding."
This wouldn't normally annoy me to the point where I'm posting about it except for the aforementioned managers in my ass. I don't really like anything in my ass, thank you, let alone managers.

Sunday, July 2, 2006

For those who are feeling that sense of rejection...

From FOUND Magazine.

Monday, June 26, 2006

Is it just me, or has the use of "misspoke" increased in the last few years?

... and let God sort them out.

Ah, the brilliance of Antonin Scalia:
The American people have determined that the good to be derived from capital punishment - in deterrence, and perhaps most of all in the meting out of condign justice for horrible crimes - outweighs the risk of error. It is no proper part of the business of this court, or of its justices, to second-guess that judgment, much less to impugn it before the world ...

So if we end up executing someone innocent, it's ok! Because, you see, it's what the people want.

Maybe we can save a bunch of money by abolishing our courts entirely and having the attorneys duel it out in a press conference showdown. The people demand it!
Wow. It's not every day that someone donates $37 billion to charity.

Friday, June 23, 2006

In a conversation with , I've been reminded that there are a number of people out there, some of whom may be on my friends list (or friends of friends, etc.), who are looking for jobs and might be interested in Amazon. I subscribe to the internal weekly "hot jobs" list, and have pasted it here in case you're interested.

Business/Merchant Development
Business Development Manager, Amazon Digital Content | Seattle, Washington, United States | Level 6
Sr Manager Business Development, Digital Media Group | Seattle, Washington, United States | Level 6

Customer Service
Manager III, Customer Service | Kennewick, Washington, United States | Level 6
Sr Manager, Customer Service | Kennewick, Washington, United States | Level 7

Database Administration
Database Administrator - Ordering | Seattle, Washington, United States | Level 5

Lead Inventory Analyst | Seattle, Washington, United States | Level 4
Senior Financial Analyst for Toys and North American Hardlines | Seattle, Washington, United States | Level 6
Senior Tax Manager | Seattle, Washington, United States | Level 7
Finance Manager | Seattle, Washington, United States | Level 6

Fulfillment Center
Operations Manager | New Castle, Delaware, United States | Level 6
Electronic Systems Engineer | Coffeyville, Kansas, United States | Level 5
Electrical Systems Engineer | Fernley, Nevada, United States | Level 5

Human Resources
Stock Plan Administrator | Seattle, Washington, United States | Level 4
Recruiting Coordinator | New Castle, Delaware, United States | Level 6
College Recruiter for University Programs | Seattle, Washington, United States | Level 5

Safety Specialist | Carlisle, Pennsylvania, United States | Level 4

Product Management
Product Manager - Amazon Web Services - Mechanical Turk | Seattle, Washington, United States | Level 6
Merchant Product Manager, HPC | Seattle, Washington, United States | Level 6
Sr. Manager, Product Managment - Prime | Seattle, Washington, United States | Level 7
Senior Product Manager for Online Advertising and Business Development | Seattle, Washington, United States | Level 6

Project/Program Management
Technical Program/Product Manager | Seattle, Washington, United States

Real Estate/Facilities
Facilities Area Manager | Coffeyville, Kansas, United States | Level 5

Software Development
Software Development Engineer - Amazon Web Services Platform | Seattle, Washington, United States | Level 6
Technical Program Manager, Global Payment Services | Seattle, Washington, United States | Level 5
Software Developer, Internet Movie Database | Seattle, Washington, United States | Level 6
Quality Assurance Manager - Associates | Seattle, Washington, United States | Level 5
Software Development Engineer /User-Interface - Plogs | Seattle, Washington, United States | Level 5
Software Development Engineer - Merchandising Applications | Seattle, Washington, United States | Level 6
Software Development Engineer - Associates | Seattle, Washington, United States | Level 5
Software Developer Engineer, Discovery Application Platform | Seattle, Washington, United States | Level 5
Software Development Engineer II | Seattle, Washington, United States | Level
Software Development Engineer III | Seattle, Washington, United States | Level
Software Development Engineer II | Seattle, Washington, United States | Level
Software Engineer/Operations Research Scientist | Seattle, Washington, United States | Level
Software Development Engineer II, Performance | Seattle, Washington, United States | Level
Software Development Engineer | Seattle, Washington, United States | Level
Software Development Manager - Corporate Accounts | Seattle, Washington, United States | Level 6
Software Dev Engineer - Test - Amazon Mechanical Turk | Seattle, Washington, United States | Level 5
Software Development Manager - Website Experimentation | Seattle, Washington, United States | Level 6
Software Develoment Engineer - Content Management | Seattle, Washington, United States | Level 6
Software Developer Engineer, Community | Seattle, Washington, United States | Level 5
Software Developer Engineer, Community | Seattle, Washington, United States | Level 5
Software Development Manager - Merchandising Applications | Seattle, Washington, United States | Level 7

Systems Quality
Senior Manager, QA & Systems Engineering Team | Seattle, Washington, United States | Level 6

Technical Program/Project Mgmt
Technical Product/Program Manager - Merchandising Applications | Seattle, Washington, United States | Level 6
Senior Technical Project Manager | Seattle, Washington, United States | Level 6
Sr. Technical Product/Program Manager - Amazon Web Services Platform | Seattle, Washington, United States | Level 6
Senior Manager-HRIS | Seattle, Washington, United States | Level 7

Monday, June 19, 2006

One of the perks of working at Amazon is that we get to meet some of the authors and musicians whose works we sell on the site (as part of the Author Fishbowl series, not to be confused with Amazon Fishbowl with Bill Maher, which stole the internal fishbowl name). Last Friday, I got to meet Douglas Coupland, author of Generation X and Microserfs. He was on a book tour promoting his new book, JPod. (We got free signed copies! Woot!)

Very interesting guy. Very strange guy. The eclecticness of his novels -- he will occasionally take a break from the story and just fill a page or three with random words and phrases in varying sizes -- is not some cute act; he is like this in real life.

I don't know what to compare the experience to. Maybe it's like meeting a crack addict who is just coherent enough to lucidly convey the train of thoughts that are rushing through his head.

Not much else to report. I was the primary on call last week, which meant I got very little sleep. Tamara and I went hiking yesterday on the Olympic Peninsula, this time up Royal Creek near the Dungeness River (which feeds Dungeness Bay near the old town of Dungeness, which lends its name to a species you've probably heard of, Dungeness Crab).

Wednesday, June 14, 2006

Reorg'ed... again!

My group underwent a reorganization today. This is the fourth reorg for me -- seventh involving my group -- since I arrived last August. That's about one every other month.

Admittedly, however, most of them made business sense (including today's). That's unusual; my personal experience with reorgs at previous companies was that they were initiated so someone could make a power grab. These have mostly been optimizing tweaks (though today's was a fairly major shift).

Ah, well. Life in the corporate merry-go-round, I suppose.
Well, this has certainly been one of my more interesting commute experiences.

Apparently, some intoxicated/deranged guy crashed the gates and drove onto the ferry. They arrested him on the Seattle side, but bomb sniffing dogs detecting something in his vehicle. They evacuated the ferry terminal as a result.

I had to give my group's manager-on-call a ring to let him know that I was stuck without internet access (I'm on-call through noon tomorrow and have to respond to incidents within 15 minutes).

Tuesday, June 13, 2006

... and the day only went downhill from there.

It's bad when someone asks, "Was blah caused by the sev-1*?"

It's ugly when your response is, "Which sev-1?"

(* sev-1 = Amazon-speak for a critical bug which is causing the company to hemorrhage money.)
Ah... what a way to start the morning. On the ferry ride in, I started getting multiple pages about our services being in distress. Having an unknown, abusive software client threaten to take down the site is a very effective wake-up call -- perhaps moreso than the morning coffee.

Now, to track down the offenders and beat them into submission...

Wednesday, June 7, 2006

We have returned from the Canyon. I am now leaner, healthier, and more tanned than I've been in recent history. Paddling 130 miles in the hot Arizona sun will do that to you.

It was a most excellent trip. Pictures and details will be forthcoming; alas, I'm too sleepy to do this right now (our schedules followed the sun -- bed around 9 pm, rise around 5 am), so this will have to happen later.

Discovered at work today that I will be mentoring two interns instead of just one. They're both working on the same project, though, which makes things easier; they're also quite sharp. This should be fun.

Friday, May 26, 2006

I'm off to the Grand Canyon in a few hours. See everyone in 1½ weeks!

(Ugh... I have to catch the 5:20am ferry. At least it should be on time since it's the first run of the day -- most holiday weekend ferries have trouble keeping to the timetable.)

Thursday, May 25, 2006

The folks over at Overheard in New York have a new, related site: Overheard in the Office.

Including gems like this:
Boss: Where the hell were you? I need to call someone.
Assistant: I was in the bathroom.
Boss: But I needed you.
Assistant: You told me to be more efficient, so when nature called, I answered on the first ring.

151 El Camino Drive
Beverly Hills, California

Wednesday, May 24, 2006

Good or Evil?

I'm beginning to wonder if this being good thing is paying off. So I ask you:

Wednesday, May 17, 2006

Ah, sometimes I love the New York Times. Their review of the upcoming Da Vinci Code movie describes it as "Ron Howard's adaptation of Dan Brown's best-selling primer on how not to write an English sentence."

I couldn't have put it better myself.

Monday, May 15, 2006

The job interview from hell...

You sign in at reception for your interview. Before you get a chance to sit, someone comes by, mumbles your name, and asks you to follow him. The next thing you know, you're fitted with a microphone and are being interviewed on live TV about the Apple vs. Apple case.

Sounds like a bad dream. However, it happened to Guy Goma [WMV], a candidate for an IT job at the BBC.

The man they were supposed to be interviewing -- Guy Kewney, editor of -- was sitting in another reception area watching the interview, somewhat astonished.

I've been extremely busy. Recapping the last few weeks:

  • Tam and I went to Denver for her brother's wedding (29 Apr). Much fun was had seeing the extended family again, especially the younguns. My niece and nephews are growing by leaps and bounds...

  • We've also been getting ready for our rafting trip down the Grand Canyon with friends from college. Tamara leaves in a week (she's doing the two-week trip); I'll head down a week later (for the one-week portion) and meet them half-way.

  • Work's been insane, as usual. There's one guy on the current project (which I'm offloading today -- yay!) who has taken it upon himself to constantly refactor everyone else's code. This also means he's constantly introducing new bugs (as well as reintroducing bugs we've already fixed) during a period when this project is supposed to be stabilizing.

  • Today I've officially started working the Microsoft Project plan for the project I'm managing. Alas, does this mean I've entered the managerosphere?

  • Still trying to sell my house in Pittsburgh. The folks who originally put in an offer but then backed out have hired an attorney . So I get to deal with that now. I also just found out that the rains that have been hitting New England hard have started to make their way toward Pittsburgh and have caused a leak in the family room, and a tree has caused some damage to a fence. It never ends...

So nothing terribly exciting has been going on. Thanks to being an Amazon employee, I don't have much of a personal life...

Tuesday, April 25, 2006

More airline cutbacks...

American Airlines started it by removing an olive from each salad in the mid 80's.

Then they started adding rows and cutting back on the legroom.

Nowadays, you're lucky to get a meal or snack at all.

Tomorrow? They'll eliminate the seats altogether.

Thursday, April 20, 2006

Wow. 75 minutes of sleep last night. People paging me about things being broken (when it's clear that I'm already working on it), and then claiming they didn't.

Then, to top it off, someone from another group decides they know better than us what's wrong and breaks the site even worse than it was before. Everyone playing the blame game rather than trying to fix things.

I came very close to quitting today. Very close. The main thing that kept me from doing so was the knowledge that I can't afford to do so.

Wednesday, April 19, 2006

Ach! Mein Augen!

I was trying to debug something on our internal development site, and this travesty was on the recommendations page.

I would have preferred going to my grave without knowledge that such a book existed. Eeech.

Tuesday, April 18, 2006

Let me take this brief pause to say:

Being primary on-call on my team really, really sucks.

Thank you. Now back to your regularly scheduled programming.

Friday, April 14, 2006

Even more lights

I just found out they have them for cars, too. They are appropriately called the Pimpstar there:

The Pimpstar

Thursday, April 13, 2006

Remember the ceiling fan display I mentioned earlier? Someone has done it with a bike:

Thursday, April 6, 2006

A picture of my new workspace at work:

Office picture

Strangely, the lava lamp is a "gift" from someone who had this office three or four moves ago. So it doesn't belong to me... just to the office itself.

Other items in the picture:
Coffee mug from Avalon, laptop showing an entry from APOD, printout of a hairy database schema between laptop and desktop keyboard, one of my desktop's monitors showing some random JavaDoc from our latest project, and a Firefox poster in the upper left.

Tuesday, April 4, 2006

Pictures from my commute

Map from Seattle to Bainbridge Island

My daily commute, entirely outside of the borders of the interstate freeway system.

Colman dock, Seattle's Pier 52.

Boarding the 4:40 ferry to Bainbridge. This or the 5:30 is probably the most crowded sailing to Bainbridge on your average weekday, carrying up to 2,500 passengers.

A not-so-great shot of the Merchant Vessel (M/V) Tacoma, one of the WSF's Jumbo Mark II Class vessels. This is taken after exiting the waiting lobby, before boarding.

The reverse view, taken from the No. 2 end of the ferry, of the northern third of the parking lot. Most of these cars will not make it onto the boat.

Cars loading onto the ferry. The truss adjusts the incline of the ramp from the ferry to the parking lot for the tides. In the upper-right corner, you can see the last few foot passengers boarding.

The No. 2 bridge of the M/V Tacoma. Below that is the sun deck. I am standing on the main deck, one level below, and just ouside the main cabin.

Piers 54 and upward, north of Colman dock. These tend to be the more "touristy" attractions.

Piers 48 and downward, south of Colman dock. These are the piers used for the commercial hub of the Port of Seattle.

Something I've never seen before: A mechanic up in the No. 2 crow's nest, fixing the radar. Actually, he just seemed to turn a bunch of screws; I never saw anything come apart.

A picture of the Seattle skyline, showing that the Space Needle -- despite how it is usually depicted -- is definitely not downtown.

West Seattle.

A Hanjin Shipping freighter sitting in the middle of Puget Sound and the M/V Wenatchee, the other WSF Jumbo Mark II Class ship, on its return trip from Bainbridge to Seattle. I'm not sure why I often see the Hanjin freighters just sitting out there; perhaps they're waiting for customs to clear them?

A not-so-great shot of Bainbridge Island taken about two-thirds of the way there. It's only slightly more visible in real life, though.

A mere 10 minutes into the 35 minute trip, people on these sailings will already queue up to disembark. They are standing behind a yellow line, where one of the deckhands will set a barrier just before unlocking the railing.

Eagle Harbor, Bainbridge Island, which houses the ferry terminal and one of WSF's ferry maintenance yards (a source of annoyance to some Islanders). Despite what you saw on the map above, ferries don't sail directly into the harbor from Seattle -- there are rocks and shallow waters just east of the harbor. Instead, they aim for the midpoint between Eagle and Blakely Harbors and make a sharp jig north before jagging west into Eagle Harbor.

The old creosote plant in Eagledale. This will eventually become a park; first, though, they need to clean up the plant.

A view of the No. 1 end as we dock in Bainbridge. The turbulence in the water is due to the reverse propulsion applied by the captain to slow us down.

Mooring the ship. In addition to the lines, the captain will apply a small amount of forward (Dockward? Fore/aft/starboard/port don't make as much sense on a dual-ended vessel...) thrust to keep the vessel docked.

Bringing the passenger ramp down.

Meanwhile, on the car deck, bicycles get off first. They'll be followed by motorcycles, ambulances (there was one on this trip), carpool/rideshare vans, and then all other cars. Sometimes this will include a school bus or two.

The sea of people leaving the ship. On these sailings, it will take far longer to get all of the foot passengers off than the cars.

Cherry blossoms near the ferry terminal.

I've wondered for a long while if anyone had died in a pinsetter. For some reason, they've always fascinated and terrified me at the same time.

Friday, March 31, 2006


I'm sitting in a meeting right now, and just got this in an ACM TechNews e-mail. I found the coincidence amusing.

Device Warns You if You're Boring or Irritating
New Scientist (03/29/06); Biever, Celeste

Researchers are scheduled to present a device that will inform people with autism that they are boring or annoying the person they are talking to at next week's Body Sensor Network conference at the Massachusetts Institute of Technology. The "emotional social intelligence prosthetic" device is an improvement from previous computer programs that detect the basic emotional states of happiness, sadness, anger, fear, surprise, and disgust because it focuses on the more complex states of agreement, disagreement, concentration, thinking, uncertainty, and interest, which appear more frequently in conversation. Built by Rana El Kaliouby of MIT's Media Lab, colleagues Rosalind Picard and Alea Teeters, with Peter Robinson of the University of Cambridge, the device consists of a camera (small enough to be attached to eyeglasses) connected to a handheld computer that uses image recognition software, and software that can read the emotions of the images. The software makes the handheld vibrate when its wearer does not engage the listener. The device, which gets emotions right 64 percent and 90 percent of the time when presented with video footage of ordinary people and actors, respectively, is based on a machine-learning algorithm that was trained by showing it more than 100 eight-second video clips of actors expressing different emotions. The researchers say they still need to reduce the device's computing demand for a standard handheld, find a high-resolution digital camera that is easy to wear, and train autistic people to use it. In addition to autistic people, teachers could benefit from the device.

Tuesday, March 28, 2006

Ok, trusty friends list, I need your help.

I need a backronym for "Balboa," the Spanish conquistador and currency unit of Panama. Not (well, at least outwardly) to be confused with Rocky Balboa, the fictional Italian Stallion featured in endless sequels (including another coming out this year), but, hey, the cheesier, the better.

This is for a software component which deals with payments. I've already argued that it has the Portugese/Spanish theme (almost a requisite at Amazon) and currency relation going for it, and since it is being delivered to replace existing legacy services it is a sequel in and of itself. My manager is trying to veto it, though, because of its cheesiness, so I need a stronger case here.

Tuesday, March 21, 2006

Looking for a new bed or mattress? Be glad you don't live in Germany.

Thursday, March 16, 2006

My desire/willingness/motivation/whathaveyou to do work today has hit rock bottom. Then again, I've been tasked with writing specs and attending meetings -- how did I ever have the motivation to do this?

Thursday, March 9, 2006

I've started declining meeting invites sent out by my boss that clearly don't add any value to the work we're doing. We'll see how this goes.

I've also started the process for transferring to a different group.

Wednesday, March 8, 2006

Large scale late-70s/early-80s game show

I need some help trying to recall the name of a one-off game show that was broadcast in either the late-70s or early-to-mid-80s.

This was a fairly standard quiz show which eliminated contestants from one round to the next. The twist was that it started with thousands of contestants assembled in a stadium (I think in Los Angeles, which would point to the Coliseum). They would select their answer (2-part multiple choice) by moving to one half of the field or another.

After the field was whittled down a fair bit, the remaining rounds took place in other parts of the world (I remember London being one such site; maybe Hong Kong was another?). There was a lot of camera time devoted to showing the location itself, along with the plight of the eliminated contestants.

The only question I remember is from the stadium rounds: "Neil Armstrong first stepped onto the moon with his left or right foot?"

I don't think I'm just imagining this... does anyone else remember such a show?

Edit: found it! It's The All-American Ultra Quiz, which aired in 1981:
This two-week game show special (aired 11/10/81) was emceed by TV comedians Dan Rowan and Dick Martin. The program started with 932 contestants at the Dodger Stadium in Los Angeles. After a series of elimination competitions, the remaining 84 contestants were then shipped off to various cities around the globe (Washington, D.C., London, Rome, Paris and Athens) for additional competitions. The winners moved on to the next challenge and the losers paid their way home. When the two finalist returned to the NBC studios, they competed for a $100,000 grand prize. Craig Power was the winner.

And it wasn't thousands of contestants. Then again, everything seemed a lot bigger back then (my parents' old house, my grandparents' house in Chicago, etc.) -- I've been astonished to see just how small they really are when revisiting them.
55 saves lives. [Google Video]

Wednesday, March 1, 2006

Happy St. David's Day to all my Welsh friends!

Ok, so just here, but hey... I'm all for more holidays. And Wales was cool enough to put a red dragon on their flag.

Tuesday, February 28, 2006

Forbes points out how silly the stock market can be.

According to the stock market:

   = 10
= 3
= + + +
, &

Friday, February 24, 2006

Very, very dorky. I love it. (A coworker did this.)

Amusing and sad more than anger-inducing...

Today, someone on another team stopped me in the plaza because he thought I was someone else, and then proceeded to bad-mouth me behind my back... or so he thought.

He was angry because they filed a high severity bug report against my team. I was working it late into the night; at 2 am, I deduced it was a problem on their side. I reassigned the ticket to them, and he got paged about it.

(He had me confused with one of the managers, also named Dave...)

Tuesday, February 21, 2006

Worst -- or best -- company name ever. You decide.

I got e-mail -- non-spam -- mentioning a company called Vibra Screw, Inc. And, yes, that link is actually safe for work.

The best part:
Vibra Screw’s Absolute Guarantee of Satisfaction
No other industry source stands behind its products with the confidence and assurance of Vibra Screw, because no other company engineers and manufactures to our uncompromising standards. This is our commitment to you:


Wednesday, February 15, 2006

Watching the Olympics on CBC is a bit nicer (less annoying hosts), though weird. I mean, watching NBC you'd think that 90% of the competitors are from the U.S., with token representatives from other countries. Same is true for CBC and Canada.

Saturday, February 11, 2006

Ceiling fan

This, believe it or not, is a ceiling fan:

I'm tempted to try to build one of these beasts.

Wednesday, February 8, 2006

I have power now (actually, as of 11:30 am yesterday). Still, though, 3½ days without electricity... ouch. At first, I was wondering how people in earlier times tolerated the dark and cold; then, I realised, they didn't. Their homes had wood stoves, they had candles and gas lamps substituting for our electric lamps, etc.

In other news: I've been working too much. As a result, I completely missed the news about India's ( and 's daughter) third birthday (and other random LJ-announced events, but this bums me out the most).

Monday, February 6, 2006

Do not walk in front of me today.

I am pissed.

Today is the third day I've gone without electricity. I want heat, I want light, I want to take a warm shower. Damn you, Puget Sound -- there's a cluster of 400 people here and you can't be bothered to send a crew? Hell, we even know where the problem is -- those two lines lying across Wyatt Way which arc every time you try tossing the switch remotely. Even the cable company has brought out a generator to power their amplifier.

I didn't get to watch my Steelers win the Superbowl. I had to settle for listening to the local sportswanks on the AM radio talk about how the Steelers didn't win the game, that the Seahawks were the better team that just made some mistakes.

Do not cross me today. I will bite your head off for the smallest perceived slight.

Friday, February 3, 2006

Shamelessly copied from :

Monday, January 30, 2006



You need a new cell phone.

I found yours on the ground next to the car when I got back to the
apartment. It still works, but the display is dead.


Friday, January 27, 2006

Thursday, January 19, 2006

I lost my lunch today. Literally, not figuratively.

I was rushing back from Uwajimaya to make a 12:30 meeting and had everything in a takeout container. I was balancing a project notebook and various other papers and my lunch while swiping my badge and opening the door to our floor.

It didn't work out so well.

The floor, for once, got to enjoy some tasty orange chicken. I don't think it liked it very much, though.

Debating whether I want to spend more money and get another lunch, or if I should just tough it out until dinner.

Sunday, January 15, 2006


Tamara and I have been somewhat addicted to sudoku (that number game in a bunch of papers these days) lately. I decided to write my own sudoku puzzle generator.

It's harder than you might expect.

The basic logistics behind puzzle generation are easy enough -- start putting given numbers (givens) down randomly, enforce row/column/block constraints, backtrack when a constraint is violated. Writing this in a functional language makes this almost trivial (I used Python, which isn't what purists would consider a functional language, but it's functional enough).

What's hard is creating puzzles of a certain difficulty.

One of the rules of a sudoku puzzle is that it must have a unique solution (and not require any guessing; I believe this is a corollary to uniqueness). Standard sudoku puzzles have 81 (9x9) squares; apparently, it's not possible to have fewer than 17 givens (and generating a puzzle with this few requires days of computation). The puzzles being generated by my code have between 25-32 on average and are graded as being "easy" according to the sudoku program from that link above.

This will require more thought, but I think I'm becoming disinterested in the problem at this point.

Friday, January 13, 2006

Never, ever ask me to look at something and then complain that I'm getting too involved. You will get the full force of my fury.

That is all.

Actually, wait. You and random object within my grasp will get the full force of my fury. Fortunately, my work laptop seems to be no worse for the wear.

That is all.

Tuesday, January 10, 2006

We have the inventor of Ruby on Rails coming to our internal developer conference next week. I've heard a bit about it, didn't know much about it, so I went to the website to glean a bit of information about it.

After about an hour, I've deduced that Ruby on Rails is a lot of hype; scenic landscapes; greased, eurocool hair; and more hype.

Having browsed other sites since then, I've figured out that it's a framework for generating web pages on the fly, much like PHP or Perl/Mason, and other stuff that I'm generally not interested in.

The testimonials, though, talk about how easy it is to edit live websites, see your changes instantly, etc., and skip the develop/test/deploy/test cycle. This seems a tad dangerous (and we go through great lengths to prohibit this at Amazon).

To sum up... .

Meanwhile, my workload, which was supposed to get lighter after the end of the year, has continued to get heavier. I am less than pleased. We managed to snatch a project out of the clenched jaws of defeat (mainly because some of the other service owners failed to own up to their commitments), though with much agony (including having to essentially forego Christmas). As a result, it's been decided that this is an acceptable working environment for us. We have a new client coming on board, the launch date has been set, but the requirements and specs are long overdue from the account management team. In short, they've eaten a month out of our development time and we still don't know what we're building.

Wednesday, January 4, 2006

Mainly for you software folks out there...

Am I nuts in thinking that having less than 48 hours to research a problem domain (payment instruments, in my case) and come up with a detailed spec for implementing a tier-1 service is ludicrous?

(FWIW, I've discovered that Amazon doesn't really have a good definition of what makes a tier-1 service beyond, "If it goes down, we start hemorrhaging money.")

Monday, January 2, 2006

Random Screen

Relaying this from , because it's cool enough that it should be relayed.