Lifehack logo

How someone think just like a programmer thinks.

The problems of problem solving.

By Mohammad ArifPublished 5 years ago 5 min read

If you have some interest in programming, you may have read this sentence before:

"Everybody in our country needs to learn computer programming, because this tells you to think." ( Steve Jobs )

You may also be wondering about" to think like a programmer "what does it mean and how did you do that? ?

In essence, it's all about solving the problem more effectively.

In this article, i want to teach you how to do it.

Eventually you will know exactly what steps you need to take to become a better problem solver.

Let's start

To solve a problem is a meta-skill.

All of us have some type of problems. Sometimes, how we handle it, um ... very random. Unless we have a good system, this might be your way to fix it (this is what I did when I start coding).

A. Try a solution to the problem.

B. Try another one if it does not work.

C. If this does not work, then again apply step 2 until it succeeds.

Listen! you may succeed, but this is the very bad way for problem solving. It's a big waste of time.

The best methods include:

A. to have a framework.

B. to practice it.

Framework:

To find out the best framework, I see the advice in Tim Ferriss' book "4 Hours of Chef" on learning. This enabled me to interview two very impressive people: C. Jordan Ball (first or second place among Coderbyte's 65,000+ users) and V. Anton Spraul ("Think Like a Programmer")

I asked the similar question from them, guess what? Their answers are very similar!

very soon you will know about them too.

Note:

Do not think that they did that in the similar way. Everyone method is different. But if you begin with some strategy that we all agree on, you will go faster and faster.

"The biggest mistake I see as new programmers is to focus on learning grammar, rather than learning how to solve problems." (V. Anton Sprull)

Now, what to do when we encounter a problem?

These are the steps to follow:

A. Understanding.

First of all you should know what exactly is asked?. Most problems are difficult because we do not understand them (so this is the first step). How do you know that you understood the problem? When we are able to explain it in English (plain).

Do you memorize that you got stuck in a problem, you started to explain that, and immediately found a logical hole that you had not yet seen? Much more programmers knew about this feeling.

So you have to write down your question, draw a diagram or tell someone about it (or something ... several people use a rubber.

"If you can not explain something in simple terms, you do not understand it." - Richard Feynman

B. Planning:

Do not solve the problem directly without a plan (and hope you can mislead it in some way). Plan your solution!

If you can not write down the exact steps, nothing will help. In programming, this means that you do not have to start hacking right away. Give some time to your brain for analyzing the problem and for processing that information.

Answer the following questions to get a good plan:

"Here is the input X, what are the steps required to take your output Y?"

Note: programmers have an excellent tool to help them solve this problem ...

C. DIVISION:

Please take note. It is the most important step.

Never ever try to solve a big problem. You will cry.

Instead, divide it into sub-problems. These sub-problems are easy to solve.

After that you can easily solve the sub problem one by one. Start with the simplest. The simplest meaning is that you know the answer (or closer to it).

After that, the simplest meaning is that this sub-problem is solved without relying on other solved problems. Once you have solved each sub-problem, link the dots.

Linking all "sub-solutions" will provide you with the solution to the Big problem. This technology is the cornerstone of solving the problem. Remember this.

D. Stucking?

At the moment you might be sitting there thinking "Hey, ... that's cool, but what should i do if i can't find solution to the sub problem?"

Inhale deeply first. Secondly, it is fair.

But do not worry, friend. Everyone will encounter this situation! The difference is that the best programmers / problem solvers are more interested in mistakes. If you suffer a serious injury, you can try the following three things:

1. Debug:

Complete your solution step by step and try to find out where you went wrong. Programmers call it debugging (this is actually a debugger does).

"The art of debugging is figuring out what you really want your program to do, not what you think you want it to do."Andrew Singer.

2. Reassess

: Move a step back. Look at the problem from a different angle. Is there something that can be incorporated into a more general method?

Note: Another way to reevaluate is to start over. Wipe everything off and start again with a fresh way. Seriously, You will be amazed at how effective it is.

3. Researching:

Oh, good Google. You have read this right. Does't matter what problem you are experiencing, someone may have solved it. Find that solution /person. In fact, even if you solve the problem, do it! (You will learn a lot from others' solutions).

E. PRACTICING:

Do not expect to be amazing in just a week. If you want to be a good problem solver, you have to solve a lot of problems!

practice again and again and again. You realize that 'using the <insert concept here> can easily solve this problem' is only a matter of time. you should know how to practice? There are many options!

Chess puzzles, math problems, Sudoku, Go, Monopoly, video games, crypto cat, blah ... blah ... blah ... The common thing among successful persons is that they are accustomed to 'micro-problem solving'. Peter Thiel, for example, plays chess and Elon Musk plays video games.

Does that mean you only have to play video games?

But what exactly is a video game? Yes, solve the problem! So what you need to do is find an outlet for practice. Something you can solve a lot of microscopic problems with (ideally, something you like).

For example, I like coding challenges.

All problems have similar patterns.

Conclusion

Now you know more clearly what it means to 'think like a programmer'.

You also know that problem solving is an incredible development skill (meta skill).

As if that's not enough, note that you also know how to practice problem-solving skills! ... Cool, isn 't it?

Finally, I wish you all a lot of trouble. You have read this right. Now at least you know how to fix it! (In addition, you will learn that you will improve with each solution).

Best of luck

how to

About the Creator

Mohammad Arif

I am health professional and freelance writer, who have 4 years of experience in the field of freelance writing. I also offer paraphrasing/rewriting services to my clients.I love to work on subjects like HEALTH & fitness, fashion, travel.

Reader insights

Be the first to share your insights about this piece.

How does it work?

Add your insights

Comments

There are no comments for this story

Be the first to respond and start the conversation.

Sign in to comment

    Find us on social media

    Miscellaneous links

    • Explore
    • Contact
    • Privacy Policy
    • Terms of Use
    • Support

    © 2026 Creatd, Inc. All Rights Reserved.