November 2003 - Posts
FTP Online just posted a full version of a recent interview with Chris Dias titled “VB.NET Branches Out”.
OK, I don't find “branches out” to be in any way compelling, but at least it looked like they were finally going to “officially“ differentiate VB from C#. All the features were there...great answers by Chris to surprisingly pithy questions from Patrick Meader...I'm going “Yeah, they _finally_ get it!”...and then *Wham!*, face-first into the wall. Goddamnit. Chris said:
“The root of the question is: Is there something they won't be able to do in VB.NET that they will be able to do in another language such as C#? The answer to that is "no." There are features that one or the other might not have, but the fundamental capabilities will be the same, because they derive from the framework.”
Well, as _I_ see it, these are two orthogonal issues. When Chris said “no”, he blew the opportunity to finally do something to differentiate the two tools (note that I'm not saying “languages“). Sure, they use (_not_ “derive from“) the same framework, but that's a nothingburger. The C# advocate is still going to say something like “you can't do unsafe code in VB“ (or something similar) and if the answer to “what can VB do that C# can't?” is “not a damned thing” then we're back to then “I have to choose C# because I don't want to limit myself”.
In my very unhumble opinion, what these products need is _more_ differentiation, not less. There needs to be something compelling that you can do in VB that you cannot - and likely will never be able to - do in C#. I really don't care what it is...that's not important...but as long as VB is seen by the “advanced“ programming community as a providing something “less” - rather than “different” - it's going to continue to come off as second rate, no matter how much effort Microsoft puts into the “development experience”.
Seems obvious to me. Does everyone else agree?
I have a meeting scheduled next week with Chris (and Jay Roxe, the new VB product manager) and am very interested to hear what the rest of the developer community thinks about my conclusion.
Kirk Allen took this picture of the INETA Speakers band playing at the Expo hall during “Ask The Experts” at PDC last week.
From the left are Carl Franklin, Jeff Prosise, G. Andrew Duthie, Richard Hale Shaw, and Shawn Wildermuth. Not shown is George Bullock (playing bass) from MSDN who helped organize the equipment. Francesco Balena was supposed to be there on sax but wasn't feeling well.
As you might expect with a bunch of “public figures“, the competition for “lead guitar“ was kind of fierce. In fact, Carl & Jeff traded off between drums and guitar on each song!
Happily enough, these guys - having never played together before - were damned good!
The “Go Live License“ for ASP.NET was a great thing. Here's a post from an old blog by Scott Guthrie as well as a mention in an interview with Eric Rudder.
While Scott talks about how the “Go Live License“ showed how much confidence Microsoft had in the technology, what I mostly recall was the relief at being able to use beta code in a real system without having to worry about the Microsoft “license police“. Actually, I don't even know if they have a “license police“ <g>, but since I was working on the .NET Framework team at that time, the last thing I wanted was to get “busted” for using beta code publicly.
Thinking much further back, I also recall the excitement around the buildup to the Windows 95 launch (I actually wrote a peripheral piece of that product as well). Of course, back then much of communication took place on a private CompuServe forum and it's probably impossible to build an online community today with such a high “signal to noise“ ratio. Still, there were a number of tools and utilities that the inner circle developed that could only be distributed amongst themselves.
So...Microsoft is hoping that there are some new “killer apps“ that Longhorn technology is going to enable. Except that it's not going to ship for a few years. So, why would developers spend time now working on something that they couldn't generate any revenue from - or start building a business around - until that time? Well, what if they could start distributing early versions of their products this coming summer when the first major beta happens? My feeling is that, if Microsoft wants to hear about cool new applications next year, they need to articulate an equivalent “Go Live License“ right now.
I went to a SQL Server user group meeting last night. http://www.pnwsql.org/, which is actually an MSN groups page with a broken graphic link, but - hey - they're data guys, not web developers.<g>
About half of 50 or so attendees were “developers“, the others “administrators“. Of course, their idea of a developer might be a bit different than ours. Still, the presentation - “SQL Server 2000 Profiler“ by Fernando Guerrero - was fascinating and had a lot to offer to us “real“ developers. My favorite insight was gained from looking at the trace information generated by a simple SqlDataAdapter.Update of a single value: A Select statement, two complete sets of parameters for every field, etc. While I can appreciate the flexibility of the SqlDataAdapter, that flexibility clearly comes at a price.
Another fascinating demo was stepping through some very simple transaction code and seeing exactly what happened: Despite the transaction attribute, the transaction was not started until the SqlConnection.Open was executed. Great stuff...hope he writes a book about it.
And the administrators? Well, if you're super-interested in topics like mapping SQL Server affinity to real versus hyperthreaded processors, then this is the right bunch of people for you! Frankly, with the next major version of SQL Server including support for managed code, we're going to be seeing a fusion of what are traditionally different areas of interest.
He's living near the Vatican (don't ask...it's a long story) and I hadn't returned his email, so he googled me, found my blog, and saw that I hadn't written anything in more than a month. Then my friend Fernando, a SQL guru, asks if I have another blog somewhere else. <sigh>