BASIC turns 60: Why simplicity was this programming language's blessing and its curse

6 months ago 53
BOOK THIS SPACE FOR AD
ARTICLE AD
BASIC at Dartmouth

BASIC is born at Dartmouth University.

Dartmouth University

Long before you were picking up Python and JavaScript, in the predawn darkness of May 1, 1964, a modest but pivotal moment in computing history unfolded at Dartmouth College. Mathematicians John G. Kemeny and Thomas E. Kurtz, operating a General Electric GE-225 mainframe, executed the first program in a language of their own devising: Beginner's All-purpose Symbolic Instruction Code (BASIC)

It wasn't the first popular language. That honor went to COBOL if you were in business or FORTRAN if you made your living in engineering. But, for many beginners from the mid-60s to the early 80s, BASIC was their introduction to computer programming. 

Also: Dell turns 40: How a teenager transformed $1,000 worth of PC parts into a tech giant

BASIC's allure came from its simplicity. Designed as an interpreted language, it allowed programs to be written and executed line-by-line, an approach that resonated deeply with beginners. 

This accessibility was a beacon for a generation of users for whom computing had been a distant, somewhat arcane discipline. Before BASIC, engaging with a computer meant wrestling with cumbersome punch cards or mastering complex codes. Kemeny and Kurtz envisioned a different paradigm -- one where computers were tools for the masses, not just the domain of engineers.

Also: The Mac turns 40: How Apple's rebel PC almost failed again and again

As Kemeny said later, "Our vision was that every student on campus should have access to a computer, and any faculty member should be able to use a computer in the classroom whenever appropriate." That meant both giving them a language that any liberal arts major, as well as math majors, could use -- computer science as a major doesn't exist yet -- and a system they could work with in something like real-time rather than feeding cards into a centralized machine for slow, batch jobs. That language was BASIC and that system was the Dartmouth Time-Sharing System (DTSS).

Others, like yours truly, would enter computer science in the 70s by way of Unix, another time-sharing operating system and a far-harder language to learn, never mind master, C. 

In their day though, BASIC and DTSS democratized access to computing power. It allowed developers to run programs concurrently on a central machine -- a radical concept at the time. 

That first version only had 14 commands. They included: PRINT, IF and THEN, and, the soon-to-be infamous GOTO. Thanks to GOTO, the famous Dutch computer scientist Edsger Dijkstra said, "It is practically impossible to teach good programming to students that have had a prior exposure to BASIC: As potential programmers, they are mentally mutilated beyond hope of regeneration."

With GOTO, it was all too easy for would-be programmers to write what would become known as spaghetti code -- a tangled mess of source code that was almost impossible to understand or debug. Yes, BASIC was easy to write simple programs in, but it was awful for writing anything complex. 

Still, the keyword was "easy." So, early developers kept using BASIC and porting it to one computer after another. 

Then, as the years rolled by, another paradigm for computing power emerged: The PC. In 1975, instead of sharing computers, you could have one of your very own with all the power of a 2MHz Intel 8080 processor. 

Also: At 35, the web is broken, but its inventor hasn't given up hope of fixing it yet

Two young men, Paul Allen, and Bill Gates, proposed to the maker of the first PC, Ed Roberts' Altair 8800, that they port BASIC to his computer. He agreed, and shortly thereafter, they founded Micro-Soft. You know it better as Microsoft. 

Yes, that's right. Without BASIC, you're not running Windows today. At about the same time, Steve Wozniak was working on porting BASIC to the first Apple computer, the Apple I. BASIC was essential for Apple's early growth as well. 

BASIC also became a staple in home computers like the Atari 400, Commodore 64, and TRS-80. It was featured prominently in early computer magazines, where readers could find and then type in BASIC code all by themselves. Or, you could pay real money and get a cassette tape with such popular games as Lunar Lander. 

Then, when IBM came out with its first PC, Gates and Allen were ready to take advantage of this new platform. As IBM President of Entry Systems, Don Estridge, said, "Microsoft BASIC had hundreds of thousands of users around the world. How are you going to argue with that?"

Also: You know Apple's origin story but do you know Samsung's? It's almost too bonkers to believe

Indeed, those first IBM PCs had what was called Cassette BASIC baked into the hardware. When you first booted up an IBM PC, if you didn't have an operating system, it would boot into BASIC from a 32 Kilobyte Read-Only Memory (ROM).

BASIC would still have its fans. Long before Microsoft developers dreamed of .NET or C#, Microsoft kept producing other popular BASIC variants, such as QBasic, GW-BASIC, and Visual Basic. A few non-Microsoft BASIC versions, such as QuickBASIC, also kept chugging along. 

However, other programming languages were beginning to push BASIC aside. Pascal, Java, and Python became the languages that were taught in schools. 

Still, BASIC isn't dead. Microsoft open-sourced GW-BASIC in 2020. Other BASIC variants are still with us as well, such as the Windows-specific Small Visual Basic; and the open-source SmallBASIC and QB Phoenix Edition. In fact, hidden inside Microsoft Office, Visual Basic for Applications (VBA) remains the Office worker's power tool set. 

Also: How I test an AI chatbot's coding ability - and you can too

That said, I can't see anyone ever writing any stand-alone significant program in BASIC again. And, the very idea of someone writing a popular game in BASIC in 2024 is a joke. 

But, never forget that BASIC helped early users engage with computers in a fundamentally new way. The story of BASIC is not just about a programming language. It's about making technology accessible and comprehensible, transforming passive users into active creators. You may never write a line of BASIC, or you may hate the language, but we all live with its influence to this day.  

Read Entire Article