We are in the TOP 10 Great Place to Work CERTIFIED™ Take a look here!

DIY: A self-conscious approach to become a natural problem solver

What are the chances of a group of people surviving an extreme life situation? Definitely a contextual question. Multiple things to consider, for sure. But in my case, the first thing that I’m hesitant about is: Are there any engineers among the group?

I don’t mean to sound braggy, as I myself am an engineer. I admit the industry has built a slightly overrated conception towards us. But I truly consider myself -and most engineers I know– as natural problem solvers. And that is a skill you need -or should look for if you want to survive- in your close circle.

But, what does it mean? Briefly, we are trained to make life simpler. And simpler doesn’t mean it’s problemless. It actually means it’s full of problems and challenging situations, but we are ready to solve them all or try to.

Why do I feel so confident to generalize this problem-solving skill for most engineers? Because we come from a common super powerful nucleus that explains it all: Engineering itself.

This science has existed since ancient times, when humans devised inventions such as the wedge, wheel and pulley, etc. Engineering has built the world. That said, engineers built a lot of problems too. So, who are the best candidates to solve the problems we created?

The word engine itself is of even older origin, deriving from the Latin ingenium, meaning “innate quality, especially mental power, hence a clever invention”. Sounds pretty cool, right? I adapted this concept to simply the problem solver skill -or problem solvers- because it sounds more natural and accessible. As all sciences are based on methods, there is a formulae that can be learnt to incorporate this particular skill in your life.

Despite having referenced all of my points towards engineers, if you scroll up to the attractive title of my post it says: Do It Yourself. No, you don’t need to be an engineer to solve problems. If only people knew…

I have studied a 5 year lasting career where a method was unconsciously applied to me during my dreadful student times. Why didn’t I quit before if those times were so dreadful? Because I was fully conscious that something inside me was changing through those years. And it felt so good. And it was because of The Method. I wasn’t aware I was applying The Method at work and in my life until I got my degree and started working.

Today, I can resume The Method in 6 different phases so that you don’t have to go to college to learn this the hard way. You’re welcome.

First phase: Keep calm

Breathe. Cut the waterfall of chaotic thoughts falling inside your mind. All problems have solutions. From how to dry your clothes under the rain to the famous NP-hard problems. And the best part is: you probably don’t need to be a genius to do so.

Trying to solve complex problems while in a stressful state is nearly impossible. With meditation you can relax your body and bring your hormones into balance. It is proven that your levels of Cortisol, Norepinephrine and Adrenaline return to normal and you can breathe easily, think clearly and tackle any complex problem you are facing with a focused, clear mind.

Second phase: Understand the problem

Understanding the problem is half the solution -actually the most important half-.

“We fail more often because we solve the wrong problem than because we get the wrong solution to the right problem.” — Russell L. Ackoff, pioneer in the field of systems thinking.

In Software Engineering, before we can code the “Hello World!” program, we are taught a strategy that prepares us to understand what is going on. It is called Divide and Conquer.

Technically, it is an algorithm design paradigm that consists of breaking down into two or more sub-problems of the same or related type until these become simple enough to be solved directly.

In a nutshell: specific sub-problems make the big problem look weaker. Hence, you become stronger. So, everything is simpler.

Let’s take the paradigm to a real life example: If you want to divide a long loaf of bread in 8 or 16 equal pieces, generally people cut it into two equal halves first and then cut each half into two equal halves again, repeating the process until you get as many pieces as you want — 8, 16, 32, or whatever. Almost nobody tries to divide the loaf into 8 pieces all at once — people can guess halves much better than eighths.

“Everything Should Be Made as Simple as Possible, But Not Simpler” — Albert Einstein.

An excellent way of visualizing the essence of the problem is to write down the Problem Statement. There are multiple techniques for writing a problem statement.

Personally, I like the approach based on The Four Ws — who, what, where, and why.

What makes a good problem statement? It is human-centered and user-focused. Keep it broad; a good problem statement leaves room for innovation and creative freedom. Make it manageable; at the same time, your problem statement should guide you and provide direction.

Third phase: Consider all possibilities

In our industry, there is never one “right” answer. This is our main slogan.

Here we must be as creative as possible but always considering the problem statement. Even the most surrealist ideas can be kickstarters to an adequate solution.

In Software Engineering there is a method -not as cool as this one- to solve problems called Design Thinking.

In the Ideation phase there is a technique called Diverge/Converge. In the divergent phase, we try to broaden as much as we can. By doing so, we are breaking the limits of our squared minds. This is a good exercise to tell our brains we might need to do some external research. From Googling stuff to attending a conference, the answer could be anywhere. Even in your memories. Even in your university’s handwritten old school notebooks you built a bonfire with.

Whoever believes engineers aren’t creative know nothing.

Fourth phase: First approach

Now we understand the problem, our mind is settled and we have made a lot of brainstorming. In this phase, we will evaluate the context and the tools we have or need to obtain and evaluate which idea(s) fit in this scenario.

Now, give it a shot. But never assume the first shot is the final shot.

Patience; trial and error has shown us the best inventions were born this way. Do not get irritated, remember there is never one “right” answer.

Fifth phase: N-approach

Probably the first shot didn’t work as expected and now you are smiling reading this, huh?. Two scenarios: whether you feel the solution is near but not complete, or the solution is far, far away. In Neverland itself. And you are not smiling.

If you are under the first scenario, keep that idea in mind. Solidify the root of your solution but think of the possible missing pieces. The key here is to gain as much focus as possible, but not waste too much time (the concept of time is relative itself, and to each problem. You need to assess this by yourself, sorry bro). By sticking to an idea for too long, our brain gets trapped in a solitary cell; we start getting frustrated, irritated, and in this state the mind can’t work properly.

But, if you feel the solution is indeed in Neverland: never panic. Forget about the old solutions you have tried and start again. Go back to the problem statement and your brainstorming and connect different ideas. “There will always be a second chance for thee, who wishes to try and not give up” -said by me-.

Sixth phase: Share the problem with someone else

If you are sure you’ve tried everything under your control, maybe it’s time to get more perspective. We, as human beings, are all different, including our brains and way of solving stuff.

I remember back in 2012 in my Intro to Programming classroom a certain task was assigned to everyone. It had 10 specific requirements. Simple enough for all of us to code it by ourselves. I did my work and got stuck at a certain point. So, as this phase suggests, I asked for help after trying everything I could do.

When a colleague showed me his code I went pale. His program did the same stuff, same language, same requirements, we were in the same classroom (teacher, notes, exercises in class). Yet, he managed to attack the problem in a totally different way than I did.

Then, I showed him my code without much expectation as my solution was way too different. He overviewed it and in 10 mins suggested an idea, and we ended up with the solution by thinking together. It was the simplest and stupidest thing ever.

There, my world changed. I noticed a life-changing key aspect for problem solving: when you own the problem, you tend to over-complicate things or give up if you can’t find your way of solving it. But an external perspective, without carrying all your stress, ideas, mistakes and fears, can think with a fresh mindset and start The Method in phase one: with a clear mind.

You may be thinking: why ask for help in the 6th phase? Well, of course you could ask for help whenever you want or need, but this approach will build in you something that is more valuable than anything: confidence.

And “Ta-daaaa”; confidence is what makes you a genuine problem solver. If you solved that horrible problem that your teacher who hated you decided to put in your exam on your own, then you will believe you are super capable of solving your next exercise. But, if you got your degree by copying your compassionate genius classmate, you won’t genuinely feel proud of yourself -or at least shouldn’t-. And, when your classmate eventually isn’t your classmate anymore, how will you solve your own problems?

Try not to reach others to solve the hard stuff for you and live the simple way. Instead, ask them for help to think with you. And there, you still own the problem even though you’ve shared it.

Throughout all phases, there are two factors you need to maintain, work on and hold on to if you want The Method to work.

First item: Believe you are capable of solving problems

The main ingredient is somehow cliche, but it’s real and will make you invincible: believing you can do this.

If you don’t have enough confidence, try to picture yourself solving any situation in the past –could be educational or personal– and remember how scared you were. Then, think of the outcome and remember how proud you were.

Second item: Training

As with most things in life, practice is the path to master something. Problems are present every single day. And to dominate any field, you need to practice. And fail, and try again. If you read the newspaper, try solving those Sudokus in the back page. Even helping your 4 year old kid doing his homework can train your brain.

When I first got into college, my algorithmic brain was asleep as I had little logical training during my childhood. All those who had chosen a scientific baccalaureate got the best grades, and me, who dedicated my time to the arts felt like I didn’t belong.

One day I asked myself: “What makes me different from the rest?” The answer was training. So, in order to train a logical mind, I had to teach myself how to think that way. I spent millions of hours in tutoring after college. Still, I failed my exams. There was a particular course I lost and I decided to leave it in stand by because I got way too frustrated.

5 years later, I was about to get my degree and I had this course pending. I had exactly the same physics knowledge I did 5 years prior and had never touched a book in between, but my mind was fully trained. Without any tutoring or external help, I finished this course with a total score of 98/100. Of course I prepared some physics exercises, but I had been training my problem solving skills through those 5 years with all kinds of problems: algorithmic, mathematical, logical, even real life ones. And I knew physics problems were problems too. My attitude, confidence and way of thinking were different and I finally became an Engineer.

Not only engineers can be problem solvers. As with most things in life, you can become whatever you want to be. But most of us are not born this way. So in order to change something you need to be conscious that there will be a million failures before dominating this art. And it is natural. And failing is what makes us deeply reprogram our untrained brains.

With The Method -which, of course, is something I came up with-, by applying it in cycles, I guarantee you that your way of tackling problems will change. You will stop fearing them, and start challenging them. You will be proud of yourself and dive into your next demanding scenario. And it will be exciting. And you will fail, but you will eventually understand you are learning by failing. And you will start enjoying it.

As all happy endings, you will have gained a skill that no one can take you away ever and it is the way of standing in front of any problem (and life itself). Or more straightforward, becoming a natural problem solver.

In LoopStudio we love to solve problems and create applications and software, and we are always looking for people who know how to overcome them.