Plankalkül was the first programming language, created in 1945 by Konrad Zuse
Plankalkül (German for "plan calculus") was written by Konrad Zuse, a German engineer, between 1943 and 1945. He designed it to instruct the Z3, an early electromechanical computer, to solve mathematical problems. Zuse never published his work during his lifetime, so the world did not know about Plankalkül until the 1950s, long after other languages had already emerged.
Because Zuse's work remained unknown for years, most computing history credits FORTRAN (1957) as the first widely used programming language. FORTRAN was created by IBM and became the standard for scientific computing. The distinction matters: Plankalkül was technically first, but FORTRAN was first to reach the public and shape how programmers actually worked.
Both languages solved the same problem: before them, programmers had to write instructions in machine code or assembly language — long strings of numbers and symbols that were exhausting to write and nearly impossible to debug. A programming language let people write instructions in something closer to human logic, and a compiler would translate those instructions into machine code the computer could run.
Key Takeaways
- Plankalkül, created by Konrad Zuse in 1945, was the first programming language ever written, though it remained unknown outside Germany for years.
- FORTRAN, released by IBM in 1957, became the first programming language widely used in industry and is often called the first in popular history.
- Both languages replaced machine code and assembly language by letting programmers write instructions in a format closer to mathematics and logic.
- The invention of programming languages made computers practical for real work instead of just theoretical calculation.
Why Plankalkül stayed hidden for so long
Zuse developed Plankalkël in Nazi Germany during World War II. After the war ended, Germany was divided and occupied. Zuse's papers and research were scattered, and he spent years in a Soviet prisoner-of-war camp. By the time he was released and could share his work, the computing world had already moved on.
American and British researchers, unaware of Zuse's language, were developing their own systems. FORTRAN and other languages emerged from this independent work. Zuse's contribution was eventually recognized by historians, but by then FORTRAN had already set the standard for how programming languages should work.
How FORTRAN became the standard instead
FORTRAN stands for "Formula Translation." IBM created it to let scientists and engineers write mathematical formulas directly into a computer without learning machine code. The first FORTRAN compiler was released in 1957, and it worked well enough that companies and universities adopted it when ready.
FORTRAN had a huge advantage: IBM was the dominant computer manufacturer, and FORTRAN came with their machines. Universities taught it. Textbooks were written for it. By the 1960s, FORTRAN was the language of choice for physics, engineering, and mathematics. It remained in heavy use for decades — and still is, in some places.
The speed of FORTRAN code also mattered. Early computers were slow and expensive, so a language that produced fast machine code was worth learning. FORTRAN compilers were good at this, which gave them an edge over competitors.
What made these early languages different from what came after
Plankalkül and FORTRAN were designed for a specific job: mathematical calculation. They had few features by modern standards. There were no graphics, no networking, no way to build user interfaces. A FORTRAN program was a list of instructions that read numbers, did math, and printed results.
Later languages like ALGOL (1958), LISP (1958), and COBOL (1959) added new ideas — ways to organize code into blocks, ways to work with symbols instead of just numbers, ways to handle business data instead of just equations. Each language was built for a different kind of problem.
What all of them inherited from Plankalkül and FORTRAN was the basic idea: let programmers write in a human-readable form, then translate it automatically into machine code. That principle has not changed in seventy years.
The gap between the first language and the first practical one
Plankalkül was theoretically complete — Zuse designed it to handle loops, conditionals, and variables, all the building blocks of modern programming. But it was never actually used to run a program on a computer. It existed only on paper and in Zuse's mind.
FORTRAN, by contrast, was built to run on real machines and solve real problems. The first FORTRAN program compiled and executed successfully in 1957. That difference — between a language designed in theory and one that actually worked in practice — is why FORTRAN gets the credit in most histories.
This pattern repeated throughout computing history: the first version of something is often not the one that survives. The version that works, that people can use, that solves a real problem at the right time — that is the one that shapes the future.
Why the invention of programming languages mattered so much
Before programming languages, using a computer meant physically rewiring it or punching holes in cards in a specific pattern. A single program could take weeks to set up. Mistakes were catastrophic — you had to start over from the beginning.
A programming language let you write a program once, test it, fix it, and run it again without rewiring anything. You could write a program in an afternoon instead of a week. You could read your own code months later and understand what it did. You could share code with other programmers.
This shift made computers useful for business, science, and engineering. Without programming languages, computers would have remained curiosities — expensive machines that only specialists could operate. With them, computers became tools that anyone willing to learn could use.
How programming languages evolved after the first ones
The 1960s and 1970s saw an explosion of new languages, each designed for a different purpose. ALGOL influenced how languages were structured. LISP introduced functional programming. COBOL became the standard for business software. C (1972) was designed to be close to machine code while still being readable, and it became the foundation for Unix and countless other systems.
By the 1980s and 1990s, languages like Pascal, Ada, C++, and Java added object-oriented programming — a way to organize code into objects that mimicked real-world things. This made large programs easier to manage.
Today, languages like Python, JavaScript, and Go are designed to be straightforward to learn and fast to write in, even if they are not as fast to run. The trade-off has shifted: computers are now so fast that programmer time matters more than machine time.
Frequently Asked Questions
Was Plankalkül actually used to run any programs?
No. Zuse designed it but never implemented it on a working computer. It existed only as a theoretical system on paper. FORTRAN was the first programming language to actually compile and run a program on a real machine.
Why do most people think FORTRAN was the first programming language?
Because Plankalkül was created in Nazi Germany during World War II and remained unknown to the rest of the world until the 1950s. By then, FORTRAN had already been released and was in widespread use. FORTRAN was the first to reach the public and shape the industry.
Is FORTRAN still used today?
Yes, though mostly in scientific and engineering fields. Universities still teach it, and large physics and climate-modeling projects still run FORTRAN code written decades ago. New projects rarely start in FORTRAN, but existing code is often too valuable to rewrite.
What language should I learn if I want to understand computing history?
Python is the easiest modern language to learn and is widely taught in schools. If you want to understand how computers actually work, C is closer to machine code and shows you what the computer is really doing. Both are good starting points.
Did programming languages have to be invented, or could computers have worked without them?
Computers could have worked without them — people did program in machine code and assembly language. But without programming languages, computers would have remained too difficult and time-consuming to use for most purposes. Languages made computers practical.