I've been following this whole VB.NET vs. VB.NOT debate for awhile, and I'd
like to offer another point of view. In fact, I'll offer THREE points of
view for the price of one. It seems like there are at least three different
ways to look at this whole VB.NET/.NET debate.

1. Developer point of view

To the individual developer, VB.NET is just another language to be learned
and just another tool to add to ones toolbox. Anybody who has been in this
field for any length of time realizes that there will always be changes,
and it is up to the developer to keep up with those changes, lest he/she
get left behind. When I was in high school, the "hot" language was Pascal.
By college, it seems like the world had moved over to C. After college,
C++, VB, and Java were all the rage. Now that we are entering the new century,
it's not surprising that something else is looming on the horizon. From
what I've seen and read, it seems like there are a lot of nice new features
in VB.NET which make it a more powerful and versatile language. Of course,
that is just my opinion. No matter what I think of the language, the fact
is .NET is the direction that Microsoft is taking, so that's reason enough
to add it to my "bag of tricks".

2. Corporate point of view

Things look a lot bleaker for those who have invested time and resources
to build up a VB code base. Because code written in VB6 won't work under
VB.NET, these groups are faced with a dilema. They can either keep their
code in VB6 or move it to VB.NET.

I understand that the "party line" is VB.NET is for "new code". However,
the reality of the situation is that there is a serious downside to keeping
code in VB6. What people forget is that most places follow an evolutionary
development model where new products are based on existing code. Microsoft
follows this model. When they come out with a new version of Office, it
isn't a "ground up" rewrite. They take the code from the previous version
and use it as a basis for the next version. The VB6 code is effectively
locked out of any .NET features. If there is some new feature that is added
to .NET and you want to incorporate into your VB6 project, forget about it.
Furthermore, the VB6 code cannot use any new controls or components that
are produced with .NET. This effectively limits how much your VB6 code can
evolve.

Furthermore, there may come a time when Microsoft scraps support for "Classic
VB" applications in their future operating systems. It's possible that Windows
2010 will be totally dependent upon .NET so any all all apps running under
it will require its features. It may or may not actually happen, but it
is a risk you run by keeping your app in VB6.

The alternative, of course, is to bite the bullet and port your app to this
new framework - not a trivial task.

3. Microsoft shareholder's point of view

I think shareholders of Microsoft stock have some reason to view .NET with
trepidation. .NET is forcing Microsoft's customers to revisit their investment
in Microsoft tools. Because of this, there is an opportunity for Microsoft's
competitors to capitalize on this. All of the usual suspects (IBM, Borland,
Sun, etc) can use this moment of uncertainty to tell their respective products
(if they are smart which of course isn't a forgone conclusion). They can
call up corporations and say, "now that Microsoft is making you rewrite your
apps to conform to .NET anyway, maybe you should consider our shiny widgets
instead."

To their credit, Microsoft has sold their changes pretty well up until now
(DOS-->Windows 3.0-->Windows 32 bit), so that's in their favor. However,
they have always maintained a smooth migration path. This time, the migration
path seems a lot bumpier.

I would guess that most of the "friction" on VB.NET vs. VB.NOT is between
people in the 1. category and people in the 2. category. One thing I find
disturbing (maybe that's too strong a word but I can't think of anything
better at the moment) is that certain individuals can't seem to acknowledge
that somebody else could approach the issue from a different point of view.


Case in point: Russell Jones.

It is clear that he is strongly in the 1. category which is his perogative.
Yet, he assumes that everyone must also be in the 1. category otherwise
they are somehow "wrong". I am also in the 1. category (with mutual funds
holdings in the 3. category); however, I understand the point of view of
those in the 2. category, and they are perfectly valid and rational and need
to be addressed.