All in your head

Distraction.

It’s the thing that could destroy your productivity and send you down the rabbit hole of wasting time and achieving nothing. You will find yourself doing everything else but the one thing you need to be doing.

And you know what? The biggest problem isn’t with distraction. It’s not that video game. Not that Netflix show. Not that book. Rather, it’s you. You are the problem. You choose to play that video game, watch that show or read that book.

So why did you make that choice?

Is it because you lack the discipline?

Or maybe be that the thing you should be doing doesn’t have a strong enough draw to pull you away? Maybe it’s not as important as you think it is? And don’t kid yourself and be all defensive. After all, if it’s important, then why aren’t you doing those things? Why are you allowing yourself to be distracted?

It’s also a conversation that I’m having with myself every now and then.

As much as I like to think I have the discipline to work from home, it’s a lie perpetrated by me on me. The truth is being distracted is a recurring theme. There were so many projects that I want to do but ended up not doing them. I went with playing video games, stopped thinking like a writer and stopped thinking like a designer.

I even told my friends that I couldn’t find the time or concentrate on my stuff at home and needed to work outside. There’s just too many distracting stuff.

One of them said, “it’s all in your head”.

I won’t say I’m surprised. From what I have learned so far, it’s the truth. And the only truth when it comes to productivity.

And that’s a great reminder on who’s really in control.

No one else can make you concentrate or focus. You are the one who decide whether you can concentrate and do the work. Everything else that you say or fight against is just you finding an excuse.

What if you really think that your home has a ton of distractions and you can’t prevent yourself from utilising those distractions? Then go out there and find an environment to work in that allow you to focus. Otherwise, remove all those items in your house that distracts you. Move those distracting things, be it television, your internet router/access points, etc. to a storage unit. Smash them to pieces if you need to. You can always buy a new one later. It’s all about creating that environment you need to work.

And watch what you say to yourself. A lot of times, many of the comments or complains you make are just you being fancy and refuse to do the work. So shut up, and make a plan and execute.

Meet short term goal or minimise long term pain

Every day of our lives, be it professional or personal, we’ve got to deal with situations that require us to deal with it now with quick solutions or come up with a better solution and taking the time to implement it to minimise long term pain.

Ideally, there should be a balance between the two but reality tends to force us into coming up with an immediate solution to deal with the current pain. Usually, it’s because someone above you, your customer or that a life depends on it made the issue a high priority.

And it takes someone with experience in certain situation to be able to make a decision that seemingly strike a balance.

As a software creator (I don’t call myself an engineer or developer but that’s a story for another day), I lost count of the times when I have to sacrifice the solution that’s good in the long run to deal with something that the customer wants it now. And then there’s always this “we are behind schedule” speech by the management. So much so, it makes you want to roll your eyes. It can make one feel like the management is always reacting to something and not preempting and executing on a plan.

Of course, perspective matters here. More time spent in doing something means more money spent. The manpower could be better utilised to work on something else that deliver on more value (money) to the company. Not to mention, to the customer, it’s like they don’t get their money worth of goods or services on time.

However, cutting corners on a solution just so that you can deliver on time can lead to long term pain that ultimately translate to time and money wasted.

Let’s take something that I’ve experienced at work as an example.

The system my team and I are working on requires a constant patching of data in the database. It can be either to insert new records or to fix old records with updated information. As the system is still undergoing development and deployment, the data is constantly in flux. And the customer will send us spreadsheets of data for us to do matching and patching.

And instead of spending maybe a week to build the user interface and implement the business logic that not only validates the data but to allow us to upload those spreadsheets and update the database in a few clicks and change existing data all from one UI window, my colleagues have to take the time to review through those spreadsheets. Sometimes, two persons are involved. What any one of them will do is use their eyeballs to scan through the records in order to determine whether to match and update existing records or to insert. Then they will manually write the SQL scripts to insert or update the data into the database.

No doubt the scripts run fast and the database will be patched within seconds.

However, what the project lead and management didn’t take into account of the time and effort needed to validate the data manually every time, prepare the scripts and run them. And that’s not forgetting humans can make mistakes. If the data is patched wrongly, the whole system may not work as intended and then we will need to “rush” someone down to the customer office to fix that issue. Time spent at customer office is time not spent on delivering features.

And if you are someone who panics very easily, and you have to deal with such high pressured situation, more mistakes will happen.

The management of course have a defence. Their stance is that this kind of data patching doesn’t happen often. By my last count, it has happened five times since the project started and we aren’t even at the end yet. And I suspect this data patching will repeat several more times until the end of the project. How many more, I don’t know. In fact, I’ve just recently spent half an hour to de-associate the relationships between two datasets because it wasn’t patched properly. Mind you, those de-associated relationships need to be rebuild again once the data has been reviewed and cleaned up again.

I may not be in a management role but it’s obvious to me that taking the time to build that user interface and implement the necessary business logic to help us match the data, validate the data and update the database in as few click as possible is the better option here.

And given what I know about the future plans of the company with regard to this project, the current way of doing things is just not scalable. Oh, I raised the point a lot of times but I’m always overwritten. Well, mostly.

This is what I mean by meeting short goal or minimising long term pain. There are many other examples that I could think of but this is the clearest one to me.

In conclusion, always strive for the mid-point between meeting short term goal and minimising long term pain by evaluating as much data point as possible before making a decision. It’s especially the case if it’s something that affects your persona life and you don’t have a higher up to answer to. And depending on the culture of where you live and work, you can either fight to the death for what you believe to be the right course, find a compromise or swallow your pride and let the other party win. In an asian context like the one in Singapore, you are better off choosing the last approach if you are an employee at the bottom of the ladder or an underling. Or management will make your life miserable.