I really want to switch to Linux, up to this point there were two things keeping me on Windows, gaming and work.

Gaming nowadays is a lot easier than a couple of years ago thanks to Valve and Proton, so that’s not a problem anymore; with the other one I don’t know if I can make something work enough and that’s why I’m asking here.

I work as a fullstack software developer with windows products I don’t fear for the frontend part because typescript, angular, react, … those I know I can run on linux with no problem on VS Code; for backend thought: dot.net, visual studio, sql server, … I think there is no Visual Studio for Linux and I don’t know if I can run & debug .net 8 applications on a linux machine? I can use docker for things like databases. Does anybody else has a similar scenario and things that had to overcame? Tips, problems that I may not see now before making the switch, and solutions to my current problems are welcome

  • setVeryLoud(true);@lemmy.ca
    link
    fedilink
    arrow-up
    0
    ·
    edit-2
    6 months ago

    You can try JetBrains Rider for .NET, but it’s only natural that you won’t be able to write Windows applications outside of Windows.

    I’m personally impartial to JetBrains for my IDEs on Linux, they work really well and are well supported.

  • Swarfega@lemm.ee
    link
    fedilink
    English
    arrow-up
    0
    ·
    6 months ago

    Get a second drive and install Linux on it. You can then flick between the two on boot. I’ve done this and now booting into Arch more than Windows. I’ll still boot into Windows for reasons but Arch is my main OS now.

  • bruce965@lemmy.ml
    link
    fedilink
    arrow-up
    0
    ·
    edit-2
    6 months ago

    Yes, you can develop in .NET on VSCode and the debugger works on Linux too.

    There is a Docker version of SQL Server which funnily enough is equivalent to the enterprise version (rather than limited like SQL Express). You can use it for free as long as it’s for development purposes only.

    There is no SQL Management Studio though.

    One option would be to use PostgreSQL instead. Entity Framework makes it almost free to replace the database anyways (unless you are doing some db-specific things).

    There are some other minor annoyances or missing features, it might bother you; but depending on how you are used to work, you might not even notice. But, hey! you are on Linux now, you get all the benefits of a UNIX operating system, it will be worth it for sure, right? (Yes, imho)


    As for gaming, I only do light gaming so I probably don’t count. I use Heroic Launcher and it works wonderfully out of the box 50% of the time, the remaining 50% you can probably make it work as good as on Windows if you are persistent enough.

    Oh, and sometimes some games run better on Linux than on Windows, but I would say most of the time they run a bit worse.

  • rtxn@lemmy.world
    link
    fedilink
    English
    arrow-up
    0
    ·
    6 months ago

    .NET and the .NET SDK has Linux support, but you’ll have to write csproj files manually, and as far as I know, there’s nothing even close to Visual Studio’s live debuggin tools.

  • ∟⊔⊤∦∣≶@lemmy.nz
    link
    fedilink
    arrow-up
    0
    ·
    edit-2
    6 months ago

    Lutris can be pretty handy for many things…

    I don’t have too much exp with these things, but I would suggest (as an IT support person) narrowing down and isolating problems into specifics, like:

    • I need dot.net for x thing and I tried y thing and it didn’t work.

    You’ll be able to get better answers. I’m pretty interested in the suggestions, my usual solution is ‘find something open source that is not as good but works.’

  • Procapra [comrade/them, she/her]@hexbear.net
    link
    fedilink
    English
    arrow-up
    0
    ·
    6 months ago

    Tips for switching to linux:

    1. Determine if your hardware will play nice with linux. If you have Broadcom or Realtek wifi/bluetooth be aware that linux doesn’t always have great drivers for those. Nvidia gpus don’t always play nice with wayland.

    2. Certain anti-cheats for games just don’t work on linux.

    3. (might not apply to you since you’re in IT) Try to avoid using obscure linux distros or bleeding edge distros like Arch. You’ll run into issues and not many people will be able to help. Debian, Fedora, and Ubuntu seem to be the popular distros rn for most people.

    • bleepbloopbop [they/them]@hexbear.net
      link
      fedilink
      English
      arrow-up
      0
      ·
      edit-2
      6 months ago

      You’ll run into issues and not many people will be able to help. Debian, Fedora, and Ubuntu seem to be the popular distros rn for most people.

      Agree with the broader conclusion that a first time linux user should probably avoid gentoo, arch, whatever, but its not because nobody will be able to help you, more just that the expected level of polish is a bit less.

      It isn’t considered a huge inconvenience to have to use the CLI or edit a config file by arch users, but for ubuntu especially they are more bent on building something that “just works” for most people (with the tradeoff being it’s a commercially exploited product, and the innards of GNOME and the like tend to be more of a black box and less tweakable than say, a tiling WM)

      But if you do want to dive in and learn how more of the internals work and how to configure things at a lower level, you will find a lot of help with issues, and very detailed documentation for a lot more things in Arch, vs Ubuntu. I find the ubuntu community online to be sort of a middle ground between the detailed technical help I’ve gotten from Arch communities, and the “here’s some magic steps that worked for me, no idea why” type of thing that is prevalent on windows support communities.

      Which isn’t to say ubuntu people aren’t helpful, but the critical mass of users isn’t the only thing that matters, it also helps if the users are knowledgeable, and friendly (some arch people fail at this, though I’ve lucked out and really not had any bad experiences)

      • Procapra [comrade/them, she/her]@hexbear.net
        link
        fedilink
        English
        arrow-up
        0
        ·
        6 months ago

        I meant more that, when it comes to newer bleeding edge software, some of the bugs introduced won’t be as well recorded and people won’t know exactly how to remedy your specific problem. Whereas with debian/ubuntu or fedora, often its as simple as typing whatever problem you’re having into a search engine, plugging some junk into the terminal, and it fixing the problem 90% of the time.

        But I agree with your comment overall so have my upvote! :)

    • 1boiledpotato@sh.itjust.works
      link
      fedilink
      English
      arrow-up
      0
      ·
      6 months ago

      I don’t agree with the 3rd take. I used both Debian and Arch based systems. Both break equally often (quite rarely), but when smth breaks in a Debian based system there’s little support or help, while on Arch everyone is willing to help you and you have Arch wiki, which is in a league of its own. Also thanks to AUR, there so much more software available out of the box on Arch

  • breadsmasher@lemmy.world
    link
    fedilink
    English
    arrow-up
    0
    ·
    edit-2
    6 months ago

    .NET is now fully cross platform. you can absolutely run and debug applications on linux as you would in windows.

    However Visual Studio IDE is windows only (theres a mac version but isn’t the same).

    You can use vscode + .net development pack.

    Personally I use Jetbrains rider (for home and work)

    SQL Server has a linux version I believe, but its been years since Ive done an install (for development I run sql server in a container)

    • d3Xt3r@lemmy.nzM
      link
      fedilink
      arrow-up
      0
      ·
      6 months ago

      .NET is now fully cross platform. you can absolutely run and debug applications on linux as you would in windows.

      Correct me if I’m wrong, but isn’t this limited to just console apps - as in you can’t yet run GUI app, unless you’re using a cross-platform toolkit like Avalonia, or it’s a WinForms app and running it under Mono?

  • poinck@lemm.ee
    link
    fedilink
    arrow-up
    0
    ·
    6 months ago

    If you don’t play the latest game titles with DRM you should be good to go on Linux: Steam runs great in a flatpak sandbox.

    I don’t know how compatible mono is with dotnet. Interestingly, some game launchers need it and protontricks can handle many issues. Have look at protondb. Back to work: Someone needs to confirm whether MSSQL server can be run on Linux, but I am almost sure that you won’t be able to run the gui of it. But you can connect to it using DBeaver (Java-based) or a VSCode plugin. As for C# development on Linux, I don’t know.

    I wish I could switch to Linux at work, too, but standardization of work environments seems to be the problem. I would even consider Ubuntu 22.04 LTS if my employer woul allow it. Last time I asked, time was the real reason. Time savings in the long run, currently don’t matter. I will ask later and if they still tell me, it’s too risky, I will look elsewhere.

    Our dev setup doesn’t even have the constraints you have for your work. It is all docker-based with Ubuntu Linux containers. It would run faster on Linux even if we could switch to WSL2. And I would argue, that Linux is more standardized than Windows.

    I hope you get your stuff running on Linux; market share needs to go up so that all the managers don’t fear it. (:

    • cmnybo@discuss.tchncs.de
      link
      fedilink
      English
      arrow-up
      0
      ·
      6 months ago

      A lot of times the DRM issues can be fixed by using a cracked version. The real problem is the games that force the rootkit based anti cheats that really just make the cheaters switch to hardware based cheats instead of stopping them.

  • Sal@aussie.zone
    link
    fedilink
    English
    arrow-up
    0
    ·
    edit-2
    6 months ago

    If you can shell out for it, get jetbrains rider. It’s just as good (better?) as visual studio for dotnet including the more obscure bits like xamarin etc

  • Eugenia@lemmy.ml
    link
    fedilink
    English
    arrow-up
    0
    ·
    6 months ago

    Instead of trying to run heavy and complex apps on an OS that were never designed for, use Windows for work, and then use gaming and your personal life on Linux. Another thing you can do is switch the kind of programming you do, so it’s more linux-related, so overtime, you can only have Linux machines. But for the time being, if you’re doing windows programming, use a windows machine for work.

    • Guenther_Amanita@feddit.de
      link
      fedilink
      arrow-up
      0
      ·
      edit-2
      6 months ago

      This sounds like the most reasonable answer here in this thread. I couldn’t have said it better.

      Preferences don’t matter if you get paid for it. If your job demands working with software designed for Windows, then use Windows. If you don’t do that, you have to find workarounds that cost time and therefore money, both if you are self employed or have to work for a company.
      Either you, or your boss, won’t be happy long term.

      If you like Linux more, then use it in your free time, or maybe consider switching your orientation for development to that platform.

      Same for development for Apple stuff (e.g. iPhone apps). Then you’re stuck with MacOS too. Or if you have to use certain CAD or Adobe software, then you’re stuck on Windows/ Mac too.

      Software availability is great on Linux, and today, you can get most of the stuff working on it, even if it isn’t designed for that. But is it worth it that time and effort? For me, it wouldn’t.

      • Richard@lemmy.world
        link
        fedilink
        English
        arrow-up
        0
        ·
        6 months ago

        That’s because you do not understand the philosophy. We are not using GNU/Linux because it is easier, we’re using them out of idealism. In my opinion, it is worth sacrificing some comfort for the thing you believe in. And ultimately, every GNU/Linux user also leads to an increase in freedom for all the others, even the Windows or OS X evangelists profit from the hard work and lobbyism of the Linux community and the Free Software Foundation.

        • chi-chan~@lemmy.world
          link
          fedilink
          arrow-up
          0
          ·
          6 months ago

          Honesty? Nowadays Linux is just easier for me.

          Sometimes you forget that a lot of tools you are use to have in Linux don’t even exist on Windows (like watch and cut). On Windows there are some problems you don’t even have to deal with on Unix-like systems.

        • TimeSquirrel@kbin.social
          link
          fedilink
          arrow-up
          0
          ·
          6 months ago

          I’m actually using it because it’s easier. I do hobby programming, and I like having every utility I would ever need related to that just one command away. Need a hex editor? It’s in the repository. Need a calculator that can convert binary to decimal? Also in the repository. IDEs/plugins/compilers? Repository. Everything is also tightly integrated and already knows where to find the other thing.

          This only works if you’re anything BUT a Windows dev though.

  • cetvrti_magi@lemmy.world
    link
    fedilink
    arrow-up
    0
    ·
    6 months ago

    You can do .net on Linux but Windows is much better for that. I recommend using Windows for work and Linux for everything else.