Viva, Visual Basic! Or, Does VB Have a Future?
Long live the programming language that is still running strong well into the second half of its third decade. What might help it is a provision for VB-based .NET Core and .NET Standard libraries in an upcoming VS 2017 release.
- By Michael Domingo
Visual Basic is not dead. Well, not yet anyway. One would think that 26 years on, we'd be talking about VB as a legacy language, like COBOL, in that it's still around and some companies will double-down on a good salary for those who can use it to prop up old but still useful systems that run it. But really, VB is still quite useful, and Microsoft's Visual Basic team isn't neglecting it and continues to issue improvements and enhancements. It's true!
I say that with some slight, mocking sarcasm. It's hard to gauge how VB is viewed in the developer world, with tools that seem better fit for the world now, not a few decades ago. Over the last few years, there has been speculation that Microsoft wouldn't move too much to improve the language as they've done with C#, F#, even Visual C++. (And get this: Visual Basic has mysteriously disappeared in the Developer Tools Blogs menu.)
But, VB still continues to limp along. Earlier this year, Microsoft's Mads Torgersen wrote about the team's plans in a neatly titled post, The .NET Language Strategy. "We will do everything necessary to keep [VB] a first class citizen of the .NET ecosystem," he said, but he notes that there has been a significant shift from the co-evolution strategy which had VB being developed in parallel with C# just as a matter of allowing the languages to advance of their own volition rather than forcing features onto one language because the other now has such support.
An interesting side note is the pairing of the stats Torgersen uses from Stack Overflow with the strategy the team is planning to carry out. The numbers he cites from Stack Overflow aren't precise, but instead are in a range of "C# is used by millions of people," and "Visual Basic is used by hundreds of thousands of people."
With such pairings, his think piece offers a clearly defined path for C# and F#. For C#, he writes that the team "will innovate aggressively, while being very careful to stay within the spirit of the language," with the team continuing to make performance gains and ecosystem growth some of its higher priorities. For F#, Mads acknowledges a much smaller group, but also cites "great actual and potential growth" based on rabid community activism.
What about the language "used by hundreds of thousands of people," VB? Mads' message seems to say that C# is what developers are backing these days, with VB language improvements coming only if they make sense.
A follow-up piece to Torgersen's, from Anthony D. Green, whose the Visual Basic Language Designer, spells out VB's future more succinctly, in this one paragraph:
But with regard to the cloud and mobile, development beyond Visual Studio on Windows and for non-Windows platforms, and bleeding edge technologies we are leading with C#. This is because the audience in those spaces is demanding it. We will not shy away from Visual Basic open source contributions because in the long term any open source VB community is better than none. However, the focus for VB will be where VB is already or likely to be successful, i.e. primarily on Microsoft technologies and for Windows with an emphasis on bringing modern capabilities to existing solutions, developers, enterprises, and scenarios (e.g. SQL Azure).
There you have it. It's the cloud's -- or maybe more exactly, C#'s -- fault (you gotta give the people what they want). As a counterpoint to those posts is this one from Visual Basic developer Klaus Löffelmann that brings VB back into the cloud somewhat (but more into the realm of UWP and cross-platform development), in which he describes a workflow centered on VB in the next VS 2017 Update 3 Preview, as it now includes VB-based .NET Core and .NET Standard templates. In the post, he goes on to describe building an application with VB and Xamarin.Forms and .NET Standard using the VS2017U3 Preview. The kicker is that in the project creation, some C# files are created by bootloader apps, but they're ignored in the main project. Nonetheless, it can be assumed this will be a cleaner process as VS 2017U3 steps up to a general release.
So, maybe VB is not only "not dead," we may see developers working with it for at least a few more decades.
Now, on to a few other things:
- How agile is Microsoft's development teams? With nearly a thousand people spread out globally and working toward a singular goal of developing and improving Visual Studio and its tooling ecosystem, Microsoft's Brian Harry offers a peek into how Microsoft does Devops.
- We have a tip for ya: In this Stackify listicle, "Top .NET Software Errors: 50 Common Mistakes and How to Fix Them," check out tip #8.
Okay, now take a quick break and listen to this week's podcast (it's less than 8 minutes; won't take long), on Visual Studio Code:
Links mentioned in this show:
Know of an interesting link, or does your company have a new or updated product or service targeted at Visual Studio developers? Tell me about it at [email protected].
Michael Domingo is a long-time software publishing veteran, having started up and managed several developer publications for the Clipper compiler, Microsoft Access, and Visual Basic. He's also managed IT pubs for 1105 Media, including Microsoft Certified Professional Magazine and Virtualization Review before landing his current gig as Visual Studio Magazine Editor in Chief. Besides his publishing life, he's a professional photographer, whose work can be found by Googling domingophoto.