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
If only there was a language that had a GUI to enable RAD by every demographic. HUGE market impact. Did not need a bloated .Net or Java run-time engine. Easy and powerful language. Ran fast on all modern Windows systems and OS's from Windows XP to 8.1. Wait... There is one...VB6!
MS please give us a sound 64-bit IDE\compiler and we'll do the rest.
VB6 Fire commented
Huh, tony, I understand your message barely half onwards. You are right, Vb6 is the proper tool for a huge amount of programming tasks. To be honest, VB6 covers any project in any field (with VB6 open source projects that are found on the Internet).
Winston, if Linus Torvalds, the inventor of Linux is saying that, then maybe MS should meet our requirements on the NEW VERSION OF VB6 ! Linux has a version of BASIC because they understood the problem.
Whenever people belittle vb6, they always just echo stuff they have heard. Thier snobbery comes from feeling betrayed that they had to go through allot of pain and knowledge to make something equilivent to a basic program. So instead of crediting the v creators and wisdom of the technology, they deride it and its users. Childish behavior. Vb6 is the proper tool for a huge amount of programming tasks, and it's shortsighted to ignore that. Worse, they are likely blind to see it because they cling to some ideas of conceptual programatic language purity which goes hand in hand with bloat and over complexity. Basic is basic, and that's beautiful.
"For example, I personally believe that Visual Basic (vb6) did more for programming than Object-Oriented Languages did. Yet people laugh at VB and say it's a bad language, and they've been talking about OO languages for decades."
Linus Torvalds-inventor of Lunix
> But still no response from Microsoft.
Maybe that's good. My VB6 is working still.
Over 6000 votes and over 800 comments.
But still no response from Microsoft.
Mark Walls commented
Why don't we just create an open source project for building a compiler for VB6 in Visual Studio? Wouldn't it be interesting to have all the IDE improvements in VS with the legacy code support? It could on the back end either map to .NET or just compile directly with the command line VB6 compiler.
I urge every supporter here to take out facebook and google adwords out to let the silent but plentiful VB6 developers know they can help save vb6. Just a few bucks might help save you business and source code from becoming worthless. I have done the same!
Already Twittered @Visualstudio ;)
It is the responsibility of every person that signs this petition to spread the word about this. Every forum you visit, every colleague you talk to, every week on Facebook, get the people who are still using VB6 to come here and vote to save our millions of lines of code and our businesses!
This is our LAST chance, the decision will be made soon, and if we don't act as a team, we will fail. We need at least 10k more votes, SPREAD THE WORD!!!!
More than 6000 votes!!!
Our whole bushiness is build on vb. and vba cannot be that difficult to assign it to office vba team thx
Dennis Johnson commented
Who decides when it's time for something to become obsolete? Microsoft? If so, then they are contradicting themselves, by moving (as I said) the Windows API towards COM... 13 years ago they thought that Net is the future, but that's not what it seems...
Who SHOULD decide it? People. If there is no or there is very little market share for something, then it can be safely considered obsolete.
Microsoft's decision to mark VB6 as "obsolete" is not justified.
@Damien HOFFSCHIR: well, every language has to die then... oh comeon, because you don't like VB or whatever language, it doesn't mean it has to die.. C# is JUST ANOTHER LANGUAGE like any other, nothing more, nothing less.. Why would we have so many languages in the first place, because people want different things.. And what's good is all in the eye of the beholder..
Damien HOFFSCHIR commented
My mistake. I should have say "Obsolete things have to die." Don't misunderstand me. C/C++ is great for performances. That's all. with native C# coming, I'll probably say that C/C++ have to die too in 1 or 2 years.
MIlan Oparnica commented
That is correct, Eugenio, we have tested it and even put in few production scenarios. We even made Winetricks verb that installs all runtime libraries needed to run our software.
But there are issues. One of them is different file locking mechanisms in Wine/linux and Windows OS. Fortunately it is fairly simple to avoid it through adaptation in vb6 code. Great thing is that network and serial communication works flawlessly.
Another problem is that Wine gets most of it's funds from the gaming population so it can't focus towards business solutions. If there was something like Crossover or PlayOnLinux only business oriented we could see greater *********** of Wine in SME market. Specially now when XP follows the VB6 path.
Dennis Johnson commented
"Old things have to die"
So, you're saying that C/C++ has to die? Assembly has to die? They are definitely older than VB6.
I know what you're gonna say: "They are more flexilble and ACTIVELY developed"
Who says that VB6 isn't flexible? The only problem is that it is ABANDONED for no apparent reason.
- "Fake classes"? You may prefer mixing class code with plain code. That's just a preference...
- About multithreading and inheritance. I have read in an article (I have lost the link unfortunately) that, if VB6 had been delayed by 6 months, it would support natively multiple threads and class inheritance. Who says it isn't possible for Microsoft to add these features to an improved VB6?
- "... ActiveX stuff don't work". You dare to say that? Seriously? After seeing the horror the Net framework can cause? You should already know that you can avoid problems like multiple versioning and registration, by embedding the typelib info into the application manifest.
- For your information, ActiveX is built on COM. And the whole OS API is moving towards COM. ****, VB6 is based on ActiveX/COM! So, what is blocking VB6 from becoming an active development language for the new OS'es?
- And what's your problem with ADO? It works perfectly as it is. I have recently created a migration app that connected to an IBM AS/400 and transferred data to a SQL Server.
There are so many languages out there. Bring it back or at least sell it to some company that would do what it thinks better. Choosing a language to make an application is mostly a preference; it's whatever someone thinks he's most productive in.
Eugênio Pacelli Salgado Canaan commented
Milan Oparnica, my friend:
VB6 executa, nativamente, compilado, e com excelente desempenho em qualquer linux.
Obviamente que você usará Wine, mas Wine não é um emulador, é apenas um compatibilizador de dlls.
Instale seu VS6, no seu linux, compile to native code e execute. Com um clique do mouse, nada mais que um clique. Um shell melhor virá no seu tempo, preencher essa falha do linux, e então, adeus MS.
VB6 runs natively compiled, and with excellent performance on any linux.
Obviously you use Wine, but Wine is not a emulator, it's just a dll compatibilizer.
Install your VS6, on your linux, compile to native code and run. With a mouse click, nothing more than a click. A better shell will come in its time, fill this gap linux, and then goodbye MS.
MIlan Oparnica commented
@Eugenio, You might have rushed into the conclusion here. I don't think that David Rathbone meant to insult the VB6 community. I feel he was aiming more towards Windows and MS in total...
I dare say I do agree with him. Of course we're not sitting and waiting for MS to bring back VB6. In fact, it's quite opposite...as soon as we got persuaded they won't develop VB6 any more we started to search for alternatives. And found plenty of them...personally, for me, it was a precious reset from their eco-system. Bottom line, half of our team is running Windows only as a virtual appliance to KVM or VMWare, and ONLY because we MUST provide support and enhancement for our main (VB6 based) product. It's **** hard to rewrite it, but slowly we're getting in to it. Enhanced version of VB6 could buy us more time, maybe even keep the code running, but there is less believe in MS each day and some point (soon) will become a "point-of-no-return".
We already converted servers to Linux, and main development is done on virtual XP and 2003 Servers. W7 and W8 are there too, but just for testing and keeping track with latest changes. Visual Source Safe is about to be shutdown too, in favour for SVN and Office is a long forgotten story, not to mention ongoing conversion of the databases to Postgres.
Pretty soon it will "just" be the VB6 that ties us to Windows. At that point we are going to put all of our efforts to overcome that "inconvenience". Nice people from Jump2Java offered their help there....
I've posted here more than year and a half ago failing to get any attention from the Visual Studio team since then. Looks like a deal breaker to me :)