BASIC: The Language That Democratized Programming
Abstract
BASIC was created in 1964 at Dartmouth College to give every student (not just mathematics or science majors) access to computing. Its designers, John Kemeny and Thomas Kurtz, succeeded beyond their expectations: by the early 1980s, nearly every home computer shipped with BASIC built into its ROM, and a generation learned to program not in university computing courses but by typing commands into machines in their bedrooms. Bill Gates and Paul Allen sold BASIC for the Altair before they had a company. Steve Wozniak wrote BASIC for the Apple II. BASIC was the lingua franca of the personal computing revolution.
Dartmouth and Democratic Computing
In the early 1960s computing at Dartmouth meant batch jobs: punched cards in, printouts back hours or days later, a regime that kept the machine in the hands of a few specialists in mathematics and science. John G. Kemeny (a mathematician who had worked under Richard Feynman at Los Alamos and as Albert Einstein’s mathematical assistant at Princeton) and Thomas E. Kurtz (a statistician) set out to change this.
Their road there was long. In the late 1950s Kurtz carried punched-card decks by train to the IBM 704 at MIT and collected the printouts two weeks later; FORTRAN eased things from 1957, and in June 1959 the college bought a small LGP-30 for which they and their students wrote three simple languages. Their goals were explicit:
- Every student at Dartmouth should be able to use the computer, regardless of major
- The computer should respond quickly and interactively, in real time
- The language for using the computer should be simple enough to learn without a technical background
BASIC (Beginner’s All-purpose Symbolic Instruction Code) was designed to meet these goals. Kemeny wrote the language and its compiler in summer 1963, and two students wrote the operating system that autumn. The college’s own GE-225 arrived in February 1964, coupled with a Datanet-30 communications computer, a disk and three terminals, and the first BASIC program ran at 4:00 AM on May 1, 1964; accounts differ on whether it was a small LET and PRINT calculation or simply 2+2. The Dartmouth Time-Sharing System that made interactive access possible ran alongside BASIC. A GE-235 replaced the 225 that summer, twenty terminals served students by autumn, a GE-635 centre under Kurtz opened at the end of 1966, and by 1971 twenty colleges and thirty high schools were connected; a Honeywell machine took over in 1976, and the centre closed on New Year’s Eve 1999. Kemeny became president of Dartmouth in 1970, admitted women in 1972 and chaired the 1979 commission on the Three Mile Island accident.
The language was intentionally simple:
- Line numbers prefixed each statement (serving as both labels and program order)
- A small vocabulary: LET, PRINT, END, FOR-NEXT, GOTO, GOSUB-RETURN, IF-THEN, DEF, READ, DATA, DIM, REM (INPUT arrived with the third edition in 1966, string variables ending in $ with the fourth edition in 1968)
- No need to declare variable types; all variables were numeric
- Error messages in plain English
- A compile-and-go system: the student typed RUN and the program was compiled and executed at once, fast enough to feel interactive (the immediate mode of later home-computer BASICs came from their interpreters)
A student who had never programmed could write a working BASIC program in an hour. The simplicity was the point.
The Altair and Microsoft’s Origin
The Altair 8800, launched in January 1975 with a Popular Electronics cover story, was the first commercially successful personal computer kit. It had no software. You programmed it by toggling switches on the front panel. It was useful for hobbyists who wanted to understand hardware; it was useless for anyone who wanted to compute.
Bill Gates and Paul Allen saw the Altair and recognized that it needed an operating environment. They contacted MITS (the Altair manufacturer) and offered to provide BASIC for the machine. They had not yet written it. They spent eight weeks in a Harvard computer center writing Altair BASIC (a 4 KB implementation of the language) on a PDP-10, simulating the Intel 8080 processor in software because they did not have an actual Altair.
When Allen flew to Albuquerque to demonstrate BASIC to MITS, he had never actually run it on a real Altair. It worked. MITS licensed Altair BASIC, Microsoft (then still Micro-Soft, founded 1975) had its first product, and Gates and Allen had their first significant revenue.
Info
Gates’s 1976 open letter “An Open Letter to Hobbyists” (protesting the copying of Altair BASIC without payment) is one of the foundational documents of software intellectual property. Gates argued that software, like other intellectual work, required compensation for its creators; without compensation, commercial software development was not economically viable. Hobbyists argued that software that spread freely was more valuable than software that was locked behind payment. Both arguments were correct in different senses, and the debate they initiated has not been resolved.
BASIC on Every Home Computer
By 1977, when the Apple II, Commodore PET, and TRS-80 defined the first generation of mass-market personal computers, BASIC was the assumed operating environment. Steve Wozniak wrote Integer BASIC for the Apple II himself, implementing the language in the machine’s ROM. When Microsoft provided Applesoft BASIC (which added floating-point numbers), it replaced Integer BASIC in the Apple II’s ROM and Wozniak’s version was relegated to the Language Card.
Every major home computer platform of the early 1980s shipped with BASIC as the primary user interface:
- Microsoft BASIC: Altair, TRS-80, Apple II (Applesoft), Commodore (CBM BASIC), MSX computers, and dozens of others
- BBC BASIC: The BBC Micro, designed for educational use, used a BBC-specific BASIC developed by Sophie Wilson
- Sinclair BASIC: The ZX Spectrum in the UK
- Atari BASIC: The Atari 400 and 800
- GW-BASIC: IBM PC-compatible machines under MS-DOS
When you bought a home computer in 1982, you turned it on and saw a BASIC prompt. If you wanted to do anything with the machine that didn’t involve loading software from tape or disk, you typed BASIC commands. The entire interaction model of early home computing was BASIC.
BASIC as Programming Education
The millions of people who learned to program on home computers in the late 1970s and 1980s almost universally learned BASIC first. The language had specific effects on how those people thought about programming:
Line numbers and GOTO: BASIC programs used line numbers as both labels and execution order, and GOTO statements that jumped to arbitrary line numbers. This produced “spaghetti code”, programs whose flow was difficult to follow because control could jump anywhere, the style Edsger Dijkstra attacked in “Go To Statement Considered Harmful” (1968). The generation that learned on BASIC had to unlearn GOTO habits when they encountered structured languages.
Immediate feedback: BASIC’s interactive mode (type a statement, see the result immediately) established an expectation of rapid feedback that shaped subsequent programming culture. The read-eval-print loop (REPL) itself is older, a Lisp idea named in 1964, but BASIC put it in front of millions of home users.
Self-sufficiency: Because BASIC came in ROM and required no external software, home computer users had a complete programming environment out of the box. This produced a culture of experimentation and self-teaching that characterized the early personal computing era.
Successors and Legacy
BASIC evolved through many versions. QBasic (Microsoft, 1991) made line numbers optional and added structured control flow and subroutines. Visual Basic (Microsoft, 1991–2008) built a full GUI programming environment on BASIC syntax, becoming the dominant tool for corporate Windows application development through the 1990s. Visual Basic .NET (2002) updated Visual Basic to the .NET platform.
BBC BASIC survived into the 21st century: it shipped with Acorn’s RISC OS, and Richard Russell, who had written its Z80 version, released BBC BASIC for Windows in 2001 and BBC BASIC for SDL (Windows, macOS, Linux, Android, iOS) in 2019.
The language’s deepest legacy is cultural rather than technical: BASIC was the proof that programming could be accessible to ordinary people, not just specialists. The millions of children who typed BASIC programs in the 1980s became the engineers, entrepreneurs, and power users who drove the digital economy of the 1990s and 2000s. The barrier that BASIC lowered (the barrier between “computer owner” and “computer programmer”) was lowered permanently.
📚 Sources
-
Heinz Nixdorf MuseumsForum blog, “Der Weg zu BASIC” (30 April 2024) (the MIT card runs, the LGP-30, the 1963 design, the DTSS hardware, the first program, later machines and connections, Kemeny’s presidency)
-
John Kemeny & Thomas Kurtz: Back to BASIC (1985) — Addison-Wesley
-
Wikipedia: Dartmouth BASIC (1964 statement set, INPUT in 1966, strings in 1968, compile-and-go)
-
Wikipedia: Read–eval–print loop (term from 1964 PDP-1 Lisp)
-
Wikipedia: BBC BASIC (Wilson at Acorn; Russell’s Windows and SDL versions)
-
Wikipedia: John G. Kemeny (Feynman at Los Alamos, Einstein, presidency, Three Mile Island)