This week's book giveaway is in the Artificial Intelligence and Machine Learning forum.
We're giving away four copies of TensorFlow 2.0 in Action and have Thushan Ganegedara on-line!
See this thread for details.
Win a copy of TensorFlow 2.0 in Action this week in the Artificial Intelligence and Machine Learning forum!
  • Post Reply Bookmark Topic Watch Topic
  • New Topic
programming forums Java Mobile Certification Databases Caching Books Engineering Micro Controllers OS Languages Paradigms IDEs Build Tools Frameworks Application Servers Open Source This Site Careers Other all forums
this forum made possible by our volunteer staff, including ...
  • Campbell Ritchie
  • Liutauras Vilda
  • Paul Clapham
  • Bear Bibeault
  • Jeanne Boyarsky
  • Ron McLeod
  • Tim Cooke
  • Devaka Cooray
Saloon Keepers:
  • Tim Moores
  • Tim Holloway
  • Jj Roberts
  • Stephan van Hulst
  • Carey Brown
  • salvin francis
  • Scott Selikoff
  • fred rosenberger

Is Visual Basic still central in .NET enviroment ?

Posts: 1284
IBM DB2 Netbeans IDE Spring Java
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
My question may be nasty, and I'm sorry for that... Is Visual Basic still important for Microsoft ?
I've read that Microsoft isn't going to evolve Visual Basic further, is that true ?
Posts: 919
Netbeans IDE Oracle MySQL Database Tomcat Server C++ Java
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
VB is a corner stone in the development philosophy in the MS world, but having said that, you should also know this: C# is gaining more and more traction all the time. Why is that you may ask--simply put, it falls into a category that I and many call the "family of C languages". All of these languages have the look and feel of C--languages like C, C++, C#, Java, and many others. Buying into a "family of development languages" gives benefits: they are all similar and skills are easily maintained over time and movement between languages are, IMO, easier.

As far as developing VB further, MS constantly develops all of its supported languages. Part of the reasoning is it gives hold on their product line, but more importantly, it keeps the language alive and viable in the market place. Once a language's update source stops, then that language eventually dies out. Our development environments are mutating over time--our tools have to follow suite or die off.

BTW: I used to be a VB developer and worked for an MS partner. I have been developing in a C style family of suite of tools for almost 2 decades and use VB very sparingly and usually only on a legacy support basis. The C family provide much more easily maintainable skills for me that VB does.
Posts: 1464
Netbeans IDE C++ Java Windows
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
Thanks for the background, Les. Very informative. [quote=Claude Moore]I've read that Microsoft isn't going to evolve Visual Basic further, is that true ?[/quote] Where did you see that, Claude? As I recently posted in another thread in this forum, it tends to be easy to find someone, somewhere, who will tell you that whatever language/operating system/toolkit/framework you are using is dead when it's actually thriving. Try Googling "Java is dead" and you'll see what I mean.

But, as I also conceded in the same comment, Microsoft does have a tiresome tendency to announce "no further enhancements will be made" regarding lots of their current technologies. Over the many years I've used Microsoft products, I've just learned to live with it.

Regarding C# and Visual Basic as alternatives, this paragraph from Wikipedia is interesting: [quote=Wikipedia]C# and Visual Basic .NET are Microsoft's first languages made to program on the .NET Framework (later adding F# and more and others have also added languages). Though C# and VB.NET are syntactically different, that is where the differences mostly end. Microsoft developed both of these languages to be part of the same .NET Framework development platform. They are both developed, managed, and supported by the same language development team at Microsoft.[8] They compile to the same intermediate language (IL), which runs against the same .NET Framework runtime libraries.[9] Although there are some differences in the programming constructs, their differences are primarily syntactic and, assuming one avoids the Visual Basic "Compatibility" libraries provided by Microsoft to aid conversion from Visual Basic 6, almost every command in VB has an equivalent command in C# and vice versa. Lastly, both languages reference the same Base Classes of the .NET Framework to extend their functionality. As a result, with few exceptions, a program written in either language can be run through a simple syntax converter to translate to the other. There are many open source and commercially available products for this task.[/quote]

An Infoworld [url=]article by Paul Krill[/url] supports the above. It might be noteworthy that Krill's article was written in 2009, and refers to Visual Basic 10 and C# 4. The latest Visual Studio lists these components when you click "Help / About Microsoft Visual Studio:"
Microsoft Visual Studio Community 2017
Version 15.0.26228.9 D15RTWSVC
Microsoft .NET Framework
Version 4.6.01586

Installed Version: Community

Visual Basic 2017   00369-60000-00001-AA466
Microsoft Visual Basic 2017

Visual C# 2017   00369-60000-00001-AA466
Microsoft Visual C# 2017

Visual C++ 2017   00369-60000-00001-AA466
Microsoft Visual C++ 2017

Application Insights Tools for Visual Studio Package   8.6.00209.10
Application Insights Tools for Visual Studio

ASP.NET and Web Tools 2017   15.0.30223.0
ASP.NET and Web Tools 2017

Common Azure Tools   1.9
Provides common services for use by Azure Mobile Services and Microsoft Azure Tools.

JavaScript Language Service   2.0
JavaScript Language Service

JavaScript Project System   2.0
JavaScript Project System

JavaScript UWP Project System   2.0
JavaScript UWP Project System

Microsoft Visual Studio VC Package   1.0
Microsoft Visual Studio VC Package

NuGet Package Manager   4.0.0
NuGet Package Manager in Visual Studio. For more information about NuGet, visit

TypeScript tools for Visual Studio

Visual Studio tools for CMake   1.0
Visual Studio tools for CMake

Visual Studio Tools for Universal Windows Apps   15.0.26228.00
Right at the top there you can see both Visual Basic and C# designated as their 2017 versions. I suppose Microsoft could just renumber the same old program with every release of Visual Studio, but I doubt they'd do even that much if they wanted to put a language out to pasture.

It is also interesting to compare the [url=]historical ranking for C#[/url] with the [url=]historical ranking of Visual Basic[/url]. C# ranks a bit higher, but has trended downward since its peak in 2012, while Visual Basic has trended upwards over the same span of years. (Not that the Tiobe index is conclusive, but it is interesting.)

I think Les's characterization is quite apt. Back in the '80s, a computer researcher I knew predicted that, "eventually, all languages will converge to something like C." Being a long-time C fan, I tried C# first, when I was recently motivated to look for an all-Microsoft way to get something done. (Mostly, I write in Java and use the JNI when I need something specific to Windows that Java can't do on its own. This time, I needed to avoid relying on there being, or having to install, a Java Runtime Environment on my users' machines.) I was kind of surprised by how much if, at least upon my first glance, did [i]not[/i] look like C. In particular, I saw some stuff in square brackets that kind of put me off. Having learned Visual Basic long ago, I looked at that again. Imagine my surprise to discover that, since my last go-round with it (when it was still called Visual Basic 6), it had become a truly object oriented language.

While it is true that Visual Basic does not use curly brackets, nor end a statement with a semicolon, I'm pretty much finding that its current form makes writing the Visual Basic equivalent of a Java method mostly a matter of looking up the comparable keyword. (I posted a handy cheat-sheet that illustrates how much the two languages have grown alike, grammatically if not syntactically.)

So, it appears that, for now, whether one uses C# or Visual Basic is a matter of personal preference, there being no capability unique to either. And, as far as I can tell, Microsoft remains equally committed to both for the foreseeable future (which, when we are talking about Microsoft, maybe only be about twenty minutes, but that's how it is for both languages.)

Hope you'll post here often. New forums need new input!
Claude Moore
Posts: 1284
IBM DB2 Netbeans IDE Spring Java
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator

Where did you see that, Claude?

Well, as you can easily imagine, I've read that on the web - I cannot remember where, of course not in any official Microsoft Documentation :-). I presumed that it might be true maybe because I'm a bit biased against Visual Basic. My fault. Sorry.

Try Googling "Java is dead" and you'll see what I mean.

Don't worry, I know perfectly what do you mean; now and then my bosses too read such crap on the web and I have to spent some time to convince them that Java is far to be dead.

Hey! You're stepping on my hand! Help me tiny ad!
Thread Boost feature
    Bookmark Topic Watch Topic
  • New Topic