I suggest you ...

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

7,433 votes
Vote
Sign in
Check!
(thinking…)
Reset
or sign in with
  • facebook
  • google
    Password icon
    I agree to the terms of service
    Signed in as (Sign out)
    You have left! (?) (thinking…)
    Anonymous shared this idea  ·   ·  Flag idea as inappropriate…  ·  Admin →
    MeredithMeredith shared a merged idea: Make VB6 Free  ·   · 
    Mike PaulickMike Paulick shared a merged idea: Bring back VB6. I have no interest in .net. VB6 is better for me.  ·   · 
    David KayeDavid Kaye shared a merged idea: Bring back VB 6.0! It's an extremely handy language used on tons of business apps.  ·   · 
    Adam SpeightAdam Speight shared a merged idea: Don't do a Classic VB (VB6). Open Source the VB6 compiler source code.  ·   · 
    VB6 FireVB6 Fire shared a merged idea: Bring back our un-killable cockroach, is ours !  ·   · 
    I_A_WI_A_W shared a merged idea: Visual Basic 6.0: A giant more powerful than ever  ·   · 
    Anonymous shared a merged idea: Open Source VB 6  ·   · 
    declined  ·  Visual Studio TeamAdminVisual Studio Team (Product Team, Microsoft) responded  · 

    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.

    Paul Yuknewicz
    Group Program Manager
    Microsoft Visual Studio Cloud Tools

    1493 comments

    Sign in
    Check!
    (thinking…)
    Reset
    or sign in with
    • facebook
    • google
      Password icon
      I agree to the terms of service
      Signed in as (Sign out)
      Submitting...
      • Sten2005 - vote for VB6 programmingSten2005 - vote for VB6 programming commented  ·   ·  Flag as inappropriate

        @Anonymous

        As Kontex says the issue is about the future.

        Microsoft, showing their usual contempt for developers, won't even answer the question "Will Windows 9 support the VB6 runtime ?"

        Yes, we assume it probably will - as VBA is still a current Microsoft language and anything that prevented VB6 from working would probably prevent VBA too. But we have the uncertainty of not knowing if or when VB6 won't run anymore.

        That's why we have asked Microsoft CEO Satya Nadella to either update VB6 with the same (few) features added to VBA7 or to open source the VB6 programming language.

      • KontexKontex commented  ·   ·  Flag as inappropriate

        @Anonymous commented · September 22, 2014 1:52 AM

        The problem is that VB6 applications no longer run when missing WOW64 support in future Versions of Windows. Without WOW64 VB6 applications are dead !

      • Anonymous commented  ·   ·  Flag as inappropriate

        A question. If you like VB6 so much, why do you complain? Nobody tells you not to use it? If you can do whatever you are doing and even more according to your claims, just stick to it and enjoy. You don't need anything else. Isn't it? I don't understand what the real issue is here.

      • AaronAaron commented  ·   ·  Flag as inappropriate

        What Paul doesn't seem to understand is that what made the VB6 ecosystem an "excellent tool for solving the problems of its day" is what STILL makes it an excellent tool for solving those SAME problems today. Those same problems cannot as quickly or easily be solved in Visual Studio with VB.NET or C#, END OF STORY.

        I am so tired of hearing the bs claim from .NET -ers that anything that can be done in VB6 can be done better or faster in VB.NET or C#. While that may be true in some rare cases, learning the extra features of VB.NET and VSStudio takes time; converting the code and rebuilding the forms takes lots of time, and simply learning the new tools well does not mean you will be as efficient as you were in the old --it just means you will be more efficient in the new tool than you were starting out. And there is little reason to believe that the apps themselves will be any better or more efficient if they are WORKING FINE NOW AS IT IS!

        And then, the irony of all this talk about the enhanced memory features of .NET is that compile times and memory models are even less important now than they ever were, due to the ongoing performance advances with hardware. And the component which DOES matter the most for most kinds of apps (how optimized the SQL is), has been abstracted away by .NET to the point that most developers nowadays don't even know WHY their web apps suck . Compared to the "outdated" old winforms desktop apps developed in bad ole VB6 days (frequently by "non-programmers") many of these seem, slow, choppy, unreliable now--even as the VB6 apps are real speed demons. But then how many developers today study the database explain plans to fine tune their apps beforehand?

        I am not excusing VB6's limitations. The GUI workarounds and frequent api calls were always a pain. I am a "business person " who mainly develops with Access using an Oracle or SQL Server backend and they are still a pain there. But one care about the looks. In the majority of cases, apps are built for businesses, and these businesses neither expect visual eye-candy nor want to spend their resources by paying you to create it.

        It is unfortunate that Access does create stand-alone apps, and that Microsoft has made the equally inane decision to make DAO the preferred connectivity option over ADO, or Access could perhaps pick up some of the slack where VB6 left off. As it stands, I mostly publish to Access and use custom ADO classes for everything. And yet despite my reliance on this "ancient technology" my apps still somehow manage to **** all over all of the "enterprise" apps built by others in my company and get delivered in a fifth of the time. Imagine that.

        There is no doubt that many of the object-oriented features added to VB.NET were useful, and that OOP in VB6 (or VBA for that matter) is pain to implement. There can be no doubt that VB6 and VBA both lend themselves to "spaghetti programming" if not done correctly. But there always ARE ways to make a projects code efficient and organized. Developers worth their salt find the means, the ingenuity. And they don't need every library and method under the sun sewn into some bloatware of an IDE to make that happen.

        Paul is right--VB6 was "ecosystem," a whole environment. And it was one particularly well-suited to the needs of business and efficiently creating apps, just as much as Visual Studio today is NOT. Sure, some VB6 apps created by novices were clunky or full of spaghetti, but many of them WEREN"T and continue to function flawlessly today. A developer worth his salt will produce quality work, end of story. But there is no guarantee that the MS development tools of today can be used to produce it as quickly as VB6 could, nor any guarantee that whatever newfangled Framework features Microsoft is pushing for adoption today won't need to be removed in another 10 years.

        I for one have lost faith. I'll continue to use Access for my lightweight RAD needs until or if they remove ADO compatibility. For the "serious" development work I need, it will be NetBeans or another open source IDE. I don't trust Microsoft's commitment to their product support now, nor do I particularly trust their judgement. They are being given all the chances in the world to right the wrong here by turning VB6 over as open-source, and are choosing not to. Probably because they know they will loose much of the VB.NET base they've so painstakingly won over if they do.

      • Anonymous commented  ·   ·  Flag as inappropriate

        Dear Paul,

        I do have a development Framework based on VB6 that can change the game of developing enterprise level business solution,

        it si been used on many companies and used to produce ERP solution on the scale of SAP.

        This Framework is the future of programming that been said by the developer who used it,

        I need your help to make Microsoft get notice it, and I can assure you you will not regret,

        Alyami

      • KontexKontex commented  ·   ·  Flag as inappropriate

        Also there is a 64bit VBA in Office2010 availabe.
        They have the 64-bit resources !

      • Dennis JohnsonDennis Johnson commented  ·   ·  Flag as inappropriate

        Excellent find Anonymous (Sep 15 6:45)!
        Now I want to see what they have to say about not being feasible to port to x64!!!
        How about that, Mr Yuknewicz? "Take a change like 64bit, the complete runtime, tools and ecosystem chain would need to be retooled."

      • Anonymous commented  ·   ·  Flag as inappropriate

        The 64 bit thing is a lie. They had it in 1998. Not for intel but that is a back end issue.

        http://www.microsoft.com/en-us/news/press/1998/dec98/vbvc-compaqpr.aspx

        Microsoft Announces Availability of Visual Basic 6.0 and Visual C++ 6.0 For Alpha-Processor Native Application Development
        Dec. 07, 1998
        Software Developers Can Use the Popular Visual Studio Products to Develop Applications For the Most Powerful Systems Available Today
        Send EMail
        inShare

        REDMOND, Wash., Dec. 7, 1998 — Microsoft Corp. today announced the immediate availability of versions of the Visual Basic® 6.0 Enterprise Edition and Visual C++® 6.0 Professional Edition development systems designed specifically to run on Compaq Computer Corp.'s 64-bit Alpha processors and the Microsoft® Windows NT® operating system. Developers currently using these popular development tools on x86 systems can easily target the Alpha platform with just a recompile. Combined with the 64-bit Platform SDK, Alpha-processor-based Microsoft Visual Studio® development system tools prepare developers for future 64-bit Windows NT-based systems.

      • SuperDreSuperDre commented  ·   ·  Flag as inappropriate

        @Anonymous who converted to C#: what do you call bad code writing?

        As I see a lot of **** code from a lot of C# developers too.. and IMHO you'll have to do with the language you need to use for your work, and in the end it's the developer that writes the **** code, not the language.. Also, what IS 'good code writing', IMHO it's in the eye of the beholder.. What may be clear and clean to you, may be unreadable and messy to someoneelse.. Stuff like lamda expressions and generics can be great if used properly, but to me, a lot of people are just abusing them and with it creating a lot of unreadable code (remind you, a lambda expression is in reality nothing more than an 'unnamed' function, so why not use an actual named function so other developers know what it's meant to do, just to give you one example of how misused lamda expressions are)..

        I'm not saying that you shouldn't use C# for new projects, far from it, but don't diss an old language because it doesn't contain the latest hip stuff and say it promotes bad code writing.. As I said, bad code writing is all up to the developer him/herself..

      • Anonymous commented  ·   ·  Flag as inappropriate

        Here, I have to give the decision to Jeff. The average of three test runs on my computer resulted in the conclusion that, at least in this particular test, VB 6 is 83 percent faster than VB.NET. Not too bad!

        Another interesting result was that building VB.NET as a "release" build rather than a "debug" build only gave a benefit of 5 percent. And running NGEN (Native Code Generator) against the VB.NET assembly didn't seem to improve the performance at all.

      • Anonymous commented  ·   ·  Flag as inappropriate

        @Anonymous, please post a link to your .exe app or installer so we can look at your source code, Thanks!

      • Anonymous commented  ·   ·  Flag as inappropriate

        I was hesitant but then I gave a go and converted by VB6 to C#. And slowly I started liking it. Now, after 6 months, I know I will never go back to VB6 and I should have switched long before. I have already converted 50k lines of code from VB6. Now I am more efficient and I am applying all modern programming methodologies. I guess VB6 encourages bad code writing. I suggest everbody to switch to C# now. Regards.

      • Patrick CarmodyPatrick Carmody commented  ·   ·  Flag as inappropriate

        VB6 was, overwhelmingly, the best interactive / incremental compiler ever.
        I could write a routine, decide it did not work, replace it with Stop, run the application and , when it stopped, try out variations, new dim statements, look at the variables, introduce new ones and all without stopping or recompiling. I can then code incrementally and see the results at once.

        VB.net (which is just a wrapper for some C variant) is a complex, compiled language.
        This is exactly the kind of languages I learnt on in the 1970's - compile it, fix the statement exceptions – and now try to figure out why it does not work.
        And all variables and routine names are massively overqualified – this is so the compiler (which is too stupid to figure it out) can be instructed exactly what’s going on.
        The idea of programming languages was to write the program once, then run it on a variety of machines. But the same old language was too boring for the developers at Microsoft.

        A massive step backward.

        And the help system on vb.net is useless - if it were not for Google and the independent tech sites, the language would be simply unusable for anyone less than a post-grad in computer science.

        It just is NOT TRUE that upgrading to 64 bit is an insuperable technical hurdle – like saying you cannot put a turbocharger on a mini. Truth is the Microsoft nerds are all fluent in c and believe everyone else ought to love it just like they do.
        I’m seriously angry at having to redevelop for windows 9,

        Microsoft should also offer music ruled 14 inch listing paper - it’s the same vintage.

      • Anonymous commented  ·   ·  Flag as inappropriate

        Dear, bring back VB6 would be fair. I'm sure if you could see what kind of apps I've performed recently you would rip off your hair.
        Not only VB6 is simple to handle but also the resultant apps are faster than other else
        Apps' language made with.
        Steve

      • azerazer commented  ·   ·  Flag as inappropriate

        Ok, so today, i installed VS 2013 to build Win Phone Apps. Guess what, they removed the MessageBox.Show method. so it took me half and hour to figure out how to popup a simple msg for a Hello World demo. thats not all, VS version are tied to WP versions, so to build for WP 8 you will need VS 2012, and to Build for WP 8.1 you will need VS 2013. the whole dotnet has became a unmanageable, slow, confusing junk.

      • azerazer commented  ·   ·  Flag as inappropriate

        Malwarebytes Anti-Malware one of the most downloaded software on download.com is developed in VB6. It also uses code from vbAccelerator. It gets 100,000 per week on download.com alone, if we count other sources then it gets about Half a Million Downloads a Month or 6+ Millions downloads a Year.

      ← Previous 1 3 4 5 74 75

      Feedback and Knowledge Base