Friday, May 23, 2008

Hard at work

Well, I've been working hard lately. It is close to delivery time at my work. On the bright side, that means I'm just about the end of my first shipping product. In other words, I was working on this software when it was barely a twinkle in our customer's eye, and my water just broke.

It's been a great experience. I've been getting better with Emacs and the shell, and with a lot of C++ over the last five months. Working with the team and a larger existing code base has also been enlightening. I've found it just takes a while to get up to speed with how things are organized, and the project's standard ways of doing things. I wish I'd had my TAGS file in Emacs months ago though. (It basically finds the proverbial needle in the haystack of code files for you.) Learning to give and take with my teammates and come up with mutually beneficial designs has been great too.

Now, we're working overtime. I am glad that we don't do 50 to 70 hour weeks for most of the year. This is really wearing, it's reminding me of grad school. I get about one day off per week at the moment. We're fortunate enough to get paid, so Sarah and I are probably taking down another credit card or two this month.

Hemingway slipped to the back burner as I read some Isaac Asimov this week. He's a giant in the sf field, writing many well-loved novels. Foundation, which is about the a society whose future has been mapped out by a psychohistorian, is a real classic. There's Nightfall, which is about a planet where night only falls once every couple of millennia.

And there are robots. Asimov coined the word "robotics" and wrote some great stories about them. I finished rereading I, Robot again, which is a collection of short stories about the first robots, and the three laws of robotics. They made it into a movie, I hear, but it was more "inspired by" than "based on" the stories in this book. It's charming and rereadable, and it even has a female lead. Pick it up, 100%.

I also read the first in a trilogy (Robots of Dawn, maybe?), which was a robot murder mystery called The Caves of Steel. It posits a human race, thousands of years in the future, on an overpopulated Earth, that has crowded into massive biodomes, made yeast products the main nutrition, regulated everyone's employment, and started to replace human workers with robots. Although humanity has space flight and has colonized other planets, the agoraphobia and xenophobia of the remaining earthlings is keeping a lid on the society, living out their lives in caves of steel. And that's just the setup. This is a fine, fine book. Its point-of-view feels alien to us air-breathing, outside-enjoying humans, just as it should. The main character's outlook on robots prefigures some of our current obsession with illegal immigrants stealing American jobs, and our mistrust of foreigners. There are some great moral themes as well. This is highly recommended. It might make more sense, though, if you read I, Robot first.

I've been working my way through C++ Coding Standards, which is a list of 100 pithy dos and don'ts by Herb Sutter and Andrei Alexandrescu. Sutter is the chair of the ISO C++ standard committee, and Alexandrescu is an expert on using C++ to do template metaprogramming (for libraries). Now, in some ways, C++ is a pig, and this book is like the lipstick on the pig. It's testimony on the complexity of the language that a book like this, which is almost completely language-specific tricks, had to exist. But there's another way that C++ is like a pig, and that is that it is liable to eat your foot if you try to ride it, and poke you with its bristles. And this book is like a saddle for the pig, for those of us forced to get on and put that pig through its paces. And, for what it aims at, it's a terrific book.

Ok, I just ran across this video, and it's too cool. This is just one more thing I love about computer science:

Change of subject. We bought a scuba diving game called Endless Ocean. It is very low impact as far as difficulty goes, but it is beautiful and mellow, like interacting with a screen saver.

Last, we preordered Wii Fit from Amazon while they were still taking orders. It arrived yesterday, and boy are my arms tired. Yes, they were weak, but still. The thing, for those of you who don't know, is an exercise game packaged with a balance board, which can sense your weight, center of gravity, balance, pressure, however you want to think of it. It is about one third game and two thirds exercise tool, with yoga and strength training as well as balance games and aerobics. It tracks your weight and activity, and tells you how weak you are. Sarah and I both got a good workout from it. In fact, I'm going to spend the next few minutes working at it again. It offers few advantages over the gym, but it does have one killer feature: the privacy of your own home. And, it does all the tracking for you, and it's fun.

No comments: