I suggest you ...

12,081 votes
Sign in
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


    Sign in
    or sign in with
    • facebook
    • google
      Password icon
      Signed in as (Sign out)
      • MichaelE commented  ·   ·  Flag as inappropriate

        I concur with kontex. Everyone should only use the best computer language every made. Assembler. We really dont need to finish rock-solid applications in a fraction of the time done in VB6. Our families are used to not seeing us because its more important to code using the right language than be with them. Plus VB6 will only work as long as there is a Windows OS. What good is that!

      • Lofaday - www VB64 com - A new IDE is on its way commented  ·   ·  Flag as inappropriate

        @retired coder, yep. I started an IDE in VBA but doubt folk will download it, let alone adopt a VBA app. I've used and been impressed with online IDEs such as mbed c++ (google "mbed IDE" images). Alum removes the "VB" stigma while retaining the paradigm. It should also appeal to those who like the look and feel of C & JS. Despite being on-line, it still has fast responses, option explicit, as much VB compatibility as possible (even VB64 couldn't achieve 100% compat'). I plan it to be as open and free as possible, but needs some way of funding. By the way, the IDE isn't all mine -- it uses Codiad and Ace, both well established open-source. The VBA paradigm is managed with a server-side fast transpiler (pseudo compiler). Thanks for asking :-)

      • Lofaday - www VB64 com - A new IDE is on its way commented  ·   ·  Flag as inappropriate

        @Anonymous, yes, it's horses for courses. Dot NET has it's place if speed and stability is not essential (same as Python, JS etc).

        I think the biggest difference is .NET was a paradigm shift in the way developers think. You mention a vast eco system of libraries ... it's almost as if Google is an intrinsic part of the IDE these days. Imagine there was a time where if you needed a specialist app, instead of googling for it, you just did it yourself in a day or 2. Then you got your own truly extensible and ultimately supportable library.

        3 examples I did • a fast specialist "uncrashable" multi-node mirrored database for a critical uptime information system that was relied on daily by millions of passengers;• a complex visual mechanism simulator that calculated all the angles and ran simulations at 25fps;• an IIS that could take a single cross referenced book or manual in MS Word and generate a full website from it. All that was a breeze. I've tried to do that kind of thing with the modern "google that library" approach and the answer is it takes longer, it's far more frustrating, and if it doesn't work (eg: due to update), you can't fix it -- try explaining that to an MP/senator. But of course VB6 (and Alum - I hope to be it's successor) has it's limitations. It is simply a DIFFERENT TOOL for which there is no parallel.

        To me, VB6 to C# is like Excel to Sage for an accountant. Everyone knows how to use Excel, but if you want something with accountancy approved modules etc, if you are using it full time, go to Sage. So far, so good. Now imagine if Microsoft said to the world, you know that thing called Excel you all use and love, well, we're pulling it. And you might as well take it off your CV too because all that expertise is gone -- we own the patents, and we are not going to let anyone else sell it. Furthermore, just for good measure, we are going to start a campaign to make it look like it was amateurish. Then our preferred Sage users can sneer at you too. Imagine what the Excel community (who still use VBA by the way) would say to that?

      • Anonymous commented  ·   ·  Flag as inappropriate


        But you don’t get the point do you? NET is a modern language to develop bus apps using modular architecture. It is a managed environment using GC unlike VB6. If you definitely need speed you can call unmanaged C++ libraries without any problem. What’s the deal? Speed is usually needed for some specific algorithms, if any (i.e DirectX API). Even then for any speedy task, you will almost always have some .NET wrapper available, mostly free, as there is a huge ecosystem out there. The rest of the code is mostly speed independent considering today’s computing power. So what is your point? With .NET I can build composite code with one of the many freely available IoC Containers and start injecting entire libraries via a bootstrapper in a blink to maintain weak coupling. I can deploy my services and repositories as quickly as possible and relate them all to my VMs loosely. All of which are unthinkable with VB6. Moreover, I can use UT every step of the development using a wide array of free libraries even for mocking. I can use ET for any type of DBM to maintain DDD. I can deploy my resources via ResX in the background. I can analyse process memory on my VS IDE to prevent memleaks. And much much much more. There is really no need or demand for anything else, especially those utopic things you mention. The industry is quite happy.

      • Lofaday - www VB64 com - A new IDE is on its way commented  ·   ·  Flag as inappropriate

        @Chris Pratt, I think folk here have moved on from VB6 comparisons to other languages. I read your article and note..

        • You say you've never used VB, yet you want it "killed off". That just smacks of weird bigotry.
        • • • VB6 is nothing to do with VB.Net. You can have VB.net developers sent to Siberia if you like.
        • • • To actually kill it off, MS would have to build in something that caused Windows to be incompatible with it. To leave it compatible, all they need do is nothing.
        • Oddly, you say you've never used VB, but you love C. If you have used both as I have, you would find that VB6 is very similar to C.
        • • VB6 is like C with well managed binary memory arrays (that VB6ers simply call strings)
        • • • • Are you even aware VB6 will compile down to machine code (way faster than C#)?
        • • • • You can even turn off array bounds checks for superfast code that is very much on a par with C.
        • • If you add a Lint to C for strong static type checking, then add garbage collection for binary byte array management, guess what.. You'd have VB6, except it would be a lot slower, wieldier, fragmented.
        • • Indeed, I would say that VB6 is nearest to C in it's paradigm, it's logical structure.

        There are so many aspects to VB6 that simply are not in any other languages. However, it suffers from the "Basic" stigma which I think is the foundation of your irrational prejudice. That is why I have developed a new, open standard language, called Alum C. It can look like C, Java, VBA, or even Python. That way, no one ever needs to slag off a language again (merely because it uses english words instead of curly brackets etc). The semantics of a language have nothing to do with the paradigm.. the way a language is structured, the way it assists the developer, the way it interfaces to an OS is everything.

        As other languages evolve (Python and JS are mere INTERPRETERS, and your favourite C# is P-code on CLR only), VB6 has surprisingly gone way out in front as IMHO the most powerful managed language (by a long shot) that bolts on to the heart of Windows, to its API, and not some framework that shadows it like the slow virtual machine called "dot Net" which C# is forced to run on.

        So you go ahead and kill it off. It will make my replacement even more popular. :-)

      • MichaelE commented  ·   ·  Flag as inappropriate

        It was not an error that Visual Basic took the programming world by storm and dominated it. It dominated it until the structure of .Net was imposed. I am using the word "structure" in the form of castrating a development paradigm that was visionary and had no practical limits to one that kept a small set of elites happy.

        The crime was taking VB6 away from the community. Taking away a naturally growing juggernaut loved by the world. Rather than give it back to the community as Open Source they locked it into a spiral death spin. ...but it did not die.

        Programmers kept using it. and kept using it. and kept using it. Kept using it all the while learning "modern" alternatives because they had to support their families.

        This is where we are today.

      • Lofaday - www VB64 com - A new IDE is on its way commented  ·   ·  Flag as inappropriate

        @VB Guy, www.0av.com targets Linux, Mac, Android, and ARM by trans-compiling to C or Java or Python. It deploys a syntax that is an amalgam of those 3 (mainly to get away from prejudices of Pratts) plus VBA, but most importantly uses the VBA paradigm (mutable strings etc) to make upgrading existing s/w easy. It's an early draft just now but was transferred to a web-app basis as it's easier and more attractive (no download necessary). May look to kickstart it with indiegogo.

      • Tommy commented  ·   ·  Flag as inappropriate

        @Beating a dead horse


        Microsoft have tried to do that for years. Meanwhile the popularity of C# continues to fall.

        And VB6 programming, VBA programming and VBScript programming continue to be widely used.

      • Beating a dead horse commented  ·   ·  Flag as inappropriate



        While Microsoft seems to want to beat around the bush, placating VB developers with assurances that they remain committed to keeping VB a first-class .NET language, the simple truth is that their actions betray their assertions. Every headline technology Microsoft is actively pushing gives no quarter to VB. Even if Microsoft continues to actively develop VB, it's still all but a dead language, as it's been and continues to be relegated to platforms and technologies, which are themselves dying off. You can make the argument that the desktop computer may never become a thing of the past, but Microsoft's strategy there - a single OS for desktop and mobile - ensures that the time of creating applications that only work on the desktop is long gone. Developers are abandoning VB, en masse, and that makes it only more difficult to continue on as a VB developer. The lack of opportunities and community to provide support and assistance will push ever more developers out of the VB camp. Long and short, far from being a great language for the beginner, VB is an albatross. Spending your time and energy learning it is all but a waste of time, presenting virtually no long-term ROI. If you're truly a beginning developer, C# is where you should focus your energy, or even F#. While the applicability of F# is more narrow than C#, it is very much in demand. What you shouldn't do is give VB even a glance.

        Chris Pratt

        For the complete article:

      • VB Guy commented  ·   ·  Flag as inappropriate

        today is a different world you have Linux, Mac, Android, and ARM machines an update needs to work on all these. XOJO.com comes close although it is slow.

        I really wish MS would open source VB 6 so we can have the community upgrade it if MS will not!

      • Anonymous commented  ·   ·  Flag as inappropriate

        I have tried several programming languages. My alltime-favourite remains VB6, because it is compact und without overhead I do'nt need. You can get very fast results with it. Net is no alternative for me, because it's much to "fat" with a lot of modules I do not need.

        Please put VB6 to open source or make VB7. A lot of people I know can't await this ...

      • MichaelE commented  ·   ·  Flag as inappropriate

        If VB6 was Open Source this would all be moot. VB6 would be the most used app dev system for 64-bit programming as it was for 32-bit. Sure there would still be a need to C and the like but think about that.

        We have all been denied a 64-bit - modern skinned version of the best Windows app dev system on the planet. Achieved by being in the hands of an entity that de-evolved into only seeing the select data points that effect the financials of the next few quarters.

        VB6 was all about vision. MS you lost your vision and tried to mandate a very fixed structure on us.


      • kontex commented  ·   ·  Flag as inappropriate


        >> VB6 is by far the most powerful language ever created!

        That's how I see it too.
        I have been very successful with VB4 / 5/6 for 22 years, it is still a lot of fun and financially a pleasant life therefore.
        And I am now 60 years old, I will not reprogram my grown applications. I'm not about to retire, it's just too much fun, but if at some point there is no platform for VB6 applications, I just stop working.

      • jovanyt commented  ·   ·  Flag as inappropriate


        It is best for all the tasks. It is no doubt on that. We started to lobby for VB6 in 2014.

        Until 2014, idiots and amateur C++ programmers made the programming bad trend.

        That happen because we, the VB6 programmers did not write anything to tell the world our opinion. Well, now things change in our favor. We are many and pressure is visible !

        Go, go friends !

        VB6 is, by far, the most powerful language ever created !

      • kontex commented  ·   ·  Flag as inappropriate

        I do not understand why VB6 in the opinion of experts should be good only for prototype. Nobody could explain that to me plausibly. What is better if the executable prototype with a "right" programming language is reprogrammed (with a lot of time, the prototype is also "productive")

      ← Previous 1 3 4 5 421 422

      Feedback and Knowledge Base