Facilitating the Spread of Knowledge and Innovation in Professional Software Development

Write for InfoQ


Choose your language

InfoQ Homepage News Visual Basic's Questionable Place in Microsoft's Roadmap

Visual Basic's Questionable Place in Microsoft's Roadmap


Since the beginning, Microsoft has publicly claimed that Visual Basic and C# would be equally supported on the .NET platform. The community, on the other hand, has constantly accused Microsoft of not supporting VB. So where does the truth lie?

On the standard .NET platform, both languages have full access to all .NET libraries.

For most users, both Visual Studio both VB and C# are supported roughly the same; the only significant difference is Visual Basic's background compiler. But when it comes to the SDK, things are not quite on par.

VB templates and code samples for Visual Studio SDK 2005 were not available until September of 2007. And even then, they were an add-on pack distributed separately. For Visual Studio SDK 2008, Microsoft has given a reasonable collection of samples. There are not as many as there are for C# but more than C++.

XNA is the next sore point amongst VB developers. The Xbox 360 runs a modified version of the .NET Compact Edition framework that, according to rumor, removed the VB runtime. This is supported by Jack Palevich's claim that the CLR used by the XBox 360 doesn't support features needed by VB language.

According to the Microsoft Connect site, the XNA team is working on addressing this. An unnamed Microsoft employee wrote,

We are very aware of how important it is to support VB as a programming language for XNA Game Studio. We are actively working hard with the VB team to establish the right level of support and timeframe to add VB support so lose hope!

There is evidence on the VB that they are working towards this goal as well. A new feature in VB 9 called "runtime agility" will allow the compiler to use custom runtimes for other platforms.

Elsewhere support for VB is likewise unsatisfactory but understandable. For example, HealthVault only offers examples in C#. Eric Gunnerson explains,

As is true on most projects, our schedule is very tight and we don't have a lot of resources, so we need to triage to spend the resources where they generate the most benefit.

At this point, support hasn't come up amongst any of the partners who have active development efforts, so we haven't provided anything in that area. When that starts happening, we will then re-evaluate what we're doing.

The Windows Media Center SDK supports both VB and C#, though there likewise have been complaints about new project templates only being provided for C# developers.

What's your opinion, should Microsoft only release samples and templates in both VB and C#? Or should they push out them as quickly as possible even if it means some will only by in one language?

Rate this Article