The Shoe is on the Other Foot for VB.NET Developers

I don't think anyone will disagree that our thoughts can play a huge role in our emotions. One thing we have as human beings that sets us apart from every other species on the planet is self-awareness, the unique ability to analyze our thoughts and emotions and make adjustments to our behavior based on that self reflection. The following is for all the VB.NET developers who migrated to .NET from VB6 (or earlier versions). Close your eyes and imagine this scene in your head:

Years ago, say in 1998, you're at a conference, user group meeting, Microsoft launch event, DevDays, or some other gathering of developers. You're standing with 4 other VB6 developers talking about the latest new additions to VB6 and up walks someone to join the conversation. This person introduces him or herself as a Visual FoxPro developer. Now be honest, what are your initial thoughts, feelings, or impression of this person? You probably started feeling all superior because you use VB and they don't. Possibly someone in the group openly ridicules this person (jokingly of course they say) or questions their sanity or their intelligence. Why? It's very simple. Because you felt validated in your feelings of superiority because Microsoft actively catered to you and the VB community. All code samples coming out of Microsoft for business developers back then was in VB, VB had wonderful support from Microsoft and the third party ActiveX control vendors, conference sessions and demos were typically all done in VB, and Microsoft was fully entrenched in marketing support for VB. Of course you felt validated in your decision to code in VB, of course you felt like you had the community backing from Microsoft, of course you felt confident coding in VB6, how could you NOT feel emotionally comfortable with your decision to code in VB6?? Everyone who was anyone was coding in VB unless they were C++ junkies so why wouldn't you feel somewhat superior to someone coding in VFP?

You with me so far?

The truth of the matter is in many ways Visual FoxPro was a superior product to VB6. I don't say that lightly and I'm NOT trying to, and won't participate in a heated conversation comparing the merits of either product because that is NOT the focus of what I'm trying to say. I'll add that I have experience developing software in both products.  Visual FoxPro has always and still does to this day support a full OOP model with full inheritance (much more so than VB6 ever came close to), dynamic language capability (sound familiar with all the current talk of the DLR?), a built-in and fully language integrated, extremely fast local data engine, a built in report writer, loosely typed variables (sound familiar with all the current talk of anonymous type support with LINQ?), an integrated ANSI-SQL compliant query language (sounds like LINQ to me, heck, where do you think the idea for LINQ came from?), easy connect-ability to SQL Server, an interactive command window to execute commands and manipulate data, and the list goes on. Don't get me wrong, of course VB6 had its technical strengths as well (much better COM support for example) but I don't think it was a better TECHCNICAL platform than VFP. It WAS though a better SUPPORTED and better MARKETED platform than VFP and that was what ultimately determined which product would succeed and which would not. I saw the writing on the wall and moved from VFP to .NET and VB.NET years ago. I'm not one of the bitter people who fought the change. I welcomed the opportunity to learn something new and expand my personal and business horizons. I'm happy being a VB.NET developer.

The problem now for VB.Net developers is that the shoe is on the other foot. Much like VB developers felt superior to VFP developers because of the items outlined in the imaginary scene a couple paragraphs above, today the C# developers feel superior to VB developers because of the perceived stronger or better support from Microsoft for their decision to code in C# (more samples, used by Microsoft in demos, etc.). Consider that when a baby brother or sister of an only child comes home from the hospital with Mom & Dad the new baby is going to get more attention. Unfortunately that is interpreted by the older sibling, the former only-child, as the parents loving the new baby more. I'm sure this couldn't be farther from the truth but the PERCEPTION by the older child IS real. I'm sure those of you with multiple children will agree that you love all your children equally but will acknowledge that sometimes one, but not always the same one mind you, gets preferential treatment over the others (just to be clear, I'm NOT saying that C# is the baby brother/sister to VB). The reality is that C# has some features that VB does not have and VB has some features that C# does not have.

I think one of the things that makes the VB community uncomfortable is the "shoe being on the other foot" feeling. It doesn't feel good NOT being the  "favored son", the "golden child", the "IT" development community anymore does it? It's all about feelings... and don't make me go all Barbara Streisand on you! :-)

I say get a grip on your emotions and relax because in the end the thing that matters most is that VB isn't going away any time soon, if ever. Most people I talk with say they're more productive in VB and isn't that what it's all about?  Agreed?

Have a day.  :-|

posted on Monday, April 21, 2008 1:00 PM Print
# re: The Shoe is on the Other Foot for VB.NET Developers
D. Lambert
4/22/2008 5:24 PM
The spirit of your messages seems to be, "nothing personal, but this is how it is, and it shouldn't matter to you." I agree with the facts, but I think that realistically, VB.Net developers *do* have to consider the "feelings" of the rest of the development community.

Development as a trade is blown by the winds of market forces. Developers are as much a part of those forces as the tools they use, inasmuch as they validate products that work and products that don't. Business leaders, in the mean time, help steer the market by evaluating value vs. cost.

Individual developers (and individual business leaders) can have well-justified opinions that vary from the market majority because of their specific domains or skill sets, or a million other reasons. Even though they can each be right in their own way, the market as a whole will eventually marginalize them.

Despite the success and superiority of VFP, it's now a marginalized platform. A developer who uses only VFP has severely constrained employment options, no matter how great VFP is. Go find a Delphi developer - they'll talk to you all day about how great Delphi is compared to anything else out there. Then ask them how they feel about the market for Delphi developers.

I was a VB developer starting with Access 1.0, and then VB 3 all the way up to VB.Net. I've always liked VB a lot, but I can't deny the market forces that currently favor C#.

So if by "relax", you mean, "deal with it, because you can't change it," then I'm with you 100%. If, on the other hand, you mean, "don't worry - it'll all be ok," then I'm not so sure. I agree that VB.Net probably has many healthy years ahead, but if I'm a developer who wants to maximize my employment opportunities (not to mention my market value), I'd be a fool not to pick up C#, too. I did.
# re: The Shoe is on the Other Foot for VB.NET Developers
4/24/2008 9:18 AM
I don’t see the hype of the VB/NET vs. C# battle because if you’re a serious .NET developer, you should know both languages. However, if you surf forums or look for coding examples, the majority of responses are in C# as you mentioned. What frustrates me and what in my opinion gives VB.NET developers this perception of being not on par with someone who understands C# is the constant forum comment, “Can you show me this example in VB.NET”? I think that is just plain lazy and fuels this undeserved concept of VB.NET developers as inferior. It’s a shame.

For some reason new .NET developers seem to want to start in VB.NET. That’s how I started but I didn’t ask for C# samples to be translated to VB.NET. If you know VB.NET than you should be able to look at C#, get a general concept of what’s going on, and use the MSDN web site or a C# to VB.NET translator to figure it out. Soon, you too will be ‘bi-lingual’. I mean it’s all the same objects in the System namespace and it all compiles down to the same CLR; why you would limit your professional career to one language is beyond me.

If I was interviewing someone for a .NET developer position and that person claimed to know one language but not the other, than I’d pass on that person because he or she obviously doesn’t understand the basic fundamentals of .NET. I’m not saying you need to be equally proficient in both languages, especially if you only use one of them on a daily basis; but you should be able to figure either one out and not label yourself as a C# developer or VB.NET developer.
# re: The Shoe is on the Other Foot for VB.NET Developers
4/28/2008 2:16 PM
To Justin,

From the financial/economic perspective, it would make more sense to utilize programmers with multiple computer languages knowledge, and programmers with multiple languages skill are more marketable. However, the decision to utilize a multi-language programmer (a generalist), or a specific-language programmer (a specialist) may not be as clear as black-and-white in many circumstances. In this world of specialization, ask yourself this question: Who do you trust to perform the brain surgery? The brain surgeon doctor or the general practitioner doctor? And who would be more qualify to argue the murder case? The criminal lawyer, or the divorce lawyer?

# re: The Shoe is on the Other Foot for VB.NET Developers
4/29/2008 10:11 AM
I still have to disagree with you. I would want a .NET specialist, not a VB-only or C#-only person. If you are an expert in the .NET framework, the language you implement it in shouldn't matter. If you are a .NET specialist, then you should be able to perform using either of the two major languages Microsoft widly supports. Being ingnorant of the other language would raise red flags to me from anyone claiming to be a .NET expert.
# re: The Shoe is on the Other Foot for VB.NET Developers
4/29/2008 12:42 PM
I certainly agree with Justin that a serious .NET programmer will be able to figure both languages out. The way I see it, C# and VB.NET have very simlar code since most of the real code are calls to the framework, anyway.

Anyone that has done programming on a professional level will be familiar with the BASIC-style languages (FORTRAN, Basic, ASP, etc.) and the C-style languages such as C, C++, PHP, etc.

Personally, I like VB.NET better because it is easier to learn, read, code, and it looks beautiful in my eyes. If someone disagrees, then so be it -- we can't all like the same things, and that is fine.

If I have to, then I can write anything in VB.NET or C# but unless there is a compelling reason to use a specific language, I will normally go with VB.NET -- I simply feel more productive with VB.NET so that's the obvious choice for me.

I do sometime write demo programs or answer forum posts using C# code, but that is normally because the person asking has some existing C# code that isn't working. Sometimes, I will code a project in C# just for a change. But I can't see any major advantage to C# over anything else.

Perhaps these things depend on the type of projects one works on. Most of the time, I am the one that maintains the code and am not dependent on what my coworkers code in. However, when I do join a team, I use whatever language they use (yes, including Pascal or ASM)... they are all just languages.

Finally, there is also the option of mixed-language programming, but that is a whole other issue.
# re: The Shoe is on the Other Foot for VB.NET Developers
5/7/2008 3:38 AM
I agree with people that say if you are .net developers it will not make so big deference which language you write your programs with, that is because if you well understand .net framework then totally you deal with same object. do not miss understand me I am not saying C# is equal to VB.NET what I am trying to say that if you know how to code .net framework by one of them then you got half the way to learn the other.
Personally I love VB.NET that just a feeling, because it was my gate to enter this deep ocean "PROGRAMMING", but I feel when I code with c# things get more sense and logic, I always compare that like when you talk to someone with your native language, it make deference from when you talk by your second language, does not it? That maybe because .net itself had programming in C# or it might be just personal feeling.
# re: The Shoe is on the Other Foot for VB.NET Developers
Ebony Lesbian
9/9/2008 3:35 AM
I was a VB developer starting with Access 1.0, and then VB 3 all the way up to VB.Net. I've always liked VB a lot, but I can't deny the market forces that currently favor C#.
Comments have been closed on this topic.