/Home /Archive /Syndicate /Blog /Support /About /Contact  
All Visual Basic Feeds in one place!





Often as a new release of Visual Studio approaches there are posts regarding, where are the two primary languages in .NET going?  In short as has been noted on one or two places around the net the VB MVPs posed the question of, what is the strategic long term expectation for VB and how is VB doing in the market?  Which language should I learn, which will help me get a job? etc.  

(The short answer regarding which language to learn is - if you are going to do just a little programming VB is easier to learn and maintain.  If you intend to be a Professional Software Engineer and limiting your career to being a full time Cubicle Code Monkey you need to know both. Just knowing C# or VB isn’t enough, as a developer I’ve learned somewhere between one and two dozen programming languages, to be honest I lost track of them all and stopped counting long ago – although interestingly enough I still have my high school ‘Basic’ programming book...sentimental value only - the point being casual developers will be more comfortable in VB and professional developers learn languages and VB and C# are both necessary with .NET today.)

 

At any rate focusing on the core topic, depending upon where you ‘stand’ your view of VB or C# might be that it’s doing great or not so great.  After all if you are working in a shop where your senior management likes C# it might seem like very few people are working with VB. 

 

On the other hand this perception might be a self-fulfilling prophecy for your company. After all if every project uses a hammer then there must be a lot of nails (how’s that for twisting a proverb “if all you have is a hammer everything looks like a nail”)  If your company “supports” both VB and C# languages but encourages that new projects use one language well then you begin to wonder.  As I noted in the past I’d consider that pretty short-sighted for a consulting company.  After all if your goal is to sell software as a service (which consulting companies do) you don’t want to lose a major portion of your market to language bias… so before I go further I want to clarify where I got some of the data I’m about to toss out.

 

I think it’s common knowledge that I’m an MVP (I can hear some of you: ‘could he mention it one more time…’) anyway I bring this up to note that it shouldn’t be a shock to realize that as an MVP I have a Non-Disclosure Agreement (NDA) with Microsoft.  This comes up because as a group we MVP’s have some communication channels (formal and informal) with Microsoft.  One of the formal ones revolves around my specialty area Visual Basic.

 

In this area the VB-MVPs have essentially an opportunity to truly speak freely to Microsoft on NDA topics.  It’s where we can say we think that feature A is useless or that we think the VB team has dropped the ball by not having a given feature, or where we think they need to take the ball and really run with it.  It also allows us to ask questions and get answers that might embarrass one or more people at Microsoft.  In general it is a valuable tool.  Every so often we get permission to post some information from that discussion to help frame discussions outside that group – things that aren’t too germane to actual company business, and that’s the case for the numbers I’m about to post.

 

There are way more people online downloading C# right?  Wrong – At this point you aren’t going to be surprised when I say the VB Express is the top download of the Express editions.  It probably also doesn’t surprise you if I say that it’s downloaded far more frequently then C++ Express.  But does it surprise you when I note that C++ is the number 2 download behind Visual Basic.  It surprised me, after all I expected Visual Web Developer to be in the top 2 (after all both VB and C# web developers would use that one tool).

 

That’s right Visual Basic alone is more popular by a margin of 20% over C++ <credit VB Team>.  What I will say is that the other three express editions are all much closer in terms of downloads, and registrations.  The point is that Visual Basic is noticeably more popular. Of course this is the Express Edition, that’s for students and hobbyists, they aren’t professional developers.

 

So how big is Visual Basic when someone reviews the market?

Well according to Forrester research Visual Basic is the #1 .NET language. <credit VB team>  Note that’s not some legacy number based on COM developers, that’s just in terms of .NET developers.  That’s right the majority of professional developers out there are using Visual Basic, and that even makes sense.

 

Think about it this way, prior to .NET the two primary development languages were C++ and VB.  C++ was far more powerful, but it took longer and cost more to develop applications.  Sure for someone developing tools or with a huge install base the disadvantages could be overcome for the power.  VB on the other hand was much easier to learn and use, the code was easier to maintain and its performance while not equal to, was certainly comparable to C++.

 

Along comes C#, from the standpoint of C++ developers C# offers a familiar syntax and reduces the disadvantages of C++ - applications were easier to develop and accordingly cost less.  C++ developers and Java developers have without a doubt flocked to C#.  In fact if you are a Java developer and haven’t moved to C# boy are you missing out on the future.  However, these were smaller developer communities to start with then Visual Basic which also released a .NET version.

 

Visual Basic also moved to .NET and its disadvantage – not having the same runtime environment and power as the other major language went away.  Note the fact that VB is easier to learn, read and maintain is still true but now you also get all the power of C# and since .NET creates code on par with C++ it means you as a VB developer are creating first class applications.

 

Sure some people have jumped from VB to C# that is to be expected, and many companies which in the past would have C++ for some projects and VB for others are moving to use only 1 .NET language.  However, as I’ve noted in the past most VB developers will find the transition to VB.NET fairly easy and natural.  When I teach I find that the students with previous VB experience do very well, and in fact that once they get the key elements of Object Oriented Development are ready to become productive.  More importantly the VB teams recent move from a migration wizard to the Interop toolkit (similar to WPF Interop) and the Power Packs make the transition from VB6 much easier.

 

What is interesting is how the VB team blog (http://blogs.msdn.com/vbteam/) ranks in the top 1% of all MSDN blogs and the fact that the VB Developer center on MSDN is one of the top trafficked sections of MSDN (http://msdn2.microsoft.com/vb). <credit VB Team>  In other words VB is doing just fine and as I’m sure we would all agree so is C#.  In the near term there is no reason to suspect anything about this equation will change – C++ and Java developers will tend to prefer C# and those who have mastered both VB and C# will prefer VB J

 

So what about the future?

Well for starters the Visual Basic team recently published the Beta version of the Visual Basic language specification.  A great step for defining how the language works, and one I look forward to seeing become the basis for standardization.  We also know Paul Vick is discussing VB X (aka VB 10)  over at Panopticon Central (http://www.panopticoncentral.net/) and is very open to input on things to deprecate in the languages specification and new language features to add.  I highly suggest going over to get in a good suggestion or two.  As for Visual Basic – I’m confident that it’ll be around and diving into all corners of the Microsoft development tools.



This weblog hosted by Orcsweb Managed Hosting.
© 2005 Serge Baranovsky. All rights reserved.
All feed content is property of original publisher. Designated trademarks and brands are the property of their respective owners.

This site is maintained by SubMain(), a division of vbCity.com, LLC