The Daunting Shackles

It is very strange, borderline depressing the feeling you get when a million and one ideas are flowing in your head but you’re not able to develop a single one of them. A hint of achievement and a fake sense of accomplishment accompany the act of jotting down these ideas on a notebook of some sort, drawing a few diagrams and laying it all to eternal hibernation. None seem so clear to drive you to pursue them yet all have a certain flare of potential that drives you mad, if not, insane.

You start wondering, why not? Why am I not able to effectively work on any of them? Why am I not able to pursue what shakes my intellect and drives a mesmerizing excitement in my head?

The answers start flowing in… None satisfactory but all so real. Loans, mortgage, family, financial stability, the economy, time, pressure of the day job, deadlines, deliverables, power drain, few elements of reality among many, many other uncontrollable barriers. You lay down that notebook with a strong feeling of anxiety and despair. The ‘daunting shackles of reality’ have bitten you again.

Quite often, an idea seems so good that you forcibly spare a few hours of what’s left of your evenings to actively engage in doing some research of what’s out there, developing a proof of concept or a rushed prototype. Sometimes, you develop a feeling of: ‘fuck if I care’, driving you to start tackling the business aspect of your idea, looking for some empirical evidence, with a shred of hope that it would be strong enough for you to let go of what’s holding you back and embark on the journey of the unknown. Yet again, the crazier the idea the smaller the needle becomes, and ever so larger the haystack becomes.

Many times, you wonder, how did my life reach this uncontrollable state? Where is that ‘freedom’ that I protected for so many years? When did it, disappear? When have I become so dependent on so many things that I cannot let go of? Why the hell am I so helpless in the attempt to pursue what ‘I care about’? Of course, the answers are not to be found because all the reasons that drove the decision making process are long gone, vanished. Yet, you’re stuck battling the consequences.

Have I crossed the threshold of no return? Will I ever make it? Will I ever be able to develop the chance of tinkering and doing what I enjoy, irrespective of how good am I at it? It’s ironic how as a kid, we used to believe that adulthood equated freedom. In some sense, that statement is far from the truth, yet so close.

With all that’s said and done, I used to joke with a colleague that ‘the only way up is down’. Funny how, now, I feel that this joke seems to be the only logical path to pursue.

P.S: I’m not a fan of posts reflecting helplessness and a victimization aspect, the purpose of this post is to describe a commonly shared, but not so spoken of, state of mind.

The Ultimate Creativity Test: Data Entry!

“The Nightmare” All hell has broken loose…

Let’s go right into the core of the discussion. During the recruitment phase many developers look great on paper, they are impressive during the interview, they excel in the programming challenges or exercises, seem very qualified etc…

Yet, there’s this period of time where a project really hits the point of no return: deadline was communicated to the client, lots of features are yet to be added, bugs are popping up right and left, the 24 hours a day seem no longer enough, bringing more resources is not a viable option because of the overhead required to assign tasks to them, emails, emails and more emails, management is breathing on your neck, status reports, in short all hell has broken loose, let’s call it “The Nightmare”. And right at the bottom of that list or backlog, there’s this tiny underestimated data entry task that you cannot assign to your main developers because they have much more important things to do, YET this data is vital to the project and to the end users eventually.

That pesky data entry task

The reason I gave the above (real life) example is to say, that during “The Nightmare” event, creativity and resourcefulness in solving problems in an efficient way become the essence of your lifeline. At that point in time, with barely enough stamina to write decent code, taking enough time to devise a proper plan to handle all the tasks on your task-list, especially the underestimated ones, is not an option.

Usually, the stupidest method to handle this data entry task is calling the most junior developer you have on the team and brainwash him into thinking that finishing it is what’s going to land Apollo 13 on the moon.

Hooray… Problem solved. NOPE

First day passes, the junior developer is blazing fast, 50 records are in the database already! Wow, this is going faster than anticipated!

Not so fast, the next day the number drops by 20%, the day after 60% and keeps on dropping until that developer quits, and if (s)he doesn’t, (s)he will be so demotivated and then we have a new problem.

Theoretical example of the deterioration of the speed of data entry per day
Theoretical example of the deterioration of the speed of data entry per day

 

 

 

 

 

 

 

The real life scenario might not be so dramatic, other more “brilliant” solutions will be devised such as bringing another junior developer to do the task! Now they can alternate whenever one of them feels bad! (*Sarcasm)

Let’s get back on track

I’ve probably taken the discussion way too far to emphasize the importance of the following:

  1. In the Nightmare situation we tend to forget that one of the core functions of a computer and programming is to replace human beings in executing daunting tasks more efficiently.
  2. We also wrongly believe that writing a script or a small program to execute the data entry is not cost efficient and doing it manually is.
  3. We overestimate the complexity of analyzing the data and extracting patterns and falsely accuse the data to be random and dismiss any attempt to extract a repetitive model.

Now the role of creativity and resourcefulness shines. For every belittled developer, who took a data entry task and transformed it into a fun data analysis challenge, Kudos. The appraisal is not for rediscovering the obvious (that computers are there to alleviate us from boring tasks) but for the efficient use of their time.

The Creativity Test

With the above said, I strongly believe that a data entry challenge to developers who are undergoing an interview is a good indicator of resourcefulness and creativity. Throw a daunting task at your potential developer employee and see how brilliantly they figure out a solution for it. The efficiency of the solution is highly correlated with the ingenuity of the mind behind it (this is simply a real life observation).

No matter how theoretically competent a developer is, no matter how much experience he has on paper, no matter how many large scale projects they have tackled, if they did not master the art of leveraging their knowledge especially when “the shit hits the fan”, all the information they possess is simply a hidden/locked up treasure.

Conclusion

A lot of theories already debate the boosting elements of creativity, such as locking down the resources one can use for the execution, zoning out etc… But these are topics of later discussions. The beauty of data entry tests is that they can be morphed to discover mesmerizing treasures or malicious booby-traps.