Letting go of Visual Basic
(my former life as a programmer)

GOODBYE VISUAL BASIC, GOODBYE
msdn-CDsToday I finally said goodbye to Visual Basic. I made a decision to throw out hundreds of DVDs containing software worth thousands of dollars. For about six years, I was awarded Most Valuable Professional by Microsoft and because of that I annually received two complete Microsoft Developer Network subscriptions, one from Microsoft Japan and one from Microsoft U.S.A. I have finally decided that I will never need to install or use this again, even though it was a big part of my life for so long. The software, programming books, computer hardware and other perks, came to me because of my work with the Visual Basic programming language. VB allowed me to create some pretty good software and I really loved it. I used VB from version 3 through version 6 and I would probably still be using it today if I had the choice. Unfortunately, Microsoft made a very misguided attempt to re-invent the language starting in about 2001 and decided to change it into something totally different.

MY LIFE IN A JAPANESE COMPANY
In 1994 I joined a high-tech Japanese company in Yokohama, Japan and so I moved from a hobbyist in the BBS world, using command line FTP clients and dial-up modems, to a professional developer with access to multiple T1 connections, cutting edge hardware and a whole new internet protocol called http using “browsers” like Cello and then Mosaic. The world was getting smaller and that was fine with me. Being an American living in Japan, I really loved the fact that I could communicate with anyone, anywhere for free over the internet. It was sort of like short-wave radio, only so much better, and there was a whole world of servers and new technology to explore.

In the early 90s the smartphone had not been invented yet. Internet giants like Yahoo, Google and Facebook had not yet appeared. Killer applications like Wikipedia and GMail were yet to be invented. Videochat was a new and exciting emerging technology. In 1995 I was assigned to the Multimedia Product Development Division in my company and became part of the team that ported Cornell University’s iconic CUSeeMe software to Windows and to Japanese.  We ran the official “reflector” servers for CUSeeMe in Japan and we hoped to sell lots of hardware webcams to the growing market of computer users in Japan. Eventually, it was decided that my company would try writing original software that made use of video so we could bundle that with our hardware inexpensively.

I had been trained on programming languages such as ASM, C, and then C++. There were new languages popping up like Java that held great promise. But when I was assigned to write new software for Windows 3.1, I decided to try Visual Basic 3.0. I wrote a screensaver to learn the basics. Then I wrote an app to control playback of Video CD discs on Windows. Because there was a great community of developers on BBSs (especially CompuServe) who then migrating to the nntp (especially the Usenet) and eventually on to http websites, it was a great time to be learning about computers, programming and the internet. I learned from the VB masters like Dan Appleman, Matthew Curland, Karl Peterson, and the whole CCRP gang.

BECOMING A MICROSOFT MAN
Eventually, I was put in charge of a team that was developing an original videochat application software for Japan. By this time I was using VB4 and the big change from 16-bit Windows 3.1 to 32-bit Windows NT was happening. I spent about 12 hours a day working in Visual Basic and understanding the internals of 32-bit Windows and the way video-capture and video playback happens. By the time we finished the video software I was somewhat of an expert on using the the Win32 API and the Visual Basic programming language. The internet community had trained me and I felt it was only right to give back so I spent a lot of time helping to teach other aspiring VB programmers on the Usenet. I was awarded Most Valuable Professional status by Microsoft the first time in 1999, and being a VB programmer felt good. It seemed like computers and the internet were still young, the possibilities were endless, and I had a great tool to explore everything the Windows OS was capable of.mvp-2003

By now, I was a loyal VB programmer and I was loyal to Microsoft and MS Windows. In my spare time I released some free software tools written in VB. I even made some money on the side by taking contract programming jobs for custom sports and medical applications that used video capture. I continued to be awarded Most Valuable Professional status by Microsoft for five years.

VB4 was better than VB3. VB5 was a LOT better still. VB6 was another improvement. I was making good money with my knowledge of Visual Basic programming. I assumed that things would just keep rolling and getting better. Microsoft was sending me goodies every month, software and hardware – even perks like buying items in the Microsoft employee store.

When MS released a “Multimedia Jumpstart CD” for their new Windows NT Operating System, they included my software on it as an example to multimedia programmers. They even invited me to Redmond to talk about how I had done the video capture and compression and video overlay all in Visual Basic using functions already built-in to Windows NT. And then came the big surprise.

mvp-goodie
THE BEGINNING OF THE END
I think it was in 2001 that Microsoft invited me and all the Visual Basic MVPs to Redmond and had a big event to announce VB.NET. The project manager for the new version of Visual Basic, tried to sell us on the new features of VB.NET but we soon realized that it had already been decided that VB as we knew it was going to die. I had the sinking realization that all of my old code and all of my expertise as a VB programmer was going to be thrown out by Microsoft just because they were afraid of the growing popularity Java (and indirectly Linux and also Google). Instead of letting VB be what had made it so popular they tried to leverage the popularity of the name and developer-base to sell their gamble on a totally new concept. The .NET team seemed driven by a vision of .NET becoming some kind of meta-OS that could take over and be ported to run on any Operating System. I got the feeling that they truly felt that all VB programmers would see how wonderful it was that they were going to change the language and even the purpose of the language. They simply felt that classic VB was holding back progress. I’m sure they sincerely believed that Java would take over if they didn’t sacrifice the Windows-centric API and COM based VB Classic and move as quickly as possible to some amazing miracle product. Now, over a decade later, it is pretty obvious that this was a mistake.

Visual Basic was one of the top 3 most popular programming languages in the world in the 90s and that is pretty astonishing given that it was a Windows-only language. Each version of VB increased in popularity until the age of VB.NET. Google Trends doesn’t go back to the 90s but look what happened in the 00s…

EULOGY
Even this year, articles are being published and petitions are being submitted for Microsoft to bring back “Classic Visual Basic”, or at least to open source the code so that the developer community can own it and bring it into the 21st century. But I have resigned myself to the fact that VB is dead. Microsoft will not bring back their best Windows programming language and I will not try to learn their new ones. I already hear rumors that VB.NET will be discontinued because it is similar to (and not as popular as) C#…

25 thoughts on “Letting go of Visual Basic
(my former life as a programmer)

  1. Thank you for your comment. Isn’t it ironic that VB6 may have a longer official support life from Microsoft than VB.NET 2012 – also known as VB11? It seems pretty obvious to me that someone miscalculated big time when they killed development on Classic VB and forced everyone to choose .NET or continue to live in the 90s 🙂

    -Ray

  2. Microsoft support statement for VB6 programming on Windows 10 and Windows Server 2016

    https://docs.microsoft.com/en-us/dotnet/visual-basic/reference/vb6-support

    The Visual Basic team is committed to “It Just Works” compatibility for Visual Basic 6.0 applications on the following supported Windows operating systems:
    Windows Vista
    Windows Server 2008 including R2
    Windows 7
    Windows 8 and Windows 8.1
    Windows Server 2012 including R2
    Windows 10
    Windows Server 2016
    The Visual Basic team’s goal is that Visual Basic 6.0 applications continue to run on supported Windows versions. As detailed in this document, the core Visual Basic 6.0 runtime will be supported for the full lifetime of supported Windows versions, which is five years of mainstream support followed by five years of extended support.

    For an installer to install VB6 on Windows 7 and later see http://nuke.vbcorner.net/

  3. hi hello there,
    are you still active blogging in this page?
    i would love to ask you few questions about vb6.
    just started venture into it.
    but some of the coding i found online arent incompatible with mine version.
    glad if you could help.

    thanks!

  4. I cried when I read the previous stories as I have been using Basic since Commodore 64 days. I have vs2013 on my Laptop but I still use VB6.0. I was able to convert a program for astronomers built with vb6 to javascript and use the canvas for graphics with javascript in web pages. It is compatible with VB6. I miss being able to use directx but MS upgraded it to something that I can’t convert to.

  5. Hey, VB6 is far from being dead. One of the top Windows file managers, XYplorer, is written in 100% VB6 and nothing else. And it’s very alive and kicking, being used today in more than 100 countries, and counting. It’s probably one of the reasons Windows will continue shipping the runtime in future versions. 🙂

  6. Great article. I always thought maybe I was the only one who couldn’t get on with .NET so I’m pleased to see after all these years I’m not. I started using VB3 and continued up to VB5. I also used to love Visual FoxPro, since most of what I did was database work. FoxPro also seems to have been binned.

    I would love to get back into programming but wouldn’t even know where to begin now.

  7. Yes I miss VB6 it was a program that I had spent many hours mastering by myself from “The idiots guide ” onwards It started when I forked out for VB4 and within a years I had to fork out again for VB6, when your country’s currency exchange is 10 to the US$ its an expensive experience. for a few years used VB6 and next thing .Net arrives and I am just to old to grasp it so I eventually gave up. Lately I’ve been dabbling in Python and I thing I’m going to get efficient enough to write programs.- but it is still sad to have all the skills and then they become redundant. Thanks for nothin MS I’ve gone to Linux (Ubuntu) and I ain’t coming back to Windows.

  8. Soldier Ray.

    I’m MS soldier till the day Windows die. I liked VB6 a lot, but I didn’t had the chance to learn.

    I learn a bit of Java and I was not understanding the full concept of an OOP
    Now that I learn VB.NET, I’m seeing things clearly.

    idk if I learned VB how it would be, but I I’m glad VB.NET exists.

    Recently I was trying to develop some ASP.NET webpages, but I wasn’t finding tutorials that use VB.NET so I made a experience and I create a basic user input form we just normal HTML,CSS and VB.NET.

    Then after some researches I saw that VB.NET probably is going to die because MS and C#.

    SO C# is popular… OK, its fine. But MS is letting VB.NET die.
    They could just merchandise VB.NET as they do on C#, but they don’t.
    If they don’t do something, I’m afraid in 10-15 years VB.NET is going take the same funeral as IE6 ( https://techcrunch.com/2010/03/05/ie6-funeral/ )

  9. Hi Altan,
    This, of course, depends on the complexity of the modules. If you are asking, “Is VB 5 easier to program in than VB.NET?” then the answer is yes!

  10. Ray, I need to ask your opinion as a previous VB programmer. Like in year 1997/98, if a programmer (a single person) were to use the VB 5 to create an applications, how long would the VB programmer need to create an applications with 51 modules from scratch? Would 1 year be sufficient?

  11. First of all Ray, what a nice family. I love Japanese culture and I am a big fan of the late Akira Korosawa. I especially love the morals that portrayed in his movies. My favorites are Ikuru (To Live) and The 7 Samurai. I have been to China, Singapore, Malaysia, Hong Kong, Thailand but not yet to Japan. One day I hope to go to Japan and Korea, but as my mother recently died I am still in mourning (as I looked after her for many years as her health gradually declined).

    I had come across your vb6 work over the years, but have not met you personally. The have been alot of nice prograers out there over the years that have shared their code and helped out the vb community. It’s a real shame that MS does not keep the vb6 community going, as there have been some really good people in the vb6 programming community.

    I still dabble in VB6 and refuse to quit it as I get real enjoyment out of creating my programs. The Planet VB Source Code site still has people uploading free source codes. Boy you really did have lots of vb6 stuff. It was very expensive back then, and I could afford most vb6 resources. Graeme Summers made a really simple , well illustrated book (Programming with Visual Basic) to learn VB6. Sayonara Ray. Hopefully your new life is rewarding. All the best to you.

  12. Great article Ray. There are so many of us that embraced VB3-6. I had to move on too but…I keep it around for GUI apps. Nothing, not in almost 2016, can pump out rock soild GUI apps better than VB6. It is like the B-52 of the programming landscape. Others come and go and just make it look better. If Python could to GUI’s as easy as VB6 I could make the complete move away. Until then…

  13. about 10 years ago when i was 12 or 13 the world of vb6 seems like a magic to me , doing wonderful stuff using window api , and more and more intresting when i bought an open source simples CD , as easy as possible ! but when the era of .Net become more dominant i abandoned the programming . noaday after years im using to be a beginer in java but i never forget my memories with VB when i was i child…

  14. Microsoft say of VB6 programming and Windows 10…

    “Windows 10 is designed to run Windows 8.1 and Windows Phone 8.1 software programs. And yes, everyone’s favorite VB6 Runtime will continue to work, too.”

  15. I am just a casual programmer … programmed in highschool , at the university , at home for fun, but never studied programming because i work in something else, but always loved solving problems by programming …. and i started programming with visual basic, i fell in love with it because it was/is so fast to programm , to get results quickly, what a casual programmer looks for. i tried of course to learn other languages too , but , found visual basic the easiest, and the best rewards per effort ratio for the casual programmer. Then i read many year ago it was dead. I tried VB.net , but it was not the same, since i am not an expert , i am not sure what it was, but it was different, weird , felt estrangement …. just forgot about programming and many ideas i had in mind could not explore any more.

    Some months ago my little boy asked me about this game Gunbound , artillery game, if it is possible to exactly estimate the projectile trayectory and learn how to better shoot , properly setting up the cannon angle and speed, well, i told him, its physics and formulas, and then there it was again, the desire to put that into a shooting training program. I checked for visual basic, and there it was, dead for the true progamming dudes, but not for the silent casual programmers. I installed , run and there it was the window. quickly a couple of textboxes, buttons a picture for simulating the screen, then the shoot button, the formulas …. now draw the point… what was the command? check for the old book …. drawing … Pset , cool, fixing some properties and run. There it was. My boy was beaming. Then i read again and said VB will run for 10 more years… good news… of course there are a lot of great programming languages, but for proffesional programmers , for casual programmers or aficionados, that have good ideas in mind , and just know how to loop code and if then, this is great, VB is the solution , very fast to learn without having a degree in inheritace or polymorphism or oop or net.dot.framework.net.dot , I just wanted to shoot that projectile right in the middle of that gunbound mobile. And i succeded. Thank you again VB !

  16. I’m still using Classic Visual Basic, VB6. But I am retired and can afford to dabble occasionally. I use my own VB6 apps every day, probably a dozen or so of them. Some small; a couple or three quite large, which took me hundreds of hours to develop. I wrote them because I could find nothing out there that would quite do the job I wanted. Yesterday, for example, I discovered a bunch of mht files on a hard drive that I had created four years ago. These form the Knowledge Base for a company’s product before they revamped their web site and the KB was “re-modelled”. So, over 300 mht files, but no index, not even a list of titles.

    Within half an hour using VB6 I had whacked a Webbrowser control on a form, gathered the mht files in a File List Box, refreshed my memory about the innerhtml property, and bingo! One list of titles! Sure, you could probably do this in VB.Net, too. But why bother when VB6 is installed and ready?

  17. I would like to say good bye too to VB6, but here is my situation: I developed a software tool for a vertical market. My development started back in 1998, just some years before Microsoft announced his crazy move to .NET. At that time my vb6 App was a small baby with a couple of clients testing it…..By 2014 my vb6 App was being used in more than 50 countries And it grew to more than 5.000 users world wide. I had to translated to 5 different languages and I had to learn to speak some of them to give proper support. Now I feel like in a prison; with no easy exit or clue about the future…My present is just fine….I am doing some pretty money, for sure…But I cannot easily resign to more than 10 years of hard code, to more than 8 millions lines of code….to 5.000.000 users who give me me requirements and money…No Bill Gates, no! I will do all what I can to survive….As a soldier firmed with VB6 until death…..

  18. Microsoft lost far more than they knew when they abandoned the VB6 programming language.

    But the good news is that VB6 still installs and runs on the Windows 10 technical preview.

    And there are a couple of VB6-like languages – NSBasic Appstudio (for JavasScript) and Basic4Android (for Android and Java and iOS) that seem to be doing well.

  19. I can’t believe how similar we are with our pasts and our feelings about VB6. I can’t seem to let go and I still use it to this day for creating small quick windows apps that I personally use. I still cannot seem to embrace VB.Net or C# mainly because what I could do with one line of code in VB6 now takes 20+ lines of code in C#. 20x times the potential for bugs. I only briefly coded in VB.Net but from what I’ve seen and my understanding is that the only difference between VB.Net and C# is about 3 months. I have to code in C# because that is what my company went to and I find I get frustrated often. Microsoft seems to have a high desire to continuously shoot themselves in the foot. For the internet I’ve switched to PHP and MySQL. I’m still using Windows XP but it looks like I’m going to have to give that up also. Windows 7/8 will probably break all my old apps I’ve created. Oh well!!! Change is constant.

  20. Nicely put, Ray. It was a good ride. One I guess MSFT will never quite recover from, having killed the product the company was founded upon.

  21. Honestly, I have already moved on to far different realms. I am full-time in non-profit and Christian mission work for several years now. I love helping people away from my monitor even more than I loved VB programming, When I do program now, mostly as a hobby, I find myself using webcentric-languages like PHP more than anything else. I have computers running Ubuntu Linux instead of Windows 8, and I use Google Docs more than Microsoft Office. So goodbye to Visual Basic, my old friend. Rest in peace. I will be creative in other ways now.

Leave a Comment 下にコメントを残してください