Recently the programming language Basic turned 50. Microsoft once created a succesfull Basic dialect as one of their first products in the ’80’s. They supplied it to a number of ‘home computer’ manufacturers so computers had a basic/simple instruction language to let the computer ‘do things’. In the ’90’s QuickBASIC for DOS followed and with Windows came the Integrated Development Environment Visual Basic. The last released stand-alone version was Visual Basic 6… way back in 1998.
It is still used and loved today despite every effort of MS to kill it. Software produced with it runs without any problems on Windows 8. Alternative affordable languages/IDE’s available today that supply everything Visual Basic 6 did are sparse. VB had an easy syntax, a fast build and debug process, small target executables, ActiveX/COM client and server support, support for calling functions in DLL’s, a productive visual designer and lot’s and lot’s of third party support. Back then it was the biggest ‘Rapid Application Development’ tool (Borland Delphi was popular too, but surprisingly went through an influential temporary self inflicted .NET disaster a couple of years later…).
But hey… Microsoft decided in their infinite wisdom and without asking any VB6 user that they would abandon Basic and focus all efforts on the .NET platform. One of the main programming languages for .NET is C# (See-Sharp). A nice language in it’s own right, but it uses very different principles than VB6. It is very much like Oracle’s Java (with less cross-platform support). MS also created the language VB.Net and positioned it as a valid carreer path for VB6 programmers. However, it really was not anything like BASIC at all… instead it was more complex. A completely different language than Visual Basic ever was. It’s more like another dialect of Java just like C# is (VB is a bit more friendly to the programmer than C#). Almost every .NET language basically has the same structure since they all share a common background.
I want a modern, easy, quick & dirty and full featured programming language and IDE. Where do I find it? The language Basic always had some patronizing looks at it from certain ‘real programmers’ because of ‘bad programming practices’ like spaghetti code and ‘goto’ commands. But really… you can create clean code in Basic just like in any other language. Those ‘real programmers’ frequently get to the point of over-engineering a software product with lots of abstraction layers that in the end make it way more complex (and slow) to change/upgrade something in the code…
It’s just clueless how MS behaves sometimes. They should introduce a new version of Visual Basic (please call it Quick Basic to differentiate it from VB.Net). It’s not like MS doesn’t support it anymore because Visual Basic for Applications (VBA) is exactly like VB6 was. Too bad it is only supplied as part of MS Office. For Office 2013 MS advocates that your VBA code is future safe. So why not apply this to the real Visual Basic? Please keep BASIC basic! Remember the Basic design principles…
Luckily we still have VBScript 😉 (it will even run on the doomed Windows RT ARM tablet!) MS tries to do the same to system administrators with PowerShell. A disaster for it’s intended purpose (a tool for system administrators to automate certain tasks like configuring user accounts). It became an over-engineered command shell thats unforgiving to it’s user. YES, you can do great stuff with it, but it comes with soooo much bloated whistles and bells… I ask you this MS: Did you want an easy scripting language for the administrator with no programming background? That’s not what you delivered!
Visual Basic wasn’t the only victim of Microsofts mysterious ways… lost on their own road map?
The very productive data programming and reporting tool Visual FoxPro had to go too… its last release was version 9 in 2004. Again developers were told: switch to .NET which really made no sense to them. They became very mad and disappointed at MS. MS didn’t care. VFP is a neat package to design and program database applications. It was created specifically for THAT task. Now MS points to a general purpose framework that needs lots of boiler plate code to get anything done…
Some developers have a hard time with MS… the path is curved left, right, left, right and uphill. Silverlight? WinForms? WPF? .NET or back to the native component model (WinRT)?
MS, get your act together! Thank you.