I suggest you ...

12,081 votes
Vote
Sign in
Check!
(thinking…)
Reset
or sign in with
  • facebook
  • google
    Password icon
    Signed in as (Sign out)
    You have left! (?) (thinking…)
    Eugene shared this idea  ·   ·  Flag idea as inappropriate…  ·  Admin →

    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

    8872 comments

    Sign in
    Check!
    (thinking…)
    Reset
    or sign in with
    • facebook
    • google
      Password icon
      Signed in as (Sign out)
      Submitting...
      • Anonymous commented  ·   ·  Flag as inappropriate

        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.

        **** Purcell

      • Anonymous commented  ·   ·  Flag as inappropriate

        Microsoft 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/

      • mariatheresa commented  ·   ·  Flag as inappropriate

        The creation of a tool like .NET was a very good lesson for the programming community and taught the programming world a good lesson that nobody should produce anything such as .NET framework in the future. The reasons may be listed as follows:

        1- C# was a "patch-up" tool from the beginning. The .NET developers at Microsoft were trying to make everybody happy by adding patches here and there, sometimes quite in unorthodox ways. There has never been a top to bottom approach from the beginning. The big picture of the forest was never there. When someone wanted something new, they were planting some more exotic trees into that forest which become slowly but surely an uncontrollable ecosystem, namely a jungle. When they have created .NET, it was that moment, I believe, that things start getting out of control. There were so many unorthodox, unconventional hacks into the heart of windows APIs, that the .NET ecosystem started cracking and the collapse would have been imminent, etc...

        2-The other factor that the .NET ecosystem was doomed to fail sooner or later, was the fact that the entire windows structure was exposed to programmers through API hooks in dangerous ways. It was an unmanaged way of reaching to the heart of windows which could only worsen the entire operating system. There were OCX and third party vendors, which have mushroomed almost overnight, quite uncontrollable and able to do all kind of hacks without giving any thought about the consequences. Big companies producing important, mission critical code and informed programmers with vision could see that C#/.NET was sinking in its own weight. Maintainability, expandability, creating standard coding practices was impossible. It was a dead end. That's why they were more than willing to jump back on the managed ecosystem that we call VB6 today.
        So in short, it is a huge necessity to get rid of a flawed tool called .NET ecosystem and design something properly engineered, which would live a long and healthy life.

        Bring BACK the genius of VB6 !

        VB6 roks !!!!!!!!!!!!!!!!

      • isjhony commented  ·   ·  Flag as inappropriate

        truefan commented · May 19, 2018 16:06 · Flag as inappropriate
        Let us just recognize that VB6 is unbeatable. Microsoft trays to crush this language and community for decades ! It is not happening.

        Get used to the VB6 language ! It is unbeatable !

      • isjhony commented  ·   ·  Flag as inappropriate

        C# and .NET are dead. Cannot be used to develop any useful application in modern windows. Use java or VB6 instead.

        VB6 = Ferrari prototype car

        VB.Net 2003 = Covered Wagon version 1
        VB.Net 2005 = Covered Wagon version 2
        VB.Net 2008 = Covered Wagon version 3
        VB.Net 2010 = Covered Wagon version 4
        VB.Net 2013 = Covered Wagon version 5
        and
        VB.Net 2017 = ? ...... version 6?

        PS: .NET is and it will always be non-existing for web development

      • isjhony commented  ·   ·  Flag as inappropriate

        VB6 is far superior to C# !

        No one is going to use C# and the blotted .NET software. If it didn't happen 15 years ago, it won't happen now.
        The rules that applied then apply now. Companies do not pay to rewrite all their applications in the .NET and IRRELEVANT technology which does NOT function and it will never do.

        And .NET applications generally run slower. It makes no sense.

        Only a developer living in an idealistic fantasy world think that and asked to use .NET at all.
        Some posters here have no knowledge or experience to understand why legacy applications SHOULD NOT simply get rewritten in the latest BAD technology, like NET. There are fundamental reasons why everyone is still talking about VB6...

      • isjhony commented  ·   ·  Flag as inappropriate

        VB6 Programming commented · May 22, 2018 00:58 · Flag as inappropriate
        Why is C# failing ?

        1) Win Forms and Web forms And WPF are all legacy now. Microsoft have abandoned them and the developers that use them.

        2) The .Net Framework is legacy too. Again Microsoft have abandoned it and the developers that use it.

        3) Now Microsoft tells developers to use .Net Core. But .Net Core doesn't have a GUI.

        4) C# isn't a choice for non-Windows applications. There are other languages more suitable. Notably JavaScript for Web and Mobile apps.

        5) New developers see nothing interesting in C#. It is just a C-like language with no GUI. There is no reason to use it. Nothing special.

        Anyone deciding to stay with C# and .Net must be very,very brave.

      • masterofall commented  ·   ·  Flag as inappropriate

        AWARENESS is Visual Basic 6.0. AUTHENTIC – AUTHENTICITY is Visual Basic 6.0. ABRACADABRA is Visual Basic 6.0. ATTRACTION is Visual Basic 6.0. ALLOW – ALLOWING is Visual Basic 6.0. AFFECTION – AFFECTIONATE is Visual Basic 6.0. ABSORBED is Visual Basic 6.0. ALERT is Visual Basic 6.0. AMAZED is Visual Basic 6.0. AWE – AWED is Visual Basic 6.0. ANIMATE – ANIMATED – ANIMATING – ANIMATION – ANIMATENESS is Visual Basic 6.0. ARDENT is Visual Basic 6.0. AMAZING is Visual Basic 6.0. AWESOME – AWESOMENESS is Visual Basic 6.0. AROUSED is Visual Basic 6.0. ASTONISHED – ASTONISHING is Visual Basic 6.0. AMUSED is Visual Basic 6.0. AIR – AIRNESS is Visual Basic 6.0. ALOHA is Visual Basic 6.0. ADORE is Visual Basic 6.0. ADMIRE is Visual Basic 6.0. ADMIRABLE is Visual Basic 6.0. ALLURE is Visual Basic 6.0. ANGEL – ANGELIC is Visual Basic 6.0. ALTRUISM – ALTRUISTIC is Visual Basic 6.0. ABOUNDING is Visual Basic 6.0. ABSOLUTE – ABSOLUTELY is Visual Basic 6.0. ACCESSIBLE is Visual Basic 6.0. ACCLAIMED is Visual Basic 6.0. ACCOMMODATE – ACCOMMODATED – ACCOMMODATION – ACCOMMODATING is Visual Basic 6.0. AMPLE is Visual Basic 6.0. APPRECIATIVE JOY is Visual Basic 6.0. AMIN is Visual Basic 6.0. ACCENTUACTIVITY is Visual Basic 6.0. ACTABILITY is Visual Basic 6.0. AFFABLE is Visual Basic 6.0. ALACRITY is Visual Basic 6.0. ALTRUCAUSE is Visual Basic 6.0. AMIABLE is Visual Basic 6.0. ASTOUNDING is Visual Basic 6.0. ATTRACTIVE is Visual Basic 6.0. ALIVE – ALIVENESS

      • masterofall commented  ·   ·  Flag as inappropriate

        masterofall commented · Delete…
        I remember having designed complex code in the 2009 and early 2015 and it was almost impossible to unit test those complex applications, not to mention the maintainability and expandability aspects. That's the reason why most of the big businesses were not happy to stay with C# and .NET in general since very early on. It doesn't mean that all software is complex and requires solid principles to separate UI and business model. However for big businesses and their mission critical software this is vital as they want to keep their code base maintainable and expandable. Visual Basic 6.0 is the best choice for windows to do this. Ask any professional software developer and you will see that Visual Basic 6.0 is the most popular. It is an almost complete framework with huge user community and VB6 programmers are highly in demand (and very, very well paid).). It pleases professional business software developers immensely. Yes there are other software that you can use for mission specific purposes. For instance ADA is a very old language that is widely used in aerospace and aviation due to its many fail-safe features. Obviously, using C# or VB.NET wouldn't be practical in such a case. Similarly, VB6 or Python is embraced by the scientific community for similar reasons. Currently C# and VB.NET has really no such area, in which it would be the best choice. There are many other modern languages, equally easy to learn and targeting RAD type of environments. That is the reason why Microsoft will lose the race of programming languages and that is reality!!!!!!

        LET .NET DIE !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!

        BRING THE VB6 GOD BACK !!!!!!!!!!!!!!!

        masterofall commented · Delete…
        RESPECT is Visual Basic 6.0. RADIANT is Visual Basic 6.0. READY – READINESS is Visual Basic 6.0. REAL – REALITY is Visual Basic 6.0. REASON is Visual Basic 6.0. RECOMMEND is Visual Basic 6.0. REFRESH – REFRESHED is Visual Basic 6.0. RELAX – RELAXED is Visual Basic 6.0. RELIEF is Visual Basic 6.0. RELIEVE – RELIEVED is Visual Basic 6.0. REMARKABLE is Visual Basic 6.0. RATIONALITY is Visual Basic 6.0. RECOGNITION is Visual Basic 6.0. RELATIONSHIPS is Visual Basic 6.0. RELIABLE – RELIABILITY is Visual Basic 6.0. RELIGION is Visual Basic 6.0. RESOURCEFULNESS is Visual Basic 6.0. RESPECT is Visual Basic 6.0. RESPONSIBILITY is Visual Basic 6.0. RIGHTEOUSNESS is Visual Basic 6.0. RISK-TAKING is Visual Basic 6.0. ROMANCE is Visual Basic 6.0. REVELATION is Visual Basic 6.0. REVIVED is Visual Basic 6.0. RESTORE – RESTORED is Visual Basic 6.0. REST – RESTED is Visual Basic 6.0. RENEW – RENEWED is Visual Basic 6.0. REJUVENATE – REJUVENATED is Visual Basic 6.0. RAPTURE – RAPTUROUS is Visual Basic 6.0. RESILIENT – RESILIENCE is Visual Basic 6.0. REVERENCE is Visual Basic 6.0. RIPE is Visual Basic 6.0. REBORN is Visual Basic 6.0. RELATEDNESS is Visual Basic 6.0. RASASVADA is Visual Basic 6.0. REPOSE is Visual Basic 6.0. ROSINESS

        masterofall commented · Delete…
        TRUE is Visual Basic 6.0. TRUST – TRUSTING is Visual Basic 6.0. TACT is Visual Basic 6.0. TEACH – TEACHABLE is Visual Basic 6.0. TEAM is Visual Basic 6.0. THANKFUL – THANK – THANK-YOU – THANKFULNESS is Visual Basic 6.0. THERAPY is Visual Basic 6.0. TIME is Visual Basic 6.0. TEAMWORK is Visual Basic 6.0. TIMELINESS is Visual Basic 6.0. TOLERANCE is Visual Basic 6.0. TRADITION is Visual Basic 6.0. TRANQUIL – TRANQUILITY is Visual Basic 6.0. TRUST is Visual Basic 6.0. TRUTH – TRUTHFULNESS is Visual Basic 6.0. TENDER is Visual Basic 6.0. THRILLED is Visual Basic 6.0. TOUCH – TOUCHED is Visual Basic 6.0. TICKLED is Visual Basic 6.0. TO MATTER is Visual Basic 6.0. TO KNOW is Visual Basic 6.0. TO BE KNOWN is Visual Basic 6.0. TO BE SEEN is Visual Basic 6.0. TRANSFORMATIVE – TRANSFORMATION – TRANSFORM is Visual Basic 6.0. TRIUMPH is Visual Basic 6.0. TEAMWORK is Visual Basic 6.0. THRIVE – THRIVING is Visual Basic 6.0. TENACITY

      • Anonymous commented  ·   ·  Flag as inappropriate

        Visual Basic6 is not just a bad language -- it is a hideous jumble of traps and annoyances, a short step up from Intercal in usefulness.
        1. Awful declaration syntax and requirements. Variables must be declared but cannot be defined at the same time. Every interesting object is a "variant", which is a useless declaration.
        2. Prison-like development environment. I can't develop code that's not tied to a document somehow; I can't even put the code in source control except by copying the text out into a separate file, then copying it back in for use. I can't leave one routine partially written while I investigate something else, because the editor will go crazy.
        3. Active hostility to polymorphism. If I want a function to work for numbers, I have to make sure those numbers aren't wrapped in a 1x1 array (a variant!) because VB will not unwrap them for me. But I can't just test whether a function input is a variant, because that is too general.... there is no good solution to this.
        4. Complete lack of libraries. Methods that would be standardized in serious languages, or built directly into the language, are just missing. Where are my hash tables, deques, etc? Where are sort and unique and filter? Where is map? They are nowhere to be found, and I can't supply them except by loading documents over and over into the catastrophically bad IDE, see (2).
        Any of these would be a show-stopper for serious consideration of VB. (3) is the most painful to deal with, but I guess (4) is actually the most serious.

      • Anonymous commented  ·   ·  Flag as inappropriate

        VB6 limits you to decades-old technology.

        That means no SaaS,
        no SOA, no modern web. And then there’s the security issues. VB6 hasn’t been updated in years and doesn’t have patches to address all of the recent hacking. Only computers completely isolated from the web are safe. That means you can’t do even the most basic business tasks. Plus, VB6 is so outdated. It’s impossible for you to add functionality that you need. Kiss VB6 goodbye.

        There's been a strong push by the user community to open-source VB6 in order to ensure a better future for both the language and the developers. In early June, Microsoft officially confirmed that it will not be open-sourcing VB6. We have advice for those of you who are ready to move off of Visual Basic and on to more modern languages and platforms:
        The future for VB6 is more bleak than ever before. Hackers can exploit every security vulnerability. PLUS, if you are still using VB6, you are out of compliance with:
        • HIPAA
        • PCI
        • SOX
        • And lots more.

      • Anonymous commented  ·   ·  Flag as inappropriate

        Marry Tarterelli says

        A lot of people including myself made the transition to .Net, and all the others should.

        There will be no update of VB6 and it would be ridiculous if so.
        I agree there are many applications developed in VB6 in the 90s. But it is not logical, practical or realistic to think that would be the norm in the future.

        Operating Systems are evolving and will not be held up by archaic code. It sounds harsh but it is a fact.

        Sorry

      • Anonymous commented  ·   ·  Flag as inappropriate

        Antony Popkins says

        No one is going to use VB6 software. If it didn't happen 15 years ago, it won't happen now.
        The rules that applied then apply now. Companies do not pay to rewrite all their applications in the OLD and IRRELEVANT technology which does NOT function any longer.
        And VB6 applications generally run slower. It makes no sense.
        Only a developer living in an idealistic fantasy world thinks that and asked to bring back VB6.
        Some posters here have no knowledge or experience to understand why legacy applications SHOULD simply get rewritten in the latest and coolest technology, like NET. There are fundamental reasons why everyone is still talking about NET.

        Idealistic and simplistic notions of how organizations operate will not change that.

      Feedback and Knowledge Base