Visual Basic: Not as Shiny, Still as Viable
Today I came across the article The Rise and Fall of Visual Basic by Matthew MacDonald on Hacker News.
Today, Visual Basic is in a strange position. It has roughly 0% of the mindshare among professional developers—it doesn’t even chart in professional developer surveys or show up in GitHub repositories. However, it’s still out there in the wild, holding Office macros together, powering old Access databases and ancient ASP web pages, and attracting .NET newcomers. The TIOBE index, which attempts to gauge language popularity by looking at search results, still ranks VB in the top five most talked-about languages.
But it seems that the momentum has shifted for the last time. In 2017, Microsoft announced that it would begin adding new language features to C# that might never appear in Visual Basic. The change doesn’t return VB to ugly duckling status, but it does take away some of its .NET status.
Truthfully, the trend to sideline VB has been there for years. Serious developers know that key parts of .NET are written in C#. They know that C# is the language of choice for presentations, books, courses, and developer workshops. If you want to speak VB, it won’t harm the applications you build, but it might handicap your ability to talk to other developers.
Visual Basic has been threatened before. But this time feels different. It seems like the sun is finally setting on one of the world’s most popular programming languages. Even if it’s true, Visual Basic won’t disappear for decades. Instead, it will become another legacy product, an overlooked tool without a passion or future. Whether we’ve lost something special—or finally put an old dog out of its misery—is for you to decide.
Visual Basic may not be getting much love these days, but its functionality is still there. Mads Torgersen says that the ongoing strategy for VB, as of 2017, is to “do everything necessary to keep it a first class citizen of the .NET ecosystem” by focusing “innovation on the core scenarios and domains where VB is popular.” It is still being actively developed, used, and implemented.
The point is, a language’s popularity should not determine its usefulness. Michael Born said it best in his article Yes, CF is “Unpopular”. No, I don’t care.
Popularity is not the end goal. I’ll say it again: popularity is not the end goal! If your language of choice has a scheduled release every two years and hundreds of thousands of active developers, it won’t matter one bit unless that language is useful. Node.js, as a language, is almost worthless without its immense open-source ecosystem. You won’t find any real-world applications running on Node without the use of dozens or hundreds of npm libraries simply because Node is not useful in and of itself.
That’s not a bad thing! Node is an excellent language to learn, and is very powerful thanks to its immense popularity and large package ecosystem – but just remember that without the ecosystem, Node as a language would be a footnote in the annals of history.
We really need to stop with these asinine sunset articles and gloom-and-doom rants on programming languages. More importantly, we need to stop treating them as fads, religions, or special memberships to the cool kids clubs.