What Is Programming?

People talk about “programming” all the time, but what does it actually mean? At its core, programming is the process of giving a computer a set of instructions to follow to have an action done or obtain a response.

Core Concepts

Regardless of the programming language, certain concepts are foundational:

  • Variables store data that your program can use and manipulate.

  • Functions are reusable blocks of code that perform specific tasks.

  • Conditionals (like if and else) allow your program to make decisions.

  • Constant store fixed value for the program.

Once you understand these fundamentals, learning new programming languages becomes easier.

How Computers Understand Code

Computers don’t understand human languages — they only understand binary (1s and 0s). When you write code, it gets translated into this binary format by a compiler or an interpreter. These tools convert high-level code into machine code so your computer can execute it.

The Trade-Offs in Programming

Writing code often involves balancing different priorities:

  • Should the code run as fast as possible?

  • Should it use less memory?

  • Should it be easier for others to read and maintain?

There is rarely a perfect answer. Good programming often means finding the right trade-off for your specific use case.

High-Level vs. Low-Level Languages

When you’re new to coding, all programming languages can feel the same. Over time, you’ll notice the differences:

  • High-level languages like Python handle many details for you. They’re easier to write and read.

  • Low-level languages like C give you more control, but you need to manage more complexity.

Understanding both helps you write better, more efficient code and gives you insight into how things work at a deeper level.

Programming Is About Problem-Solving

Programming isn’t about writing code — it’s about solving problems. The most effective developers:

  • Understand the user’s needs

  • Break complex problems into smaller, manageable tasks

  • Communicate clearly and explain technical topics in simple terms

Starting My Journey with Go

I’m just getting started with programming and chose Go (Golang) as my first programming language. I will be documenting my journey — including the wins and mistakes on Medium. Next I will set up GitHub and learn Git.

If you’re also learning, or if you have been doing this for a while, I will be glad to hear from you.

Thank you.

You can connect with me on X: https://x.com/mr_wairimu