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.