With “Skip Town’s” perdifery and the loss of the IBM contract, GeoVision was going down the tubes fast.
At the end of one quarter, a bunch of higher ups came up from the Denver Office and the next day they laid off 30% of the company. A little while later, My idiot manager Steve was pressuring me to finish up the project that he’d finally specified correctly, because I was supposed to go work for six months at the company we’d acquired in San Diego. I was so excited about spending the winter in San Diego that I’d already shipped my mountain bike down there. Of course I didn’t notice that the due date for my project was the end of the quarter. But then the end of the quarter came along, and so did the same higher ups from Denver. The secretaries came walking around with a big list of everybody’s names, and told people whether they were required to attend the 2:00 pm meeting or the 3:00 pm meeting, and then after they told you, carefully checking off your name on their list. It didn’t take a brain surgeon to figure out that those of us “invited” to the early meeting were being laid off, but at least I got to spend my lunch hour moving all my important stuff into the trunk of my car in case they decided to escort us off the premises.
The only high point of the meeting was when one guy interrupted the “We’re so sorry we have to do this blah blah blah” speech to say “Could you speed this up a bit, I have a job interview to go to”. The semi high point was finding out that they were paying one week’s severance for every year of service, plus an additional five weeks pay if you have more than five year’s service. So I had eleven weeks pay coming to me. But the worst part was that they’d closed down the office in San Diego. So I had to contact one of the people who’d just seen GeoVision buy his company and then close it down, and ask him to go to the parcel pick up window and ship my bike back. I was amazed that I actually got it back.
Four or five days after getting laid off, I got offered a contract job with a company that I will refer to as “Horrible”. That’s not really the name, but it sounds sort of similar. “Horrible” was doing a project for the Canadian Hydrographic Service, but the guy in charge of the project, Jim, had grandious schemes for making this a marketable product for “Horrible”. I didn’t find out until much later, but Jim had either been demoted or fallen out of favour at “Horrible”, and was doing this on the sly to try and get back into “Horrible’s” good graces.
I’d never been on a contract before, and this one was the first and only time the contract I’ve seen that was fixed price. They specified the work that had to be done and the deliverable, and the amount of money. The work that had to be done was about two month’s worth, and the total was pretty good for two month’s pay, but of course I wouldn’t see a penny until the end of it. Good thing I had that severance pay to tide me over.
The office was a tiny place in a little strip mall in Hull, Quebec. There were very few people in this office – it wasn’t the main “Horrible” office, it was just for this one project. There was the boss, Jim, a head technology officer, Eric, two other programmers and a documentation person, Gwen, who was a former coworker at GeoVision. One of the coworkers was extremely loud, obnoxious and opinionated. Damn I wish I could remember his name. He had also not worked as a programmer before – he’d been in tech support before. And unfortunately he was also my “supervisor”. I’m not exactly sure what Eric was supposed to do, but the obnoxious one made all the technical decisions – usually badly. The other guy was not long out of school, but he’d done a bunch of work for the Canadian Hydrographic Service for the prime contractor. He was also extremely unwell – he had more medical conditions than I do now, and he always had shortness of breath and a runny nose. He also had disgusting personal habits, he wasn’t very clean and he was always wiping his nose with his hands. I used to cringe every time he typed on my keyboard or I had to use his. I think his name was Mike.
Work there was “interesting”. Design decisions were done by the lot of us getting together in a conference room and yelling at each other. That was fun. But without any methodology, it seemed like we were making the same decisions over and over again. Nobody kept any notes, so we had no record of what we’d decided and why.
The other interesting thing was that we didn’t have any sysadmins, so everybody looked after as much stuff as we could. But that lead to disaster like the time Gwen wanted to look at /etc/passwd on the main file server. But being an non-sysadmin, non-programmer, she logged in as root (which was unnecessary), looked at it using vi instead of view or less (which is dangerous), and then didn’t notice when she’d inserted some garbage characters in the first line – root’s entry (which was stupid), and then quit using ZZ instead of :q!, saving the file (which was unconscionable). The first I knew of it was when my xperfmon display when from a nice graph of system performance to a line of tombstones. Gwen noticed as well, and immediately rebooted, which of course fucked things up entirely. It’s a good thing that one of us remembered how to boot into single user mode.
I had a succession of contracts with them and it mostly worked out well. I’d go a month or two without getting paid, and then I’d get a huge lump sum. They didn’t even take out income tax, which was a little nagging worry. I’d pay down (but not off, unfortunately) my credit card debt, buy some stuff I’d been putting off, and try and stretch the remainder until the next end of contract. But meanwhile, I was enjoying the free spirit working environment if not some of the little details, but most importantly, I was enjoying the trip into and out of work.
The little office in the strip mall was very close to one of the many bike paths (sorry, “Multi-Use Recreational Paths”) that criss-cross the National Capital Region. So was my apartment. I could do a really nice bike ride on the way to work and hardly any of it was on roads. And on the way home, the world (or at least this vast network) was my oyster. I’d usually take ways home that were 40-50 kilometers long. If I was feeling really ambitious, it wasn’t far from there to Gatineau Park, where I’d do some heavy duty mountain biking and come home covered in mud.
But all good things, and even all not too good things must come to an end. It was the beginning of July, and my boss had a new contract available. He even gave me a copy of the draft. But it hadn’t gotten all the requisite signatures yet, so I didn’t have a real one to sign. Jim kept saying “Officially I have to tell you to go home, but unofficially if you keep working, I promise you’ll get paid for the work.” I figured I didn’t have anything better to do, so I worked. And as a few days stretched into a few weeks, I was getting more and more worried, and yet more and more reluctant to cut my losses and run – if I did that, I’d never get paid for those weeks I’d already worked! Finally, along came August. Still no contract, but I’d already told them I was taking the first two weeks in August off to visit my mother. Jim suggested that if I take all of August off, everything will be worked out by September. So I copied all the work I’d done onto a Exabyte tape, and deleted it off the file server, and went off for my vacation. August was great – after I got back from my mom’s place, I spent two glorious weeks doing nothing but reading Usenet and riding my mountain bike (no web back then).
When September rolled around, I went into work, and I didn’t see Jim. So I assumed everything was ok, copied the stuff off my tape back onto the file server, and continued working. One of the things I was doing was extracting all the messages from the programs and turning them into appropriate calls to the NLS (National Language System?) so that they could be translated. The next day, Jim showed up finally and told me that he still didn’t have the contract, and I should go home. So I deleted my stuff off the server again, and left, and immediately started looking for another job. I was screwed – I hadn’t been paid since the end of June, and without a contract signed and Jim’s wishy-washy “Officially I have to tell you to go home”, I felt like I had no legal recourse to be paid for that work I had done, even if they hadn’t used it.
But from what Gwen told me afterwards, I don’t think they hadn’t used it. I believe that Jim purposely wasn’t around to tell me the first day knowing that I’d restore my work from the tape, and leave it overnight so that they could steal it. Gwen told me she saw printouts of that work that had my name on it. Again, nothing I could prove, and when I asked Gwen if she’d testify on my behalf, she went all weird on me – I had a modem that I’d borrowed from “Horrible”, and after they stiffed me I refused to give it back. Well, Jim had promised it to her after I was done with it, and so Gwen acted like it was my fault she couldn’t get this modem, and refused to talk to me.
It wasn’t until years later that I found the draft contract. If I’d known that I’d had that, maybe I would have contacted a lawyer to see if I could do anything. Actually, knowing the different story that Jim was giving his bosses at “Horrible” than the one he was giving us about the project itself, I wonder what would have happened if I’d faxed the draft to his bosses?