This post is about the computer language that got me started with programming. It’s name was BASIC (an acronym that stood for Beginners All-purpose Symbolic Instruction Code). This was a very simple language that was designed to get novices programming with minimum effort. If you could list out the steps involved in doing a particular task on the computer in plain english (an algorithm in tech speak), you could convert that to an actual BASIC program with minimum effort. The BASIC language was very popular in the ‘80s and pretty much every computer came with a version of it pre-installed or available. In our school, we had IBM compatible PCs which we used to work on programming. We started off with writing simple programs to perform basic arithmetic operations and moved on to more complex ones as our confidence built up.
10 REM To Add 2 Numbers
20 INPUT “Enter a number:”;X
30 INPUT “Enter another number:”;Y
40 LET Z=X+Y
50 PRINT X;”+”;Y;”=”;Z
Above: Literally the first program we were taught in school
You can actually run this program and see the result by going to the Quite BASIC site which provides an online BASIC interpreter (http://www.quitebasic.com/). If you read the small program listed above, you will get a good idea about the simplicity of the language. Any lay person could read that program and get an idea of what it was doing (even if you skipped the first line). During school, we only got an hour every week for computer programming. But thanks to the simplicity of the BASIC language, this limited time was sufficient to learn it and become comfortable with programming.
During my college days, we were learning other “grown-up” languages like COBOL, Pascal, C etc. but I always had a soft spot for BASIC and did not miss the chance to use it whenever possible. This was the time that BASIC came into the limelight again thanks to Microsoft coming up with an awesome version of it aptly named Visual Basic. If you notice, they converted the acronym (all Caps) to a regular word since acronyms were considered “uncool” by then. Plus they had tweaked the language to incorporate a lot of new features and to support something called “Event Driven Programming”. So, it was somewhat different from the original language. Me and my brother, Vikram, spent a lot of time programming on this tool. We had just been introduced to the world of GUIs since we had installed Microsoft Windows 3.1 on our home PC. The ability to quickly put together a Windows app without having to spend hours and writing hundreds of lines of code for drawing the UI was a game changer. More amazing was that Microsoft even had a version of Visual Basic that ran on DOS and let you create apps with a window-based UI in text mode.
Above: Visual Basic from the early days
Above: Visual Basic for DOS
It is fashionable to criticize the Visual Basic tool nowadays but you have to look at it thru the eyes of a novice or hobby programmer to understand its significance. This tool really opened up programming to people who would otherwise never attempt it. All this power was a double-edged sword since its ease of use also meant that people built business programs that were poorly designed and ended up creating a maintenance nightmare for others who inherited the code from their predecessor. But that holds true for other programming tools as well. Anyways, Microsoft completely changed the Visual Basic language when they transitioned to the .NET framework. This alienated a lot of the core users of VB since it meant that they would have to throw away all they had learnt till then and start from scratch to learn the new version of the language. But, worry not, fans of the original can still use it today as it continues to exist albeit in a slightly diminished form within the MS Office suite. In this incarnation, it is known as VBA (Visual Basic for Applications).
Above: Visual Basic for Applications (VBA) running inside Microsoft Excel
I still feel a language like Visual Basic should be available to people when they are starting on their path to learn programming. Quite often, people who start on this journey, give up because of the steep learning curve. That is where languages like VB can help sustain their interest since they can create applications without writing a whole lot of code. Hopefully, they would then stick to it long enough to develop interest in learning more sophisticated languages which would continue their journey in the wonderful world of programming.