TUTORIALAPR 04, 2026

The Fundamental Guide to Programming

The Fundamental Guide to Programming

Learning programming is not just about memorizing syntax, but training the way you think. Therefore, before writing complex codes, it is extremely important to understand the foundation first.

In this material, we will dissect the 5 fundamental concepts you must master so you won't get confused when encountering programming languages like JavaScript, Python, or PHP. Let's start from the roots!

1. Algorithms

A systematic way of thinking to solve problems step by step. You must understand the Problem first before determining the Solution.

Example: Problem = Hungry.

  1. Go to the kitchen.
  2. Grab a plate.
  3. Eat.

2. Control Flow

The logic that manages the execution steps in an algorithm. This determines "when" an action is taken based on certain conditions.

Logic Example:

  1. Go to the kitchen.
  2. Check condition: Is there any food?
    • IF (yes): Eat.
    • ELSE (no): Cook/Buy first.

3. Data Types & Data Structures

Data is what we process. So the computer doesn't get confused, we label its type.

A. Data Types (Units)

  1. String: Characters or text. Example: 'Heri Riyanto'
  2. Integer: Whole numbers. Example: 13
  3. Float: Decimal numbers. Example: 22.5
  4. Boolean: Absolute logical value. It only has two values: True or False.

B. Data Structures (Collections)

  1. Array: A collection of data arranged by order (index). Example: ['NodeJS', 'React']
  2. Object: A collection of data arranged by label (Key-Value). Example: {name: 'Heri', role: 'Dev'}

4. Abstraction

The process of simplifying something complicated. You don't need to know how the machine works inside a function, you just need to know how to use it. This makes our code Reusable.


5. Programming Paradigms

This is the "Playstyle" or philosophy of how we write code.

  1. Imperative/Procedural: Code is written sequentially like a recipe. You give explicitly step-by-step instructions to the computer.
  2. Functional: Focuses on pure functions. Data goes into a function, is processed, and new data comes out without altering the original data.
  3. OOP (Object-Oriented Programming): Code is structured based on "Objects" that have characteristics (Properties) and capabilities (Methods). It's like modeling real-world objects into code.