← Back to Programming

Programming: Write software people can use

Programming is engineering communication that a very literal-minded machine also executes.

Machines are literal

The interpreter does what you wrote, not what you meant. Debugging is the craft of closing that gap, and good style exists to keep the gap small.

Three languages, one craft

Python for clarity, Java for structure, C++ for control. The craft transfers: variables, control flow, functions, objects, and handling what can go wrong.

What this course teaches

Nine units from Python basics through projects, Java, C++, object-oriented design, code quality, data handling, and shipping real software.

Flashcard

x = f(y)

Function as abstraction

Name an operation once, call it everywhere: the first act of design a programmer learns.

Check your understanding

A loop that never updates its condition variable will: