The Slow Brain Death of VB.NET

It's amusing that the very people defending VB.NET are, ironically, illustrating precisely why VB.NET is in such trouble:


This is a companion discussion topic for the original blog entry at: http://www.codinghorror.com/blog/2005/03/the-slow-brain-death-of-vb-net.html

With my vb6 background, when .NET first came out, I skipped vb6 and went straight ahead for c#. Then I looked at vb.net and found it a lot simpler and faster to do things. Now, I am in a job where they mandate use of c#, so I am back in c#. However, there isn’t a day that I don’t wish I as coding vb.net

What’s the point ?,I kinda like sticking to VB.NET…like you sir,this post takes a sorta marginal view of things.The developers have no time for vb6 anymore because of the .net framework api’s.The activex days and dll hell days…

Here’s my view. I used VB from beta 1.0 to VB 6. Did Java for 1 1/2 years, learned to love true OOP. Had to go back to VB 6. .Net came out, learned C#, not VB.Net. Never looked back.

I guess I just fell in love with C# and the .Net framework. The thought of going back to VB 6 makes me ill, but thats just my opinion. If you like VB 6, use it wherever you can and it makes sense.

Paul

I switched to VB.NET and found it to be a fairly easy migration but I’m one of those people that can pick up pretty much anything fast. I did teach myself C# last year although I still prefer VB.NET. Actually, I don’t really even code anything in C# at this point, I just convert stuff back and forth between the two to keep my knowledge of both up.

So, my questions are:

  1. Is C# more likely to be the next VB6 than VB.NET is?

  2. Is C# approachable enough to appeal to those that just want to mock up something quick for a prototype and/or the million other things that VB6 was much better at than it’s competitors? I don’t see VB.NET adding a lot of value over C# in this regard. I think VB was much more approachable than C++, but I don’t think the same argument can be applied to VB.NET and C#.

  3. If neither C# or VB.NET are going to be the next VB6, then what will be? It seems obvious to me that VB6 is now destined, as all technologies in maintenance mode are, for the same fate as Cobol and MFC. PHP is the only thing I know of that seems to have a lot of the same culture around it that VB had. Java has failed to make any headway in this regard. It’s seems like it’s C#'s battle to lose.

Excellent commentary. Enjoyed reading it.

Is C# more likely to be the next VB6 than VB.NET is?

Based on the current trends and data available, as well as my personal observations (FWIW), yes.

I think VB was much more approachable than C++, but I don’t think the same argument can be applied to VB.NET and C#.

Agreed, and this is one of the major criticisms: what does VB.NET really offer over C# other than an alternative syntax and a few amenities (Handles, easier Events, etc)? Plus it gives up stuff for backwards compatibility (the Ain’t keyword), so in a way, it’s the worst of both worlds. MS was in a “damned if they do, damned if they don’t” situation with VB.

If neither C# or VB.NET are going to be the next VB6, then what will be?

I do think C# is the next VB. There’s tremendous momentum around .NET, but it’s really specific to C#. VB.NET just happens to be along for the ride as a minor sideshow amusement. I think we’d have better luck creating petitions to add case insensitivity and background compilation to C# (or you could just buy Resharper-- but this does nothing for the case problem).

It was Java that became the next VB. .Net was essentually a response to Java which was consuming VB mind share at a rapid pace. Currently, Java/J2EE jobs out number .Net jobs by nearly 2 to 1. Who knows though, C# may become the next Java.

Jeff: (from http://rblevin.blogspot.com/2005/03/microsoft-mvps-revolt.html)

“Although I am learning C# instead of VB.net now, the future of programming is clear, and object-oriented languages designed from the get-go for Web and Internet-enabled functionality are the future. Period. And no amount of romanticizing VB6 is going to change that.”

Still beating the C# drum, are we? Still trying to justify your illogical choice to move the C# by claiming it is the future? Already practicing your superiority-complex skills by assuming that your word is final?

Well it seems you’ve already made up your mind to remain delusional, so while you are at it say hello to Alice for me 'cause you are obviously living in wonderland.

Meanwhile, I’ll go watch TV, it seems the BBC is reporting a catastrophic event involving the number of VB programmers going from about 6 million to 5,999,999. Hard times we live in.

After reading his blog for a while, Jeff doesn’t seem the sort of guy to remove comments from people, whatever they say. After all, if he didn’t want people to comment, he wouldn’t write his thoughts in a blog, would he? Some constructive criticism would have been nice, however.

To me, this VB.net vs. C# debate is a moot point. Whether C# is better than VB.net or vice-versa, we can argue about that till the cows come home. Here’s an idea - use whatever language you like, but don’t criticise others for making a different choice.

Rightly or wrongly, I’ll end up having to switch to C# full time because there are more jobs around and for some reason the C# jobs pay better. However, like the guy above said - there won’t be a day that goes by that I won’t wish I was using VB.net. To me, it’s just more readable.

Every language - Java, C#, VB.net, VB6 has it’s advantages and disadvantages. Can’t we all just like, get along?

Who knows though, C# may become the next Java

Right-- and syntactically, C# looks a lot more like Java than anything else. There’s yet another reason former VB developers are adopting C#.

Well it seems you’ve already made up your mind to remain delusional

It is partly based on my personal observations, but it’s also based on the survey numbers I quoted which back up those observations.

CodeRush fully supports VB, and since I speak CodeRush, I speak VB for free. :slight_smile:

I also have gone from VB6 to Java to C#. I’ve hardly even touched VB.NET. (I guess that makes me a statistic…).

VB.NET was necessary three years ago, in order to bring the “herd” to .NET. It is also no longer “necessary”, as it now gets to play in the same ballpark as C# and C++ (and J++, which I also will probably never use).

Now that the “herd” has begun the migration to .NET through VB.NET, they are free to move from one language to another within the .NET Framework, which is nice.

Now the real problem to solve is that companies still feel the need to FORCE it’s developers to use ONE language. I’m afraid that this type of short-sighted approach will take a few years to wear off.

  • Joshua

Right, that’s why I linked to this in the article:

http://www.codinghorror.com/blog/archives/000202.html

Which is good news, but still, the fact that VB.NET gets second-class citizen treatment in the .NET world is not a good sign. C# is the priority for most vendors; VB.NET is an afterthought.

Resharper is supposed to support VB in VS 2005.

there’s no VB.NET version of Resharper

Ironically, the next version of ReSharper WILL support VB.NET. :slight_smile:

i have been programming for almost 3 years using the vb6. And i dnt even major problem with this language, only 1 vb consume my resources… i got stuck!!! i only can say that this language is great!!!

Spock once said to Capt. Kirk:

“Is it possible that we’ve become so old, so inflexible that we’ve outlived our usefullness?”

Take that for what its worth in this discussion.

All I know is that since I’ve stopped creating new applications in VB6 and moved exclusively to VB.Net (since Framework 1.0), I’ve become a much better and efficient programmer. When I go back and maintain some of the applications that I still support in VB6, I am amazed at the improvements I’ve made over time in VB.Net.

Made me think of why I made the switch to C#…