Is Visual Basic .NET dead, or is it still being used in 2024?
Visual Basic .NET could be considered dead if we’d only look at like Google Trends numbers. As a freelance developer regularly getting jobs in this niche, I can’t say it’s dead per se. In my opinion it’s slowly fading out, but it’s a great language nevertheless. You shouldn’t probably be building new projects based on it, but you can for example use it, to start programming, or as a hobby.
Inhaltsverzeichnis
Is VB.NET really dead?
Potential and active students, as well as some of my customers are asking me pretty often, if Visual Basic .NET is dead nowadays. This, is a pretty important question, because it is – or was (?) – one of the cornerstones of .NET development in general. Even though I’m primarily using C# nowadays, VB is still one of my regularly used tools of my overall repertoire.
And this is exactly where we should actually start evaluating, before we come to a premature judgment. How else would you be able to make potential decisions, if you’re not taking the facts into account. For this, we will – of course – look into different aspects, instead of only judging by personal preference.
I mean, if I would only judge it by „I’m developing software using this language since like 15 years“, the answer would be pretty obvious. Laying off things you’re doing for a long time, is pretty hard, but in the world of IT, you should generally aim for betterment anyways. Judging VB from „I always did it that way“, would be just as wrong as bashing VB, like some „high class programming language“ developers sadly do.
And don’t get me wrong! Visual Basic .NET definately has it’s flaws, but most of them can be countered by using it „correctly“. I mean, a tool is just as good as the person using it, right? Let’s first talk about one of the most important aspects: Some sort of „usage“ frequency stuff.
Is Visual Basic .NET still used?
When judging about if Visual Basic .NET is dead, we need to take a look at different thinks. You know, things for example like:
- What’s the resonance?
- Who is using it?
- Where is it used?
- Why is it used?
- Why it’s potentially not used?
Analysing the resonance, first
As mentioned in the list above, we should first start looking at the resonance of the programming language itself, I think. We can use different metrics here, like my experience, as a professional and long term VB.NET developer. And I think this is one of the best things to start up upon – not it’s because about me…
My estimated statistics
This way you can hear a voice from someone who is actually actively working inside that specific field. You’re therefore not that dependend on persons, who are just expressing their personal „hate it or love it“ feelings. Just subjective statistics like „How many requests do you get, regarding VB.NET“.
To get some sort of feeling, take a look at the following pie chart considering customers requesting a specific programming job from me and my business:
On the other hand, we can’t overweight my personal experience, as this is just one of the potential factors. I can’t therefore represent the „state of the art“ all by myself. In the end I can teel you, that for me personally, the requests are pretty balanced, at least considering the .NET languages.
And an important thing after all: I rather have a bit of something, than nothing from much, you know? I’m currently getting around 2500 real users a month and if only 1% get in contact with me for a job, I’m more than happy. Of course, those users aren’t only VB related…
Google Trends
Next to my personal experience as a developer in that niche, we should potentially take a look at a common tool. I’m talking about Google Trends, where we can compare different topics and their upcoming, decreasing, or even „steady-staying“ relevance.
For this, I started a small comparison considering some of the mentioned programming languages for the past 12 months (I made this screenshot on the 17th of january 2024) – worldwide. If we would only be judging by this, we could potentially say, that VB.NET is pretty much dead.
The lines are representing:
- Visual Basic .NET (lightblue)
- VB.NET (lightred)
- PHP (yellow)
- C# (green)
- Visual Basic (purple)
Taking other sources into account & concluding
Next to me and Google Trends, we could of course take many other sources into account. In the end, you won’t find exaggerating numbers like in some other „hyped“ languages. A few hundred requests here, some few thounds of video views there and hundreds of forum visits are existent.
Who is using it?
After the numbers could’ve probably speaked for themselves, we can now take a look at the question: „Who is actually using VB.NET?“. I think, I can do a pretty good job here on evaluating this. My YouTube channel, my website & many other sources of the past 17 years brought me into contact with many persons.
If I leave my natural „feelings“ behind, to avoid like „making it better, than it actually is“, I can give a pretty clear answer here. The most persons using VB.NET nowadays are probably over like 50. And with all due respect, as I worked and still work with many of them, they mostly only know basic stuff… Clean code is mostly not really a thing and the „it works“ is the driving factor.
Some of them are only using the language on a hobby level, where they would build small tools, to help them at home. Then there are others, that are pretty much on the same skill-level, but they use the tools to make their job easier / more efficient. And in the end, there are developers, who have actually built some sort of enterprise level application – but still not on a level, you should be aiming for: Clean and maintainable code, with like unit tests, SOLID and the whole stuff…
But again (and I feel very very bad, to even say this – but it’s a fact), most of the developers considering VB.NET are on a non-professional skill level. And I’m absolutely not saying this, because I want to offend anyone – I would never. It’s just some sort of realization, I’ve learned in 17 years of first playing around and then professionally using this language.
Sadly, this is mostly why VB developers are being hated at / bashed on the internet. This is what I’ve experienced myself as a beginner, what friends, colleagues, etc. can confirm and what others have told me about – even until today. Of course, you can do something against it, just don’t write bad code, right!?
Where is it used?
I’ve already cut off a few points above, considering where VB .NET is used. It’s mainly for some sort of private projects or hobbyists. The language itself provides enough capabilities to be used in big / enterprise applications, but this rather is an exception, than a common case.
The projects themselves pretty often are some sort of automation and measurements related things. Of course – the exceptions prove the rule…
Why it’s used & why it’s not?
In addition or analog to the projects realized with VB.NET themselves, we can think about or evaluate on the „Why’s“. I think the first and most obvious reason why Visual Basic is chosen as a language itself is, because it’s easy to learn. Many people – especially when touching code for the first time – get scared off of code in general. They often feel like it’s too complicated or cryptic and they get frustrated and leave.
I mean, of course I did get frustrated when I started with coding – and sometimes I still do – but I think that VB is actually one of the best languages to start with. Does that mean, that you should always stick with it, never caring for other things and staying on your level: NO! As always in the IT, you should look out for improvements of your processes and stay up to date.
The „easier to learn“ aspect comes from different factors, being like for example the more english oriented language style and some helpers. These helpers often take stuff away from beginners, where they would otherwise be confused. One of the easiest and most occuring examples for this is, when VB guys first encounter the fact, that there is no „Form1.Show“ in like C#.
I always tell my students: „You can’t use, what you didn’t create, right? If you want to use a hammer, that is non-existent, you’re having a bad time, correct?“. I could give a few more typical examples like this, but I don’t want to go too deep into that. I could for example start about „You shouldn’t use modules to make everything available everywhere“ and „Please don’t make your code chaotic by using GoTo’s“, etc. – but please don’t get me started here.
In the end: VB.NET takes away many things, you should actually know how to deal with / use. And it often encourages you to do things, which have proven to be bad habits / bad coding styles.
Why I’m writing about this…
At this point you could potentially ask yourself: „Why is this guy writing that load of words considering VB.NET?“. And „oh boy“, there are many reasons for that! I will always remember when I started with VB.NET like when I was 13, maybe 14 years old.
My own story
I had problems when I first touched the world of programming with C and C++ – I quit. But half a year later (just from remembering, don’t beat me to that one) I started my next run, as code itself always fascinated me, but this time, with Visual Basic .NET.
Nowadays I’m a successful and professional software developer and don’t get me wrong, I’m not (yet, lol) making millions of money! But I’m happy in my job being self employed, living my hobby as a profession. In the end, I think, if VB.NET wouldn’t have existed back then, I probably would’ve never become a real, professional software developer!
Unfair treatment of VB.NET
Even if it sounds like some sort of bad TV show, I really mean that. I think, that VB.NET is pretty often wrongly used, or understood – so to say. It offers many many capabilities of writing clean code, but many developers just don’t understand them correctly, or do them wrong on purpose. Some other persons are just like: „I’ve been doing it this way since x years, so I will continue doing it that way!“.
But this isn’t Visual Basic .NETs fault at all… When I started I often heard from friends, forum guys and many other people: „Learn a real language, what do you want with that shi**“. Today I’m smiling back at those idiots and they work at jobs they hate, while I’m sitting here (most of the time!), being happy about what I achieved (and will achieve) and which path I’ve gone through.
Wrapping up
Wrapping up this blogpost, I think we can summarize the following: Visual Basic .NET is and was a great language, but with it’s flaws. These flaws are potentially better called „temptations“, because programmers are and were tempted to use certain features, without knowing what and that they were doing something wrong.
If on the other hand you use it clean and apply important programming principles like SOLID and more, I can’t see a coding related problem. The only thing could be considering things like Avalonia UI, which is primarily for C# and WPF and I don’t think, that it’s possible with VB.NET (maybe I’m wrong).
The key here is, that projects and things like this won’t have VB.NET in mind first, when creating those (too be honest, mostly not at all). Therefore you could be missing out many helpful things by sticking to something which is sadly dieing out – at least it feels like.
If you ask me „Hey Robert, should I rather start with C# or with VB.NET“ I would a 100% tell you: „Go for C#„. If you would on the other hand ask me: „But Robert, isn’t VB.NET dead?“, I would probably say: „It (sadly) kinda is„.
If another question would be: „Can it help me get into programming / can I use it as a hobby as it’s easier and maybe switch later„, my response would be: „Of course you can! But don’t like act, that VB will be there forever, like everything in the IT. But in contrary to other languages, it’s end is nearer than the end of many others – whatever you want to interpret into the word ‚end'“.
Final words: Visual Basic .NET helped me get into programming as a young teenager, so I will always be thankful. Hopefully it will continue for quite some time in the future, being a partner at our side.