Newsletter Subscribe
Enter your email address below and subscribe to our newsletter

A programmer said the fix would take seven 12-hour days and cost more than $10,000. I went offshore and solved it in about 30 minutes. Years later, he accused me of “cheating.” The real story isn’t about programming—it’s about competence, integrity, and whether you’re working for the customer or the invoice.
I still laugh when I think about the day the Operations Manager at POGO Producing called me to go offshore and clean up somebody else’s mess.
Not because the problem was funny.
The problem was serious enough that federal inspectors had given the company thirty days to fix it.
What was funny was what happened after I fixed in half an hour what another man said would take him an entire week.
And what was even funnier was that he eventually accused me of cheating.
But I’m getting ahead of myself.
POGO had an offshore production platform called MP61A.
Later, they built another one called MP61B.
The two were similar, so the programmer hired to set up the new platform did something perfectly reasonable: he copied much of the computer system from the old platform and modified it for the new one.
There’s nothing wrong with that. Why reinvent the wheel when you already have a working wheel?
The problem was that he apparently didn’t bother checking all of his work afterward.
The wells on Platform A were named things like:
A-01, A-02, A-03
Naturally, the wells on Platform B were supposed to be:
B-01, B-02, B-03
But the computer screens on Platform B still showed the old A names.
For anyone who doesn’t work around industrial control systems, think of it this way:
Imagine a hospital builds a second operating room and copies the computer setup from the first one. Everything works, except the screens in Room 2 still identify the equipment as belonging to Room 2.
Or imagine an airport control screen labeling Runway B as Runway A.
The machinery may still work.
But the labels matter. A lot.
Offshore operators used those screens to monitor and control actual producing wells. Correct identification isn’t a cosmetic detail. It’s a part of operating the facility safely and properly.
Then the federal inspectors showed up. And, they noticed.
POGO was given thirty days to straighten it out.
The Operations Manager called the programmer who had originally done the work and asked him to correct it.
His answer?
A minimum of seven twelve-hour days offshore. At $125 an hour.
That works out to 84 hours. Or $10,500 in labor. Minimum. To fix his own screw-up.
The Operations Manager already wasn’t particularly fond of dealing with this guy, and I’m sure that estimate didn’t improv the relationship much.
So he called me and explained what had happened and said:
“Go offshore and put together an estimate of what it would cost you to fix it.”
I told him:
“If I’m going offshore, I might as well just fix it. It’ll take me about fifteen minutes.”
There was silence on the phone.
Then:
“Are you serious?”
Yep.
Here’s where the technical people can appreciate what I did, while everybody else can appreciate how absurd the situation was.
The names displayed on those operator screens were stored inside computer files.
The original programmer apparently envisioned opening screen after screen, finding every occurrence, changing it, checking it, and repeating the process over and over.
That would certainly consume some time. A lot of error prone time.
My approach was simpler.
I opened the files directly in an editor and told the computer, in effect:
Everywhere you see “A-0,” change it to “B-0.”
That’s it.
Search. Replace. Save. Test.
The old software didn’t have some of the protections modern software has that might object to somebody modifying its files directly, so I could make the change without the program throwing a fit.
Did I know with absolute certainty that it would work before I tried it?
Of course not.
But, I had a very strong idea that it would.
So I crossed my fingers and tried it.
It worked perfectly.
The fifteen-minute prediction was a little optimistic.
It probably took me closer to half an hour by the time I verified everything.
Still, there’s a fairly substantial difference between:
30 minutes and… 84 hours.
POGO noticed the difference too.
After that, I got essentially all of their I&E and SCADA work.
A couple of years later, I ran into the original programmer at an industry gathering.
He apparently had been carrying that offshore job around in his head for quite some time.
He walked up to me looking irritated and demanded to know how I had fixed the problem in only fifteen minutes.
I corrected the record.
“It actually took me thirty minutes. You were misinformed.”
That didn’t make him any happier.
“Well, how did you do it in only thirty minutes?”
Now, at this point I probably could have explained exactly what I had done.
But… Nah. I decided to have a little fun with him.
“Special program I wrote myself.”
Of course, that was complete hogwash.
I hadn’t written any special program. I used a text editor.
But his response told spoke volumes.
His face turned red.
“Then you cheated.”
Cheated!
Think about that word for a minute.
A customer had a problem.
I fixed the problem.
The fix worked.
The customer was satisfied.
The government-required correction was completed.
But, according to this clown, because I had found a MUCH faster way to accomplish the job, I had somehow… cheated.
Then he said the part that completely explained what was really bothering him… for a real long time.
“Because of your cheating, I lost every bit of future work with POGO.”
Ah. There it was. This wasn’t really about programming. It wasn’t about procedure. And it certainly wasn’t about whether the solution worked.
It was about the fact that his seven-day job converted into my thirty-minute job, and POGO had drawn its own conclusions.
I looked at him and dismissed:
“Whatever.”
But, he wasn’t finished.
“You need to go tell the Operations Manager that you did it by cheating.”
That one almost made me laugh. Correction… I did laugh. I couldn’t help myself.
I smiled and said:
“I’ve got a better idea. Why don’t you call him and tell him I cheated?
I’ve got his cell number right here. I’ll give it to you.
I’m sure he’d love to hear how I fixed your screw-up in half an hour by ‘cheating.’”
Funny thing is, he never took the number.
For years, I’ve shared that story as a funny example of knowing your tools.
But the older I get, the more I think the real lesson had almost nothing to do with computers.
It was about integrity.
The Operations Manager didn’t care whether I fixed the problem with a sophisticated custom program, a $50,000 engineering package, or a pocketknife and duct tape. He had needed someone to solve a legitimate problem. He wanted the problem solved correctly. That’s what a customer should be paying for.
The troubling part wasn’t that the first programmer estimated the job incorrectly.
Everybody makes mistakes. I’ll give him the benefit of the doubt and assume that he genuinely believed it would take seven days. Perhaps the only method he knew really would have taken seven days. I can’t crawl inside another man’s head and tell you what he believed.
But his reaction afterward said plenty.
When he discovered there had been a far easier and quicker solution, his response wasn’t:
“Damn. That’s clever. I wish I’d thought of that.”
He didn’t ask:
“Show me how you did it.”
He learned NOTHING from the experience.
Instead, he called it cheating.
Because apparently, in his mind, finding a better way to serve the customer is unfair to the person who would have billed the customer ten thousand dollars to do it the hard way.
And, THAT is a very strange definition of fairness.
That question applies to a lot more than programmers.
It applies to mechanics. Contractors. Doctors. Lawyers. Consultants. Electricians. Plumbers. Salesmen. Business owners.
It applies to anyone who gets paid because another person has a problem that needs solving.
Who are you really working for? The customer? Or the invoice?
There is nothing wrong with making money. There is nothing wrong with charging well for expertise. In fact, expertise is often worth far more than raw labor.
But there is a difference between being paid well because you know what you’re doing and being paid more because the customer doesn’t know what you’re doing.
Integrity lives somewhere in that difference.
People often assume expertise means knowing how to perform some incredibly complicated procedure.
Sometimes it does.
But often the real value of experience is knowing which complicated procedures aren’t necessary.
A novice may spend eight hours disassembling something while an expert simply removes two screws.
A novice may replace five parts while an expert replaces one.
A novice may spend a week manually editing files while an expert uses search-and-replace.
The customer doesn’t owe the first man more money because he knows a slower way to accomplish the same result.
And the second man hasn’t “cheated” because he knows a faster one.
That’s not cheating.
That’s competence.
There’s an old idea that integrity is doing the right thing when nobody is watching.
That’s true.
But in business, there’s another version worth remembering:
Integrity is doing the right thing when the other person
doesn’t know enough to realize you’re doing it.
POGO‘s Operations Manager couldn’t have sat down at that computer and fixed those screens himself.
If he could have, he wouldn’t have called either one of us.
That ignorance created an opportunity.
One man saw 84 billable hours.
I saw a problem that could probably be fixed in half an hour.
And, maybe that’s why I ended up with all of the work afterward.
Not because I was some programming genius.
I wasn’t.
I simply understood that the goal wasn’t to make the job last as long as possible.
The goal was to fix the damned problem.
And sometimes that’s all integrity really is:
Knowing that you could make something harder, longer, and a lot more expensive…
and choosing not to.
I Hate Microsoft. I Hate Apple to the Power of 10.