BT

Facilitating the Spread of Knowledge and Innovation in Professional Software Development

Write for InfoQ

Topics

Choose your language

InfoQ Homepage News Is There a Future for VB.NET?

Is There a Future for VB.NET?

Leia em Português

This item in japanese

Bookmarks

Many have wondered why Microsoft is giving a different treatment to VB.NET compared to C#, why VB.NET developers are paid less than C# ones and if they should worry for their future or not. In a podcast, Lisa Feigenbaum, PM in .NET Managed Languages Group, assures the VB.NET community that VB definitely has a future.

Lisa explained why VB.NET and C# used to have a different perception: it was a Microsoft strategic decision in the first place. Microsoft did not only want two different languages with two different syntaxes running on the CLR, but they wanted them to be different in their features, so the two languages went on quite different paths in the .NET world. Since most of the related documentation coming out from Microsoft contained C# samples and less VB.NET samples, everyone concluded that VB.NET is less favored and possibly it will die in time, not having enough support.

According to Lisa, in the beginning, Microsoft tried to differentiate the two languages by implementing different features in each of them, but many times the VB.NET customers requested to have C# features, while C# customers wanted VB.NET features, so in the end a decision was made to keep both languages in sync. Also, the number of VB.NET developers is slightly higher than C# ones and Microsoft won’t kill VB.NET because it is not in their interest to do so. This commitment was reinforced when the two design teams were joined together some 18 months ago in order to co-evolve the languages.

Anders Hejlsberg, Chief Architect for C#, oversees the development of both languages to make sure they both progress. After he is making a decision regarding some feature to be implemented by C# and VB.NET, the respective design teams split up in separate rooms to design the implementation of the feature according to the syntax and the overall design rules for the language. This process has two results: the languages keep adding the same set of features, and the languages maintain their personality and do not necessarily try to copy the way the other is implemented. This will ensure that VB.NET will not be eventually absorbed by C#.

The languages are converging rapidly. Currently, the only applications that can be done in C# but cannot be done in VB.NET are XNA games because there are no project templates for VB.NET. But Microsoft wants to completely close that gap so the two languages would be completely equal.

The results of the joined effort will be seen more clearly in the next version of Visual Studio. VS started initially in C, C++, but VS 2010’s editor and compiler will contain more managed code than before, and that means more C# and VB.NET code. Neither VS nor Office do not start having all managed code over night because there is a huge amount of valuable code already written, but new code is generally managed one.

The fact that some studies show VB.NET developers being 10-15% paid less than their C# colleagues may be due to the fact that the perception about VB.NET has still not changed that much and more time is needed to realize that those languages are equal and treated as equal by Microsoft.

Rate this Article

Adoption
Style

BT