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
Reinhold Beck commented
I do not want to learn new programming languages each two or three years and to master their learning curves. I do want to learn my clients' problems and to solve them with a fantastic flexible language which could easily hold good enough to trash the huge majority of other languages.
Leonardo Azpurua commented
I don't believe that VB6 is essentially better than any other language. My only point is that it is "good enough" for the work that I do, and that by the time of its dismissal I had a half million lines of working code (including one commercial business application, several libraries and user controls and a set of home brewed tools that allowed me to do my job in a most efficient manner). I still make my living from that code, that has improved and expanded along the last years.
Analogies are always deceiving. Leaded paint is toxic: if I use it, it is not just my trouble: I might be poisoning anyone else who entered my room. VB6 may be "old", but it does no harm. And a properly written VB6 program is as safe and efficient as any other program, regardless of the language and tools used to write it.
I don't mind other people using any other language. When VB6 became "legacy", I tried to move to VB.Net, but it had so many frustrating limitations (mine was the inability to create a user control based on one combo box and one specialized text box to represent a "quantity", i.e. a number plus a unit qualifier). I did create the control, and it worked when it was directly inserted on a form, but there was no way to use it as, say, the editor for a Grid column. Not with 2003, nor 2005, nor 2008. I tried other control suites (DevExpress, FarPoint, Component One) to no avail. Simply put, encapsulation failed miserably for user controls. That frustration, together with the feeling that I had been abandoned by my language provider, drove me away from Microsoft. Currently, I am writing Web extensions for my system using HTML+CSS+JS on the client side, and PHP on the server side. The whole thing feels as limited as eVB3, but at least I can be sure that my work won't be thrown into obsolescence by the decision of a handful of executives, since the governance of the standards for these languages is in the hand of people who actually use them.
I don't have any serious hope that MS will resurrect Classic VB (yet they could: they have been working in VBA, which shares lots of code with "standalone" VB), but if they did, they would certainly regain much of the respect and trust that they have lost for me.
Perhaps with the money they would make by the sales increase comig from the restored trust and the revival of the best selling language known so far, they might speed up the development of F# and other functional languages that Mr. Rowe suggests.
Rob Rowe commented
what? Really?!? Wow...There's enough 'stuff' in visual studio. How about promoting F# and other functional languages instead?
Mike O'Brien commented
While you're at it please bring back leaded paint and radium coated clock dials...
Yes please update our workhorse and keep it supported!!! I will forever defend and promote ms if you give us this gift!!!
Please! VB6 back.
I love vb6,very much
But it seemed that Microsoft was lost there power to take VB6 back.
They have not any good engineers who like the VB6 developers now,
They are quit when Microsoft choose the .Net as their new plan,
Just like they give up Windows XP to choose WIN8.
Microsoft was down,just like Motolola, Nokia & etc.
Yes! Just VB6!
We Need The VB6.1,VB6.2,VB6.n...
We Don't Need .Net1,.Net2,...,.Netn...
It's Not VB!
i love vb6 for ever!!!! please give us classic vb6 new life.
Andy-W (UK) commented
The ludicrous thing of abandoning VB6 and its developers is that VBA is still supported in all the Office apps. Given that VB6 should continue and evolve.
Now don't be upsetting all the c# folk .......
I love Vb6
You people are mental.
Yeah, VB6 was and is cool! There is no programming and debugging environment like it. MS made a very bad decision by throwing out the baby (VB6) with the bath water (COM/Win32) when they released .net and MSI. They should have had a separate stream for VB7. They are making another bad decision with Metro/WinRL and the current debacle. I was just about to develop a new (killer!) app in Vb.NET for use on Metro/Win8 and when I found out needed to use XAML/HTML5/C++/Win32/COM I decided to STOP and develop for Android/OS. As a longtime MS tool user I have given up on Microsoft, they can't find their direction and have stuffed around with Tables/Phones and now Windows 8 badly.
They have made wrong decisions each turn, with the initial Tablets (Full Windows OS), to Metro/Surface tablets (with dumbed down .Net subset interfaces), they just don't learn. Today, its the OS Win8 engineers ruling the roost over the DevTools/Studio team and they are driving MS into the ground. Bring back the accountants, at least they could see $ and make the right decisions for developers and therefore consumers.
Microsoft have made 2 big mistakes
1) thought that one size OS/GUI fits all devices, which will cause Surface/Metro to fail badly with Win8 continuing on the desktop as the only serious application platform.
2) treating their (dwindling) developer comminity with contempt and disrespect. its the developers that bring in the big money for microsoft, via customers buying hardware and OS's to run good 3rd party apps. now MS has their backs to the wall with iOS/Android and they deserve it.
@Anonymous januari 7: sadly the petition at http://classicvb.org/petition/ doesn't work, I keep getting an error to fill in all the details even if I have done so..
MS has use ten years proved vb6 is very good in history.
And MS also use another ten years proved .net is bad, Specifically .net's performance problem and Compatibility problem. and MS can't solve these problem.
So please back to the right right direction and give developer a new choice.: vb6 and com.
Here : http://classicvb.org/petition/
Dick Purcell commented
To Meredith Magnusson:
In my opinion VB through 6 is the best product Microsoft ever developed. Not just for speed of development, but because it opens serious software development to people whose expertise is in the field of the software's use rather than just experts in programming languages.
Sorta like opening English to novelists, essayists, etc., rather than keeping its use a secret for only grammar teachers.
Thank you for reopening this discussion's idea. Please lead Microsoft to resume fullest support for VB6 and maybe a fully compatible VB7. An easy method for making VB6 (7?) applications work on the Web in browsers would be nice.
Karim Wafi commented
Saya sudah tua sekarang, saya sudah tidak mungkin lagi belajar bahasa baru. Mempelajari bahasa baru memerlukan waktu minimal 3-5 tahun. Saya tidak ***** menghabiskan waktu yang sangat berharga ini.
Microsoft seharusnya tidak memaksakan 'bagus' untuk dirinya sendiri kepada orang lain. Seharusnya 'bagus' itu menurut mayoritas. Saya mengakui bahwa VB.NET memang lebih baik dari VB6, atau VB.NET terbaik (karena ia terus dikembangkan), tetapi baik untuk siapa? lagipula, tidak pernah ada client yang bertanya, apakah software ini dikembangkan dengan 'bahasa bagus' atau 'bahasa jelek'? yang ada adalah apakah program ini memiliki 'bug' atau tidak?
Supaya masalah VB6 vs VB.NET tidak berkepanjangan seperti ini, seharusnya Microsoft tidak mensupportnya lagi pada Windows 9 dan seterusnya (seharusnya ini sudah dilakukan sejak jaman XP). Masalah VBA di Office ganti saja dengan VBA.NET, Selesai. Konsekuensinya, Developer akan banyak meninggalkan Microsoft, Microsoft akan banyak kehilangan uang. Tapi permainan impas.
Sekarang, kepada siapakah Microsoft memberi gelar kehormatan MVP, apabila developer-developer [orang yang telah banyak berjasa mengkampanyekan program-program Microsoft] banyak yang meninggalkan Microsoft?
Orang-orang: English, please!
Saya: Google translate, please!
the reason this is getting few votes could also be, because nobody knows about this site, I for one stumbled onto it by accident and never knew about this..
but vb.net isn't much different from vb6 syntaxwise, it is what vb6 would be like if you had real OO.. The biggest problem I have with vb.net is the moronic 'orelse' and 'andalso', I for one never liked the vb6 behaviour of that, in like not short-circuit it, and would have rather had just or/and being shortcircuited instead of using the awfull orelse andalso.. but most things are just exactly like vb6 and more.. the biggest problem is the usage of the .NET framework, that's what makes vb.net seem less like vb6.
Also the other biggest problem I have right now with vb6 is the limitation of the ammount of variable names you can have in one project (yes I like to have everthing in one project instead of having to deal with the dll-****).