Saturday, June 18, 2016

Ode to the Eccentric Computer Programmer

I’ve been in the IT industry for 30 years now.

The most memorable people I have worked with have been software developers.

I’ve seen the change from guys wearing white short-sleeve dress shirts with pen protectors in their breast pocket and thick black rim glasses punching holes in cards and running them through card readers to compile the code to run on the only computer in the company or institution, to guys wearing ear-bud headphones listening to their playlist of death-punk rock as they pound out code on the keyboard and reviewing it on the top middle monitor out of six that wrap around their workstation.

And while it seems like these guys are totally different, they are in fact the same guy.

They don’t live in the same world we do.

Their view of art is code that compiles cleanly the first time and passes every unit test without fail. 

They dare the testers on the QA team to find a bug, and offer them a reward if they do.

They tell jokes using binary code and tape them to the office fridge, taking joy in the fact that nobody else understands it, let alone gets the punch line.

They stay late. They come in early. They would rather be at their workstation than out in the world of social interaction. They decorate their workstations with strange posters and knick knacks of comic book heroes and science fiction space ships. They greet you with the Vulcan salute of the raised hand with the middle two fingers spread apart.

They speak perfect Klingon.

They only venture out in public when a new Star Wars movie is opening, fully dressed in their best Darth Vader, Storm Trooper, or Jedi Knight costume – but they look nothing like the character. And the weeks afterwards are spent dissecting the movie, where it betrayed the historical knowledge of that universe, and how they believe it should have been scripted.

These people are different.

They are committed.

They should be committed. But we need them.

I have known so many of these guys.

They care little for the real happenings in the world.

They do not pay attention to or are oblivious to the office politics that arise in every IT department.

They are loyal to the systems they create, not to the leadership of the team. And they will defend their creations to the death if they have to, often grabbing the nearest light sabre at their desk to defend themselves, leaned against the wall next to the skate board they rode to work that day.

And when you do convince them that there is really and truly a bug in their code, using rational they understand and test case scenarios targeted specifically at that trouble spot, they have it fixed before you can return to your desk, and unit tested, and promoted to the staging environment, and they appear as you sit down with your fresh cup of coffee that you poured on your way back from your desk expecting you to test it right there and right then to prove to you that it works – and for you to take back all those mean nasty things you said about the quality of their compiled application.

If they could, they would promote right into production. After all, to them, it’s more important that the world uses their code in perfect condition than any of that pomp and circumstance layer of protocol, process and paperwork that a production release entails.

“Just let me deploy it”.

And they debate the requirements that you gave them, and explain to you again and again how your requirements are really wrong, and this is what the code is supposed to do.

And when there is a problem someplace else in the system, an application that is not theirs, they dive into that problem like a wake of vultures attacking a now dead possum on the side of the road – looking for the bug, and telling the unfortunate programmer responsible how to fix it, and sharing between them the comments of how stupid the bug was to begin with.

And they hate peer reviews.

I love these guys.

But it’s hard to keep these guys around.

They move on. Usually for the next most exciting project they can find, or for an environment that sees their odd behavior as pure genius. They want cool stuff to work on, and your respect of the obvious fact that they are the very best there ever was.

They rarely move for the money. Or the benefits.

These guys can drive you nuts.

If you should find yourself out in public with these guys, like at a Friday lunch at the local hangout, or a team building night out at the local watering hole, you will find yourself quietly sitting, looking at your watch or your phone, waiting for this genius to finish regaling you with their word by word dialog re-enactment from the scene from Star Trek Wrath of Khan where Spock dies inside the chamber that powers the warp engines and Kirk watches helplessly outside.

And in that restaurant, this brilliant programmer will end their re-enactment by screaming “KHAN!!!” at the top of their voice, and once they get their breath back, state “I love that scene”.

They don’t make movies about these guys. At least not where they are the central character. Who would pay to watch a guy sit at a keyboard, staring at a monitor, shaking their head to the beat of the guitar silently playing through their ear-buds.

Okay, there was Zuckerberg in The Social Network. But he was rarely at the keyboard.

And he’s a billionaire.

A rare find to see the guy who wrote the code wind up in charge and with all the money. Ask Bill Gates or Steve Jobs who wrote the code.

So Zuckerberg is an anomaly.

There should be a story about a team of these guys – all as eccentric as I have described – faced now in a world where there is no electricity or computers – and they have to survive.

I’d pay to see that movie. Even before one of these eccentric fellows put it up on Kodi to stream for free.

Now, before I get an inbox full of women saying “Hey, dipshit, women are programmers too ya know!”, let me just say that in 30 years, I have never met an eccentric female programmer. They have been brilliant, but not eccentric. They are highly organized persons who can juggle many things at one time, understand the requirements without you having to specify them, and their code compiles and runs as perfectly as their male eccentric counterparts.

But I haven’t met even one yet that is nuts.

And these guys are all nuts.

And I love them for it.

I just don’t want to have one for a roommate.

Tuesday, June 07, 2016

Timely Advice

When it comes to life in general, there are two schools of thought.

Some will tell you to live for the moment. Look no further than right now and savor it.

Others will tell you to live your life today in preparation for tomorrow.

Today is just a passing thing.

And tomorrow never comes.

But every action you take today will have an impact on your tomorrow.

You cannot see your future today because you have not taken the steps yet that get you to tomorrow.

So we set goals. Objectives. And we plan.

We plan for tomorrow. But when tomorrow gets here, it is always today. There’s another tomorrow to plan for. And we spend that today planning for the next tomorrow.

But technology, it seems changes everything. So far it has changed how we communicate, how we learn, how we are informed. And how we travel.

Technology is not done yet. It’s just begun. And much of what we have today was dreamt up in science fiction a hundred years ago.

So what’s next?

A time machine? One that takes you back in history, and forward into the future? So many stories have been written and movies made about time travel, that well, given our drive to make these science fiction dreams come true, it just seems inevitable. Impossible just doesn’t exist anymore.

But as I sit and ponder this for even a moment, it becomes clear to me that if we were to build a time machine, one that takes you forward in time, that machine would use totally different calculations than one that would take you back in time.

To travel back in time would simply be to retrace the steps that we have already taken. Kind of redundant, don’t you think? So the bigger opportunity would be to invent one that takes you ahead in time, to the unknown.

To move forward in time, you would not simply pick a date and wait to be surprised at where you land. No, it would be more like the navigation system in your car. You pick a destination, and the system tells you step by step how to get there.

My car has a cheaper version of the GPS. It does not show me the route I am about to take, but it simply points me down the next road. I blindly follow the female automated device. And voila … I reach my destination.

So in the future, time machines may very well have the same types of features and models, based on price range.

If it were to be possible to set your time machine future destination and then to be at that spot instantaneously, you would then look back at the history of the steps that were taken, and you would see what you did to achieve your goal.

If you were to type in a destination of a wealthy future, once you arrived, you may find yourself sitting in a jail cell, waiting for your trial.

“How did I get here?” you would ask. And you would look at the travel log, and see that you did despicable things. And you would say “this is not the future I hoped for”. So you would use your one phone call to call the customer service desk of future travel device.

“How may I help you?” would answer the voice on the other side.

“It appears that your device has landed me in jail, awaiting trial for fraud.”

“What destination did you enter into the user interface?” the voice would ask.


“Oh. Yes. Did you read the instruction manual?”

“I tried, but it was a little too quantum physical for my understanding”, you would reply. “I just wanted to test it out and see how it worked”.

“So you jumped right into the “Wealth” option then?”


"Did you select a route?"

"Uh .. no".

"Well, the default value is 'fastest route possible', and you didn't take the time to go through the options to teach it about you as a person. You really should have read the instructions".

"How can I undo this?”

“You can use the ‘back-in-time’ feature”.

“I only bought the future traveling model. I couldn’t afford the back in time feature”.

“Oh, I see. Well, Mr. Brill, I see here that you did accept our end user agreement”.

“Yes, I clicked on the ‘accept’ button. Who has time to read all of that legal mumbo jumbo?”

“And you didn’t read the user manual either then?”

“No, I told you that”.

“Well, I am very sorry, but you are where you are because of your own actions”.

“Look, if you don’t fix this, I will sue you for every penny your company has!”

“But you already waived us of any liability for the use of our product when you clicked the ‘accept’ button on the end user agreement”.

“Can I buy the ‘back in time’ model now?”

“Will you be paying in cash?” asks the customer service representative.

“Well, no, I do not have any cash on me and they have taken all my personal belongings, so I don’t have my wallet, but apparently I am quite wealthy. Surely you can accept my credit?”

“Mr. Brill, you are on trial for defrauding everyone you know and love. Why would I accept your credit? Besides, it says here in our records that all of your accounts are now frozen”.

“So I am screwed?”

“You did it to yourself Mr. Brill”, says the customer service representative, with a deep sigh, likely because they have answered this same type of call a thousand times before.

“Is there anything else I can help you with today, Mr. Brill?”

Later, at the trial, the lawyer approaches the bench to speak to the judge.

“Your Honor, it appears that Mr. Brill was just testing his new time travel device”.

“Let me guess. It was a Fabco Time-Forward 3000” replies the elderly judge, peering down over his bifocals impatiently at the lawyer.

“And this fellow bought his device before the Federal Government shut them down for reckless endangerment to the public …”

“Yes Your Honor”.

“And he didn’t read the user manual”.

“That’s what he said”.

“And he clicked ‘accept’ on the end user agreement …”

A deep sigh from the lawyer. “Yup”.

“And he can’t afford to now purchase the “Back-in-Time” model …”

The lawyer hung his head. “All of his accounts are frozen. I am doing this pro-bono.”

“So in fact, he did all the things he is accused of”.

“Uhhh … yes, it’s all documented in his Time-Forward 3000 history log.”

“And all these people sitting in this court room should just forgive him, it was all a big dumb mistake made by an impatient idiot too lazy to read the instructions?”

“Well … yes …?”

“Guilty”, and the judge slams down the gavel. “Next Case!”

It’s just a matter of time before this technology is invented, and just a little more time until a company like FabCo develops a means to deploy it to the masses. In all of its models, with various options available at affordable and not-so-affordable prices.

And when this time comes, my advice to you is read the user manual. And understand the end user agreement before you hit accept.

And pay the extra thousand dollars for the Back-in-Time feature.

I did.

© 2006 - 2017 Fred Brill - all rights reserved