My recent posts on VB performance isn't an attack on the language; it was just on the current implementation. In some cases, designers have implemented a language feature in an expensive manner using reflection, when a superior method with a 10X-100X performance improvement was available.
I just read a post claiming that my post is an indication that VB programmers should get with the program and use C#. I measured VB through one yardstick, performance. While VB tends to do a lot more checks, which can hurt performance, they actually help programmer productivity. In any case, the performance differences between the two languages have little impact in most applications. Often, the performance overhead can be worked around, and there aren't many C# tasks that VB cannot also accomplish.
With the new features coming in the next version of VB.NET, programmers are likely to be substantially more productive than C# programmers for a certain class of common applications, because of features like the simplified My.* namespaces and Edit-and-Continue. The language does hide a lot of details, but that can also reduce the number of coding distractions.
This is your blog -say what you want. Don't be afraid to lose readership for things you say, you never know, you may gain more than you lose. Along the same principal, don't be so quick to defend yourself, religious wars have plagued humankind, and I don't see them ending in my lifetime. That is not to say I don't advocate circumvention, all I am saying is that I don't think it is possible. Speak your mind. Religious advocates will speak loudest, yet, the truth will stand in the actions.
Posted by: Ryan Dawson | January 27, 2004 at 01:10 PM
I recently attended a presentation by the principal author of Visual SourceSafe-- sorry, can't remember his name. Anyway, he's working on the next version of VSS which will be written in .NET 2.0. When talking about C# and VB.NET, he basically said (paraphrasing here) that developers should use C# because that's what Microsoft is using. This troubles me. The "Eating your own dogfood" mantra is great, but it also means that inevitably the C# developers will hoard all the best features (XML Comments, for example) for themselves and not back-port them to VB.NET as they should.
Basically Microsoft needs to be "eating their own dogfood" by actually developing real, production apps in more than one .NET language. It is counter to the philosophy of the .NET framework -- language independence -- to work this way. If we all wanted to use the "preferred" language then why not just switch to Java and its single set of syntax?
Posted by: Jeff Atwood | February 19, 2004 at 10:13 AM