Is It THAT Buggy?
Zeddy (my Academic Evangelist) posted up a good question on the INDC mailing list yesterday, “Do you Experience VS2005/Express RTM bugs?”, and posted up several blog that addresses such bugs. I found it quite interesting to read all of the bugs reported (kind of give me some insight on how developers do their job). I have tried most of them on Visual Basic 2005 Express Edition, and found some shouldn't even be called a bug. Here's the list:
- Ayende Rahein
He posted up some links to other blogs that addresses bugs in the Visual Studio 2005. This is a good starting point for bug trackers. He posted a link to Product Feedback Center (PFC). The “bug“ was problem with curly braces from C# (thank goodness Visual Basic doesn't have any). The IDE crashes when adding a method declaration. From my PoV, there are 2 problems with the code example. The biggest one is, DO NOT mix classes in ONE source code file. Strange things like the above “bug“ WILL happen. The second smaller one, curly braces are evil! :) Naaah, that's a joke.
- Frans Bouma
Frans tried to do the same thing above, the problem with curly braces not matching their supposed partners are becoming common here on Visual Studio 2005. Same rule apply, DO NOT mix your classes in ONE source code file.
- Roy Osherove
Roy posted a problem on his VPC (we all know how VPC performs...). I've lost references to System.dll once on Beta 2, but it doesn't seem to reproducible. And then looking on the updated post, then the “bug“ came out. Watch your namespaces guys... For average developer, it's NOT an everyday's job to extend the System namespace.
- Michael Teper
Ayende posted the direct link to PFC. It doesn't seem to affect my Windows Forms solutions, so I might try this on Web Forms. Anyone got a sample code that is reproducible for me?
- Rolf Bjarne
Also linked to PFC directly. Reproducible on my machine, BUT is this development code? Or is it just a test code? Analyzing the code, generally it is NEVER a good idea to put a method directly over an expression. Simpler example of the code (but it's not going to crash yours) is:
Dim X As String = (100.5 + 2.789).ToString()
You should put the expression result in a temporary variable, first. It should look like this:
Dim CalculationResult As Double = 100.5 + 2.789
Dim X As String = CalculationResult.ToString()
This approach improves code readibility and evades errors such as the PFC report.
In conclusion, general users using Visual Basic 2005 Express Edition will NOT meet any of the “strange” bugs above. It is TRUE that the above bugs are critical, but they are introduced by not adhering to good code guidelines.
For all you purists that demand bug-free applications, it is about time that you realize that release with bugs are better than no release at all.
I've been waiting to use features from 2.0 and I got enough of what I need on the RTM. Bugs that really deters me from using Visual Studio (which came from Beta 2) have been resolved, and I'm happy to use it. Didn't I mention that using 2.0 made me more productive?