1 AFTERNOON
Third Class Aviator John Spence could be found in his small living compartment he shared with two other crew members on the Waymire space station. First Class Aviator Sofia Evers, small in stature, had a voice that contradicted her size. Loud, opinionated, and never afraid to speak her mind, she was nearing the end of her space travel career with 34 ‘awake’ and 8 ‘dead’ years. The human body could only be kept in suspended animation for a limited time before long-term effects led to insanity. Through trial and error, scientists concluded the maximum number of suspended animation (commonly referred to as dead) years was 12. Most crew members would do five or six dead years for the long journey outside the solar system and leave enough dead time to get home. Waymire sat halfway between Earth and Alpha Centauri. The trip from Waymire to Earth took four years, allowing Sophia barely enough time to return to Earth. The third room member, Second Class Aviator Vlad Thomas, rarely spoke. He didn’t need to ask questions because he knew all the answers. His companions attempted carefully structured queries or risked the wrath of a response that shed little light on the needed information.
* * *
Fred Baker barged into my compact six-foot by six-foot cubicle and invaded my personal space. Lunch hour never prevented my boss from disrupting me. It took me a second to close the Word document I had been writing. I intentionally kept my monitor facing away from the hallway so a passerby couldn’t see the screen.
“Keith, have you uploaded the latest changes to the work-in-process system?”
“Not yet. I have to verify the correct format on the WIP adjustment transaction.”
“Have you asked Fronczak?”
He referred to Alex Fronczak, who made my imaginary Vlad Thomas seem like Mr. Personality.
“I’m going to after lunch. I’ll review the results first and then have the users test.”
“Well, we need it done as soon as possible.”
“Understood.”
With that, Fred turned and left. He rushed off to ask Alex if he could help me. Fred would get everyone who reported to him on the same issue without telling them that others were also working on the same problem. I envied Fred and other workers who could get enthused about a meaningless piece of code that had negligible impact on the exciting business of price marking labels and printers at Maue Marking Systems (MMS).
Maue Marking Systems, in Miamisburg, Ohio, a few miles south of Dayton, sounded like a Hawaiian company because of its address on Maue Road. MMS had been started by two brothers in 1969, and while most twenty-year-olds had worried about the Vietnam war and the draft, Arthur and Victor Conley had taken their dead father’s mechanical tabletop printer and turned it into a handheld version. This version would be used in retail stores across the United States. Thirty years later, you still found grocery stockers labeling cans and packages using the handheld device called the banana gun.
Fred’s visit killed my train of thought for the short sci-fi story I hoped to submit to Analog Science Fiction and Fact Magazine. I started many short stories but hadn’t completed one since I was a bored, single airman stationed at Kelly Air Force Base in San Antonio, Texas, twenty-five years ago. Long before I met my wife, Beth. Having a full-time job, two teenage children, and a wife wasn’t that good for a hobby that took hours of creative thinking. The longer I worked as a business programmer, the less creative I became.
In the 1980s and ’90s, computer programmers wrote in COBOL (common business-oriented language) that most kids laughed at today. Business programming wasn’t sexy—no games, no hacking. COBOL wasn’t a power tool. It was a handsaw that got the job done. Programming for order management, manufacturing, accounting, and purchasing systems wasn’t exciting.
I avoided talking to Fronczak because it was always frustrating. When I’d first come to work at MMS in April 1998, I’d tried to be friendly and smiled when I’d asked him about some code he had written in the late 1980s. He’d looked at me like I had just taken a crap on his desk.
“Can’t you figure it out?”
“Well, I looked at it, but you’re the expert.” He hadn’t replied. Sensing that something was bothering him, I’d asked, “Are you okay? Is something wrong?” Asking had been a mistake.
Addressing me by my last name, he’d said, “Mason, I don’t have to smile or pretend I like you.”
A year later and Alex still wasn’t pretending.
Before going to Alex’s desk, I read all the documentation I found on the WIP (work-in-process) adjustment transaction. The user chooses to and from locations and enters the quantity to move. One had to be knowledgeable about anything you asked Alex and make him believe the company would fail if he didn’t disperse his wisdom to the unworthy questioner. He never volunteered information. Your questions had to be precise. There was an old joke that described Alex perfectly:
Two men in a car are at a busy two-way stop. The driver looks to his left and asks the passenger if any cars are coming on the right. The passenger replies no, and the driver pulls away from the stop sign and is struck by a truck on his right.
A programmer’s role had changed multiple times in the past twenty years. In the late ’70s through the mid-’80s, there were three distinct roles: a system programmer, a computer programmer, and a business/systems analyst. A system programmer was a highly technical position that maintained the hardware and software environment that business applications ran on. The business analyst had direct meetings with end-users and wrote specifications for a computer programmer. Not being as technical as a system programmer and considered too technical and introverted to communicate with the average business user, the lowest person was a computer programmer.
In the mid-’90s, that stereotype changed as more ‘normal’ people became programmers. I’d graduated with a minor in history and was less of a technical geek than my coworkers. Before coming to MMS, I had risen to senior business analyst at my previous company, Durable Steel. I’d been promoted chiefly on my ability to communicate with end users and the system programmers. MMS had offered me a fifteen percent raise and a ten percent signing bonus as a computer programmer preparing for the millennial changes. I had taken a demotion to make more money. This didn’t bother me.
Okay. Sometimes it bothered me. Like when an analyst, Terrie Roberts, pointed out that the title of a report I had written was one space too far to the left and told me to reread the Report Technical Guidelines (RTG) she had written fifteen years ago. Terrie hadn’t seen Office Space and thought my suggestion of renaming her RTG masterpiece to Technical Programming Specifications (TPS) was stupid.
After learning nothing new from my conversation with Alex because I had not asked the correct questions, I was back at my desk and staring at the time display on my computer. Although exempt workers didn’t get an official break, at two-thirty, several coworkers went outside the building to the smoke shack. This was a three-sided metal shed where a half-dozen people could squeeze in and fill the ten-foot square, eight-foot-high interior with cancer-causing smoke.
I didn’t smoke and instead opened up my latest work of fiction.
* * *
The three aviators had little in common. None of them could pilot anything. They were software technicians who maintained the legacy CALIPSO software used to monitor older radar and satellite equipment. For Aviator Spence, it was a stepping stone for better assignments. It was a low-stress assignment, a halfway stop between Earth and Mars for Aviator Evers and a great way to end her space career. Aviator Thomas enjoyed being the last expert on the CALIPSO software. He had spent 20 years supporting the software. He only shared bits and pieces of his knowledge. It gave him a position of authority without the responsibility of higher rank and managing subordinates. He wasn’t concerned about leaving the space station. He was perfectly content. Why should he leave?
* * *
I checked the time. It was already three o’clock, and as much as I hated returning to work, programming paid the bills. In the mornings, I usually arrived before seven-thirty so I could disappear by four-thirty and miss Fred’s typical five o’clock round, nicknamed the asshole check, in which his questions and comments extended your workday to six. I put the latest WIP software changes into the development system, emailed the end-users, described the update, and asked them to test the changes based on several test case examples I included in the email. My email clearly stated that they were the experts and needed to test scenarios I was unaware of. Of course, they likely wouldn’t try anything and then later question why their enhancement wasn’t in production.
Behind the wheel of my chick-magnet silver 1995 Ford Aerostar, I pulled out of the MMS parking lot to travel fifteen miles southwest to my home in Trenton, Ohio. I avoided I-75 and took the back roads. This allowed me to listen to Fresh Air with Terry Gross without worrying about changing lanes or getting rear-ended by a driver who felt the slowest car on the freeway should go ten miles an hour over the posted speed limit.
Terry Gross was interviewing Dave Brubeck. Dave told Terry he returned to studying the piano after his first year of college because his zoology teacher offered him some advice. The teacher noticed that Brubeck’s attention span seemed more focused on the music school across the street. “He said, ‘Brubeck, your mind is not here with these frogs in the formaldehyde. Your mind is across the lawn at the conservatory. Will you please go over there next year?’”
I wondered if I should have skipped the computer programming classes and taken creative writing twenty years ago. One thing was for sure: it was too late now. I imagined telling my wife, Beth, “Honey, I’m home. Today I quit my job to write science fiction stories. What’s that, you say? Have any of my stories sold? Do I have an agent? Of course not. You need to have written something to have either of those.”
I pulled the Aerostar into the gravel driveway of our cheap three-bedroom pale yellow vinyl-siding shotgun house. We didn’t have a garage, and we considered building one a waste of money. Beth complained about scraping the ice off her light blue 1981 Chevy Malibu, though I usually did it for her. Come to think of it, Beth complained about many things. And lately, especially about me. She said I should have gotten more money when I changed jobs, but I was too weak to fight for what I deserved. Some days, she whined I was gone too much, yet I was home too much other times. We’d go to bed, and she’d tell me I didn’t see the children enough. The following night, she said all I cared about was the children and never listened to her problems. Yesterday when helping with the cleanup of the dinner dishes, I dropped a glass, and she screamed that I couldn’t do anything right.
I agreed about not being able to do anything right. I was going through a time when everything I touched turned into shit. Three weeks ago, when I arrived at seven-thirty Tuesday morning, my desk had a foot-tall computer listing with a sticky note from Dan Johnson, the Director of General Accounting, stating his report didn’t look right. Upon review, I saw that ‘not looking right’ was an understatement. It was a computer core dump generated when a program had a severe error and failed. A dump was pages of hexadecimal addresses and commands. A programmer used this information to track down the specific statement that caused the problem. It was often a divide-by-zero issue—anything divided by zero is infinity. Computers don’t like infinity. That was an easy fix, but I wasn’t so lucky in this case. After about four hours of tracing statements, I concluded Dan had tried adding a new department number that wasn’t attached to a corresponding sub-ledger. It would be like creating a recipe card and forgetting to include the recipe’s name, handing the card to a second person, and telling them to file it alphabetically. With no name, they wouldn’t be able to. The editing process should have stopped this, but the program was old, written by my buddy Alex.
Sitting in Dan’s office, I told him he needed to add a valid sub-ledger number before adding the department numbers. With a look that implied I had outlined Einstein’s Theory of Relativity, he told me he didn’t know what I was talking about.
“You tried adding departments 2310, 2320, 2330, 2340. It automatically assumes there is a 2300 sub-ledger number.”
“I have never done that before.”
“Maybe you were adding to an existing sub-ledger number. I noticed we have sub-ledgers of 2100 and 2200, and you’ve successfully added department numbers that begin with 21 and 22.”
“I don’t know what you’re talking about.”
I left, determined to find more information in the three-hundred-plus page computer dump.
The following day, I retraced all of my work and came to the same conclusion I had the previous day. I didn’t want to, but I needed to talk to Alex. It would be painful and frustrating, but the error stopped the monthly closing cycle—something the accounting department gets very upset about.
“Hi, Alex. Dan Johnson in Accounting is having problems with adding departments. It looks like you wrote the program many years ago.”
“I haven’t updated accounting programs for the last ten years. It’s your problem. Not mine.”
“I know, but you wrote the program about twelve years ago. That’s a long time ago, but maybe if I explain my problem, you may help me find a solution.”
He stared at his keyboard and ignored me.
“Do you remember if the user had to first add a new subledger number if they add a new range of department numbers?”
He continued to stare at his keyboard. “I know nothing. It’s been over ten years.”
“I understand, but there’s no one else to ask and no documentation.” I proceeded to tell him my theory of what was causing the abnormal termination.
“All I can tell you is I know nothing about it.”
I left his desk, hoping for the day when he needed something from me. I had worked with difficult users and programmers before, and though normally I wasn’t one to take revenge, Alex was making it hard not to.
My boss, Fred, was on vacation. My coworkers might have felt sorry for me but didn’t want to get involved. Every day, Johnson called and asked if I had fixed the problem. Each day I had to tell him no. The weekend came, and I had no solution.
I came in early Monday morning to tell Fred about the accounting problem. As soon as he saw me, he said, “So why do I have five voicemails from Dan Johnson saying they can’t do a monthly close thanks to you?”
I explained the situation and the conversation I’d had with Dan.
“Bring the dump over and explain it to me.”
Using the dump, I explained how I found the statement that couldn’t be executed and how the program expected a sub-ledger that ended in ‘00’—in this case, 2300.
Fred responded, “I think you’re right. See Dan and explain it to him just like you did me.”
Dan’s office was in the basement. Sometimes referred to as ‘the lower level.’ His office was ten-feet by twelve-feet. On the wall behind his desk chair, he had hung his CPA certification and his master’s degree in accounting from Wright State University. He welcomed me in, and we sat at an oval table able to accommodate six chairs.
“Fred wanted me to go through what I have found when debugging the program.”
“Okay, but I just need it fixed.”
“Well, let me explain what I found. The statement in the program that blows up is the one that tries to add the new department number. It can’t because there’s no corresponding sub-ledger.”
“That’s what you said a week ago, and like I said before—” He stopped mid-sentence. His eyes widened, and he shook his head, left to right, and said. “Oh, crap, you’re right. I remember now. I’m so sorry.”
And after forty hours of agony, the problem was solved when the user did their job.
I told Fred what had happened. He just nodded his head and mumbled, “Good.”
Later that day, Fred told me to come to his office. He asked me to shut the door behind me when I walked in. I’m not sure what I expected. I had no immediate deadlines or open support issues. My annual review wasn’t due.
As soon as I sat down, he started. “So, how would you assess your performance in the last twelve months?”
“I think I’ve done a good job. Some of the work is difficult because there’s so little documentation.”
“Is that why you took so long to solve the general ledger issue?”
“In all fairness, I figured it out in a few hours. The user didn’t remember the steps that needed to be taken.”
“Thanks to you, the corporation was a day late on its monthly close. Isn’t it your responsibility to train the users to use the software?”
“Well, I’ll admit I’m not an expert on general ledger, but my primary responsibility is programming, not end-user training. However, I would have gladly helped if I knew the process.”
“Why couldn’t you have done more research?”
“There’s no documentation. Alex wrote the program over ten years ago and claimed he knew nothing about it. As far as I could tell, the only person who ran the program in the last ten years was Dan, and he remembered nothing either.”
“It’s your responsibility to gather information from your coworkers. If you don’t get the needed information from Alex, I consider this your problem, not his. Overall, you’re doing okay, but I need more from you than okay. Do you understand?”
“I understand.”
“You’re technically competent, and you try to get along with your coworkers, but sometimes you need to be more assertive. You should read How to Win Friends and Influence People.”
I laughed when he said this. From the age of fifteen, until I was thirty, I’d played in bands and gotten along with people from different backgrounds, races, and cultures.
“I’m serious.”
“Okay. I’ll consider it, but Alex is a coworker with more seniority than me.”
“Authority is granted, but power is earned.”
Spoken by a man with the TITLE and AUTHORITY of DIRECTOR who had made it well known he should be a VP.
I left Fred’s office, frustrated and angry. I wasn’t taking the blame for other people’s incompetence and shortcomings. And I sure wasn’t wasting money on a Dale Carnegie book.
Comments