A day at the office
1. Morning ritual
The morning started-off like any other: wake-up minutes before the alarm goes off, open my eyes just wide enough to glimpse the red glowing LEDs of my alarm clock, convince myself that I can sneak in a few more minutes of sleep, then wake-up again some time later to over-played pop music and the horrible realization that I am now running late.
Fast-forward about 2 hours and I've just made my way into work (EDS, Electronic Data Systems). Yawns from the others in this elevator make it evident that I'm not the only one with a little sleep deprivation, even after having returned from a 3-day weekend; a fact that gives me some solace.
8:41am
I get off the elevator, as does fellow workmate Gerard who I didn't notice before through all the yawning.
Gerard, in short, is probably the whitest foreigner I know. He's of Irish descent, but born and raised in a bunch of African countries, most of which I couldn't find on a map without the help of Wikipedia.
Seeing as I'm ahead of him, I have the honour of opening the security doors to our floor; a task made slightly more interesting thanks to this trick I learned from Simon Gow. Several years ago he showed me what you could to with a crotch-height proximity sensor when the security tag is in a front pocket. I've since adapted that trick for a security tag that hangs closer to the left side of my ass. With the only witness being Gerard (we started working here at the same time, so he's as used to my antics as I am to his), I moved my hip to within millimetres of the keypad/sensor and started a little rubbing motion. The keypad cried uncle when it made its little beep, and with that the sliding doors opened the way for us.
"Dude," said Gerard, "I am never touching that keypad again."
Our floor isn't even half-way up the 13 story building, and when you're surrounded and dwarfed by the neighbouring buildings, nothing below the 7th will give you much of a view of anything. The open-plan nature of the desk arrangements helps you to not feel so boxed-in, and I happen to have a stellar view of the neighbouring multi-story car parks - yes, plural - which I guess is a step up from where I was previously: beside a pillar, a coat hanger, and a divider that separated my personal space from that of the water cooler's.
I make my way to my desk, greet the parked cars, and turned-on my computer.
8:42am
A personal computer nowadays doesn't need to take a long time to start up. A work computer however, loaded with the obligatory firewall, virus scanner, software drive encryption, and whatever other run-on-startup stuff the company sees fit to put on it, brings you back to the days when you could make a cup of coffee whenever you booted the computer. Since I'm not a coffee drinker, I'm left with fewer options than most.
The wait can be made even longer if, after startup, there are some security patches or other upgrades being pushed to the computer. Today just happens to be one of those days. I keep spinning on the chair, taking random moments to stop, take a quick look at the progress on the screen, and measure the passing time in animated hourglasses.
9:03am
Finally, patches have been installed, and I'm greeted with the completion window:
[Installation is now finished. Please restart the...]
Bah!
2. Bloatware
When I was first introduced to the term 'bloatware', I started thinking 'Jabba the Hut', and about having a gigantic green alien slug thing sitting on your hard drive with slaves chained to him and a monster pit below (I'm sure a computer equivalent of slaves and monster pits exists somewhere...). The first order of business for today is to install a Jabba-sized program onto my work computer.
Today's bloatware is a group of programs: a development kit and accompanying test servers supposed to make work on my project (which is based in the States, and has some NZ folk like me contracted to them) a lot easier.
9:09am
So I started the installation program, and found that it was about 2 gigabytes in size, and half of it (all the updates I wanted, at roughly 1.2 gigabytes in size) had to be downloaded from the Internet.
Fine, I thought, it's all the company's bandwidth anyway.
I hit the button to start the download and installation, and the program estimated it would take 4 hours to complete.
Cool, it'll be done within the day.
10:20am
The morning so far has been on the slow side, so for the past hour and a bit I've just been replying to e-mails accumulated over the 3-day weekend (of which only 2 of them were intended for me; the rest were some kind of general for-everyone newsletters or automated e-mail notifications), and running this test program Gerard wrote to test another program he wrote for his project.
I didn't get all the details of what it was he created, but the test program was supposed to make 300 connections from my computer and, with all of them, attempt to connect to the server program he wrote running on his computer.
When he wrote it in Australia last week (some work-related trip in which he did nothing, and the second time work has paid to send him overseas to do nothing), the connections had to make a nice long distance trip: from my PC, to the company network, and out to wherever he was staying in Sydney through his VPN connection. I don't know if it was the journey or the program, but most of the connections failed, and he was left scratching his head trying to figure-out what went wrong.
The IM conversation went something like this:
Gerard: check your e-mail
Me: Got it. You want me to run this? What's it do?
Gerard: just a test program. supposed to make 300 connections all at once to my pc
Me: 300!? Damn. OK, I'll give it a shot.
(some time later...)
Gerard: so howd it go?
Me: Umm, so what's this line of output I'm looking at?
Gerard: its the number of sockets that didnt connect. whats it say?
Me: 200
Gerard: what?! let me check
(some more time later...)
Gerard: there, just sent another email, try that. i might've had the ip address wrong
Em: OK
(another period of time later...)
Em: 250
Gerard: BS!!
Since he's here now, we ran a local network test, and it seems to have helped some, but not entirely. Either way, he is now happy with the result, gloating in the current IM conversation that he can now rule the world with it:
Gerard: with my new found query timeout power i shall rule the world...one result set at a time
Me: Connections still drop like your mum on a Friday night though.
Me: Gonna fix that? Or you just passing it off as a VPN thing?
Gerard: drop?
Gerard: they FAIL TO CONNECT
Me: ie: dropped
Me: Your mum never fails to connect
In IT, we're all about intelligent conversation.
3. Blackout
11:50am
Roughly half-way done with downloading the updated files for the installation. Toilet!
11:53am
I was looking at myself in the mirror, figuring-out if I needed to get a haircut, when all of a sudden the normal ambient building noises died. And so did the lights.
"What the hell?" I said aloud.
It took me a moment to realize that it must be a power cut of some sort, and then a shorter moment to realize that I was in the toilet, without lights, and that without them I couldn't see centimetres in-front of my face; it couldn't have become any darker if I closed my eyes. Heck, I even tried closing my eyes to see if I could make it darker.
I couldn't.
At least I wasn't on the toilet or anything. OK, time to get out of here.
In all this thinking I hadn't moved from where I was, so I drew-up an imaginary map of where I would be in the room, turned around to face where I thought the exit would be, and walked forwards, slowly. I held my hand out in-front of me and started thinking about some very strange things:
Firstly, what are the chances of being caught-out taking a dump during a power cut? There had to be somebody in the building that had happened to: of all 13 floors, statistics surely must've caught-up with someone. Whoever that was, my sympathies went out to them.
Secondly, I really hoped my outstretched hand wouldn't find anything that wasn't the door along the way.
Luckily my hand found the door handle without first finding nasty surprises, so I pulled the door open and made it into another unlit corridor, although this one had the benefit of a small grate at the other end where natural light from the offices and the outdoors behind it marked its position. I walked towards the light, slightly more confident of where I was headed.
Once back in the offices, evidence that the power cut wasn't localized to the toilet was visible by the blank computer screens and lack of ceiling lights. Spirits were high and many jokes were thrown around, many of them about how we no longer have to do any work. When I found my workmates, I joined their conversation and gave them my 2 cents.
"Guess where I was when the power went out?"
11:59am
I went back to my desk when that conversation ran out of steam, and then picked-up the pace when I remembered that the installer was still in the middle of downloading over a gigabyte worth of files for the installation. I reached my desk in a mild panic, which then turned into a severe annoyance as I saw the screen was as blank as everybody else's and the lights on the machine were not blinking spastically like they normally do.
Dammit!
12:13pm
Power was restored to mixed reactions. Mine was to withhold my anger as I turned-on my computer and restarted the installation of the Jabba-sized software.
12:20pm
Computer on, installation program restarted, and I am glad to see that it can continue from where it was before the power cut. I let it continue on its merry way while I made my merry way out of the building to meet Melissa, Glen, and Sam for lunch, at Dawaats.
4. Gender imbalance
Something I learned from full-time work that could apply to any profession, is that office workers (in NZ anyway) sure love their curry. In my first 2 months, work had 3 team lunches for various occasions, each held at one Indian restaurant or another. I've even heard that the Ministry of Economic Development has a list of top-10 Indian restaurants in Wellington.
Dawaats was somewhere in the top 3.
The love of curry seems to have rubbed-off on us because Melissa, Glen, Sam and I keep coming back here.
It might have something to do with the weather though: when it was sunny and warm, Melissa would ask us all to join her at Civic Square. The last time we did that, we had single-digit temperatures and we kept moving to warmer spots whenever the shadows of buildings and trees crept up on us. Eating indoors has really helped in that respect.
12:34pm
I'm the last to arrive. The other 3 are already seated, looking at their menus. I don't know why Melissa is looking at her menu because she always gets the Butter Chicken due to some aversion to spiciness. Sam on the other hand is a bit more adventurous; it's almost like he only has a handful of working tastebuds.
"Hi guys." I say as I take the seat next to Melissa, evening-out the numbers on both sides of the table.
"Hey." Glen.
"Hey Em." Sam.
"Hi sweetie." umm, I don't need to explain who that is.
"So what's up?" I ask.
"My work is going under," says Sam, "so I gotta start looking for another job."
"Oh damn," I reply, "right on the back of your dad's work going down too."
"Everything's going down." adds Melissa.
"Just like your mum." says Glen, looking at everybody and yet nobody in particular.
"Ooo, good one." says Sam, and he offers out his fist for a fist lock with Glen.
"Good to see you're still in high spirits Sam." as I fist-lock with Glen.
Melissa hides a laugh and then starts her story about how she's all super busy at her work. We discover that it's mainly because when someone at work asks her if she has some time to do another assignment, she always says yes.
"Melissa," starts Glen, "you gotta learn to say 'no'."
"Your mum never says no." I say to Glen.
"Ooo, go Em." says Sam. Sam-Em fist-lock.
"Bastard." says Glen as he looks my way and preps his fist for the Glen-Em fist-lock.
There's now more smiling and pent-up laughter in Melissa's expression as she continues her story while braving the 'your mum' minefield us guys have laid before her. We can visibly see the thinking strains on her face as she carefully chooses her words lest she spark another insult about someone's mother.
12:40pm
Eventually we ordered our food, Melissa finished her work story epic, and Glen managed to tell a story about his work which I can't quite remember. Either way, everybody else's work story beat my one of having to install 2 gigabytes worth of development software with over half of it being downloaded over half of the working day. Then again, knowing that programmer work stories never really fit well with non-programmer crowds, I pushed that story out of my mind and grasped for other events of my day.
"Guess where I was when the power went out?"
12:51pm
When the food arrived, story time took a back seat to chewing and drinking. Melissa looked pleased with her butter chicken, and Sam looked more than pleased with whatever it was he got that was 7 shades of red darker and spicier than my meal. Sam and I also ordered Mango Lassis, this wonderful mango and yoghurt blend that goes so well with curry. He and I were shocked the other 2 didn't get something similar, and so we clinked our glasses together in acknowledgement of the veteran spicy-food-eater status of the other person.
Glen was chilling with his water, and Melissa didn't seem to have any drink until she asked Glen to pass the water bottle.
"Pass the water Glen?" she asked.
"Here." he said, picking it up with his free hand and passing it to her.
I watched her open the bottle out of the corner of my eye because the last time we were here, she had some difficulties with the opening/closing mechanism, and I had to teach her how it worked.
It became obvious that she didn't remember the lesson because she was trying to open it backwards, and it caught our attention.
"Oh my God Melissa, I showed you how to open that last time!" I cried.
"Look, here." said Sam, pulling himself away from his meal to demonstrate how to open the bottle.
"I can't remember!" said Melissa defensively, "It's so hard!"
Glen, Sam and I looked at each other, not saying a thing. But our eyes met, all confirming what we had heard.
"So," I said, breaking the silence, "who's gonna pick that one up?"
"You can have it." says Glen.
"Nah, if I do I'll meet quota, and it's only midday."
"Fine," said Sam, "I'll take it: 'That's what she said'."
Em-Sam fist-lock.
Glen-Sam fist-lock.
Melissa's laughing/smiling expression now held an element of shame: shame at believing she was the only sensible person at the table, shame for us guys for not being more civilized company, shame at herself for making such friends and sharing a table with them.
"I can't take you boys anywhere!"
5. Fail
1:45pm
Back from lunch, well-fed and still grinning on the inside for all the grief we caused Melissa, I give the keypad a far-too-enthusiastic bum rub to make the security doors open. I walk slowly towards my desk as the full stomach is limiting my complete range of movement, and sit down on my chair equally slowly so I don't break any neighbouring internal organs.
I give the mouse a quick shake to wake the computer from its half-slumber. I don't have a screensaver configured on this thing as the graphics card is some sort of onboard crud that doesn't do 3D very well. I don't know if you've seen the Flurry screensaver (it's a very simple colourful screensaver), but the graphics card on my work computer isn't even good enough to run that. Heck, the computer I had before this one - a banged-up laptop bent at one corner, some burn damage roughly where the disk drive is located, and about as much memory as a goldfish - could run Flurry. This computer now was one of the first of the replacements, and so I thought everybody would have the same thing. Annoyingly, Gerard's replacement computer had a dedicated video card, and could run Flurry just fine. The word 'shortchanged' doesn't begin to describe my envy sometimes.
So I gave the mouse a shake, typed-in my password to unlock the computer, and...
omfg.
[An error was encountered during installation...]
A rush of emotions - most associated with causes for murder - filled my thoughts. I don't know how long it ran before getting this error, but the optimist in me was giving it about 5 minutes worth before choking and dying. The pessimist in me was looking for the nearest sharp object so I could kill myself.
I restarted the installation, again, glad that it continued from wherever it left off, again.
3:30pm
The download had finally completed. I had passed the time by working on my other programming projects - not work-related ones because what I was installing was the tools I needed to do my work - and following the links Gerard kept sending my way. Links to stuff.co.nz articles, links to Slashdot, and other general spam. He's become the workplace king of spam, and he even spams those not at EDS.
So spam is one thing Gerard has become known for. Another thing you quickly learn is that he has this deep hatred of all things Microsoft. I don't know what that company ever did to him as a child, but sometimes he makes it sound as if Bill Gates personally signed the paperwork for an assassination of Gerard's family.
By the time the installation program started installing all it had downloaded, James from the .NET team on the other side of the building (.NET being a Microsoft technology, kind of like a culmination of programming languages and frameworks used to build programs for Windows) invites me into an IM conversation in which Gerard has been doing one of his anti-M$ rants.
James: hey Em.
Gerard: and look what it did to vista, it just raised a comps minimum specs to run the same things that it did on XP
Me: Hey James
Me: Oh hell, he's at it again?
James: yep
Me: ... He does this every 3.5 working hours
Gerard: and i like the WPF [Windows Presentation Foundation, used to build graphical user interfaces], just when it's not on my computer :P
James: you hate everything that is Microsoft, even without a reason
Gerard: is that true?
Me: Yes
James: It seems so
James: Haha, the ayes have it
Me: Democracy FTW
Gerard: I also used to like DirectX, but now its just become a bloated slut
Me: Kinda like your mum
James: zing!
3:59pm
Installation complete. I decided to give the new program a go, see what it's all about and what all my hard drive space went into. Before I could get that far, the program complained about not having an installed licence. I took the detour in stride (what kind of programmer would I be if I didn't have patience) and went digging for licensing information in the e-mails that the US tech lead had sent regarding that.
4:17pm
Licence file found and installed, but by now my patience had run dry: I've waited all of the work day installing something that should've taken half the time, during which it has caused me grief and frustration, 1 (maybe 2) gray hairs, and had me contemplating suicide.
"Eff it!" I shouted, "I'm going home!"
6. Epilogue
2 days later we were told that the project no longer has enough funding to keep us NZ guys beyond the end of the month, which happened to be this weekend.
All that time installing that program, and it didn't even last 4 days.
On the days I'm not typing cryptic words into a text file to try coax the computer into doing what you want it to, it's a never-ending cycle of trial and error, installing and uninstalling, victories and defeats. There's this saying that 80% of the work that needs to be done is completed in 20% of the time. If ever there were an industry where that saying holds true, this one would be it.
Regardless of its short intended life, I held on to the program in-case the the US team came back to me with some questions. It did become useful for about 2 weeks afterwards and didn't see much more action beyond that.
James has since left EDS and is now undertaking charity work, leaving me to face the full force of Gerard's spam.
Sam found a new job which is located in the building right next to his old one.
Melissa has become too embarrassed to take Sam, Glen, or I, in any combination, to lunch. She no longer invites us anywhere, citing extreme amounts of work as the reason.
Gerard eventually touched the keypad. I still take frequent digs at his mum.