Bring back Classic Visual Basic, an improved version of VB6
The silent majority of VB6 users did not ask for changes that came with .NET
We request Microsoft brings back classic Visual Basic as COM development is back with Windows 8.
David Platt wrote an excellent article about why classic VB still thrives:
We have read all of the comments on this thread and I’d like to thank you for providing your constructive feedback on this issue. Instead of merely repeating our support and migration guidance that has been laid out on http://msdn.com/vbrun, I’d like to address some of your specific comments here.
To play back the feedback themes we’re hearing:
- VB6 is awesome
- VB6 needs to be brought forward and maintained: in a new release or OSS
VB6 was and still is without a doubt awesome. VB6 made developers incredibly productive building a breadth of applications and as a result we have a wealth of applications and passionate developers to this day in 2014. One way I see our mission in developer tools is to empower developers to solve problems. This includes both today’s problems AND the problems of tomorrow. VB6, as you all have stated repeatedly in this thread, is an excellent tool for solving the problems of its day. We also stand behind our decision starting in 2002 to meet the current demands of our developers and the industry with .NET. For the scenarios VB6 set out to do, we see VB6 being “complete”. We feel good about VB6 being able to continue maintaining their applications for the past 15 years. Current needs ranging from distributed applications and services, to web applications and services, to devices, to new architectures and languages, required fundamental changes to the whole stack. We looked at how we could accommodate these needs through incremental changes to VB6 while maintaining its essence, and that was not possible.
To address the modern needs we would need to go far beyond updating the language. We have to remember that VB6 is not just a language. VB6 is a language, a runtime, a platform library, a tool/IDE, and an ecosystem tightly packaged together in a way that made all of them work well together. We’ve worked with many customers on migration from VB6 to .NET and found that while yes, there are language changes, the dominating factor in migration difficulties isn’t the language differences. Even open sourcing the language/runtime wouldn’t solve the fact that VB6 was thought for a different set of problems, and the fact that its strength came from the end-to-end solution provided by all these five pieces working together. Take a change like 64bit, the complete runtime, tools and ecosystem chain would need to be retooled.
So, moving forward what can we do? Where we have been able to help move forward is in our stance around support and interoperability. The VB6 runtime it is still a component of the Windows operating system and is a component shipped in Windows 8.1. It will be supported at least through 2024. This ensures your apps and components continue to run as you incrementally move forward to .NET. The support policy is here: http://msdn.microsoft.com/en-us/vstudio/ms788708. There are numerous interop strategies that we developed and evolved to enable incremental migration as you upgrade your skills, described here: http://msdn.com/vbrun.
In summary, VB6 was awesome. We agree. We don’t expect or demand anyone to throw away their code or rewrite from any of our technologies unless it makes business sense for them to do so. We have to innovate to enable our customers to innovate. It is not a viable option to create a next version of VB6. We stand by our decision to make VB.NET and the .NET Framework. We think they are awesome too. It is not feasible to open source VB6 tools chain and ecosystem. The VB6 runtime was last shipped in Windows 8.1 and will be supported for the lifetime of Windows 8.1. Support and interop are great tools to move forward incrementally.
I hope you feel we’ve listened to your feedback and that I’ve explained things well enough that you understand our decision.
Group Program Manager
Microsoft Visual Studio Cloud Tools
Hey this VB6 thing is gonna be around as long as there is a Windows OS. Would not mind having a 64-bit version Mr. Microsoft. Thank you.
Lofaday - 0AV com - new IDE abandoned commented
@Damien Gibson, an interesting POV. I am in category 2.
As someopne who made millions out of VB6, coming from an electronics engineer background (and then assy for drivers), VB6 suited me as it gave a straight forward HMI route. However, despite putting successful degree level programmers on it, VB.Net could not run our requirement as a replacement. Even now, NET is still slow and only used successfully for little programs I hear. The nearest in terms of a RAD tool to go from A to B is processing.org. VB6 was a good tool. It was withdrawn and nothing replaced it. End of.
So why did you, like so many, see the need to insult people with your wrong assertions VB6 is s*** and for beginners?
Which brings me to my 2nd point. You know how Elon Musk offered, FOC, a submaribne to rescue the cave boys in Thailand? How he was roundly insulted and verbally assaulted for trying to help (accused of taking advantage of the situation to promote himself blah blah)?
Well, the exact same thing happenned to me, so I withdrew the clone 0AV.com offer of "trying to help" and they can go sit and swivel. All I asked for in return was positivity with some promotional potential. Well... They (vbforums crowd) came at me like an enraged herd of wilderbeast with nothing but bile, cynicism and criticism.
So I salute Microsoft as they obviously knew the only way to stear clear of the aging biggots is change and dissasociation. Pity I didn't have a Harvard degree or perhaps I'd have known too. It was also a timely reminder that "do something that matters so you can be recognized as someone great" (to quote you) only ends with exploitation and abuse.
And that's why there is no clone except, perhaps, XOJO, who indeed stayed away from appeasing the embittered and embraced change.
@damien paints a false picture. Most people that still use it do so because they enjoy it and find that it still does everything they need. It also does it without the bloat of other options. Obviously it still serves a purpose, is enjoyed, and is useful to many. It’s perfectly fine that not everyone gets it.
>> Maybe you could argue that it was reasonable for Microsoft to develop C#, but they really lost the plot with VB.NET.
>> You would have thought Microsoft would have had someone intelligent enough to point out that there was no potential market for VB.NET. Apparently not. C# or Java users didn't want it, and VB6 users didn't either.
It was said at the time that VB6 would outlast VB.Net. It looks like it is happening now.
>> C# has never been able to successfully compete with Java and VB.Net was never able to successfully attract VB6 developers.
So true, they are both declining.
Now there are less than 200,000 VB.Net users Microsoft should admit that VB.Net has failed and bring back the VB6 programming language.
Damien Gibson commented
Everyone here bickering needs to look at the obvious elephant in the room. People who are actually good with programming, loved vb6, and know what the heck they are talking about fit in to 1 of 2 categories.
1) They moved onto another language permanently because they had to use something else and just became more accustomed to a non vb language.
2) They did what needed to be done to try and make a clone.
The problem is, all the people familiar with the language who have been successful at making 'some' kind of clone came into some severe issues. Either you have an accurate remake that is just as limited as the original VB6 (Thereby what is the point of the clone) Or upon trying to expand on it to either multi-platform or modern architecture had to significantly change the language in some way to even make it a stable language.
If you release a 'Modern" vb6 or logical vb7, then without the significant changes to the language as a whole the language is very 'hacky' to say the least.
What does this come down to? Ultimately the fact that something like vb.net would have had to been done in order to even keep vb in the modern language era. It has to change on many levels to accommodate modern machines. Just look at some of the features that VB6 already "Supported" which ALREADY did not even work right.
The real issue here is that VB6 was ****, but it was a lot of peoples starter language and made them feel good about themselves and instead of learning to be great programmers, they stay playing with a relic that can only amount to a toy and complain about the language not existing as they seen it in their fantasies.
With that I would like to leave you all with some advice...
Stop complaining, find a real programming language, and do something that matters so you can be recognized as someone great. The tech industry as well as microsoft themselves are not obligated to hand you anything or bend over your knee and take it every time you don't get your way. VB.Net is perfectly fine for people who ACTUALLY know anything about .net in general and don't just parrot the criticism of the children fighting over "who's the best".
The VB6 installer wizard allows you to install the VB6 programming IDE, MSDN library and SP6 under Windows 10/8/7/Vista/2000, 32 bit / 64 bit, any edition (Home Premium, Professional, Ultimate, Enteprise).
The VB6 installer wizard has now been tested on Windows 10 v1803
Hey VB6 is simple, powerful and elegant. Also one other attribute...fun! All that in a dev system that can create widgets to full scale enterprise solutions.
You could always use C\C++ and now C# and Java.
OK Microsoft you kinda drank your own koolaide and it ended up be trihalamethane. Revive VB6 for 64-bit and we will forgive you.
> VB.Net has never been popular, with only 10% of the users C# has.
Microsoft used to claim C# and VB.Not had about the same number of users. Now at last they tell us than VB.Not didn't have many users.
It's all about trust. Microsoft threw that away years ago.
Johnny OL commented
16 years later, and still Microsoft haven't been able to replace VB6 programming. They tried with products like LightSwitch but they weren't good enough.
They persisted with the cumbersome .Net languages, even though there was never sufficient demand for VB.Net and C# was just a Java clone; now both VB.Net and C# are declining.
Microsoft just never admit when they are wrong.
Even dumber was that Microsoft had to keep classic VB going as VBA in Office.
So they had to support both VBA and VB.Net, and they couldn't stop supporting VB6.
Few developers ever adopted VB.Net, it has always been a minor language.
Another total Microsoft fail.
Maybe you could argue that it was reasonable for Microsoft to develop C#, but they really lost the plot with VB.NET.
You would have thought Microsoft would have had someone intelligent enough to point out that there was no potential market for VB.NET. Apparently not. C# or Java users didn't want it, and VB6 users didn't either.
And why name it 'Visual Basic' and start its version number at 7.0?
Visual Fred was a more accurate name. It had nothing to do with Visual Basic.
VB.Net should have been cancelled before it was released.
I can't see that Gates would ever have allowed this, but Ballmer was in charge then.
@Bye Bye M$
>> VB6 was perfect for a very large subset of desktop development tasks. I am still happy with it to this day and find no use for .NET for any of my needs.
>> 20yrs on and .net still has not fullfilled all of their master vision.
In Tiobe the popularity of C# peaked in 2012, it has been in decline ever since, and has declined by half from its peak.
A couple of years ago C# was the 4th most popular language in both Tiobe and StackOverflow surveys.
Now C# has fallen to 6th place in Tiobe and crashed to 8th place in StackOverflow.
VB.Net has never been popular, with only 10% of the users C# has.
Bye Bye M$ commented
>Why after a bitter 3 year legal battle, didn't just decide "Who needs this?"
>and go back to work on a VB7?
>Why did they embark on an expensive program to clone Java if nobody wanted it?
It was an ideology. VB6 was considered crude and inelegant. Language purists didnt care what worked and was loved, they had an ivory tower vision of what "should be". They also loved the ideal of being independent of the processor architecture and javas compile once run anywhere concept. For their rich future of phones and tablets and gaming stations. VB6 was to locked to windows API and x86 and COM. So as with all things, this too can be solved with another level of abstraction.
>Why did that VB MVP stand up in a room full of Microsoft's biggest VB users
>and say they didn't want anything like VB6 anymore.
>And why did everybody in the room agree with him?
I have talked to people who were in that room, they were flabbergasted when the decision came down to end vb6. It was an insane decision from high up based on ideology and religion.
VB6 was perfect for a very large subset of desktop development tasks. I am still happy with it to this day and find no use for .NET for any of my needs.
20yrs on and .net still has not fullfilled all of their master vision.
They have been flip flopping, floundering, thrashing, between technologies every since. Start something, push it hard, drop it.
As a developer this is not a ride I care to be on. M$ current direction has no interest to me either. No longer a platform I even wish to work with.
Nobody with any sense uses VB.Net.
C# does everything that VB.Net does and more. VB.Net is inferior to C# in every way.
VB6 is far more RAD than VB.Net.
VB.Net is just a lose-lose. It's the ginger-haired step-child of programming languages*.
Soon VB.Net will be gone, it won't be missed.
* Apologies to ginger-haired step-children, I honestly realize you can't be as hopeless as VB.Net.
Grant Swinger commented
@Microsoft, update VB6 programming & VBA programming
"Certainly Java was growing at the time, but it wasn't taking VB6 users from Microsoft in that period."
Actually Java was going gangbusters during that time period. But changing from one language to another isn’t an overnight process. When a company decided to move to Java they didn’t start by tossing every copy of VB6 in the trash and shooting all the VB6 developers. As a first move Java consultants and trainers would be hired to guide the company through the transition and act as project leads for new software as well as teach the developers Java programming. This is something I did for VB.NET.
Meanwhile, work with VB6 would continue. Programs already written would need maintenance, ones in development would continue with VB and planned programs would re-evaluated to see if they should be written in Java or not. Sometimes they were not. This process takes at least a few years or more. During this time VB6 would poll strongly for number of developers while Java would show very strong growth. The two are not mutually exclusive.
Eventually the trend would tip over in Java’s favor. The last VB6 projects would be completed and enter maintenance. All new software would be written in Java. After this the company would need fewer VB6 developers. When hiring replacements for developers who had moved on or additional staff their ideal candidate would be someone knew both languages. But if they already had enough staff with VB6 knowledge for their maintenance needs they might prefer someone who knew Java and C# or maybe just a really good Java developer. The candidate who knew only VB6 would be at a considerable disadvantage now.
The end result of this process was a long term and accelerating decline in VB6 usage and the VB job market. It would have happened regardless of what Microsoft did. As long as Sun had what Microsoft lacked the end result would have been the same. Microsoft’s only available option was to start providing what Java had in their own language and frameworks. That’s why that VB MVP told Microsoft to “drop backwards compatibility” and a room full of Microsoft’s biggest VB users agreed with him. A COM based, backwards compatible VB7 was not going to sell to these people.
“The fact that Microsoft still have to support VB6 20 years later shows the stupidity in assuming that VB6 software would just be rewritten in a different language.”
Neither Microsoft nor anybody else assumed that. Nobody rewrites software only to end up back where you started. It’s never done unless there is a clear and compelling reason to do so. I’ve done a fair share of it myself but there was always a good business case for it. And Microsoft is not supporting VB6 development. Read the support statement. Their concern is that VB6 applications continue to work. The IDE and toolset are not supported, only the runtime. They don’t even seem to be checking the IDE for breakages anymore with Windows 10.
“Since VB.Net has never been popular and Lightswitch has been abandoned why don't Microsoft just give up and bring back Classic Visual Basic?”
Nobody is willing to pay for it. Microsoft development tools have always been funded by their enterprise customers. If these people are not onboard it’s not going to happen.
>Microsoft had J++, their own release of Java, under license from Sun.
Yes the court case ended any hopes J++ had. Microsoft had attempted their "Embrace, extend, and extinguish" tactic to takeover and control Java. Sun defeated them in court.
No one has said Java wasn't a threat to Microsoft. Certainly Microsoft perceived it to be.
And following the fiasco with J++, the best course of action for Microsoft was C# as a (legal) Java clone.
I don't believe anyone here is arguing that Microsoft shouldn't have introduced C#. It was the only option they had to compete with Java.
Though, of course, it has never been as popular as Java.
This part of this thread is in response to a claim by Joe Bolton a few days ago that VB6 was losing developers between 1997 and 2001 to Java, prompting Microsoft to develop .Net.
His only evidence was that VB6 was "Microsoft's #1 enterprise language" and "I was there and saw it with my own eyes".
Certainly Java was growing sat the time, but it wasn't taking VB6 users from Microsoft in that period.
VB6 wasn't released until 1998. As Richard Collier said, VB6 had 6.1 million users in 2000.
VB6 only lost users after the introduction of .Net, when it became clear that VB6 would be abandoned. Microsoft canibalised its VB6 user base and lost millions of them in doing so.
>> It's because people wanted what Sun had and Microsoft lacked.
Yes that's correct. And that's why Microsoft introduced C#. And Microsoft were correct to do so.
Where Microsoft screwed up was in developing VB.Net. This was always just C# with a vaguely VB-like look. It offered nothing that C# didn't.
As you say people wanted Java, C# was that (almost). VB.Net was a nonsense.
That's why C# has always had a reasonable number of users (though nowhere near as many as Java) but VB.Net has only had a fraction of that number.
People wanting Java didn't want VB.Net, but would use C#
VB6 developers didn't want VB.Net but wanted an updated, backwards compatible, language. In VB.Net Microsoft had developed a language no one wanted or needed.
You ask why did "that VB MVP stand up in a room". He was presumably one of David Platt's 3%. The low uptake of VB.Net shows he was wrong to do so, C# was better for his requirements.
The fact that Microsoft still have to support VB6 20 years later shows the stupidity in assuming that VB6 software would just be rewritten in a different language.
Since VB.Net has never been popular and Lightswitch has been abandoned why don't Microsoft just give up and bring back Classic Visual Basic?
Grant Swinger commented
>Microsoft had J++, their own release of Java, under license from Sun.
Next to nobody was using it. Here's why:
The Microsoft version was considered too risky after they altered the Core Java class libraries. If people wanted Java (and they did) they went straight to Sun.
But there's a few things you ought to think about. If Microsoft was on top of the world and Java was no threat to them then why did they license it from their bitterest enemy? Sun and Microsoft hated each other with a white-hot passion back then. Why, after a bitter 3 year legal battle, didn't just decide "Who needs this?" and go back to work on a VB7? Why did they embark on an expensive program to clone Java if nobody wanted it?
Why did that VB MVP stand up in a room full of Microsoft's biggest VB users and say they didn't want anything like VB6 anymore. That they valued powerful new features over backwards compatibility? And why did everybody in the room agree with him?
It's because people wanted what Sun had and Microsoft lacked. And if Microsoft wasn't going to provide it they'd go to Sun to get it. Many did which is what gave Java a head start it's never given up. That may not be politically correct thinking around here but it's the truth.