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:
http://msdn.microsoft.com/en-us/magazine/jj133828.aspx
Hi,
This idea was accidentally closed as declined. I am reopening for review.
Thank you!
Meredith Magnusson
Visual Studio PM
138 comments
-
Milan Oparnica
commented
Back in 90-ies I founded a software company aiming at business market and after thorough consideration it was the VB6 we set as development choice. We knew Pascal (Delphi) and C++ better, but VB6 still overtook them. It was the right tool for that task. It still seems to be.
We built everything on COM/COM+ (later). It works perfectly even now (in WOW64, duh).
After Microsoft announced its end-of-life, we tried to use .Net, even did some migrations, but it was not worth it. New tools look fine and feel great but they didn't bring any benefit that could overvote our main value - debuged business procedures. We are not ready to give that away.
So we went back to VB6/COM. VM's, Wine/Linux, Java/COM all became a part of our work environment where MS was 100% dominating just couple years ago.
It's a huge mistake if you ask me. We became open to other platforms, and its not the development tools only. Now we adopt other applications and services out of MS ecosystem too. And we share it with our clients too. Thanks to their decision we discovered whole new world of tools, applications and services and are not afraid to suggest and sell them in production any more.
I don't expect anything from MS, but it would be nice to have this simple but powerful language updated again. Specially having in mind that WinRT might be closer to native COM than .Net. (if RT has any future at all).
Improving COM+ "as web services" through IIS and SOAP would also be a good idea. It was there until Windows Server 2008 and 2012...
-
Anonymous
commented
Trying to connect .NET to a modern Oracle database IS A HUGE DEBACLE. H-U-G-E! I am very familiar with the Oracle support tools (and MS support software) at this point. Very familiar with .NET connection methods in 2010 and 2012. Compared to VB6, PHP or even Java; the amount of time required get a client connection\system working and maintained is staggering.
In VB6 it works consistently on all Windows systems and deploying VB6 apps is a breeze.
-
Anonymous
commented
I am a long time VB developer. VB6 meets the needs of 99% my development. If you would please just update VB6 for current OS versions (64-bit compiler), interface controls and database access and that will do.
Much\most of .NET missed the boat. We don't want to install the .Net (or Java) runtimes all over the place. Just one install suite of .DLLs. Ideally compile to a single .exe! SIMPLE = MATURE.
Thanks for listening and acting on it. If you can't, just release VB6 as open source and we'll take it from there.
-
Francisco Pifano
commented
I stumbbled upon this while looking for some VB6 help on the web, and OMG! I am so very happy to see so much enthusiasm on pressing MS to bring back VB to live! I´ve been a developer for more than 20 years now, and ever since I wrote my first lines on VB I have not used other tool for both front end and back end developments. From pre-Internet times up until now, VB has been incredibly flexible to every single need we have come to meet, and it has always came out strong on delivering all necessary tools to conquer all obstacles. Once I was told I was resisting change, I do not agree. We have changed along with VB all this time, and will continue for many years to come.
-
Matt Wilkinson
commented
I would certainly like to see 64 bit support Option Strict and an improved compiler but there doesn't need to be too much in it or else it will end up like vb.net
-
Dominik
commented
@Elroy: Excellent suggestions (the Redim stuff drives me crazy too) - even if MS will probably not even read this suggestion thread and will just keep it on "Under Review" until the end of days.
-
Winston potgieter
commented
Just read through the comments, someone stated that ms may internally have vb7, which was cancelled right before vb.net boy would i LOVE to get my hands on that. Might even take a trip to redmond... If they would let me in haha.
Also suggested features in addition to what has been mentioned:
Background worker
Modern ui tools
64 bit compilationThanks ms, send me that old copy of vb7 if you can...
Btw just released a radio automation software written in vb6..
-
Elroy Sullivan, PhD
commented
Dear Microsoft: If you ever do decide to develop a COM based VB7, here is a list of things I would like to see in it:
Option ExplicitType. This one would require that the Type (Long, Double, String, etc.) of all variables, constants, and functions be explicitly declared. It drives me nuts when I find a function that I’ve forgotten to declare, realizing that it’s using the Variant type.
Option BlockLevelDeclares. If this one were used, it would allow the scope and lifetime of variables to be limited to the specific Do/Loop or For/Next loop in which they were declared. However, Microsoft, don’t do it unless we specify the option. Don’t break our existing code! It would actually be nice to have a way to specify intra-procedure scope/lifetime without creating a loop. Possibly have a couple of new keywords: Block and End Block. As one last point, both the scope and the lifetime should be limited unless the variables are declared as Static.
Don't allow a Redim to qualify for an Option Explicit dimensioning. In my mind, Dim, Static, Public, Global, & Private are the only true dimensioning statements. Redim is a runtime statement used to modify an already dimensioned dynamic array. As far as I am concerned, this change could be made without allowing for any option metacommand, even though it might require some modifications to existing code. If you like, add an Option NoRedimWithoutDim so that existing code isn't broken.
An 8 byte integer, but don’t rename the Types for existing integers (Integer and Long). Call it something like DoubleLong. Yes, I know. I can get this done with the Currency type, but then I have to futz with the fixed decimal stuff.
Full Unicode support in all the core level controls (textbox, label, command, all captions including forms, etc.). As a further caveat: Don’t break all our existing API calls to both ANSI and Unicode API functions when/if you ever do this.
A straightforward utility to create manifest files for OCX and DLL support files. Or, better yet, a way to include OCX and DLL files in our Project Explorer window so that they get wrapped up in the VB EXE file as an internal overlay (obviously, with no requirement to “install” or register them). Whatever you do, don’t break the ability to use old OCX and DLL files.
Built-in support for the look and feel of Vista, W7, & W8 style windows.
Yeah, I know. Tilting at windmills, but I can always hope. May VB6, or a TRUE upward compatible successor, live on forever.
-
Ernie Vega
commented
Not having VB is costing you more than you realize. Release a real updated VB and let the pro's go back to work.
-
L Ofaday
commented
My impassioned message to Microsoft -- Bring back VB6 (or a 100% compatible derivative) and next time, think twice beforfe you incinerate a 20 year career and millions of lines of code and near a million pounds of investment in libraries and wasted products (by self and staff). Microsoft will Never be forgiven for this. You have cost me the equivalent of a house and taken a decade off my life. I sell Linux now, using Gambas. If the sharp Harvard suits that advised you said you could get away with collateral damage as you line your pockets, sack them while you think of the 1000's of OS sales you have lost out from me alone, and know that this (and that surreal windows 8 xBox front end) helped precipitate MS's nosediving fortunes against an emerging multitude of other OS's (Apple, Linux, Android, etc). Most despicable was the campaign against VB6ers with innuendo about how VB6 was not a proper program (eg: http://msdn.microsoft.com/en-us/magazine/jj133828.aspx insuating we are all dopes that drive buses and want to go home at 430pm). If I'm not proper, then let me tell you that your tangled mess.Net missed the target of proper people too -- instead, it appealed to autistic bureaucrats who think every programmer should use cut and paste and have a library of a million unintelligible 200 character object names in their head. All I wanted was a tool. I trusted you. Bad move. Maybe I'm going on now, but you get the gist. Ps: I think MS are getting the message... http://tinyurl.com/czyo4gk .
-
Germanium Jack
commented
I *need* to keep using VB6. I became disabled and cannot afford to upgrade to newer versions. "Lite/Light" versions are not the same as a full professional developer version. It works and it works well. I was able to use it to help "reboot" some of my memories after strokes and TIAs. It was a BIG help. If for some reason I can no longer use VB6, I'll be forced into some sort of open source or similar tool which would be totally incompatible, but the only path open to me, as the entry price for "big" versions of devlopment tools is expensive. I wish that MS would consider annual update support fees for this product so that they could afford and justify assigning a programmer to refresh the product periodically. No major new features, just bug fixes and an occasional new installable control to support new O/S features. I wish this would happen. Say US $50 or $75 per year for this, provided by some thousands of developers would provide some development funding. Whatever the case, I really appreciate that they've kept it usable with the moving target of operating systems as long as they have. Like the ads these day say though, more is better! :-) Thanks for the long run. How about another lap, a *paid* lap?
-
Anonymous
commented
I'm hesitant to invest time, money and effort learning .net. Besides all these .net deployment issue, Microsoft seems like they're not developer friendly. Sooner or later, Microsoft will come up with another language to replace .net because .net and programmers will be forced into it again. Just like when Windows ME failed, MS answered it by releasing windows XP and when Vista failed, they answered by releasing windows 7. .net for me is a failure, what comes next?
-
Anonymous
commented
OK one more point. If MS does not upgrade VB6 as we are asking here, VB6 will be like a B-52 escorting the latest generations bomber to it's retirement base. VB6 will live on.
I live and work in the NASA community. We all noticed that when direction came down to create a new manned space vehicle after the space shuttle was cancelled, it looked amazing like the Apollo era command module. Knowing how much they got it right, developers simply picked up where they left off in a sense. Simply modernized it. HINT!
-
Anonymous
commented
We don't hate .Net. VB6 lets many of us do what no of language can do. If written right (like any code) the apps are solid and easily supportable. VB6 is simple and amazingly powerful.
Many of us wear many hats. When we wear the "application developer" hat we need to knock out a rock solid app immediately. Yesterday.
I noticed something else unexpected when using VB6. In comparison to Java and .Net ... it is fun. It is really enjoyable to create and quickly deploy applications of that quality.
-
Anonymous
commented
+1 NOTHING touches time-to-market like VB6. Just give me a 64bit VB7 and updated controls. .Net is a nice experiment. I'd rather program in Java than have to carry that runtime (which version??) and have all those required "features" etc.
I needed an app the other day, I knocked it out in a day with VB6. It is a bug free, solid tool that is running on every Windows 2008 production server we have. We did NOT want a Java or multiple .Net runtimes on those servers. More to patch etc.
HELLO Microsoft are you still receiving? VB6, as modest as it is, is an amazing tool and development system. At least put it out as open source community without restrictions.
-
Anonymous
commented
A simple login application takes too much time in .net in comparison to vb6, Microsoft can cash in billion $$$ by resuming vb6.
-
Marcel
commented
@Winston potgieter : I was self-employed for 15 years, writing in Cobol and (later on) VBx. But all my written programs in Cobol are changed in time to other languages and so it will go - I'm pretty sure - with my programs in VBx. For now, I refuse to write new parts on my old programs in VBx (excluding fixing errors of course, and to be honest, I never ever did forget a language so fast as VB6). My problem is Microsoft itself : Can I be sure they will continue with .Net (as I see how bad Metro is, the will to throw away silverlight...) I can only hope I made the right choice to switch from vb6 to VB.Net...
-
mjohn
commented
SuperDre,
1. Today, vb6 and vc6 can run from win98 to win8 and maybe can run in win9 and later os if only win32 isn't dead, so vb6 and vc6 can live at least 10 years and even more, it enought for me.
2. As for.net. .net 1.1 can't run above win7. net 4.5 can't run below win7, winrt can't run below win8.... you can see, all the new MSFT's new technology can't run on More than half OS that vb6 or vc6 can.
3 .net CLR is many times slower than vc6 and vb6; .net framework is many hunders bigger; .net eat more than ten times memory; .install vs.net is hunders times slower; vstudio.net is many many times slower;. and net waste too many power than vc6 and vb6s.
And .net can't be used for microsoft to develop office or windows, it is only fit for developers to develop web apps.
So I can feel that microsoft want abandon .net to use winrt, but microsoft is afraid of angering more developers. But I think .net will eventually be abandoned before vb6 dead.
today I only learn and use asp.net mvc, because asp.net mvc is open soure and can run on mono, so it is good for us, I will not learn other microsoft' new technologies now. I've had enough of Microsoft constantly abandoned. -
SuperDre
commented
mjohn, you bring up a great example, silverlight... you know MS has stopped supporting it (there won't be another new release), after windows metro was announced and MS showed all examples on how to use HTMl5 and javascript for creating applications they were dead quiet on silverlight.. So it's a good example why NOT to use any MS framework anymore, **** even VB6 runs on more OSses than the latest .NET does.. With each new release of .NET there is a new Visual studio and it's not possible to use the older visual studio's with the newer versions even though .NET was build to be backward and forward compatible as everything is available (compiler etc) with every .NET framework.. So you'll have to buy a new version of VS just to be able to use the newer additions to the .NET framework (and with VS2012 they fubarred the IDE by making it flat ugly and monochrome icons (comeon, I already left that behind when I put my hercules card to rest) so it's even a **** to use.. And don't get me started on the awfull slow visual components of .NET....
-
mjohn
commented
From now use .net or winrt or silverlight to rewrite software only for Windows OS is stupid.
Because complete the software need many years, but Microsoft will not survive for more than ten years. And the next ten years is time of web and app for phone/pad, it is time for Google and Apple, not for Microsoft. Microsoft abandoned the developers in past ten years, Now it is time for developers to abandon Microsoft.