24 votes

Microsoft angers the .NET open source community with a controversial decision

15 comments

  1. [7]
    hungariantoast
    Link
    The best parts of Visual Studio Code are proprietary You can add Pylance to the list as well.
    10 votes
    1. [6]
      knocklessmonster
      Link Parent
      Is there a good alternative to VSCode and the limited FOSS versions? I'm not a "developer," in the sense I don't write applications, but I've found VSCode to be the best all-around tool for...

      Is there a good alternative to VSCode and the limited FOSS versions? I'm not a "developer," in the sense I don't write applications, but I've found VSCode to be the best all-around tool for cross-platform code editing that requires more than just a text editor and command line.

      emacs is great for Linux, but I find the experience lacks in Windows unless you want to fully commit to one language.

      1 vote
      1. [2]
        stu2b50
        Link Parent
        Depends on what you want. There's no lack of text editors. There's sublime text, atom, vim, neovim, emacs, and language specific IDEs. Sublime and atom are probably the closest, in that they are...

        Depends on what you want. There's no lack of text editors. There's sublime text, atom, vim, neovim, emacs, and language specific IDEs.

        Sublime and atom are probably the closest, in that they are extensible GUI cross platform text editors, but Sublime is also closed source (albeit by a solo dev rather than large corp). Atom is what's left, although it really had its lunch eaten by VSCode which hasn't helped the plugin scene.

        3 votes
        1. knocklessmonster
          (edited )
          Link Parent
          I'm thinking of giving Emacs another shot because it has robust support for Python OOTB and I should be able to get OmniSharp set up with it somehow, even if every crack I've taken at it has been...

          I'm thinking of giving Emacs another shot because it has robust support for Python OOTB and I should be able to get OmniSharp set up with it somehow, even if every crack I've taken at it has been unsuccessful.

          I'm trying to avoid language-specific IDEs because I much prefer the idea of having a swiss army knife instead of a bunch of bulky individual knives laying around.

          1 vote
      2. [3]
        Apos
        Link Parent
        There's Onivim. It's not fully ready though and the main dev had to take some time off recently to find a job. snip It has a lot of potential since it already works well with a lot of vscode...

        There's Onivim. It's not fully ready though and the main dev had to take some time off recently to find a job. snip

        It has a lot of potential since it already works well with a lot of vscode extensions. It's been re-licensed to MIT recently.

        2 votes
        1. [2]
          knocklessmonster
          Link Parent
          That's pretty cool and I'll definitely look into it. It looks sort of like a mostly-compatible Vim on steroids.

          That's pretty cool and I'll definitely look into it. It looks sort of like a mostly-compatible Vim on steroids.

          1 vote
          1. Apos
            Link Parent
            It's backed by libvim which is a fork of vim turned into a purely functional library. If there are differences with real vim, I think it's a bug.

            It's backed by libvim which is a fork of vim turned into a purely functional library. If there are differences with real vim, I think it's a bug.

            1 vote
  2. [4]
    riQQ
    Link

    Microsoft has quietly removed a key part of Hot Reload in the upcoming release of .NET 6 this week, a feature that essentially allows developers to get instant feedback when they’re creating a project and change code to immediately see the results. It’s a big selling point for Google’s rival Dart programming language and Flutter toolkit, and Microsoft has been playing catchup to bring it to .NET and Visual Studio.

    But a last-minute change announced earlier this week means Microsoft “will enable Hot Reload functionality only through Visual Studio 2022 so we can focus on providing the best experiences to the most users.” Dmitry Lyalin, a program manager working on the Hot Reload feature at Microsoft, says the company “had to prioritize” and dropped Hot Reload as a feature of the dotnet watch tool as a result.

    9 votes
    1. [3]
      vord
      Link Parent
      There it is. This is the Microsoft I remember. You play nice with an ecosystem until you have a critical mass of developers, then turn the screws and start locking in and charging big money (Full...

      There it is. This is the Microsoft I remember.

      You play nice with an ecosystem until you have a critical mass of developers, then turn the screws and start locking in and charging big money (Full Visual Studio is very expensive). Enough critical production code which is out there means the .NET base isn't shrinking very rapidly.

      18 votes
      1. [2]
        babypuncher
        Link Parent
        Visual Studio is free unless you are a for-profit company, so I don't see the cost being a huge deal. The bigger issue is that this incentivizes developers to work in Windows instead of macOS or...

        Visual Studio is free unless you are a for-profit company, so I don't see the cost being a huge deal. The bigger issue is that this incentivizes developers to work in Windows instead of macOS or Linux.

        2 votes
        1. vord
          Link Parent
          Not quite. It is free for individual users. They also are quite liberal handing it out to teachers and students. But if you're any sort of organization with more than 5 users? That's not free....

          Not quite. It is free for individual users. They also are quite liberal handing it out to teachers and students.

          But if you're any sort of organization with more than 5 users? That's not free. $45/mo per user. Not too onerous for a for-profit.

          But an open source project? Suppose you had something like GNOME with a .NET base. It would probably strain resources to have that added cost if that feature was needed. Especially since non-profits tend to have tighter budgets and lower wages now.

          And Microsoft licensing is complicated. It's nice they're simplifying a bit, but they have a complex array of third party license resellers and it's a nightmare to explain things especially to non-technical folks. You ever work with CALs? There's entire feature sets of 3rd party monitoring tools to insure license compliance. You can get full-functionality perpetual licenses, but again only through resellers.

          And even ignoring all that...some care about open source code. It's likely few can avoid closed source entirely, but open source very much is user empowerment.

          Locking features, especially free features, behind proprietary code in an otherwise relativly open ecosystem they tout heavily is not a forward-looking open-source friendlyness.

          It's the middle of Embrace, Extend, Extinguish.

          If this flys, be sure more and more great functionality will be gated behind closed IDE or non-free libraries.

          10 votes
  3. [2]
    skybrian
    Link
    Having helped implement the IntelliJ support for this feature for Dart, this doesn’t seem particularly suspicious to me on the face of it. Testing hot reload in every environment seems like a lot...

    Having helped implement the IntelliJ support for this feature for Dart, this doesn’t seem particularly suspicious to me on the face of it. Testing hot reload in every environment seems like a lot more work than just shipping it in one IDE and on one platform to start and collecting feedback. It can be disappointing, but teams make decisions to drop features or limit scope all the time.

    5 votes
    1. Apos
      Link Parent
      It's already been resolved, but this wasn't about the various IDEs. It was provided in the dotnet watch CLI tool. I can use notepad and get hot reload.

      It's already been resolved, but this wasn't about the various IDEs. It was provided in the dotnet watch CLI tool. I can use notepad and get hot reload.

      5 votes