Friday, July 6, 2012

A Quarter Century of Coding

by Odienator

Today is my 25th anniversary as a programmer. This was an arranged marriage, and as such I grew to love it though my passions were truly elsewhere. The dreamer in me wanted to write about film. He was deterred by obstacles, some insurmountable, some not. Unless you sold a million copies, writers didn’t make a lot of money. I grew up broke and with no intention of being grown and broke. That was the surmountable obstacle. I just needed to be a success which, to a 17 year old, seemed simple enough.  But there were also no Black film critics at the time, or so I thought, and I didn’t think I’d be able to get a job. I couldn’t scrub off my Blackness with Brillo, making this an insurmountable obstacle. This was also the deciding factor in allowing myself to be betrothed to Bill Gates and Sun Microsystems.

 "Odie, you is mah woman now!"

I once asked my Pops what constituted a career. He thought a moment, then said “at least 25 years.” He told me if I were able to secure a job and hold it for a quarter of a century, it would achieve the status of “a career.” This was in an era where the concept of the company man was not quite dead. There was still a notion that doing a good job meant you’d retire from that job. I thought it odd that society would consider me an adult after 18 years, but my work would require twenty-five for a similar status. No matter. I am a compulsive, and I desire a logical order in all things. Twenty-five years made a comforting amount of sense to me.

When I started looking for serious employment, I was a sophomore in college. I needed money to pay for my schooling, so a part-time job wouldn’t do. I wound up with a part-time job anyway, but I worked a full 8 hours learning the first of many systems with which I would do battle during my tenure. Since I needed to commit to a major that semester, and I had a job that could potentially go full-time after I graduated, I chose to major in computer science. I’d taken two CS classes already, so there was no transition from my freshman year. But it was not what I wanted to do; it was the logical thing to do. The compulsive in me was happy. The dreamer in me felt defeated. To bridge the gap, I imposed a timeline and I chose the area of information technology best described as creation through writing. If I could find a job writing programs, and I kept it for 25 years, I could return to the scene of this decision and readdress it. Unlike Robert Frost, I was going to return to that fork in the road and consider taking the road not taken.

If my mother had gotten her way, I’d be a lawyer right now. I would have been the first lawyer in a family still deprived of Johnnie Cochrans. With my personality, I would not only be chasing ambulances, I’d be driving the ones I couldn’t catch. I envision a 3 AM TV commercial where I ascend from a fiery hole in the ground, dressed to the nines and looking sympathetically at the camera. “Have you ever been in an accident?” I would ask. “Call the law firm of Henderson & Henderson now at 1-800-ODIE-LAW! Odienators are standing by!”

There was just one problem: I hate lawyers. Couple that with a teenager’s rebellious need to defy his parents, and things looked grim for Odienator, Esq. I stated unequivocally that I’d be a bum on the street before I joined Dewey, Screwum and Howe. To Mom’s generation, the vocations of prestige and privilege were medicine and the law. Mom chose the law because she knew her eldest boy was not mechanically inclined. I am clumsy and lack the most basic male instincts of construction without instructions. Odienator The Ambulance Chaser would get rich off the handiwork of Dr. Odie.

My refusal to succumb to the Devil’s Profession was not without consequence. Since we couldn’t agree on my major, I was offered the unlikely successful option of deciding what a 16-year old freshman wished to pursue. When I told Mom I wanted to pursue journalism, she said “writing is a frivolous pursuit.” This was a dagger in my heart because writing was my way of self-definition and identification. I was a writer before I was Black, before I was a boy, before I was human. It was—dare I use this word again?—a compulsion over which I had no control. And my reason for drawing breath was rejected as “frivolous pursuit.” Mom believes that to this day, and the reservoir of guilt I carry deep within me rises a foot with every written piece I submit. This may bring enough rain for an extra two feet of guilt.

So follow this sad, warped, yet acceptable to both sides of me logic: Programming is writing, except you’re not telling a dramatic story, you’re writing a how-to book. Your story gets deployed (kind of like being published) and run by users (kind of like reading it). It does what your written lines told it to do. I convinced my writer’s heart that becoming a programmer was not a betrayal, just another way of telling a story. “But,” I added, “in 25 years, let’s have this conversation again.”

There’s an easy answer to the question forming in your mind, and that answer is time. I couldn’t have both a writing career and a programming career because the latter is incredibly demanding. I’ve been writing on the side somewhat consistently since 2006, and it’s hard for someone with my coding experience. It would have been impossible in my less mature and disciplined days. Plus, I type all day, staring at a piece of simulated “paper” filled with whatever programming language I am using. After the aggravation of that, sometimes the last thing I want to do is MORE typing on this fucking machine. I can’t enjoy the computer at home if the one at work is crabby and unreasonable. I didn’t become a gynecologist for this same reason.

So here we are, 25 years to the day when I started my first computer job, and in my reflection I must firmly state JE NE REGRETTE RIEN. I’ve never looked back to say “what if” because I knew I’d be saying “what now?” today. This is how my inner psychology works—when it comes to life decisions I’m Mr. Deadline. If I mark it on the calendar, it becomes real and tangible to me. I can put it out of my head until the deadline begins approaching. If I could explain it better, I would.

I regret nothing, because like the Cuban baseball player Garrett Morris played on Saturday Night Live always said: programming has been “berry, berry good to me.” I’ve travelled the world, spending time in Europe, Asia, Australia and North America. I’ve written software that has been used by hundreds, if not thousands of customers. I know 19 programming languages and have honed my craft to a level of which I am proud. The money’s not that bad either. I’ve been able to live the lifestyle to which I’ve become accustomed.

My timing was also perfect: I’ve watched and participated in the evolution of technology from huge, clunky mainframes and minicomputers to the iPhone that’s currently giving you brain cancer. For a technogeek like me, these changes have been most exciting. When I started, I worked on an IBM 370, the DEC VAX and the DG MV/2000 mini-computer. I wrote some of my college papers on an IBM AT, a desktop computer far bigger than the one on which I’m writing this piece. The AT, if I recall correctly, was a whopping 6 Mhz with a Pentium 286 chip in it. It had a 2400 baud modem in it, and a maximum 16 MB of memory. Compared to today’s machinery, this is like 2 tin cans and a string vs. an Android phone. Hell, it’s one tin can, no string.

Today, I reflect on years of syntax errors, programming bugs, programs that blow up during demos and other nuisances of my profession. Anyone who has spent time navigating the choppy seas of computer logic will tell you that “code” is a four-letter word, both in the literal and figurative senses. If my old keyboards could talk, they’d reveal how much profanity I’ve spewed while banging furiously on them. They’ll also tell you how much coffee I’ve accidentally spilled into them, for coffee and sugar are the programmer’s sustenance. 

Programming for 25 years had one byproduct I did not anticipate: book potential! I’ve been writing a book about my life as a programmer (a chapter appeared on this blog), and before you dismiss it as boring, let’s remind you with whom you are dealing. You know goddamn well I can’t have a normal experience. I’ve been hit by clients, hit on by clients, cussed out, accused of more than one crime—including crimes against nature, and have been mistaken for the wrong color AND gender.

I once had the unpleasant discovery that the desk I’d been using not only for work but also to eat lunch was being used by my boss to nail his secretary. I walked in on them, and immediately remembered that I’d once dropped a tomato slice on my desk, picked it up and eaten it. The only words I could muster so they’d know I was there was “THAT’S NOT SANITARY!!”

So don’t expect a boring book, nor one rated PG-13 either.

Lest I forget, the most important feature of being a programmer is this: When the machines take over, they’ll still need somebody to write code for them. You guys will be shoved into some robot’s ass as a battery, and I’ll be sitting in a little floating cube writing code for our new Evil Overlords. If you tell our new masters you used to read this blog, I’ll make sure I get you a cushy robotic booty.

"Hey! Get into my ass!"

As I stand here once again evaluating the roads before me, I feel a certain agony. I really can’t make up my mind. Neither way would be objectionable, though I confess to being tired of writing code. One way would be exciting and new, the other dependable and familiar. I really can’t make up my mind, so I've decided to do something completely irresponsible. I am going to let fate make the decision for me. That’s right, folks, I’m going to flip a coin. A quarter no less! 25 years, 25 cents! 

Heads—stay a programmer, Tails—get out and, if I fail, have to sell my ass on the street corner. I’m gonna flip it right here, right now, and whatever the coin says, I shall abide by its decision. Let’s just hope I can catch this bitch as it falls through the air. 

Are we ready? I’m flipping it now!


OK, coin--I'll do it!

Happy 25th Anniversary to you, Programming Career!