March 14, 2005 7:37 AM PST

Developers slam Microsoft's Visual Basic plan

More than 100 influential developers using Microsoft products have signed a petition demanding the software company reconsider plans to end support for Visual Basic in its "classic" form.

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."


Join the conversation!
Add your comment
That is what they get for using VB
Stick with universal languages, and you won't get burned so badly. Learn C or C++(not visual C++) or even Java and use platform independant GUI tools and never be a slave to MS again. Besides, VB in any form is a trash language, it is like kindergarten programming.

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?
Posted by Bill Dautrive (1179 comments )
Reply Link Flag

That is the problem I think. Outside of the very basics, VB teaches little of value. My guess it that many of these 'developers' learned VB and erroneously thought that it made them programmers. They have little background that will allow them to easily move to a real programming language, so they are scared.
Posted by Bill Dautrive (1179 comments )
Link Flag
Your pious attitude is quite evident. So what, you don't like VB.
That is the only thing that was true about your grossly
manufactured comment.

The facts are this. Visual Basic 6.0 is a univerally popular and
effective programming language. It is by far the most RAD tool
available for developing desktop windows applications.

Visual Basic is not basic. Not in 5.0, 6.0 and .NET That train
left along time ago. However, and what is MORE to the point, is
that Microsoft introduced VB .NET and it has absolutely nothing
to do with VB 6.0 ... It was like a bad trick. Giving it the same
name means nothing. In fact VB .NET is such a lame
implementation of ... god knows what, that it should be skipped
altogether and .NET development done only in C#.

To make matters worse, the COM libraries can be significantly
different between the two (.NET is COM+) ... I will give you one
quick example.

The ListView control in MSCOMCTL supports column re-ordering
and images for the column header. While both versions of the
.NET control support re-ordering, the .NET version "dropped"
support for the images in the column headers. The reason i
mention column re-ordering is when they shipped 2003, if you
attempt column re-ordering your application will crash if using
the MSCOMCTL library.

Bottom line, you absolutely cannot count on being able to do the
sames things in .NET as 6.0, whether you are using C++ or VB.
Posted by Thomas, David (1947 comments )
Link Flag
You are so close-minded I am surprised you are able to open
you eyes in the morning
Posted by Thomas, David (1947 comments )
Link Flag
I learned on VB, then to C++, then to Java, now learning PHP, XML, JSP, etc. What does that mean? Not a darn thing.

VB is a good starter language that still has a lot of usefulness. C++ is over used in my opinion. A lot of people have some kind of hang up on C++, but for many application you could have used just about any other language and got it done faster with less holes. I find Java a much more usefull language than C++ in the programming I do (mainly gui based application).

I find that most C++ programers are over achievers. They would rather do it the hard way. That's not a knock as a few of them I know are really good at debuging and error trapping, but they spend a lot more time creating their programs than I do and mine work just fine and are fast.

Although I don't paticularly care for Microsoft I can see the value in not supporting applications any longer. VB6 has had a good run. It's time people started moving their application over to another language. They have choices like, C#, C++, Java, Delphi, RealBasic, Dark Basic, Smalltalk, Eiffel, Ada, and a whole slew of others. I have no doubt that the move is going to be costly for a lot of companies, but seriously, if they didn't see it coming then they must be blind.
Posted by System Tyrant (1453 comments )
Link Flag
"Stick with universal languages, and you won't get burned so badly. Learn C or C++(not visual C++) or even Java and use platform independant GUI tools and never be a slave to MS again. Besides, VB in any form is a trash language, it is like kindergarten programming."

VB is a RAD(Rapid Application Developement)language and was designed so people (even those with little or no programming background) can quicky design and code an application to meet their needs. I would agree it's not the best language (not even in the top 10 in my book), but it I am sure it has it's uses.
As for it being kindergarden programming, I would remind you what the acronym BASIC stands for, Beginners All purpose Symbolic Instruction Code. I've seen people code some pretty advanced programs in VB. Finally, lets not forget that despite some great efforts (many still continuing) that MS is still the dominate platform.
Posted by unknown unknown (1951 comments )
Link Flag
Anti-VB Snobbery
Your calling VB a "trash language" is totally irrational! It's a "prejudice & snobbish" reaction of a geek who's wedded to C/C++.
Your reaction is totally stupid & misplaced.Because VB cannot be compared with low-level languages.No doubt using the latter you can create anything which VB cannot.But VB is a high-level RAD language using which you create & deploy database-applications faster than using Visual C++ or C.I am sure you know that VB is the most popular RAD in the universe using which 1000's of database-applications have been created by organizations who swear by VB.
In fact,your reaction is confused & outdated because it's applicable only to the older versions of VB.For your kind info,the world's largest software company Microsoft is the creator of your "trash language".Not only that,it has also earned millions selling VB.
So my advise to snobbish souls like you is not to make false comparisons & come to offensive conclusions!
Posted by (1 comment )
Link Flag
My programming language is better than...
...your programming language. Lets stop the bickering guys. Don't take away from the moral of the story: If you rely on Microsoft tools, you will be left out to dry.
Posted by lewissalem (167 comments )
Reply Link Flag
Did you even read the article??
A biased comment disguised as smoothing over a debate?? Go figure. If you read the article, it does not indicate that Microsoft screws its customers. Rather, it clearly states that Microsoft is listening to the needs of a small number of customers and is considering extending support.
Posted by David Arbogast (1709 comments )
Link Flag
Last attempt to keep a dinosaur...
While VB was a simple yet powerful tool to develop applications, it's time has passed (quite a while actually).

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.
Posted by (3 comments )
Reply Link Flag
If VB is a dinosaur...
... then .NET or J2EE is a jurassic park !
Posted by Martin77 (2 comments )
Link Flag
I don't think degrees have any purpose here...
Well, education is valuable but I would not worry about titles. Education comes in many forms some formal some informal.

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.
Posted by (3 comments )
Reply Link Flag
Very True
I would say that if you have the means college is good, but nothing replaces experience.
Posted by System Tyrant (1453 comments )
Link Flag
I agree
However, D M used it to attack another poster and that is the sole reason the degree thing came up. D M is using it since he has no other real reply to the comments h e has recieved.
Posted by (23 comments )
Link Flag
Basic 'idiots' profoundly irritating
Basic was a stupid language. It was stupid to program in and stupid to develop in, and stupid to invest in. And Basic 6 wasn't much better. It was a toy programming language without proper integration into the Windows programming environment.

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".
Posted by (88 comments )
Reply Link Flag
Hold on a minute
I use still use VB6 daily. It is an excellent tool for producing front-end interfaces to databases and the web. It is not a toy, although it is as easy as a toy to pick up and use. I can do almost anything that I could do with any other language (on a Windows platform) with VB6. The major drawback I find with VB6 is that it doesn't support threading (without third party support).

There are an immense amount of VB6 resources (source code, add-ins and components) available on the internet (both commercial and freeware) and a good proportion of the developer community are still using it.

With VB.Net you lose out on Windows 95 support, take on around a 20% performance hit and have to work with a pig of an IDE. VB.Net 2005 is on the way and addresses some shortcomings of the earlier VB.Net versions but in many ways it is still far behind VB6.

VB6 still is a good tool. If Microsoft wanted then they could make it even better but I understand why they won't. I don't imagine switching languages until Microsoft release their next Operating System. If by then, Linux hasn't made any inroads (which I don't expect it to), I'll re-evaluate which Microsoft tool best fits the description.
Posted by (1 comment )
Link Flag
Putdown ... I'd hate to be your kid
So Putdown what's your claim to fame? What have you done that you believe to be superior to the rest of mankind....

I do happen like VB6. I have programs that I've sold in over 50 countries. I don't have any problems with those programs. A C programmer can write trash programs just as easily as a VB programmer. The Language does not determine the result but the programmer does. Because of incompatibilities with the conversion wizards it is not possible to convert my existing app to .net. But I would like to know that Microsoft will not break the VB language in future operating systems. I think that is what most VB developers are concerned about.
Posted by (1 comment )
Link Flag
Live with it
I wrote in VB6 an n-tier distributed application
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.
Posted by wiizard (8 comments )
Reply Link Flag
Welcome to the M$ migration trap
Sadly, this very issue is what Architects should have the experience and forethought to prevent. But for most medium to small businesses they can not afford professions with this level of experience. Hence, you have to deal with the short-sighted decisions of the past.

This is compounded by the fact and I mean fact that over the last nine to ten years your scenario has played out in hundreds if no thousands of companies throughout the US. In a tangential way the issue you are having directly correlates to why most of our technology jobs are going overseas.

Poor or inadequately skilled "professionals" working in the now and not preparing for the future (aka Change).

I wish you the best of luck.
Posted by zeroplane (286 comments )
Link Flag
All -- please keep it civil
I'd remind everyone posting here to stay on topic and avoid personal attacks, or even petty insults.

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
Posted by pencoyd (82 comments )
Reply Link Flag
Report Offensive Content
If someone is being a jerk and trying to inflame people to provoke an argument don't reply to them just report them and let the moderator sort it out.
Posted by System Tyrant (1453 comments )
Reply Link Flag
Tech evolves... people should too
I won't rehash a lot of what I've said previously, but here's what I blogged about:

<a class="jive-link-external" href="" target="_newWindow"></a>

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.
Posted by Jeff Putz (302 comments )
Reply Link Flag
I agree, but...
I agree with your points, and enjoy working in .NET myself. However, the continued support is likely not based entirely upon people's ability or desire to learn new languages. Rather, Microsoft is likely being asked to consider the number of organizations still supporting VB6 applications. The expense to train people and rewrite these applications may be more than they are prepared or able to handle at this time. SO I think it is fair for people to ask MS to continue support, so long as they realize it probably won't last forever.
Posted by David Arbogast (1709 comments )
Link Flag
Lots of bla-bla...
Listen people!
You're all programmers. That means you're out there for one thing and one only: programming. I'm not into that! I'm a business owner! I am the manager of a small company! It's bad business to have to change a working app just because MS wants more bucks out of my pocket. It means training money, licenses and maybe even new hardware. It means investment. And customers won't pay more just because it' "VB.NET" and not "VB6". Frankly, not all business is top of the notch high-class applications with Internet integration. NO! Most of my customers, low end retail shops, stores, small workshops and factories, rely on simple software and DO NOT want it to be directly accessible from the NET. No one wants his accounting data hacked! So if one does not understand it best is it's only accessible locally! That's a trend! And it' still very strong! Strong enough to generate 20.000 USD in profits each month! For me at least...
So you bragg about your techie stuff, I'll just keep making some money!
Posted by Kostagh (57 comments )
Link Flag
Wasn't this spoken about in 1999?
I faintly remember being at a M$ conference about .NET and it was openly stated that M$ was moving away for old programming languages and programming models. Part of the migration to .NET was to move away from old programming models.

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.
Posted by zeroplane (286 comments )
Reply Link Flag
learn something .net...c# if possible
Learn something .net...c# if possible. Yes it takes time to learn the language (and your way around visual studio .net...and then all the secret little code helpers it has)...and will take longer if you never programed in a 'c' style language...and some people argue that .net is slow because it's an itermediate language (only compiles fully at runtime)...but on computers today theirs almost no speed penalty and games written in c# with directx are being made and released as we speak.

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
Posted by FocusedWolf (24 comments )
Reply Link Flag
Microsoft knows what's best for customers
It forces what's best all the time.

CHOICE is a good thing.
Posted by technewsjunkie (1265 comments )
Reply Link Flag
Actually, Mike. In all fairness, Microsoft spends an almost unbelievable amount of time working with, and listening to its customers and users of its technology. There are many, many instances where Microsoft has changed their plans because the customer base has voiced a desire for something different. I think they deserve a fair amount of credit in this area.
Posted by David Arbogast (1709 comments )
Link Flag
A timely, significant rebellion
Let us not overlook the significance of those loyal to MS talking back to their lord and master.

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.
Posted by PolarUpgrade (103 comments )
Reply Link Flag
Used in-depth QB and VB but now Open Source
I used to program in

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 &gt;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.
Posted by rembspam (9 comments )
Reply Link Flag
PHP is excellent!
"I do so many things faster and easier with PHP/FLASH/MySQL"

I enjoy working in PHP as well. It took me no more than couple of hours starting to write code in PHP (I had a real experience with ASP and corresponding Internet issues at that time). PHP is excellent powerful and now truly object oriented language. It provides you with almost every function you need. It works everywere (I use it on both Unix and Windows under both IIS and Apache.) And For ASP programmer isa way easier to swith to PHP than to switch to ASP.NET.

The only drawback for a developer here in the US is that most businesses [were forced to]use MS tools.
Posted by vkelman (13 comments )
Link Flag
The real reason developers are not migrating...
The learning curve with VB.Net is not that big. Any experienced VB6 developer who is a real developer and understands patterns and practises, can do the move without much effort. And the autocorrect fixes a lot of VB habits, like removing SET statements.

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.
Posted by rbethell (44 comments )
Reply Link Flag
Strange Behavior
I don't know why people talk about other languages and also say this VB6.0 is bad when we are not refering to those languages in the first place. Isn't weird???
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 (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.
Posted by (7 comments )
Reply Link Flag
Microsoft right, developers wrong.
The developers haven't any reason to whine. VB6
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

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.
Posted by Gleeplewinky (289 comments )
Reply Link Flag
What utter sophistry
What silliness.

Microsoft is a business, and its developer products are an offering that it hopes to draw revenue from, and promote its platform with. Developers, as the primary paying constituency for developer products, have every right to question the level of service they are receiving, as any customer of any business does.

It is Microsoft's right to respond as it sees fit, of course. But whether that response is "right" or not is entirely open for debate, and can't hope to be shot down by such sophistry.
Posted by rbethell (44 comments )
Link Flag
Microsoft right, developers wrong
I have never read so much 'claptrap' in all my life like the article from Francois Stiglitz. I am a developer who has written applications in C++, VB6, and C# and by far the most productive languages have been in Visual Basic. Although it is ultimately necessary for developers to migrate from VB6 to, this is not easy and very expensive. This is not a VB3 to VB5 transition, applications will exist in VB6 for at least another 5 - 10 years, only new applications will be predominantly written in .net. If Microsoft don't cater for this, they will drive the new crop of developers towards JAVA, since that language is constant and platform independant. Microsoft need to wean VB6 developers into .net, not abandon them or they will find that vengance hath no fury like a developer scorned. VB has been the bread and butter for MS's development software market, MS would be foolish to bite the hand that feeds it.
Posted by (1 comment )
Link Flag
VB6.0 is a mature product - too bad microsoft neglects it
I am in the IT branch for over 15 years programming in C, Assembler, Pascal, VB 3.0, 4.0, 5.0, 6.0, Visual C++, etc.

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.
Posted by Martin77 (2 comments )
Reply Link Flag
Mature but still time to move on...
I agree that VB6 is mature, has had a good run and can continue to be used for many years by those who want to remain in that technology.

Tools are always only as good as the person using them...

It is true that .NET is not a mature platform yet but it is on the right path. There will always be growing pains with any new platform architecture and newer version will address them (or people will work around them).

You pointed out that DataGrid's are hard to work with? I have not yet run into any issues working with datagrids.

I think that the most important thing that keeps VB from moving forward is its lack of Object Oriented nature. Yes it does support the notion of a Class but it really lacks some of the important features of an OO language: Inheritance and Polymorphism.
Posted by (3 comments )
Link Flag
It is a tool fault as well
"too many under-educated and non-talented people started to program in VB and produced messy code, but this is not the tools fault."

It's not a *direct* fault of VB but it is its indirect fault. If a language promotes bad practices instead of promoting good ones, if a language does not support OOP, if a language has a strange array notion with a(5) being an array of 6 elements, if a language does not support a "shorthand" notation for logical expressions, if a language passes parameters to subroutine by reference BY DEFAULT and books teaching this language do not emphasize this fact... this language shares a fault for bad programming style.

On the other hand, it was at least easy to make small projects in VB and ASP. It's not so easy in .NET and ASP.NET.

For a little bit bigger than tiny applications it never was a good idea in my experience to use automated features like data binding or Visual Interdev's server-side controls. It always introduced a lot of unwanted side effects (oh, I remember a nightmare of MS Access programming). But it was easy to develop and to reuse your own subroutines for generating HTML tables ~ grids. But half of ASP.NET now relies on using its redeveloped data grids. I'm positive it will suffer from the same problem on a larger scale: it will never fit well enough into your current application scheme.
Posted by vkelman (13 comments )
Link Flag
I love VB6
VB6 Is a great language, We use it on a very successful international software product of our company and it does what is suppose to do, TO WORK !!!

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 !!!
Posted by (1 comment )
Reply Link Flag
<a class="jive-link-external" href="http://*******.com/7xl7o" target="_newWindow">http://*******.com/7xl7o</a>
Posted by (1 comment )
Reply Link Flag
Using VB for 12 years
VB is a tool more than a language.

I started experimenting with VB 2.0 and for the kind of applications I needed to write, I gave up Borland C++ (3 pages of code to display a window) because I could be so much more efficient. VB 3.0 came along and made that all the better. I became so busy with VB I didnt have time to worry about much else. The honest problem here though is that if you use a hammer, it is true that every problem can look like a nail.

This argument has been going on since about 1993 guys. VB is a great tool for certain tasks. No, you wont write a driver or an OS, but you can write great DB apps and do incredible backend things on the web and if that is what you do, use it.

The problem with migration from 6.0 to .Net? The tool changed so much that the way of working changed. All the nice things were gone to make ones life easier. The language itself is not that big of a deal, one just gets used to working a certain way.
Posted by Dawnsman (2 comments )
Reply Link Flag
Comical, yet sad.. but not really.
Microsoft has bit off more than it could chew this time, they decided it'd be a wise idea to cancel a long-term project that many have spent years to learn.. trying to nudge for VB .net? Probably.. will it work? No.. look at their stock, it's going down like a Las Vegas hooker. I wonder if they're going to try to recover it, and release all of it open source so that those who care enough to further the community as a whole can start spawning their own variants??? time will tell I guess..
Posted by (1 comment )
Reply Link Flag
VB6 (continued)
All of the comments and insults aside, I have an idea:

Why couldn't VB6 continue to be upgraded and maintained by a group of developers in the fashion of open source software. That is, unless MS would not allow it and legally nobody but MS could touch VB6.

I think there is room in this world for the the high-minded OOPS crowd and the non-OOPS crowd. Basically, if the end result is to produce applications or web sites that work the same, regardless of language, OOPS or not, who cares how sophisticated the programming language? Results matter more than the methods as long as they work and are secure.
Posted by adornoe (270 comments )
Reply Link Flag
Final Reply: VB6.0 and VB.NET are not even related
The underlying libraries are different. The syntax is different.
The real issue is a forced migration to a set of programming
practices that are focused in intranet and internet development.

You are smoking something in your pipe if you think the C# and
VB.Net languages were designed for intensive desktop apps. To
call them the future is wishing, hoping, and praying that
Microsoft will bolster the capabilities of these languages.

The future of programming concepts, designs, and
methodoligies have NEVER come from any corporation or group
of corporations. They come the fresh and un-fettered minds of
developers seeking, discovering, re-engineering and re-
discovering concepts and putting them to practical use.

The n-tiered approach is a good one, and excellent for
networked applications. But is it the only one? Is the n-tierd
approach some sort of panacea? More importantly is the n-
tiered approach as dictated by Microsoft the only choice?

The fact is the idea (conception) of methodologies is what has to
be maintained and implemented by developers. I use C++, C,
Java, Javascript, Fortran, VB6.0, C#, RPG, COBOL and a myriad of
other languages. Each has its strengths, and I do like .NET for
what its strenghts. But I have also found .NET to be a downright
nightmare for desktop applications. Oh you can do it. I have
several applications that are pure C#. And I love the how easy it
is to create windows services, networked applications, and the
thread-pool support. But i have written so many different types
of applications i find my self hitting a wall with it and my choices
are C++ or VB6.0

I don't know what the final and true answer will be. But I do
believe that VB6.0 needs to stay. VB.NET is simply not a
replacement for it. The only reason i feel this way (with
complete honesty), is that it is far easier, and quicker to develop
a working prototype application in VB6.0 than C++. But that is
truly only limited by the investment in time, to produce IDE
interfaces to automate C++ code generation. But that is the
sticky widget. VB6 saves time, and the final products work.

For those of us who have time to go completely C++, this won't
be much of a problem. Maybe all of this off-shore outsourcing
will give many of the developers time to do this. For those of us
working, the backlogs and demands are still there.

.NET will evolve, and bring along with it a whole set of RAD
developed applications to solve real-world problems. But that is
just a single branch in the evolution of software, and .NET will
not be travelling along those other branches. It may jump from
time to time, but we have yet to see what we can truly do yet.
Bottom-line, maybe its time to get down and dirty, and re-
invent ourselves.
Posted by Thomas, David (1947 comments )
Reply Link Flag
What VB is and is not
I recall an interview with Musician Robin Trower. When asked why he didn't record "covers" of other artists songs, his reply was along the lines of not remaking something unless you could improve on the original.

Visual BASIC, which is not a visual programming system (note 1) and it is not actually BASIC (note 2). It seems to date back to the DOS days and a RAD tool named Ruby (no connection to the Programming language from Japan) which was based on one of the DoD Ironman specifications.

VB appears to Microsoft's answer to a RAD product called Realizer. Even VB 6 pales in comparison to Realizer even though Realizer was discontinued after Version 3.0 in the 90's.

Where VB really excels is in the IDE. Probably well over half of the in-house apps are basic data entry forms with a little custom coding that act as front-end applications to databases or specialized hardware.

On the flip side, it appears that Microsoft has several concurent variants of VB at any given time, each with annoying quirks. VB, VBA, VBscript, VBS-DTS, VBCCV,, and so on. The interesting point is that most of these variants of VB are functional subsets of VB. This does not improve the quality of the programming, it makes it more difficult.

Another place where VB excels is in its ability to access almost any library function on the system. This makes it easy for more advanced developers to make the most of the systems without having to mess with some of the arcane memory management stuff as you do in C++. You can also download malware VBA source, mod it slightly and and mass email it ....

Of course VB is a Microsoft product and even if the language specification is public, the name, the compiler, and apis are Microsoft's intellectual property.

VB is not platform agnostic. There have been VB work alikes like BASICScript, Envelop, and Phoenix
and that were available on other systems, but VB code had to be greatly modified to work on them.

Languages like Perl and Python on the other hand, have a bit higher learning curve, but a program written in these languages run well on Windows, unix, linux, MacOS, MVS, Palmos, Epoc, and about any other OS with an available perl interpreter.

VB compiles to an intermediate code that requires a Windows specific runtime library, and any other Windows application libraries that the application calls. while it is true that there is an open source clone of the VB5 runtime, it is of little practical use without the access to comparable application dlls. The same will likely be true of Mono apps. An app written in Mono will often need to be modified and recompiled to run in a Windows environment, due to dependency issues and vice-versa.

Since I have no doubt that someone will care to know, or assume elsewise, I have degree in Computer Science, and have been programming for over 25 years. I have worked with several OS over the years on micro minis and mainframe computers,
in several programming languages (including 7 versions of MS Basic, 5 versions of VB or VBscript, and 3 VB clones)


_ note 1: Visual in the CS world refers to programming by diagramming the logic in a graphic environment. Microsfts Visual products have drag and drop forms editors, but the actual program logic must still be coded in a text-based form.
Examples of visual progrmming systems are Prograph, HPVee, Sanscript, SGI-Explorer, and Labview.

__ note 2: While part of VB is very BASIC-Like, it appears to be closer to Pascal in some aspects. To anyone familiar with older incarnations of BASIC,
this is not a BAD thing, as writing event-driven programs in older version of BASIC can get really hairy.
Posted by (4 comments )
Link Flag
They try to force Web to mimic Win desktop
"The real issue is a forced migration to a set of programming practices that are focused in intranet and internet development."

Funny enough, in ASP.NET MS tries to force programming style of Windows desktop programming to Web programing. Quite opposite :)
They want as usual to make Web programming with their tools incompatible with other OS and browsers to knock they down.
Posted by vkelman (13 comments )
Link Flag
Closed source woes
This is where using a closed source development tools hurts - you're at the mercy of the vendor. When I saw Kylix (Delphi for Linux), I was thrilled. But I watched it get half-hearted development by a company that didn't quite have the resources to carry the burden itself, and it never flew.

There are many reasons it's an uphill battle to introduce a new closed source development environment, in particular on a platform like Linux where powerful open source alternatives exist. Open source products (like MySQL or Qt) have support as long as anyone cares to do it, which usually is as long as anyone is interested enough to pay for it - never lets you down. It might become obsolete, but migration is never forced upon you.
Posted by Frodo420024 (13 comments )
Reply Link Flag

Join the conversation

Add your comment

The posting of advertisements, profanity, or personal attacks is prohibited. Click here to review our Terms of Use.

What's Hot



RSS Feeds

Add headlines from CNET News to your homepage or feedreader.