I started programming in BASIC 38 years ago, in 1976 while I was in my last year of school. I enjoyed it so much that it decided my university degree and career. Back in the mid 70s, if you had access to a computer, it was most likely through a dial-up terminal and you programmed it in Dartmouth BASIC.
May 1, 1964, was the date BASIC was launched onto an unsuspecting world at Dartmouth College in New Hampshire. That makes the language 50 years old this month. Of course, nowadays people tend to regard programming in BASIC as a little quaint or even a touch retro, though there is still a market for programming .NET applications and websites in VB.NET. (Still, C# programming jobs outnumber VB.NET by about five to one.)
When the first personal computers came out, they were mostly programmed in Microsoft BASIC, a canny move that helped make Microsoft what it is today. Atari had its own BASIC language and Apple had integer BASIC, developed by Steve Wozniak. However, when the Apple II came along, it joined the Microsoft BASIC fold. Back in the 80s, BASIC was the language to program in unless you were good at assembler. But by the end of the decade C, C++ and Pascal were making inroads.
The big advantage of BASIC – that it’s easy to learn — came with a cost: Most implementations were interpreted, so it was limited when it came to games. Interpreters parse each line of code, then call built-in functions to do arithmetic. Most versions used line numbers and you needed discipline to program with that. I had a plug-in cartridge tool kit for my CBM-64 that included line renumbering. Without it, the work could be quite tedious.
Of course, not all of the early PCs used Microsoft BASIC. There were different versions, such as the BBC Micro with BBC Basic. Timex/Zx Spectrums used Sinclair BASIC, but again Microsoft had the big numbers with Vic-20s, and then CBM-64s.
The big change in BASIC came with the launch of Microsoft Visual Basic, which went through six versions between 1991 and 1998. Despite Microsoft stopping support six years ago – it wanted developers to migrate to VB.NET — there remains a lot of legacy code and programmers who love it. Plus, there was VBA (Visual Basic for Applications) in Microsoft Office, which was the foundation for a number of Excel-based applications.
How Does BASIC Compare?
Originally, BASIC was regarded as a poor cousin to other languages. At my university (Queen’s University Belfast), there was a sign in the computer science building that read, “Students who first learned to program in BASIC may be considered too brain damaged to be taught a proper programing language.” Ironic, really, as this was long before object-oriented programming came along.
BASIC suffered from years of being limited to arrays to implement complicated data structures. Objects came along later with Visual Basic, and now VB.NET, which shares many features with C# because programs written in either language execute under .NET. That means you get LINQ, ASync, Collections, etc. Dare I say it: Syntax apart, they are just about two sides of the same coin.
The Future of BASIC
Of course VB.NET isn’t the only modern incarnation of BASIC. Wikipedia includes a comprehensive list. If you’re looking for the authentic feel of Dartmouth BASIC, then True Basic may be what you’re after. But it’s not cheap, and it’s about 20 years old.
I’ve recently had to convert some BASIC to C#. The flavor of BASIC I used was B4A (Basic4Android), a commercial though not very expensive IDE and compiler that lets you develop Android applications. With a user base of 50,000, it’s quite impressive and I had no trouble understanding the code.
It may have fallen out of the limelight more than 25 years ago, but BASIC will be around in one way or another for a few years more. Besides, it was my first experience in programming, and you never forget those.