March 14, 2005 7:37 AM PST
Developers slam Microsoft's Visual Basic plan
The developers, members of Microsoft's Most Valuable Professional program which recognizes influential members of the developer community, claim the move could kill development on millions of Visual Basic 6 (VB6) applications and "strand" programmers that have not been trained in newer languages.
Microsoft said it will end standard support for Visual Basic 6 at the end of this month, ending free incident support and critical updates. Both services will be available for a fee for another three years.
But MVPs hope Microsoft will reconsider not just VB6's support options, but will continue to develop the language alongside its newer Visual Basic.Net.
"By providing a new version of a COM-based Visual Basic within the Visual Studio IDE, Microsoft will help maintain the value of its clients' existing code, demonstrate its ongoing commitment to the core Visual Basic language, and greatly simplify the adoption of VB.NET by those that wish to do so," the petition says. "The decisions of if, how, and when to migrate code to .NET should lie with the customer."
The problem, say the dissenting developers, is that when Microsoft made Visual Basic.Net (or Visual Basic 7) the successor to VB6, it actually killed one language and replaced it with a fundamentally different one. It's effectively impossible to migrate VB6 applications to VB.Net, and for VB6 developers, learning VB.Net is as complex as learning a completely new programming language, critics say.
"The .Net version of Visual Basic is Visual Basic in name only," wrote developer and author Rich Levin in a recent blog entry. "Any organization with an investment in Visual Basic code--consultants, ISVs, IT departments, businesses, schools, governments--are forced to freeze development of their existing VB code base, or reinvest virtually all the time, effort, intellectual property, and expense to rewrite their applications from scratch."
Microsoft continues to develop C++ alongside C#, the language's .Net counterpart, and the company should do the same with "classic" Visual Basic and VB.Net, the petition argues. Microsoft introduced VB.Net in 2000, and since then, developer use of VB6 and older versions has declined steadily. Many of those leaving the language behind are migrating not to VB.Net but to non-Microsoft languages such as Java, according to some surveys. For example, a November 2004 survey of developers in Europe, the Middle East and Africa by Evans Data found that Visual Basic had lost 25 percent of its developer base in those areas since 2003.
In North America most Visual Basic developers continued to use VB6 and older versions--45 percent of all North American developers, compared with 34 percent for Visual Basic.Net. Fifty-four percent of North American developers used some sort of Visual Basic.
"One of the main issues keeping VB6 and earlier developers from making the migration to VB.Net is the steepness of the learning curve," said Albion Butters, Evans Data's international analyst, in a statement. "The difficulty in moving existing VB6 apps to VB.Net is, in some cases, insurmountable."
While the developers' argument may make sense, it is probably a moot point, as Microsoft is unlikely to change its stance on VB6, say some industry observers.
"All software--desktop apps, languages, databases, whatever--gets 'end-of-lifed' eventually, some unfortunately, some fortunately," said Jez Higgins, a Birmingham-based developer. "The fundamental programming disciplines aren't tied to any one language or any one way or working. They won't disappear out the side of your head. I suggest these blokes buck up and get on."
"The future of programming is clear, and object-oriented languages designed from the get-go for Web and Internet-enabled functionality are the future," wrote one developer in response to Levin's post. "No amount of romanticizing VB6 is going to change that."
See more CNET content tagged:
Microsoft Visual Basic 6.0,
Microsoft Visual Basic,
Microsoft Visual Basic.Net,
petition,
developer







Anyone else noptice that everytime MS says they are 'adding value' for the good of its customers, that it costs customers far more then it is worth?
On the point of Killing the current development of VB6 applications, it might to some extent but what serious VB shop is not going to be willing to use the PAID support if they have issues that cannot be researched and solved on the net? The support is still there if needed for 3 years!
Why would Microsoft want to extend the life of a tool that is not the future. If they were to do this all the LAZINESS of people would shine. While it is a difficult transition for some to the OO world, it must be made! Progress is not going to happen if we all don't spend the time to learn new things.
VB.NET and Visual Basic share similar syntax but not really the same language anymore. I think that Microsoft did a fairly decent job of trying to make it simpler for VB programmers to switch. You can do simple GUI development like in VB from .NET now, what more do you need. Mentor the VB developers using expert developers so that any really complex part can be coded and taught to them. It really is not that hard to learn these enough to begin programming. Granted it will be trouble if they are not familiar with OO to some extent.
Why continue C++ when there is C#? Well asking that question highlights the lack of understanding. C++ is it's own language and allows finer control of the system than does a Managed language. Why doesn't assembly go away now that we have C#? Well, because there is a place for it when ultimate performance is needed (assuming the compiled code cannot optimized as good as a seasoned developer).
Let's get moving on progress and ween those VB developers from the bottle.
I know lots of people without degrees that are far better than people with degrees when it comes to technology.
I never felt the need to get a degree but rather took a 2 year program instead (BCIT in canada). I did this only as a formality to get into the industry as I have been programming years before.
So I think it is safe to say that Education is valuable but learning is more valuable.
Now I'm not saying that VB7 is great, in fact, I don't care much at all. But integrating into Windows is essential in this MS-dominated world, so forget your programming 101 essentials and learn what every programmer learns, "how to program in a new programming language".
using COM+ but XP SP2 broke the effectiveness of the solution I
created. And recently I felt frustrated with the procedural type
of language of VB6. Unfortunately, management will not
understand why they have to pay for the upgrade of an existing
infrastructure that was working. Programmers are having a
tough time stuck between the shifting technology and the small-
medium size business owners who don't have the money to
spend on shifting priorities.
There are real issues here, and programming languages are important both professionally and personally. Please remember that there are plenty of real things to discuss and/or disagree about without dragging the conversation to ***-for-tat noise that obscures the real issues, like...
How does any programming language evolve?
What kind of disruptive advancements are critical for the growth of a language, and which ones are foolhardy?
How should any professional organization dedicated to the support of a particular language -- whether of their own devising or not -- manage such a transition in a way which meets both business needs and the needs of its customers?
Maybe that is too 'boring' ... but those are the root issues I see when reading the article.
Appreciate all the passion and the participation, but I'd ask all to avoid attacks and insults, even if (especially when) you disagree.
Thanks for participating.
John Roberts
Product Development, CNET News.com
http://weblogs.asp.net/jeff/archive/2005/03/09/391400.aspx
VB6 had a very long run, and while I'll admit that VB.NET really doesn't have much in common with VB6 other than basic syntax, it's not that hard to learn. I mean, Five years ago I would barely call myself a programmer, and didn't know what object-oriented development even was. Last week the book I wrote on the subject was released.
Technology evolves. The modern languages like Java, C# and yes, even VB.NET, have so much in common that if you can learn one, you'll learn them all.
This is not a surprise to me and was stated years ahead of this initative. In typical M$ programmer style the VB development community had pulled their heads out and cried fowel.
Rather predictable and rather sad.
And for Mr. VB God yes I have used VB for four years and I hate it. I have programmed in Java, C#, C++ and scripted in JavaScript, ColdFusion, PHP, Python, and even Perl. The diference between all of the other languages and VB. Most are fully compliance with a 4GL language and model after C. VB does not use univeral programming constructs and is just as bad as Perl in this goofiness.
Ok I said it, all you VB programmers flame away.
Also i never programmed in vb and i can port vb to c# so it shouldn't be to heard for you people.
documentation still takes longer then coding though, but i think thats true for all languages :P
CHOICE is a good thing.
During the Microsoft Trial I filed a Tunney Act submission (the trial comment phase), citing Microsoft's compelling of developers to get all of Visual Studio just to keep current with VB.Net in a form that allows code distribution. It seemed oh so typically Microsoft--force the developer to buy the whole .NET kitchen sink, whereupon it would make no sense not to leave VB behind, having HAD to buy the other .Net tools.
My submission was eventually classified into the group of most significant Tunney Act submissions.
In this context, these developers should have spoken long ago, when it mattered; nonetheless they do have a point.
Microsoft and other software vendors labor under a mistaken assumption as to reasonable durability for software. Before Y2K it was evident that some companies were using 25 year-old software code on their big computers. That may well be reasonable durability for software. The idea that software lasts a scant 5-10 years and then must be tossed away is just plain wrong, and represents an attempt to control the software marketplace artificially.
But as I said, this is a point all these developers were free to make years ago, during the Tunney Act comment phase on the then-proposed MS Trial settlement.
Any reasonable cynic could have seen the islanding of VB was coming and that it would be a quite artificial end.
Where do you want to go today? Well, you go where MS wants you to go, and don't forget it, folks.
GWBasic
QuickBasic
Visual Basic 3x up to VB.NET
I did only QuickBasic and VB never thought about Open Source...... until......
I've found that Microsoft has a great IDE and programming language for developping front ends on windows. I performs poor if it comes to web development where you need core TCPIP routines.
It also is very poor in database connectivity and scalability. For very professional results you need besides the Enterprise or Professional Edition lots of third party plugins/.dlls/.activex controls.
So when they missed a change in VB.NET to address more then 2GB filespace using the OPEN, RANDOM and BINARY commands and statements and when their online manual became a hell to search for FileIO and IP network IO I took the time to take a look at FLASH and PHP/HTML.
Since then I devellop most of the time in PHP combined with FLASH frontends (yes you can) talking to Apache webserver with a transaction safe MySQL InnoDB database engine.... ON Windows.
A perfect solution and I will not go back to VB until I like it again. I do so many things faster and easier with PHP/FLASH/MySQL then with VB.
There are less restrictions on FileIO/NetworkIO, streaming and database connectivity. On top of that it performs faster and I can easely create databases as big as I want.
On Top of that my app runs UNMODIFIED on Windows, Linux, AIX and the Mac OSX. It took me 6 months to learn 2 new languages and to program a complete application from scratch with:
-FileIO >80GB file space addressing
-NetworkIO IP based streaming of audio data
-streaming of audio directly from a MySQL database without the need of intermediate tmp files
-online and secure payment processing
-FLASH (Macromedia Flash language script)
-Webserver integration
-hosting setup on linux and windows
How about that!!! in 6 months from scratch!!!
Up to 6 months before I programmed (for 8 months long on a more or less same sort of application in VB while I was experienced with VB)!!!
This (my experience and the CNET article show my own findings and that of others) IS the reason why I left VB 6 months ago.
You know, it looks easy and great with that IDE of Microsoft (they realy can't be beaten on this) but that does NOT mean it is easier for all the things thet claim you can use it for. It's fine for stand alone apps, it's perfect for that with simple Access or MS-SQL software. For the rest it is a cluttered bloated piece of code environment with a cluttered and hardly to understand code syntax with to few examples in their online manual and to may options (not explained eithr) for similar tasks.
No I won't go back.
No, the real reason people aren't moving is because the Upgrade Wizard just isn't good enough. The upgrade wizard is fine for little widgets and utilities that you want to migrate. However, if you've developed a massive line of business application (as my team has), you're toast. Many of the very common things that an application will do (like printing) just don't get migrated - the wizard leaves you a handful of comments, and you're left with the biggest part of the mess still left to pick up.
And the bad news is there's no way around it - even using best practices with the printer code isn't enough, because no matter what you do, you don't get upgraded.
We'll have to see how well Studio 2005 does. But Microsoft's got to do better with that upgrade wizard if they want people moved over.
I still program in vb6.0 so this article interest me in some way but I don't know why people programming in a different language like java, c, etc. want to discuss something here. I don't read articles about other languages because I'm not interested on them so why to waste my time and also attacking other languages I don't use.
All languages have more things in common than differences. Do you want to say that you don't declare variables, loops or use conditionals in your favorite language?
If your language can accomplish the goals you need then it's good enough, happy for you. We need to use the language more suitable to the job in hand that's the rational way of doing things.
I have never used the microsoft's support for vb6.0 yet. I hope I will never need it.
The new vb.net (not so new nowadays) involved a lot of changes and decisions to the Microsoft team. Hey they could make that version pretty similar to vb6.0 without the net framework but they didn't because they though it was better to the future of the language. The .net framework borrows a lot from Java and the Java Virtual Machine that's undenyable.
is not a language defined by any industry
standard. It's APIs and even the syntax of the
langauge were open to revision at any time. The
author of the language is a business that
requires modification of the platform as whole
to maintain its revenue stream. And there's
plenty of precedent of Microsoft working towards
platform lock-in to enhance the upgrade-based
revenue. When they selected VB, they bought the
whole package, including the eventuality that
they would need to rewrite their code and that
bits of the libraries would change or disappear
after a time. It was a conscious decision on
their part. On Microsoft's part, they've never
promised anything more and there's little
incentive for them to go on and support two
forks of a product when the developers already
hitched themselves to Microsoft's wagon to be
led wherever Microsoft leads them.
Perhaps the developers in question are naive.
Perhaps it was simply poor judgement. Obviously,
there have been many other solutions they could
have chosen, amny technically superior, but they
selected VB on the basis of the IDE (which, at
one time was one of the best), the simplicity of
the langauge (which has lowered the bar for good
practices in programming), and the availability
of third-party libraries (again, more quantity
than quality).
It's not open-source. There's no taking up a
fork because it's popular... Developers need to
bite the bullet. Port your applications, switch
to a VB-alike (RealBasic), or go a different
route. Now would be a good time to familiarize
yourselves of your options and, this time, take
into account the future prospects for your
tools.
Today, VB is most frequently used where it's far
from the best tool for the job. It's a
technology that's flagging because it's hitched
to older MS technology where the rest of the
world is predominantly looking for
cross-platform solutions, or at the very least
newer MS technology. I work in an industry where
VB is truly the hallmark of poor software
design. I suspect that this is also increasingly
true of other industries.
In short, by using VB6, you conciously
subscribed to the Microsoft business plan that
obsolteted it. Microsoft never led you to
believe they wouldn't change things around on
you or force you to port your code.
Historically, this has happened many times
before and there's financial incentives to do
it. The developer is wrong to whine, and
Microsoft's right to ignore them.
VB prior to version 5.0 had its faults and especially deploying was an nightmare but with version 6.0 this is no longer the case. VB 6.0 is a very powerful and productive tool especially with the hundreds of available active-x controls.
It is no kindergarden tool, the problem is that too many under-educated and non-talented people started to program in VB and produced messy code, but this is not the tools fault.
.Net seems to me quite messy and unripe (web services), no clear concepts, complicated (remoting), and simple things like printing, storing data or implementing a grid is a night-mare to implement. For most vb-programmers .net is a big step BACKWARDS, a real pain in the a.. ! If they do it not better in the near future, more and more people will migrate to java.
Microsoft wants to kill VB6 because of greedy interests, They Are A Monopol !!!
I am going to continue to use VB6 and not .NET
For me VB6 is wonderfull, Bill Gates is rich enough, I am not going to support him anymore !!!
- http://tinyurl.com/7xl7o
-
by
March 15, 2005 8:56 AM PST
- http://tinyurl.com/7xl7o
-
Reply to this comment
-
-
See all 97 Comments >>