Geek Culture
Published in

Geek Culture

How to Start Your Programming Journey

Photo by Clément H on Unsplash


Starting to learn programming is an overwhelming task, due to the numerous amount of languages and technologies nowadays. So, how to start learning to program? I consider this to be the one million dollar question!

I always wanted to learn how to program from the internet years ago. But I failed in all my approaches. I thought that maybe I am not expected to be a programmer. Later on, I attended a computer science school and studied programming there. Surprisingly, I found programming to be so easy and exciting if you followed the right path.

What does programming mean?

The meaning of programming can be vague for many people and it may confuse others. First, we need to know what does programming means? It is simply to give instructions to the computer to do a certain task, and we use a programming language so the computer can understand what do we want exactly.

“Java” is an example of a programming language

A computer can solve any problem, you just have to know how to give it the right instructions. It can be a simple calculator program, or it can be a mobile application that solves your problem. For instance, before whenever I go to bed I always set my alarm at a full sleep cycle (One sleep cycle = 90 minutes) I was calculating when is the best time to wake up on my head. Then, I decided to build a mobile application that can solve this issue for me. And I started actually to code it and it worked!

My android application “Smart Alarm”

As you can see the program calculates when is the best time to wake up without interrupting sleep cycles. Now whenever I go to bed I just open my application and choose the time and the alarm will be set automatically. No more calculations inside my head, problem is solved :)

Applications of programming

In our day and age, programming is used in many areas and we cannot live without it. I will mention the important paths you can take as a programmer. And it is important to know these paths so you can decide which programming language to start with.

It is not the subject of this article to describe each path, but I will mention them and you can search on the internet for more information. The trendy tracks nowadays are web developer, mobile application developer, game developer, data scientist, machine learning and artificial intelligence. If any field catches your attention go and search for more information, it may be your future career!

Photo by Jason Strull on Unsplash

Why learning programming in the first place?

This is a very important point, you have to ask yourself why do you want to learn programming in the first place. If you are motivated now it is fine, but believe me, this motivation will not last forever! You should have a real reason behind your learning.

I believe that having a project idea in your mind will give you the push to keep learning. And this type of motivation will last until you complete your project. In my case, I tried to learn about mobile development two times. The first time, I could not continue learning because I was learning just for the sake of learning. But the second time I started learning with a project idea in my head. Whenever I feel lack motivated I remember my project which gives me a huge boost to continue learning.

Therefore, my golden tip for you is to have a project idea in your mind before start your learning. That will keep you motivated along this journey.

What to expect when you first start learning?

As I have mentioned in the introduction. When I first wanted to learn to program I could not continue. And the main reason for that is that I had very high expectations. I thought after only one week I can start building my own website or application!

It turned out that you have to learn the basics of programming first. To be honest with you, learning the principles and basics of programming is not the most fun thing to do. In addition, you may struggle at the beginning. But it is important to build a strong programming foundation. Once you master the fundamentals you can start to learn whatever path you want.

Best approach to learn programming

Choosing your learning approach will determine the success or failure of your journey. In my opinion, I think you should learn the basics of programming and how can you start thinking like a programmer. Problem-solving is a key skill for programmers and it will be developed with practice only.

You can start learning the basics with either Java or Python. You should know that Java is harder to learn than Python that is why some people suggest learning it first. Because if you learn the hardest first, you can learn anything afterward. In the end, it is your call both of them are great choices as a first step.

After you master the basics of programming now you can start to learn any of the paths mentioned above, such as mobile development or web development.


Remember that anyone can be a programmer especially with the abundance of tutorials online. Also, you can find many valuable courses on Udemy which is a paid online courses platform.

My last advice is to practice as much as possible, you cannot improve in programming just by reading, you have to work yourself and write code as much as possible.

Lastly, never stop learning my dear friend.



A new tech publication by Start it up (

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
Ahmad Al-Ghamdi

Programming is my passion. Self-improvement is my hobby. Trying to be better each day is my goal.