this post was submitted on 15 Apr 2024
172 points (96.7% liked)

Linux

47952 readers
2565 users here now

From Wikipedia, the free encyclopedia

Linux is a family of open source Unix-like operating systems based on the Linux kernel, an operating system kernel first released on September 17, 1991 by Linus Torvalds. Linux is typically packaged in a Linux distribution (or distro for short).

Distributions include the Linux kernel and supporting system software and libraries, many of which are provided by the GNU Project. Many Linux distributions use the word "Linux" in their name, but the Free Software Foundation uses the name GNU/Linux to emphasize the importance of GNU software, causing some controversy.

Rules

Related Communities

Community icon by Alpár-Etele Méder, licensed under CC BY 3.0

founded 5 years ago
MODERATORS
 

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

you are viewing a single comment's thread
view the rest of the comments
[–] [email protected] 4 points 6 months ago

Fellow .NET dev here, switched to Linux for side-gigs recently.

In general, the experience is a lot better than Windows / WSL. Some general remarks on the setup (relevant mostly for Debian-based distros, so YMMV):

  • Rider / VSCode suggestion is spot on; go with the former if you have cash to spare and you're fine with snaps, otherwise - DevKit can do DevKit things (with the only problem here being lack of .dcproj support in VSCode; can be ignored with proper integration test setup).
  • Containerization of DBMS: by all means, go for it if you have the resources to spare.
  • Possible gotchas:
    • If you're going to use MS apt feed for .NET runtime / SDK, set up apt preferences to point to their feed for dotnet packages. Otherwise, you're in for a bad time when running updates.
    • Docker: personally, I recommend Rancher Desktop for this purpose, as Docker Desktop on Windows left a bad taste in my mouth. If you're fine with the latter, it's up to your own preferences then.
    • Test containers: if you do use it with anything else than standard, bare-bones Docker setup, you'll need a custom config; stumbled upon that the first time I tried running integration tests.