I suggest you ...

12,081 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…)
    EugeneEugene 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

    8059 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...
      • DaniDani commented  ·   ·  Flag as inappropriate

        Zagor loser, what is ?:

        cmp byte [buffer+edi], 0x00
        jnz ffs
        add edi, 1
        cmp byte [buffer+edi], 0x08
        jnz ffs

      • MikeMike commented  ·   ·  Flag as inappropriate

        @Zagor Tenay/Anonymous/honestcoder16/Mary/Kerry/Tony Pony/Larry G/LarsontheViking/A.Miranda/Jerry Finigan and the rest of your false names.

        You are totally pwned.

        Go back and edit your posts "To be honest with you, I have used and actually learned programming using VB6 in the 90s....."

        Remove the word "honest".
        You don't know the meaning of the word.

      • JonJon commented  ·   ·  Flag as inappropriate

        @Anonymous Zagor

        The problem when you delete a post and repost it as a modified version (by adding "Zagor said") is that the date/time is different. And it appears AFTER my reply to it.

        As Mike says, you have been pwned, loser.

      • Anonymous commented  ·   ·  Flag as inappropriate

        Zagor said

        "To be honest with you, I have used and actually learned programming using VB6 in the 90s. It was a great tool for a beginner in those days. It was a very good tool in it's days. I remember going through Planet Source Code in those days and finding useful hacks, whether it be subclassing or some weird multi threading hacks. I wasn't very familiar with modular concepts, factoring and OOP in those days and whatever I was writing was mostly patch code written by others. My programs were somewhat functioning but it was just a mess, a spaghetti code. The next time I was looking at my code to add up some functionality, I could not understand it and it would take me hours on end to figure what the heck I did before. Those are typical symptoms for spaghetti code. I am quite sure many others did write code similarly in VB6. I wasn't the only one for sure. You know VB1-6 was not created by considering modern modular design concepts. So from the beginning it was doomed. That's why it was promoting bad coding practices. The industy realized that. They couldn't effort to rely on single shot coder API hacks in order to get their mission critical programs to work. They needed a serious framework. So .NET was born.
        I am quite sure that you agree with me on this. This is NOT to undermine VB6. The fact is that VB6 can NOT be used in today's highly demanding programming environment. It will simply fall apart, unless huge renovations are made to it. Then one may raise the question. Why shall we update VB6 or more importantly how can we update it? It is almost certainly impossible to update VB6, as all the evidence shows that VB6 source code is not expandible and maintainable. VB6 was not designed to develop complex code. A new VB from scratch has to be designed. Well, then we are coming to the natural conclusion, There is a tool already been desined and it is called .NET, which is a complete re-design from scratch with managed code, garbage collection, OOP, multi threaded, with a huge native library etc. So, the request to bring back VB6 or to open source does not make sense, as there is already a well designed replacement for it.
        The above is just a logical deduction. It proves that VB6 is really not required any longer."

      • MikeMike commented  ·   ·  Flag as inappropriate

        :):):):):):):):):):):):):):):):):):):):):):):):):):):):):):):):):):):):):):):):):):):):):):):):):):):):):):):):):):):):):):):):):):)

      • MikeMike commented  ·   ·  Flag as inappropriate

        Zagor,

        You just been pwned.

        Utterly

        :) :) :) :) :) :) :) :) :) :) :) :) :) :)

        :):):):):):)

        :):):)

        :):):):):):):):):):):):):):):):):):):):):):)

      • JonJon commented  ·   ·  Flag as inappropriate

        Anonymous's last post...

        >>To be honest with you, I have used and actually learned programming using VB6 in the 90s. It was a great tool for a beginner in those days. It was a very good tool in it's days.....

        he also posted on August 5, 2016 using the name honestcoder16

        and on August 4, 2016 as Anonymous

        and on July 21, 2016 as Zagor Tenay

        and on July 12, 2016 as Zagor Tenay

        and on July 7, 2016 as Zagor Tenay

        and on July 5, 2016 as Zagor Tenay

        and on June 24, 2016 as Zagor Tenay

        And best of all he posted on June 4, 2017 using the name Zagor Tenay and hilariously he said "For the record. I use only one name and I don't see any problem posting an article a few times."

        :):):):):)

      • Anonymous commented  ·   ·  Flag as inappropriate

        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.

      • Anonymous commented  ·   ·  Flag as inappropriate

        The rise and fall of VB6

        VB6 has declined significantly. It's popularity has fallen back UNBELIEVABLY. VB6 has steadily declined in popularity since it's peak in 2002.

        Development is moving away from the bloated VB6 Spaghetti framework. It is really just legacy now. Looking at the graph VB6 has around 4 years left. It looks like VB6 will be dead by 2019/2020.
        Time for VB6 users to move to NET.

      • Anonymous commented  ·   ·  Flag as inappropriate

        VB6 is like a toy for the kids and always has been and always will be, but I don't understand the statement that it's "easier to understand" than VB.NET, that statement baffles me the most. I've been using VB since VB3 and let me tell you I avoid it like the plague (knowing how to use it and actually using it are two different stories).

        Trust me, if you want to be a programmer continue learning the .Net world as VB6 will get you nowhere

      • Anonymous commented  ·   ·  Flag as inappropriate

        Whether you move VB6 code to VB.NET (preferable, IMHO) or C#, one avenue of migration is to write new code in .NET (I'll use that name so you can decide which language) and use COM Interop to use the new DLLs in existing VB6 code.

        I have written both COM DLLs and COM "OCXs" in pure C# (VB.NET works fine, maybe even better) and used them with no problems in VB6 code.

        If you take that approach, you can, over time, refactor the VB6 code to .NET code, taking advantage of splitting up business layer, UI layer (as in Windows apps, Windows Phones apps, ASP.NET apps, or even iOS and Android apps using Xamarin in VS 2013).

        For me, it is not theoretical. I've done it for years, and it works great.

      • Anonymous commented  ·   ·  Flag as inappropriate

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

        There will be no update and it would be ridiculous if so.

        I agree there are thousands if not millions of applications developed in VB6, and more being developed. 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

      • DaniDani commented  ·   ·  Flag as inappropriate

        @Jon

        "Zagor claims to be 24 years old." -

        Zagor says: "I remember having designed complex code in the 90s and early 2000s and ...". Well, it turns him into a 50 years loser :) now we know ! We wait for his OCD to get back into remission. I think his mother is stressing him again and shut him down to the cellar where he opens his computer from the 90's and he pays his attention to what obsessions he can.

        I see you through the webcam Zagor !

      • JonJon commented  ·   ·  Flag as inappropriate

        @MichaelE

        'Anonymous' is Zagor who was previously banned from this site by Microsoft and over 500 of his posts deleted.

        Zagor has recently used the names Mary, Kerry,Tony Pony, Larry G and Anonymous but has many, many others.

        Zagor claims to program in C#, though he has recently denied this, and now claims to use C++ instead.

        Zagor disappears from this thread for months at a time, presumably when his OCD is in remission, (or maybe just because it is Diwali) but eventually resumes his trolling.

        Zagor claims to be 24 years old.

      • DaniDani commented  ·   ·  Flag as inappropriate

        Gudman commented · October 21, 2017 13:39
        @Zagor alias Anonymous

        Gigim has asked: I AM A VISUAL BASIC 6.0 PROGRAMER, VERY PROUD OF THAT ! SO, PLEASE DESCRIBE THIS CODE, JUST TO SHOW US WHAT A PROGRAMMER YOU ARE:

        cmp byte [buffer+edi], 0x00
        jnz ffs
        add edi, 1
        cmp byte [buffer+edi], 0x08
        jnz ffs

        We all wait !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!

      • Windows 10Windows 10 commented  ·   ·  Flag as inappropriate

        VB.NET is a dead language and almost no one is using it. We have to face reality. There are hardly a few hundred people maybe using it actively. On contrary, against all negative comments VB6 is on the rise, especially with new additions and improvements. There are more than 25 million users and high paying jobs all around the globe. This is the truth. Like in nature, everything is born and dies.This is true for VB.NET as well. People should go on with life learning new languages and stop being stubborn on hopeless things like VB.NETand .NET platform.

      • Windows 10Windows 10 commented  ·   ·  Flag as inappropriate

        Having used both VB6 and NET I can tell you that VB.NET is not suitable for LOB windows applications. I remember having designed complex code in the 90s and early 2000s 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 happy to remain to VB6 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 codebase maintainable and expandable. VB6 is the best choice for windows to do this. Ask any professional software developer and you will see that VB6 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). There is no sign that VB6 will go extinct any time soon (supported until 2027). 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 it's many fail-safe features. Obviously,using VB6 wouldn't be practical in such a case. Similarly, Python is embraced by the scientific community for similar reasons. Currently 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 does not pursue it any longer. Regards

      • Windows 10Windows 10 commented  ·   ·  Flag as inappropriate

        We started our company which designs high end software solutions in the beginning of 2000s. In those days .NET was new and all the people were using VB6. We had to make comparisons to choose our platform. We opted for to remain with VB6, as the advantages over .NET ware huge. VB.NET seemed to be a toy compared to VB6 and not to mention VB6 was just a fraction of what is VB6 today (constant community updates). Glad we made the right choice. Today we have no problem with maintaining, advancing and expanding our code and we run a successful business with tens of thousands of clients using our VB6 based solutions.

      • Windows 10Windows 10 commented  ·   ·  Flag as inappropriate

        Martin Phillips says

        I think you people have to realise that .NET is dead and it's not coming back.
        Microsoft has no reason to bring it back.
        Most of the people who learnt VB. NET are now too old to coding professionally. VB6 has new programmers each day.
        The coding world has moved on with VB6 and Java and those it left behind were left behind because they were not intellectually capable to realize the pardigm.
        I and many others were, however, capable of adapting VB6 to this change. We use VB6 and love it!
        So I'm sorry for you people who are unable to evolve - such is the nature of life. Only the strong survive. You just have to deal with that.
        VB.NET is dead and it's NEVER coming back!

      • Windows 10Windows 10 commented  ·   ·  Flag as inappropriate

        Why was C# deserted?

        There are many reasons but I would like to present major ones.
        -C# was full of bugs. VB6 has NO bugs.
        -C# could not do multi threading but VB6 can do that. .NET was a very simple platform for not so professional users.
        -C# was easy to hack. VB6 is impossible to hack. Programs written with C# were not safe (buffer overflow problems).
        -C# was not maintainable. It was not Object Oriented, which is a big no in today's modern computing requirement
        etc.etc.etc.

      Feedback and Knowledge Base