Catch up on stories from the past week (and beyond) at the Slashdot story archive

 



Forgot your password?
typodupeerror
×
Programming Microsoft IT

Microsoft Plots the End of Visual Basic (thurrott.com) 66

Microsoft said this week that it will support Visual Basic on .NET 5.0 but will no longer add new features or evolve the language. From a report: "Starting with .NET 5, Visual Basic will support Class Library, Console, Windows Forms, WPF, Worker Service, [and] ASP.NET Core Web API ... to provide a good path forward for the existing VB customer who want [sic] to migrate their applications to .NET Core," the .NET team wrote in a post to the Microsoft DevBlogs. "Going forward, we do not plan to evolve Visual Basic as a language ... The future of Visual Basic ... will focus on stability, the application types listed above, and compatibility between the .NET Core and .NET Framework versions of Visual Basic."

When Microsoft released the .NET version of Visual Basic, originally called Visual Basic .NET, alongside C# at the beginning of the .NET era, the two languages were evolved together and had roughly identical feature sets. But this changed over time, with professional developers adopting C# and many fans of classic VB simply giving up on the more complex but powerful .NET versions of the environment. Today, virtually all of Microsoft's relevant developer documentation is in C# only, with VB source code examples ever harder to find.

This discussion has been archived. No new comments can be posted.

Microsoft Plots the End of Visual Basic

Comments Filter:
  • by Pharago ( 1197161 ) on Friday March 13, 2020 @06:20PM (#59827972) Homepage
    They did it on 2002, instead of version 7, we got some crap called .NET that was a real turd, never migrated any of our codebase. Now they don't even want to keep whatever is left. C# is next, brace yourselves.
    • C# is next, brace yourselves.

      That would suck, C# is actually kind of decent. What would they replace it with, some kind of mongrel version of Python (P#)?

      • C# isn't going away anytime soon. It's pretty clear MS is doubling-down on C#, especially given their continued focus on making .NET core both open source and portable to other OSes like Mac and Linux. And C# is the defacto language of .NET programming.

        Incidentally, there was already a .NET version of Python called IronPython. I think it sort of got left behind in the version2/3 split, though.

        • by AmiMoJo ( 196126 )

          C# almost makes VB redundant anyway. It's so easy there really isn't much of a gap between it and VB, so it doesn't make much sense to keep maintaining VB.

          Also VB is help back by the language syntax and limited flow control options. Microsoft tired to hack in more C# like stuff but there is only so far they can take it. A lot of the benefits of recent .NET and Core releases are unavailable in VB because of this.

      • What is popular and a turd? Basic -> VB; C(++) ->C#; JavaScript -> TypeScript = Electron Everything! (MS Teams)
    • Yeah, sometimes I feel sorry for people that don't want to learn new things. But then, sometimes I don't either. I knew a guy that wouldn't move past Classic ASP. And I knew a guy that wouldn't move past VB 6. I sometimes laugh at all the code they had to write, when I can produce the exact same result in a couple of lines or so of code.

      But again, sometimes I don't want to learn new things, either.

    • Wonder if MS dropping Visual Basic has anything to do with its biggest fan, Bill Gates, Leaving the Microsoft Board? Don't get me wrong, it might be time to move on, with the changes in technology, the user interface and all that. It's just that Bill Gates was a VB juggernaut, famous for taunting bottlenecked developers with the assertion that he could do\fix whatever the problem was with VB. And if anybody could make sure VB was up to the challenge, it was him.
      • Or perhaps Microsoft was tired of being referred to as "M$", a name that recalls Microsoft's origin as a publisher of BASIC interpreters. (In the line-numbered era of BASIC, string variable names had to end with a dollar sign.)

    • C# is next, brace yourselves

      I think this wins the award for the most stupid thing I've seen on slashdot this year.

      Microsoft the company was founded on porting BASIC to different computers since 1975. They've been improving BASIC for 45 years! and going forward they are still supporting BASIC, they are just not improving it.

      So the next logical question is why are they no longer improving BASIC? Well it's because in 2001 Microsoft invented something better called C#. So going forward C# is future, and C# wil

    • Re: (Score:3, Insightful)

      by Tony Isaac ( 1301187 )

      Yes, I've worked with a couple of guys like you. They do the same job for 20 years and never want to move beyond their favorite technology, like Classic ASP or WinForms.

      Software development is not a trade that can be learned just once. We have to constantly be re-training ourselves, or be relegated to maintaining dying code bases that nobody else wants to touch.

      • Also changing languages every 5 years makes it inevitable that we can profit from outsourcing to cheap newly qualified graduates in India. Who needs American programmers over the age of 30 anyway?

        • Oh, so you think those cheap, newly qualified graduates in India are actually good at this new technology? You clearly haven't worked with many of them.

          Changing technology is a fact of life, software or otherwise. Cars, medicine, construction, retail, even evolution itself. Evolve, or die, there are no other options.

    • The latter sometimes called "Visual Fred" to make that clear.

      VB.Net should just have been different syntax for C#. Done with the same compiler. So almost exactly the same, mixable in assemblies. Not something thought of as substantially different. Heck, you could even combine the syntax so that people could chose between End Ifs or the ugly {}s line by line. VB.Net is certainly not the same as traditional VB.

      I actually do a lot of work in VBA for Excel. Microsoft cannot kill that because it is actua

      • So if VB itself dies off (the story makes it look like it'll take a long time), what about VBA? It has hasn't seem much development in recent years. Open/Libreoffice have a Basic for scripting, too, though not really equivalent to VBA (conversion can't be done on the fly, at least very well, if at all). But the true successor for both (as noted by Z00L00K below) is Python.

    • The true successor is Python if you like to code in that style.

  • I used to use it for quick and dirty front ends to programs for people who couldn't use the command line or for programs that needed lots of repetitive input. I could make the input screen look like the paper documents the users were inputting data from. It was fast, easy for others to modify, simple, doesn't lend itself to creating hard to find bugs and is easy to test.
  • by mindparasite ( 209165 ) on Friday March 13, 2020 @06:47PM (#59828082) Homepage

    If we want the majority of people to be able to create their own programs, then we need to rethink Visual Basic 6. I understand that a large percentage of this audience won't sympathize with me here, but it opened programming up to a lot of people. My VB 6 professor would brag about the nice clicking-and dragging approach to programming. I don't see this going away. Imagine if you could create really creative programs on your cellphone just by clicking and dragging pieces of code, similar to Scratch or Blocky. I see a future where we have both approaches to programming... mainly because their are two distinct ways of thinking about this.

    • Comment removed based on user account deletion
      • Itâ(TM)s not really drag ân drop.

        Swift Playgrounds are just an interactive game environment for swift development - like a REPL for many other environments. The difference is you can build full solutions and take advantage of the other libraries.

        Itâ(TM)s forgiving and, as such, easy for beginners to use and learn the language.

    • by Mystiq ( 101361 )

      The problem is VB6 as a language has a fuckton of problems and might as well encourage bad programming practices. Classes are half-assed. They don't have valid constructors. You cannot make child classes. There is no concept of virtual classes, no interfaces and no abstract classes. String usage encourages you to just keep concatenating, inflaming memory bandwidth, and has no standard library "StringBuilder". (It can be made, as the Mid$ function can act as something of a pointer, but a beginner programmer

      • I can tell that you too have had to debug some lazy asshat's code where they used On Error Move Next without any error handling.

      • by lgw ( 121541 )

        So you're saying it's a lot like JavaScript? Sadly, JS became the new teaching language, and has a similar litany of problems.

        I just don't get it - it's no harder to learn or program in C#. Anyone who is ever going to learn to program will get the hang of curly braces instead of BEGIN and END. The syntax is not the hard part of programming, but the need to properly organize your thoughts.

    • Re: (Score:1, Troll)

      by retchdog ( 1319261 )

      > VB 6 professor

      this should not exist.

    • by Kjella ( 173770 )

      While I admire your optimism it's like trying to build a kitchen machine that'll turn me into a chef. I'm maybe one notch above microwave dinners but there's really no way that's happening other than for the machine to effectively do it for me. A bit of self-service is practical just like I can cook my own meals, that's useful but not really comparable to a professional service. It's still going to be GIGO, Garbage In Garbage out not Garbage In Gold Out.

    • NeXTSTEP called... (Score:4, Insightful)

      by mosel-saar-ruwer ( 732341 ) on Friday March 13, 2020 @08:55PM (#59828580)
      Imagine if you could create really creative programs on your cellphone just by clicking and dragging pieces of code, similar to Scratch or Blocky.

      NeXTSTEP called; it wants its 1994 developer tools back.

      PS: Is Apple jettisoning ObjectiveC [slashdot.org] any different than MSFT jettisoning VB [or even C#]?

      Personally, I think these corporations are insane to turn their backs on billions [trillions? quadrillions?] of lines of legacy code, but I guess that's why we have Bidness Skrewls & Bidness Professors & MBAs - so that somebody can grow up to shit all over any possibly elegant & diplomatic & thoughtful & backwards-compatible solutions to problems which don't even actually exist.
    • VB6 was a great language in its day, yes! I think we all have fond memories of our first "real" language. But I have to say, I do NOT want to go back to the "good old days." There was so much drudge work you had to do yourself in VB6, compared to today's C#. Not to mention, VB required a lot more typing than C#.

    • by AmiMoJo ( 196126 )

      A lot of the focus has moved towards apps being data driven, with the UI created directly from data. There are also issues like the need for proper scaling and DPI awareness that make simple drag/drop UI building a bit of a relic now.

      I've come over to this way of thinking, building a UI from data. For example I recently build a configuration app for an embedded system. Started by modelling all the configuration data and then wrote some code that simply looks at the structure of the data and creates a UI for

    • Please, no! Making every shlub with an idea think he was a programmer was the worst thing about VB. Knowing a language syntax and API is the *least* part of programming. Those people almost invariably produce nothing but unmaintainable trash that barely even works for its initial purpose.

      NO, NO, NO! Stop with this idiot idea that everyone should be able to program! That's like saying everyone should be able to be an electrical engineer!

  • Python is the new VB (Score:3, Interesting)

    by cpbright ( 4681855 ) on Friday March 13, 2020 @06:55PM (#59828112)
    Start using Python 3
    • I do us Python. That is what I transitioned to.... It isn't the same. I am hopeful that Blockly gets better. If we want people to be able to program using AR headsets, and share their code in 3D/virtual environments, then the nuances of text based coding will need to relax.

    • Python (in general) is primitive compare to Visual Studio/VB.

      Python's lack of variable type declaration and checking makes it bothersome to use**** and Python has no IDE available that even comes close to the drag-and-drop UI designer that VB has.
      (GUI coding for any PC language should all be mouse-clicks by now; there is generally no reason to be hand-coding that stuff at all... -And the arguments for hand-coding anything else are getting thinner and thinner...)

      Another not-insignificant advantage was
    • So it will be discontinued next?

      One can hope.

    • by ebvwfbw ( 864834 )

      Start using Python 3

      Sounds good. Don't mean to put you on the spot - How do I use that in Excel? That's the only place I use VB.
      Switch to google online spreadsheet entirely?

  • And also a good tool for people who are not programmers, but want to get $h!t done.
    You could even get stuff programmed in VBA, and port it to VB6!

    The last visual basic was visual basic 6. Visual basic.NET was visual basic only in name.

    The problem with Visual Basic was when programmers and non-programmers tried to overreach with the language, instead of getting better tools, but then, that may happen with "any" language (see Linus' oppinions on C++ in the Kernel for just one of many examples)

    Microsoft has ke

    • Agreed. I worked with both VB6 and VB.NET about 15 years ago and the similarities were only cosmetic.

      VB6 was primarily a RAD tool where the main selling point was dragging and dropping stuff to make a GUI. The actual programming or things like code organization/maintenance were secondary concerns to just getting shit done quickly. Just like most RAD tools it didn't scale at all but it was great for small programs with some user input.

      VB.NET was a weird beast that is hard to justify or explain. C# was design

  • VB was, in many ways, the successor to Cobol. Cobol tried to be English-like, and in the process sacrificed conciseness. VB makes the same trade, though to a lesser extreme.

    Personally, I don't want to type that much to get something done!

    • Count up all those ";"s you type at the end of every statement and you'll find that VB is more concise. You are also just use to typing ()s around if conditions. And End Ifs make it very easy to find mismached {}s which can occasionally be very nasty in C*. (dim is a bit of a worry though!)

  • There are a few BASICs for Linux, including a not-ready-for-prime-time never-quite-finished clone of Visual Basic. See also FreeBasic and Vintage Basic. Nothing integrated with gcc, though. Then, would in not be possible to run an older copy of VB in Wine or under Mono? For more, see Wikipedia of course: https://en.wikipedia.org/wiki/... [wikipedia.org]

  • and many fans of classic VB simply giving up on the more complex but powerful .NET versions of the environment.

    I'll grant the unneeded extra complexity of .NET, but that's obviously present in C# as well.

    No, the only reason a "fan" would give up on VB is that MS treats it like a red-headed step child for the last decade or more.

  • I was a VB6 developer when .NET was released. I immediately switched over to VB.NET and loved it. Over the years I've worked as consultant and developer for a number of companies helping them convert their projects from VB6 to VB.NET The TIOBE index has C# and VB.NET neck and neck. If you add in VB6 then VB usage far surpasses C# usage. So why on earth would MS abondon it. If they packaged up a version of visual studio the they sold with just VB I think it would shock them with how many people would buy it
  • The fact of the matter is that it costs a fuckton of money to rewrite any significant business application. If I ruled the software world, I would mandate that ANY language be automatically upgradable in a way that actually works. How many *billions* would have been saved if the VB6 crowd could have upgraded to VB.net and/or C# with a one button click. How many millions of person hours of productivity would have been saved with winforms - > webforms - > ASP xxxxx, converter or a winforms - > wpf c

  • It was just C# without curly braces
  • I gave up on VB as a standalone programming language when I spent months writing a nice little application in VB3, and VB4 wouldn't port it, wouldn't help me convert to it, the whole project was finally lost. I figured, "why go through this again when they move to the next language?" It was the late 90s, never been back.

    But some years later, I got it through my head that VBA was a whole different critter that was deeply embedded in Excel. Between the fact that a spreadsheet IS a permanent, inherent us

  • It is a horrible language. I have very strong negative feeling toward it. It is clumsy at best.

One man's constant is another man's variable. -- A.J. Perlis

Working...