Coding With Boxing Gloves & The Fight For Your Customer’s Happiness

Manuel Amunategui
3 min readJun 2, 2018

--

Source: Lucas Amunategui

About 10 years ago, while working on Wall Street (literally, our office leaned against the American Stock Exchange), I bumped into a programmer from another department. From what was a mundane encounter on the surface, turned into a life experience.

It was a frigid January morning. My desk was set in front of an old window in our pre-war building. It leaked cold air so badly, you could slip a pencil between the sill and the supposed closed window. On those days, like clockwork, my fingers would freeze and I’d have to take a break and put gloves on.

He was on the high-frequency desk, while I sat on prop-trading, and stated in a snarky tone while staring at my gloves that I probably didn’t get much accomplished that morning. He said this in front of others so I felt a retort was expected. If those had been boxing gloves, I may have replied differently. I stated that programing is 90% thinking and 10% typing, and should use his mouth less and brains more… My comeback was unsatisfying. But what made this significantly worse was that I knew that I was a chronic offender of what I just pontificated.

One Line of Code at a Time

I would write a few lines of code, compile everything, and test it out. It was a pleasurable process but far from smart or efficient. I get that new people in the field do that, they’re excited to see their work and want to enjoy it as often as possible. But its a bad habit on so many levels, especially if you are waiting to finish a line in order to figure out where to go next. This can lead to buggy code, bad naming convention, orphan functions, etc. But it can get a lot worse, not working with the end game in mind can sap team moral, lengthen development time, team attrition, encourage scope creep, and may even kill a project.

I don’t do that anymore. I always start the day by thinking of what is the product and what is its purpose. I also make lists of immediate goals in the context of bigger ones, and take a periodic step back to make sure I can still tell the forest from the trees. It is critical to regularly calibrate your bearings.

Step Away From the Computer

If I can’t do that, I stop and walk away from the computer. I think back at what the customer wants, what would constitute a good day for them, and how could this tool enable that. And it doesn’t hurt to give your body a stretch and your eyes a break.

Your Customer is Part of Your Team

But even more insidious, is when neither you nor your customer know where you are going. This doesn’t end well and both parties will part with broken hearts. The same tips mentioned here are applicable to your customers, that is, if you’ve made the effort of bringing them into the team. If you haven’t, make that your next priority as they’re the only path towards understanding the big picture!

And let me tie it back to the title; this is a boxing match between you, your lazier self, and your client. One will invariably lose, it’s up to you to choose whom and it won’t be an easy fight.

Thanks for reading!

Manuel Amunategui

Author of free ebook: “Become a Data Scientist — Essential Tips to Compliment your Technical Studies

Get it and plenty more at amunategui.github.io

--

--

Manuel Amunategui

Anything Applied Data Science. Author of Monetizing Machine Learning, amunategui.github.io and ViralML.com. Barcelona. Twitter: @amunategui