Programming Fundamentals
Programming fundamentals are the core building blocks used to write any computer program, in any language: variables that hold data, control flow that decides what runs and when, and functions that break logic into reusable pieces. This topic covers that shared vocabulary and mental model so you can read and write code before specializing in one language or paradigm.
itSoftware engineering | OpenSkills.info
Intro
Programming Fundamentals
Programming is writing an exact sequence of instructions for a computer to carry out. The computer does exactly what the instructions say, not what you meant — so the skill is learning to think in steps precise enough that a machine can follow them. Every language, from C to Python to JavaScript, gives you the same handful of building blocks to write those steps: places to store data, ways to make decisions, ways to repeat work, and ways to package logic so you can reuse it.
This course is not a language course. It uses short examples in a common syntax style to make ideas concrete, but the concepts — variables, control flow, functions, and basic data structures — hold across nearly every language you will meet. It is also not a paradigm course, an algorithms course, or a testing course. Object-oriented, functional, and declarative programming are different ways of organizing these same building blocks, and each has its own course. Algorithm design and formal testing practice are large enough topics to be their own courses too. Here you get the mechanics everything else builds on.
Variables: names bound to values
A variable is a name that refers to a value stored in memory. Assignment binds a name to a value; in most languages this is written with =. Using a name that was never assigned is an error — the program has nothing to look up.
count = 0
count = count + 1
The second line is not algebra. It reads the current value of count, adds one, and rebinds the name count to that new value. Assignment is an action, not a claim of equality.
Multiple names can be assigned at once from a matching set of values on the right-hand side. The right-hand side is fully evaluated first, then all the names are bound together — which is what makes swapping two variables' values possible without a temporary variable:
This section is part of the paid course.
See pricing to subscribe, or log in if you already have access.
