Matthew Lang avatar

Matthew Lang

Family guy and web developer

Small solutions to big problems

It's often the case with me that I look for a big solution to what I perceive to be big problems rather than the small solution.

The client upgrade

Take for example an upgrade I'm doing for a client. There's a number of steps that I always take when it comes to upgrading web applications for clients, but in this case the steps didn't go as planned.

For a few hours I was banging my head against a wall because of an obscure error. Stepping back I decided to go through the application in more detail. After just a few minutes I finally found the problem and made the change to ensure the upgrade process was working. The error itself was a bit of a red herring, but the obscurity of it had me thinking that I had to do something more to get move forward with the upgrade.

The change to get the upgrade was to update an obsolete library to the latest version and then the client's application was working again. I've updated my notes for further upgrades I do for clients so that the same thing doesn't happen again.

The same thing happened with Ethan last week.

The golf swing

Last week, Ethan had an playing lesson with the club pro, Andy. For a couple of weeks now, Ethan's game has been slipping. It was frustrating to watch as I don't know what to look for in his swing when things go wrong other that what he has learned in the past from his coaching. Heading out to the first tee, Ethan got setup, did the usual pre-shot routine and then Andy chipped in with a little nugget of wisdom, "Stand back further".

The change was instantaneous. The drive went right up the middle of the fairway. Through the lesson the recurring theme in Ethan's swing was that he stood too close to the ball and needed to go back a few inches in order to get the ball going in the direction that he wanted. Whether it was a driver off the tee, a hybrid or iron from the fairway or even a wedge leading up to the green, Andy's advice was always the same, stand back further from the ball.

The small (and effective) solutions

Ethan's focus now is to start including a small check in his pre-shot routine that ensures he's the right distance from the ball. Checking the distance between his belt buckle and the end of his club and making sure he can fit a hand span between them is enough to ensure that he's the right distance from the ball.

In both cases the problem was significant, and yet the solution to each problem was the smallest change imaginable. I wouldn't have thought for one second that an out of date library could have had such an effect on upgrading a web application. I also wouldn't have thought that such a small change in Ethan's swing would have such an effect on the resulting shot.

What this has taught me though is that the smaller solutions should be the ones that we look towards first. Using tried and tested approaches and notes on previous upgrades, I've managed to stream line the upgrade process for a clients web application so that in most cases it takes days rather than weeks. Eliminating the small problems ensures that I'm always working towards a functioning upgrade.

It doesn't always work this way though. Every client upgrade is different and there are exceptions to the rule, although there shouldn't be that many. Most of my clients have similar technology environments when it comes to their web applications so upgrades should fall into the timeline of taking a few days, a week at most. Any number of issues can stall an upgrade and due the technicalities of it, it's not always the case that a simple solution can move it forward.

Keep notes on those solutions

It also doesn't hurt to document your experiences. They're all different but from the notes that I have built I have a process in place that eliminates most the of the problems I encounter when it comes to upgrading client's web applications.

As for Ethan's golf swing, he's determined to use the time over the summer to practice more. Ethan has a full summer of lessons, competitions and medals to play for so that he can keep working towards lowering his handicap. To do that he'll need to remember the small fixes that can have such a positive effect on his swing and resulting shot. He's keeping a notebook of his yardage and his lessons so that he has something to go back to and review.

8 day streak on @750words. Feels great to be writing daily again.

Never under-estimate the simplicity of a problem. Fixed a Rails 5 upgrade by updating the web-console gem to the latest version.

iOS 11 looks great with the new Files app. Not enough changes though for me to use an iPad Pro for programming. Maybe iOS 12?

The basics of email ...

... with Nicholas Bate.

I've been wrestling with my inbox for a while now but last month I started batch processing my emails again, and although it has taken a few weeks I've got my inbox down to a handful of emails this morning from the 100+ that were sitting there a few weeks ago.

Once again, Twitter explodes over the tweets of a certain president.

As for what covfefe actually is, we still don’t know. Some may say it’s a typo of “coverage,” and that Donald Trump was railing against his portrayal in the media again. But the sensible among you would reject that hypothesis, knowing that there would be no way that the president would be sitting up in his ludicrously opulent mansion, restless at midnight, so steamed about his popularity that he would pull out his phone and throw out a half-considered complaint tweet to his millions of followers.

via The Verge

Is it a typo? Probably. As a result of a long line of gaffs and poorly worded tweets by Donald Trump though, it is hard to take him seriously. And for as long as he has free access to his own account then that isn't likely to change soon.