5 ms·
VB was one of the most popular languages in the 90's and into early 2000's. How did it fall out of favor? Was it because of Microsoft forcing VB into "just anot
by interlocutor 7y ago
VB was one of the most popular languages in the 90's and into early 2000's. How did it fall out of favor? Was it because of Microsoft forcing VB into "just another skin" over .NET, i.e., a variant of C# that doesn't have curly braces?
- vb6sp6 7y agoPeople are elitists and vb.net was seen as inferior to "real programmers who use c"
- heyflyguy 7y agoYep! "Not a real language", the guy in the cube next to me said in 2001.
- dole 7y agoMany VB developers found C# easier to transition to than VB.Net; one reason is that some of VB.Net's syntax and parameter orders changed and became unintuitive when bouncing between the old and new.
- smacktoward 7y agoThere was also a strong vibe coming out of MS at the time that C# was the "real" .NET language, while VB.NET was a red-headed stepchild, a half-baked sop they'd thrown out to the huge community of VB developers so MS could say they weren't abandoning them completely. And since VB.NET was different enough from VB6 to effectively be learning a new language anyway, lots of folks figured that if they were going to have to learn a new language they may as well learn the one that MS really cared about.
- Ididntdothis 7y agoVB.NET has superficial similarity with VBA and VB6 but it’s a completely different beast. You can’t just port old VB code to VB.NET so to me and probably a lot of other devs it didn’t make much sense to use VB.NET.
- StillBored 7y agoI did some VB programming in the mid 1990's, looked at vb.net shortly after it came out and discovered that much of what made VB "good" had been lost. The easy learning curve, and the ability to create useful things in timeframes measured in a couple hours or less all seemed to be replaced with the traditional programming tool paradigms. The lack of a reasonable porting tool and the fact that it didn't really have any advantages over C# in .net land, it made sense for most people to jump to C# instead of VB.net. MS had to know this was going to happen. They left the door open for someone to actually create something to fill the VB niche, but all the focus on web technologies has meant that nothing really stepped up.
- tabtab 7y agoRe: "left the door open for someone to actually create something to fill the VB niche, but all the focus on web technologies has meant that nothing really stepped up." Indeed! Desktop tools largely got ignored and everybody went web. But web development is a royal pain in the butt. Apps that a single developer/analyst could produce in a couple of months now require teams of specialists (UI, middle, DB, etc.) and bloated stacks. Productivity died. Yes, deployment is simpler with web, but the desktop tools had been improving in that area. Something died. (Under ideal circumstances, a well-run web shop can be productive, but it takes too many things to go right. Most orgs are wobbly.)
- Scuds 7y agoThere's "Fall out of favor within MS Developer Division, who has to build the future" and "Fall out of favor with line of business app developers." VB6 (runtime and language) was great for its time but it's an evolutionary dead end. > Was it because of Microsoft forcing VB into "just another skin" over .NET, i.e., a variant of C# that doesn't have curly braces? That's how it looks on the surface, but it's compiled, not interpreted, has an actual type system, threads, a proper standard library. There's also the need to gather the C++ Win32/MFC crowd and the VB6 crowd into a single tent.
- kerng 7y agoVB was basically terminated by Microsoft in favor of .net. It would have been (maybe still would be) amazing to see what the community would pull off with VB6 if Microsoft would open source it. VB6 IDE was so far ahead of it's time, even today (20+ years later) most languages don't have anything that comes close to what Microsoft had done there in the 90s. It would probabaly the perfect language for UI development and data analysis (think VBNotebooks), possibly ML.
- WorldMaker 7y agoThe VB6 IDE is terrible and no one should have to use it today. It's UI tools were eventually bettered by the WinForms and WPF/UWP Designers. Having to work in the VB6 IDE against my better judgment still, I have zero nostalgia for it left.
- kerng 7y agoIt was fast and slick - WinForms (and generally VS.net) was always slow in comparison with too many jobs and options - and WPF, same as WCF, is just an abstraction nightmare (and even slower compared to WinForms). People want simple, that's why Go is so successful these days - in many ways the enthusiasm (positive and negative) around Go reminds me of VB6. The fact that VB6 and IDE still works (didnt know that) on modern computers is by itself an amazing thing actually.
- WorldMaker 7y agoObviously we have very different opinions. > WinForms (and generally VS.net) was always slow in comparison It was slower at first, sure. Performance was a huge project over multiple years for Visual Studio and the WinForms designer hasn't been considered "slow" in years. > and WPF, same as WCF, is just an abstraction nightmare (and even slower compared to WinForms) Not really? XAML itself is a pretty direct representation of an object graph. More so than the hideously long Attribute blocks at the top of VB1-6 FRM files and the giant blobs of binary nonsense in FRX files. WPF Binding can be confusing, because like Vue or half the other web frameworks, two-way data binding is hard. But WPF has always supported classic double-click to code behind and set properties directly on window controls models of UI code writing, just like WinForms and VB1-6. Just about no one recommends it, for the same reason people recommend two-way binding systems like Vue because it can simplify other parts of your application and can be hugely beneficial on the other side of the learning curve. Mileage varies on the speed of the WPF designer. Again, performance is something that greatly improved over time. Most of my worst WPF performance problems, when I was using it regularly, were with third party controls I had no control over, and tried to get rid of. Personally, I'd greatly prefer to write XAML by hand in notepad than design in a UI in VB6 ever again. I'd complain a lot without tools to help me fix basic IntelliSense mistakes in my XAML, but I'd do it. Obviously, everyone's opinion will vary. > The fact that VB6 and IDE still works I cannot stress enough: it doesn't. The work I have to do in VB6 is pulling teeth. I have to do it in a VM that for reasons of security now has to be entirely isolated from network access. Even just scrolling code in that VM now takes what feels like subjective minutes to scroll just a few lines at a time. I'm constantly trying to use VS Code to comb through the codebase and prepare my plan of attack before ever opening the VM and it's like preparing punch cards for a Mainframe because I want to make sure I've prepared enough I spend as minimal time in that VM as possible. Navigating the VB6 in VS Code is horrible due to the aforementioned Attribute block garbage and absolutely no sense of navigation because all of the event handlers are wired in the FRX opaque whatsit from what I can tell and you can only assume that functions still do what they were named to do and that a `Form32_Load` wasn't actually repurposed to be `Button98_Click`. For the most part I'm thankful the codebase I'm working on isn't that evil, though I'm incredibly sick of VB6-era Hungarian notation at this point.
- tabtab 7y agoThe "original" VB fell out of favor because the architecture didn't scale well. It was great for smaller projects, but shops that wanted bigger apps or stronger abstractions to avoid reinventing the wheel had an easier time with Delphi and C++ with libraries. This isn't necessarily a bad thing because it's hard to make both small projects and big projects happy at the same time. But MS decided to focus on "enterprise" because the profit margins are usually bigger there. Thus, they mostly abandoned the original VB. This sent a shock-wave through the industry because their code base couldn't go anywhere. It did give a boost to FOSS, because it's less likely that a heavily used FOSS product will be outright abandoned.
- smacktoward 7y agoI was a VB developer when that all went down. VB didn't fall out of favor, Microsoft killed it. When .NET came along MS replaced "classic" VB with VB.NET, which was syntactically just different enough from classic VB to make moving to it a big project. Worse, VB.NET wasn't backwards-compatible with classic VB, so you couldn't just bring your old projects into the new environment; you had to rewrite them from the ground up in the new syntax. Worse still, to encourage VB devs to move to VB.NET, Microsoft stopped selling licenses for classic VB. Not "warned developers they would stop selling licenses in five years" or the like, mind. They just stopped. If you wanted to buy a license for VB, it was VB.NET or nothing. Which, when you considered that VB.NET wouldn't run all your old code, was kind of terrifying. All of which amounted to dropping a nuclear bomb on the VB community, as it pushed everyone into doing what someone (I think Joel Spolsky) once called "the dreaded market survey." In other words, if you're going to have to learn a whole new language in a hurry anyway, why not consider all the new languages available to you? So while a few classic VB devs did move to VB.NET, most ended up landing elsewhere; some to C#, some to web application platforms like ColdFusion, some to open-source languages like Perl, etc. (I went to Perl, which led me to PHP, which led me to Python.) What had been one of the world's largest programming communities was scattered to the four winds overnight.