When does a unit test become a system test?

In my part of the big project I’m on, I have a class called a Playlist, and a corresponding database table. Based on my analysis of how many Playlists are likely to be used in the lifetime of a system, I decided that an int would be more than adequate storage space for the sequential internal id number. Actually, a short would probably be adequate, but there isn’t any compelling reason to use shorts on modern systems since they don’t save much storage and they’re slower to process (is that true in Java? I know it is in C/C++.) And so I happily used this id all over the code.
Continue reading “When does a unit test become a system test?”

Figures…

I hate where I sit at work. It’s at the corner of two heavily traffic hallways, and right across from the largest conference room in our area. So consequently at least once a day there are people hanging around right outside my cube talking. Plus the guy kitty corner from me uses his speaker phone way too fucking much (ie. ever).

So when they did a massive reorganization of our space, which involved 70 people moving from one cubicle to another, guess who didn’t move? Yup. As far as I can tell, I’m the only one in our development group who didn’t move.

Various updates

  1. Got the UPS software working again, after I converted from using the mge-utalk driver to the mge-shut driver. No idea why the other driver, which has supported this UPS just fine for years suddenly started having trouble. Oh well. Such is the world of open source software.
  2. Our company photo contest results were announced today. I didn’t win anything. I guess at least part of the problem was that I ignored all the advice I got from my friends and submitted the pictures I liked best. But because of my wrist problems I didn’t have as much time to work on them as I would have liked. Oh well. Not to sound like sour grapes or anything, but the guy who cleaned up in several of the novice categories takes pictures of bicycle races and sells them at the race, which make him more than a novice in my book. Most of his pictures, though, were really good and would have won in the advanced categories as well, and my favourite one of his didn’t win anything. Actually, all the competition was really good. Of course it doesn’t help that there were three other people submitting pictures from Alaska cruises, and one person who went to Antartica.
  3. My SafeType keyboard was acting a bit weird. Every now and then I’ll be typing away and suddenly all 4 LEDs in the middle (caps lock, num lock , scroll lock and one other labelled “W”) all come on for a second or so, and a whole bunch of typing gets missed. I’ve seen this about two or three times a day at work, but when I brought the keyboard home for the weekend, I was seeing it about once a minute. Mildly annoying. I moved it from my powered USB hub to plugged in directly to the Powerbook, though, and I haven’t seen the problem since. Must be some sort of timing thing.
  4. I worked hard this week to provide a new architecture for dealing with encryption keys for our digital cinema product. Today the guy who has to use these keys comes over and starts talking about unresolved issues and use cases. My thought was why didn’t he think through these issues and use cases before he asked me for this new architecture? The upshot is that I have to totally redesign the architecture again, back to something a little more complicated than the original, but much less complicated than the one I did this week. And since development has to be finished by the end of next week, I guess I’m going to be billing some hours this weekend. Normally I’d be really annoyed at the wasted effort, but I enjoyed the intellectual challenge of that code I wrote this week.

A company of idiots

I work at a company that employes thousands of people. Early this morning, Corporate IT send out a message to everybody at the company with a Lotus Notes (bleargh) account warning them that a couple of servers are going to be upgraded this weekend and Notes might not be available during the upgrade. That was immediately followed by a deluge of idiots using “Reply All With History” to ask why they were getting this mail, followed by a few dozen people saying “Stop using Reply All”, followed by more people saying “You’re doing it too, you idiot”, followed by the original few dozen saying “if I hadn’t done a Reply All, I’d only be talking to people who’d already done it”, followed by several petty flame wars, followed by still more people saying “take me off this list”. It’s the most traffic I’ve seen on Lotus Notes since I came to the company – as a matter of fact, it probably outnumbers all the Lotus Notes I’ve had in total since I came to the company.

Fortunately my Unix mail account is still working.

God save me from impatient installers

I’ve spent the last couple of months doing an all-singing, all-dancing automatic upgrader for our customers sites. This process is designed to be totally hands-off – you stick the DVD in the drive and type “upgrade”, and at the end of the theatre day it will convert the main “cms” computer (one per site) and all the “cp” computers (one per projector) from Redhat 7.3 to CentOS 3.4, upgrade from version 3.3 to 3.6 of our software, and magically preserve all your settings and configuration. You should come in the next day to find everything ready for the day’s schedule.

For the very first one at a customer site, though, they sent out a technician to babysit it. Unfortunately they send a techician who’d never done or witnessed one of our many test upgrades in-house.

You probably guessed what happened – she saw the cms come up, didn’t realize that the cps start after the cms is done, and rebooted the cms at the worst possible time – right when all 18 cps were attempting PXE (network) boots and expecting the cms to be there to send them what they needed. And the cms doesn’t start dhcpd by default, so the cps have had nothing to talk to all night. And of course everybody is screaming for me when I got in!