Yes, Virginia, Visual Basic is a Real Language

Once upon a time, there was a simple, interpreted language used for teaching new programmers called BASIC - the Beginner's All Purpose Symbolic Instruction Code. Compared to modern standards, this was a very simplistic language, with no compiler, no run times, no linking, and no GUI. The language became widely distributed and very popular with new programmers because of its simplicity of use. It was not, however, a professional development tool. Because of its nature, those who used the BASIC language to create programs were not considered "real" programmers by those who worked professionally in other languages, such as C, C++, Pascal, FORTRAN, etc.

How Pinnochio Became a Real Boy

BASIC began its life in 1963 at Dartmouth College. It was the invention of John George Kemeny and Tom Kurtzas as a mathematical teaching tool for students. In 1975, Bill Gates and Paul Allen developed a version for thier first personal computer, the Altair, and BASIC became one of Microsoft's first products. It was commonly distributed on what was at the time a new product - the PC. There were a variety of versions in the early 1980s from one that ran on the Apple IIe to Microsoft's version, and others commonly referred to as GW-BASIC and BASICA. As the popularity of PCs grew, so did the popularity of the BASIC language.

Microsoft and others chose to capitalize on this trend by creating more professional, compiler-oriented versions of the language. Products such as QuickBasic, PowerBasic, ZBasic, and others became increasinly used in professional environments for creating applications. Still, the language remained relatively simple and primitive when compared to the primary language of chose in the 1980s and 1990s - C++. Thus, professional developers still snubbed thier noses at those would-be programmers using any variation of BASIC.

The limitations of the Basic language began to be stripped away during the 1990S when Microsoft introduced thier Visual Basic and Visual Studio products. With each new version of the Visual Basic language - from 2.0 through 6.0, the capabilities of the Visual Basic language increased and the language moved farther and farther away from its origins. In the final rendition of the Visual Basic 6.0 language, very little remained that could remind the user of the early days of BASIC programming. Items such as line numbers (10, 20, 30, etc), GOTO and GOSUB statements were some of the first items to disappear - and in thier places came the true elements of structured programming. Object-based elements were added and capabilities such as interacting with the API and accessing databases were added.

Soon, Visual Basic - despite its name - was being used widely throughout the development community for creating applications in a process that is referred to as Rapid Application Development (RAD). Powerful, fast, and useful business applications could be created in Visual Basic in a relatively short amount of time. It can be estimated that development of the same application in the Visual C++ language would normally require 2 - 6 times as much development time as Visual Basic. Visual Basic was the perfect language for creating user-interface based applications. In many cases, VB applications were combined with Visual C++ (VC) libraries to provide complete and efficient functionality.

One of VB's greatest features was providing a powerful and useful language with nearly the same ease of use and low learning curve that was the trademark of the original BASIC language. This amazing accomplishment did not come without a price, however. Because of its RAD-orientation and ease of use, it did not take long for many people to became Visual Basic programmers. However, like any other language, it did take a great deal of time and experience for new programmers to become good VB developers. As a result, there was more noise than signal in the VB application world. While a great many good applications were designed and built using VB, there were very many more poorly-written applications available. This contributed to the misconception that VB was not a "real" language - and the so-called "real" programmers still looked down on the language and its devotees.

The final evolution of the language came when Microsoft introduced its .NET platform and the new Visual Basic .NET and C# languages. The old ties to the BASIC language were finally stripped away, and like C#, Visual Basic became a fully- object-oriented language. Today's Visual Basic's capabilities and performance are now identical to its companion, C#. Ironically, noth are just as powerful and capable, if not more so, than the chosen language of many VB detractors, Java.

Equal Pay For Equal Work

Despite the improvements in the Visual Basic language, there is a disparity still in the marketplace concerning VB developers. Despite the fact that VB and C# are identical in thier capabilities, on the average, VB developers are generally paid less than thier C# counterparts and are considered less capable and experienced. The "BASIC" stigma still remains. The common misconception is still in place - many IT managers, developers, computer scientists, and others still assume that C# is a vastly better language than Visual Basic simply because of the "C" in C#'s name. The reality is that other than syntax differences, the languages are the same. They both rely on the same class framework, they both provide identical capabilities, and they both compile to the same intermediate language (MSIL). The only difference is the syntax - and in this case, it is C# which uses an outdated C-like syntax which serves to detract from the language. It can be said that is may be slightly faster to develop the same application in Visula Basic .NET over C# because of the lack of syntactical issues in the Visual Basic implementation.

In the end, what we have in Visual Basic is a modern, powerful language that can compete with any other product available, and no longer resembles in even the slightest fashion the old GW-BASIC approach. On the down side, we have lost a usefull teaching tool, as C#, Java, VB and others generally cannot be used to serve the purpose for which BASIC was originally invented - as a tool for teaching basic programming principles for students. The beauty of the .NET system is - however - that it can be used, in real-time, to compile itself - thus making it possible to write new .NET languages in .NET itself. Certainly in time, this will lead to the emergence of a new teaching language - most likely written in Visual Basic .NET.

Sam Jones
Senior Architect
Way Systems, Inc.
sjones@waysystems.com

About the Author

Based in Alpharetta, GA, I have been a Microsoft Windows developer for nearly 14 years, and during the last ten I have been working professionally in the Atlanta area on a variety of projects which have included extensive use of Visual Basic, Visual C++, and the .NET Framework. In January of this year I launched the Adaptive Intelligence initiative to create specialized, intelligence software for a variety of purposes, including development support. I have a wife and four-year old daughter who occasionally attempts to contribute to my development. :)



 

Other Views

corner

Recent Jobs

Official Programmer's Heaven Blogs
Web Hosting | Browser and Social Games | Gadgets

Popular resources on Programmersheaven.com
Assembly | Basic | C | C# | C++ | Delphi | Flash | Java | JavaScript | Pascal | Perl | PHP | Python | Ruby | Visual Basic
© Copyright 2011 Programmersheaven.com - All rights reserved.
Reproduction in whole or in part, in any form or medium without express written permission is prohibited.
Violators of this policy may be subject to legal action. Please read our Terms Of Use and Privacy Statement for more information.
Operated by CommunityHeaven, a BootstrapLabs company.