Keeping Up with the Classes

Jeff Atwood over at Coding Horror posted a very uncommon take on the process of software engineering. For anyone who has ever felt “buried under umpteen zillion backlogged emails, feeds, books, articles, journals, magazines, and printouts”, it is a delight to read.

Among interesting things mentioned, the Java API has swelled from 200 classes in in it’s 1.0 version, to about 3500 classes (and that’s the Standard Edition). Kathy Sierra says “You could wallpaper an entire room with the class library.”

When developing applications these days, classes have become the norm; everything is abstracted into classes with increasingly fanciful names, such as ComponentListNexus, MultiReadExclusiveWriteSynchronizer or CoffeeMakerAutoSwitchButtonTimeoutCommandOff. And let’s not delve into all the possible helper classes, interfaces, abstract virtual delegates and how the “Factory”, “Strategy” and “Command” design patterns interact with it all.

Sometimes I feel like I’m standing in front of a large class map searching for that little helpful “You Are Here” dot. I think we need more of that; little helpful signs in the massive chart that point with a large, friendly arrow to a specific box, along with the text “probably a good class to start with”.

Leave a Message after the Beep

I have an answering machine at home.

Answering machines are great and wonderful miracles of the 20th century. They are, in short, little bright and happy devices that answer the phone for you. This one, a digital model, comes in bright silver color, and with a digital display on top that blinks in friendly LED digits, to inform me that I have new messages.

The trouble is, I never have any new messages. People do call occasionally, but hardly anyone ever leaves a message. The only ones who frequently do leave messages, are my American friends, for some reason. But hardly any Swedes… ever.

This does confound me. Sometimes, when I don’t feel like answering, I let the phone ring, thinking “oh, I’ll just let the machine take it”, in a very Jetsons sort of way. (Imagine here, if you will, Rosie the Robot sailing into the room, quickly swooping up the receiver and saying “Residence of Mr. Gefvert, may I take a message?”)

But it’s very difficult if no one ever leaves a message. The phone rings, the machine answers, and then… nothing. Click. Goodbye. And sometimes, people call several times, just to get hold of me for sure – and by which time I usually don’t answer on purpose, just to see if people will grasp the purpose of my digital, silver answering machine this time. I think, “if their telephone call is so important, surely they will leave a message”. And then… Click.

By the third time they call, it gets a little embarrassing because I haven’t actually answered the two first times, and I can’t very well answer now because then I’d let them know that I’ve been home all the time. So, eventually, it all evolves into this stupid game where they call again and again to get hold of me, and I refuse to answer because I have a machine that does it for me, goddam it, and will you please leave a message?!?!

Actually, the safest way to get hold of me is by sending an SMS, thereby avoiding the whole answering machine controversy. “Et, surtout, que le vent emporte mes paroles!”