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

    9338 comments

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

        They have a 64bit-version (VBA 7) in Office 2010.
        They have the VB-resources for 64bit !

      • Kontex commented  ·   ·  Flag as inappropriate

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

      • Anonymous commented  ·   ·  Flag as inappropriate

        >> If we have to redo everything, then it is better to do it with open-source

        yyyyyYep.

      • Dennis Johnson commented  ·   ·  Flag as inappropriate

        "It's not only a different hardware platform, it's also a different software platform"
        I guess you are refering to Alpha64, not Intel/AMD 64. The latter is similar to x86 because x64 assembly is, essentially, an *extension* to x86. We don't really care about the hardware because we don't need to write device drivers but just decent software that is more compatible to today's standards.
        And, please, don't say again "use a new language, like C# or VB.Net"! These are different languages!

      • HMan commented  ·   ·  Flag as inappropriate

        Also note that while they did rewrite the compiler for Compaq Alpha, they did not do any change to the language. The processor-specific features were only accessible through a Compaq-written SDK.

      • HMan commented  ·   ·  Flag as inappropriate

        Why would it be easier? It's not only a different hardware platform, it's also a different software platform. They pretty much have to rewrite the compiler, runtime, and IDE in any case.

        "Not for intel but that is a backend issue"

        Yeah, following your reasoning, it would be a breeze to port it to ARM, BlackFin, or any other 64 bits processor, because well it's 64 bits. Your argument shows a lack of understanding of how computers in general work...

      • HMan commented  ·   ·  Flag as inappropriate

        Because they are completely different platforms... Are you kidding me, Alpha 64-bits on Windows NT? What does that have anything to do with x86-64 on Windows Vista+?

      • Dennis 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."

      • Dennis Johnson commented  ·   ·  Flag as inappropriate

        Excellent find Anonymous (Sep 15 6:46)!
        Now I want to see what they have to say about not being feasible to port to x64!!!

      • 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.

      • 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.

      • SuperDre 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..

      Feedback and Knowledge Base