4 step program to solve programming issues

As programmers we know all to well the frustration that can come from looking at your code and wondering why it’s not performing as it should. Here are the five steps I have been using to overcome and get unstuck from programming dilimmas. These are all things that we all most likely know. However, it is still good to review and keep in mind for when the inevitable problems come our way.

1.) Optimal stopping point:

If your looking at your code and guessing your way through things… your wasting time. You have reached your optimal stopping point. At this time its most beneficial to walk away for a moment. Take a walk, take a breather, do some pushups etc... About 15 minutes usually works pretty well. Even Einstein would go on walks and said it helped him sort through his thoughts. I’m no Einstein but this has helped immensely. Often times, while I'm out, the answer will come to me or an idea to correct the issue comes to mind.

2.) Make a plan:

I make either a plan in notes or a mental plan to move through my objectives. I find that having written plans and objectives for the day helps stay on task and accomplish a goal. Plans don’t always go the way you would like. Sometimes it’s beneficial to burn the plan and make a new plan. Making a plan also has the added benefit of anticipating problems that may arise and being better prepared to handle them. If you don’t plan, plan to fail.

3.) Ask for help:

Typically, if I am to the point that I cannot figure something out either by searching for the specific answer or by doing research on the topic to understand it more completely, it’s time to ask for help. I really dislike asking for anything. It’s difficult to admit that you do not understand, or can’t figure it out. But that’s the only way to learn. Ego is the enemy.

4.) Get comfortable with becoming uncomfortable:

There’s a fable of Aesop that fits our situation well:

A wild boar was sharpening his tusks against a tree when a fox came by and asked him why he was doing this. ‘I don’t see the reason,’ remarked the fox, ‘there are neither hunters nor hounds in sight; in fact right now I can’t see any threat at all.’ The boar replied, ‘True, but when danger does arise, I’ll have other things on my mind than sharpening my weapons.’

We don’t know what we will encounter when we take on new projects. What we do know is that programming is ever moving and changing. We know that we will have to keep challenging ourselves. When the day comes that we have to take on those even greater tasks (It is inevitable) we can do so with a clear mind. Ready to overcome.

The lesson is to no suprise… learn often, learn deeply. Prepare for war when there is peace as it were. Embrace the things you have a hard time understanding with a positive attitude. By doing this in your free time you can more easily navigate difficult problems when they do arise. Embrace the uncomfortable now to build your confidence and willpower later.

Well that’s it! Let me know in the comments below what works for you!

ios dev, graphic designer, UI/UX, Photographer

Love podcasts or audiobooks? Learn on the go with our new app.

Recommended from Medium

Apache Kafka micro-batch Consumer in Python

Take Command of your PagerDuty Incident Response

The difference between width: auto; and width: 100%;

ISI Mark Registration Procedure | How to Get ISI Certification [A Step-by-Step Guide]

Basically Sprint

3 ways to use Angular HTTP Interceptors

How to install Windows 10 on a (IBM) Lenovo ThinkPad X1 Carbon Gen9

Organizing A Great Hackathon

Get the Medium app

A button that says 'Download on the App Store', and if clicked it will lead you to the iOS App store
A button that says 'Get it on, Google Play', and if clicked it will lead you to the Google Play store
Ian Value

Ian Value

ios dev, graphic designer, UI/UX, Photographer

More from Medium

Automatically set user availability while assigning leads in Dynamics 365 CRM

Libraries and Framework..!

Light-weight components/tools used in SPFx development

NECTA API

NECTA API logo