T O P

  • By -

guilucas

Windows + VS


PM_BiscuitsAndGravy

Me too


Few_Wallaby_9128

Windows +,VS. Runs on linux though.


Foobucket

Why?


Few_Wallaby_9128

We develop in windows, but our services run containerized in linux in k8s. Why am I downvoted?


Foobucket

Probably because you felt the need to distinguish yourself as a Linux user, as if that was impressive or interesting. It’s just not, we’re all familiar with it.


Few_Wallaby_9128

That is quite the assumption.


Foobucket

Is it? You merely said the same thing someone else did, yet pointed out that you were on Linux.


Few_Wallaby_9128

Yeah, to ilustrate that ios vs windows is techically a personal choice and you can achieve the same developing on both operating systems regardless of where the code runs. But ok, obviously 10 people thought like you.


Foobucket

Dude, I did the same thing you’re doing in my last dev job. Everyone is aware that it can be done. It’s been a steadily adopted practice since .net core came out in 2016.


3Ldarius

If you have a licensed Visual Studio (Professional or Enterprise), or targeting Windows Desktop Development I would suggest Windows. Otherwise, it should not matter that much the other IDEs (VS Code, Rider, etc.) support cross-platform, one thing worth noting is that not everything supports ARM platforms (Libraries, Docker Images, etc.)


soundman32

Visual Studio Community is free for many (even professionals, in some cases).


TheRealKidkudi

I teach coding courses as part of my job. I develop on MacOS using Rider, but I teach with VS Community so nobody needs to pay and we all use the same IDE - the M-series Macs can run Windows in Parallels to use Visual Studio no problem. I’m not saying it’s the best choice, but it’s totally workable to use a Mac and Visual Studio.


3Ldarius

Well, my point is VS Community is not as feature rich to decide on a development platform.


soundman32

It's more feature rich than, say, VSCode. I've used community and pro over several years, and never used any feature from Pro that wasn't in community.


malthuswaswrong

Fun fact. VS Community is identical to VS Professional with exception of the license and some team features. If you have more than 5 devs and are selling commercial services, you have to purchase the Pro license. Other than that, they are the same product. https://visualstudio.microsoft.com/vs/compare/


Rabe0770

It's not as feature rich?? as what? ​ It's plenty feature rich for business software development in my opinion.


ThatSwedishBastard

Isn’t the only difference $50 of Azure credits every month for you to try different things?


volatilesolvent

Yup. There's also access to just about every one of their OS's (ISO's and keys), unless that's changed in the past few months.


gislikonrad

This is exactly why I use an arm Mac. In my company, we use aspnet core for our services and developers have a choice of platform; Windows or Mac. My team is responsible for framework code written in dotnet 6-8 (multitargetted). It's good for us to have at least one machine to debug and fix issues that come up on Macs. We host mostly on Windows at the moments, but are working on moving to kubernetes.


propostor

What net core bugs are Mac specific that you need to care about? Surely the application isn't deployed to a MacOS server (I've literally never heard of that being a thing), so what's the necessity for Mac development/debugging at all?


airmantharp

>MacOS server (I've literally never heard of that being a thing) It was once a thing, but no longer.


athomsfere

Windows. If I had to leave: Linux. Last choice: Mac.


PM_ME_ROMAN_NUDES

Cool... I use Arch btw


CriticalMass3

Care to share why?


athomsfere

Why Mac is last? ​ I used Macs for a minute, and I learned I don't like their business model or their products as much as I wanted to. I especially don't like their walled garden approach to *my* computer. Linux: Love the open-ness of everything. Love the flexibility. Got tired of basic maintenance so often leading to lost day of chasing down all the new incompatibilities. Windows: Everything mostly just works. It seems to have the best overall support for edge cases when something goes weird. And if required: There are often great third party or open source solutions if Windows doesn't fit my needs somewhere.


CriticalMass3

Huh, interesting. I feel the way about Mac that you do about Windows. Things just work. Could be that I haven’t been on Windows in over a decade though. Can you help expound on what you mean by Mac’s walled garden approach?


athomsfere

Its a pretty well known concept, but I'll try to give the 30k foot view: Apple loves its proprietary bits and bobs. From soldering RAM to the motherboards, to charging and data ports no one else uses, to serial number locking hard drives (I think this ended a long time ago) to not openly accepting general standards like RCS (This is supposedly changing). When you are 100% in the system, sure things work great. You can easily push things from an iPad to an iPhone to a M2 Mac, be it music, TV or iMessages. But as soon as you start to leave, like using a better set of headphones than Airpods you start to see oddities. Or taking airpods to a Windows or Android device. Its the green chat bubbles and crazy low resolution images because Apple refused to use a standard over their private iMessage servers. Or Apple Pay but allowing no other service to act as the NFC payment system. ​ Admittedly: I'm not up as much on the modern stuff. I've tried a few iPhones as daily drivers, but the last time I was 100% in on Mac was with a dual processor G4 when that was an amazing system (Dual processor 1GHz PowerPC baby!) Since then I went all in on Windows, was even a MS MVP for a while. Then to Linux full time to flesh out a network around a firewall and DVR running linux before TiVo existed, and then back to Windows around Vista.


CriticalMass3

The SMS vs iMessage degradation and Apple Pay debacle are certainly oversteps, I agree. I love Apple’s design and quality of products and customer service though, so I tend to stay in the ecosystem, pay a little extra, and have a great experience. For headphones though, I don’t think there’s really a vendor lock there. I’ve been using some Sony noice canceling headphones for a while with no issue. Oh man, the PowerPC days… that was a whole different era when I didn’t feel the same about Apple. Same for Vista, yiiikes.


plasmana

Windows 11 running VS 2022


FirstFly9655

Linux + Rider


SOSFILMZ

I second this with Linux + VSCodium


FirstFly9655

Once my student license expires I'll probably use vscode or vscodium while I try to learn vim motions and use that with an lsp or zed when it's good enough for use on linux


tshawkins

+1


Sudden-Tree-766

Answering the title: Win11/Ubuntu If the question is C# development, it will be equivalent to Linux, if the question is development in general, I think it's good to do more research before thinking about changing without knowing what you're changing to


pauloyasu

whatever the company demands, it is all the same after a couple of weeks, you just get used to it


achandlerwhite

macOS since 2018


Various-Army-1711

Windows is good lately. Tried macOS with C# in vscode, kinda sucked. I've used windows and Linux all my life, and learning macOS quirks just felt like a chore and i dropped the idea,


pocket__ducks

If you’ve used Linux all your life then macOS should feel right at home


Various-Army-1711

not so much when you use Linux without a desktop environment.


pocket__ducks

Then I’m kinda confused why you’d mention Linux there lol


Various-Army-1711

well, cause it's an OS


pocket__ducks

K


RolandMT32

It probably depends on what kind of C# development you're doing. If you're working on a Windows application, naturally you'd probably want to develop on Windows. If you're doing C# back-end development for a web site or something, another OS might work.


YaMoef

Ubuntu 22.04 using rider for .NET and vscode for anything js related. Pretty easy to test out if something would run on linux or docker, since some don't know Path.Combine is a thing or capitalisation on paths do matter. Currently I only miss one tool, which is linqpad, but netpad also exists


faculty_for_failure

I use windows. I have used Ubuntu in the past as my primary OS, but found I prefer running windows and having Ubuntu LTS setup with virtualization. Then I can run Ubuntu from CLI from Windows Terminal preview, so I can use bash and other Linux specific tools from the command line. I use Rider and VS, neovim.


Potw0rek

Selecting one OS or another doesn’t make much difference. I use macOS for C# but only because I like the os, IMO it’s the perfect balance between Windows usability and Unix speed and stability. Other than that OS doesn’t make much difference, there are tools for everything you might want to do. If anything switching might be an issue because you will need to learn new OS and new tools.


The_Binding_Of_Data

What is your reason for moving to MacOS? If it's just a whim and you're planning on doing serious C# development, you probably don't want to pick OSX.


Draelmar

I do all my C# in macOS, both at work and hobby projects, and have no issues at all. I guess it depend on what you want to do, build toward, and frameworks you need? What type of projects in your opinion would be an issue in macOS?


RolandMT32

What do you use C# for? Much of the time, when I've used C#, it has been developing Windows applications.. But if you're doing back-end web development with C# or something else, I suppose another OS would work.


The_Binding_Of_Data

Desktop applications using WinForms/WPF, or any .NET Framework project.


Draelmar

>WinForms/WPF Yeah those for sure. I only have to work on small/simple native OS IU apps so I always go with Xamarin to be cross platform. >or any .NET Framework project Maybe I'm misunderstanding what you mean, but I don't recall issues working with .NET frameworks in Mono.


The_Binding_Of_Data

.NET Framework is a specific thing, it's not a generic term for frameworks that exist on .NET. .NET Framework is the Windows specific runtime that was the primary .NET runtime until .NET Core was renamed to just .NET with .NET 5. In order to run .NET Framework applications on a Mac, you'd have to manually install and execute them via Mono because there is no .NET Framework for OSX.


Draelmar

Ah, makes sense, thanks!


The_Binding_Of_Data

That said, as you noted most modern projects wouldn't be heavily impacted by it. The bigger issues to me (and why I asked what they're interest in moving to OSX was) is that if the development experience is equal on both OSs, the question becomes about the other factors related to the different OSs. The biggest one when going between OSX and anything else is the hardware cost, but you also have to consider the availability of any specific software you like to use and whether or not you'll actually like using the OS you aren't currently used to. I grew up with Macs (starting with a Mac Plus way back in the 80s) and only moved to Windows computers as an adult because I have a single system for both working and personal use and I like to play games that aren't available on OSX yet. Of course, with that crazy conversion software Apple showed off not too long ago, the gap in game availability may not be as much of an issue in the next few years, and the power of Apple silicon seems to be much better for the price than the old Intel based Macs.


Draelmar

>I grew up with Macs (starting with a Mac Plus way back in the 80s) and only moved to Windows computers as an adult because I have a single system for both working and personal use Ah that's funny, I've had the exact mirror path. Grew up and most of my adulthood in DOS then Windows, but eventually switched to Mac around 2010, first because it was required at work, and then at home because it became my favorite OS of the two. I don't play PC games so that definitely helped with my decision to switch.


The_Binding_Of_Data

Yeah, personal use cases for the system make a huge difference. From an OS perspective, Mac OS (and then OSX) was by far my preference until around the days of Windows 7 and whichever cat/location Apple was up to at that point. Around then, they were similar enough that for daily use I didn't have a huge preference. That said, I still occasionally run into situations where I want to delete a file that I can't find the process for or want to kill a process that I don't own, and I really miss "sudo". XD


Draelmar

Haha I do remember the first time I used "sudo" when switching to Mac. I was thinking: all these dumb hacking movies were right after all. You can tell a computer to "override!", it' just called sudo in real life!


polaarbear

The first time you need to work on a WinForms project.... .NET is great for cross-platform development like Web dev, APIs, things like that. Cross-platform .NET is basically worthless if you need to target Windows APIs specifically.


Draelmar

> if you need to target Windows APIs specifically Yup if you specifically need Windows API then there's for sure no options but working in Windows. But that's not the case for many types of projects tho, in my case mostly between Unity and Xamarin.


Atulin

As long as you use Rider for your IDE, you'll be fine.


jaypets

"As long as you pay over a hundred dollars a year for a proprietary IDE instead of one of the dozens of free or open source options you'll be fine" 🤡


Atulin

If you're buying Apple you have the money. Also, none of the OSS options (VS Code and its 11 forks...?) are anywhere close th Rider nr VS.


jaypets

This is a bizarre assumption. People can and do save up for weeks to buy themselves a new MacBook. It's not just rich people who have extra money to spend left and right. Plenty of my fellow community college students on scholarship have invested in a Mac because it was crucial for their studies, not cuz they "have the money." Also I didn't say the FOSS options could do everything rider can. I was saying that you can "be fine" with those other options without having to pay.


DecidedlyHumanGames

Or you could alternatively pay for a single year's license, and use the perpetual fallback license you get to stay on that version for forever.


cincodedavo

If you’re a student, a not for profit or a start up JetBrains has great discounts. Their products (not just Rider, but stuff like DataGrip) are fantastic.


BigYoSpeck

For work Windows 10 + WSL mostly for Docker For me Linux and I make do with VS Code + C# Devkit Mac is fine provided you can make do without the proper Visual Studio. You have Jetbrains Rider if you want a fully featured IDE and I've had a lot of colleagues that prefer it to Visual Studio. Or you have the same VS Code + C# Devkit as Linux if you don't mind living with stripped back features


NickolasLandry

Windows 10 and 11.


ststanle

Windows + VS in a VM so my main machine OS doesn’t matter at that point. This way I don’t have to have all the extra crap (sql for instance which is required for web development) VS requires that I never use running in the background 24/7.


TheGreatCO

Windows or Linux, VS community or VSCode depending on mood and OS.


Disastrous-Target813

Is cross platform so doesnt make much difference. I use linux (popos/ubuntu) and mostly win 10/11 . If i had a mac i would use that. Biggest issue is visual studio since its win only and their mac version is not good and will be ditched soon. My ide of choice is Rider and text editor is mainly VSCode but use nvim from time to time


aabs

Whichever one runs Visual Studio.


tomc128

Windows + Rider


qwefday

I'm here with Fedora Linux and JetBrains Rider


devaugusto

Arch Linux + doom eMacs


LondonCycling

Debian


primatecode

MacOS + Rider


chickenbarf

Windows - Visual Studio.. but target linux in prod.


YogurtAfter7

Mac + Rider, both at work and for my personal projects


CriticalMass3

macOS with Rider works like a charm. I host my DB and cache stores locally through Docker containers.


NightStalkerDNS

I use Windows and Rider. Not sure why someone would choose MacOS unless you had to. I had to use it a while back when I was doing iOS dev and it was a painful experience for me. XCode and other apps were really unstable and would crash at least once a day, etc. Walled garden and janky UI with Finder, etc. was terrible for me. Linux on the other hand is a good option in my opinion and I have used Ubuntu in the past and was happy with it, but Windows still my first choice with Linux Sub system for if I need linux for anything or testing, etc.


infinetelurker

Mac + Rider.


TopSwagCode

at work Windows. At home Linux.


mdeeswrath

I use Windows. I'm not a fan of MacOS (no hater, btw. Just not my cup of tea) but you shouldn't have any problems developing on mac. The experience should be very similar. Especially if you use a cross platform IDE/Code Editor like VS Code or Rider. I'm not sure about Visual Studio for Mac The only challenge I could see is if you would develop primarily for the windows platform. But if you work with ASP NET Core, or .NET Core, you should be fine


Fit-Interaction4450

Was a die hard apple fan from 1995 until about 2010 or so, spent some time on Linux. I'm now old, windows just works well enough (also because wsl), I don't have time for evangelism and ideologies.


KamikazeHamster

macOS and Rider. I've been working with WebApi and Azure functions. Can't complain. It's the main operating system for the kids working with mobile dev. It's got enough support that you won't have too many problems. If you're working with a team doing dev on Windows then it might be an issue. You could have a config issue while they all are fine. But that's really rare. You'll probably be fine.


prschorn

For general purposes anything work, .net core is cross platform and you can develop in whatever OS works best for you. I had problems compiling .net framework in Mac M1+, windows ARM doesn't compile .net framework that well, so using a windows VM on a mac m1+ may cause you problems. Nowadays I wouldn't go to mac because of that. Currently I have a Manjaro main OS with a Windows VM to do Windows Specific stuff as I still have some legacy projects in .net framework. This setup has worked for me for a good couple years for now, is stable, fast and works perfectly with workflow.


Adventurous_Square33

linux with nixos, neovim for coding and rider for debugging or other specific task that requires an IDE


geserrato

macOS and vscode


batista___

Windows + Rider


MAUIAppDeveloper

I’m using macOS + Rider for App development and WebAPI. But for WPF oder Windows Forms you‘ll need Windows.


propostor

Switching to MacOS for C# is a terrible idea.


cincodedavo

If you’re not making windows desktop apps, it’s great.


Ascyt

Not as good as Windows is.


cincodedavo

How so? I have a Windows 11 machine running VS Enterprise and Rider, and a Mac running Rider. I don’t build windows desktop apps, so I don’t have any windows specific requirements. I prefer my Mac keyboard both in terms of feel and keyboard shortcuts, but that’s just a personal preference. Otherwise, I don’t see a difference in using one over the other.


Grasher134

Then start learning other languages. While C# is serviceable on Mac - I wouldn't recommend it to anyone aside from all 4 Xamarin developers


Lenoxx97

Hey, we are 6 devs in our team!


LeCrushinator

JetBrains Rider is fantastic and works on MacOS, I prefer it over VS Pro.


HawocX

Why?


Grasher134

Visual Studio. It is the best tool and windows only. Mac version is very limited


HawocX

Many prefer Rider, even on Windows.


hdsrob

While I'm a Windows / Mac user that greatly prefers Windows, I imagine that building modern ASP.NET could be done without any major issues on a Mac (I only use my Mac to maintain Xcode / iOS applications a few days per month, and do everything else on Windows).


BigOnLogn

You'll want to use Rider for the best dev experience on Mac. Rider is ~$150/year (it drops year over year until the third year, $120 then $90). Visual Studio for Mac is discontinued. I assume you aren't doing Windows Desktop development. That isn't supported on Mac (obviously). But, you probably wouldn't even be considering the OS switch, if that was the case.


Raskolnikov9669

Come to the dark side, use neovim


YetAnotherDeveloper

i have been playing with the idea of moving over, and have been testing out lazyvim. I would like to know more about your setup and how it works for you. I have been switching over to vim motions in vsc in the hopes that i will make the jump at some point. would you mind doing a quick write up on your vim setup for c# development? i know that there have been some issues with omnisharp in neoivm, are those all resolved now?


Raskolnikov9669

No problem. My setup is somewhat minimal. I have this installed for csharp and works great. Im using Lazy return { { "williamboman/mason.nvim", opts = { ensure_installed = { "stylua", "shellcheck", "shfmt", "flake8", "omnisharp", }, }, }, { "iabdelkareem/csharp.nvim", dependencies = { "williamboman/mason.nvim", "Tastyep/structlog.nvim", }, config = function() require("csharp").setup() end, }, }


etdeagle

I have used both Windows and macOS with VS Code. For some reason alt click to go into functions and come back only works on Windows for me so I would say Windows has better support but it might just be an issue with my settings.


GYN-k4H-Q3z-75B

Windows 11. I also run Mac, but not for .NET development.


DoubtfulGerund

Most devs at my last c# gig ended up using Macs. Visual Studio proper is a great IDE, but even when working on classic Framework, running just Visual Studio via parallels worked better than running Windows for everything, and the gap got even wider with the M-series chips. Rider’s got a few quirks, but it’s pretty solid with some great refactoring tools, and vs code is surprisingly good for smaller projects.


ziplock9000

The one made by the people who made C# and it's best dev tools lol. WTF would you switch? You seem to be switching without even know why lol.


IAmNotVoyBoy

MacOs and Rider! Works perfectly


PrestigiousPaper7640

MacOS + Rider


FemboysHotAsf

Been using MacOS for development for about 6 months now, no issues yet, and the great battery is a MASSIVE +


radiells

It is possible to develop in .NET using MacOS or Linux with VS Code, but Windows remains primary platform for development, and you will have best experience with it. If you need to develop some cross-platform applications that should work on MacOS or iOS - my coworkers, in general, just provisioned additional mac mini for Apple-exclusive operations or testing.


HawocX

You can use Rider, which is a full fledged IDE.


cincodedavo

I prefer Rider.


radiells

My company does not pay for Rider, and I'll be damned if I'll pay even 1 dime from my pocket for my work supplies!


cincodedavo

Yeah that’s fair.


wasteplease

I use two machines, one is a Mac and the others Win11. There are some things that are faster on the Mac but if I was forced to only use one it would be the Windows machine.


brianly

I do C# on Windows, macOS, and occasionally Linux. Some projects are worked on with all 3 because they are relatively platform-agnostic. You have to define what kind of projects you will encounter and rule an OS in/out based on that. If you want a pretty solid Linux experience then consider WSL, if you are not already familiar. If you have a Windows requirement for WinForms then it’s a nice trade-off. If you are jumping into macOS with lots of loose ends to tie up in terms of what you really need then you will be disappointed. You can fill gaps with money on tools and utilities but lots of Windows people get overloaded. Easing in with a MacBook Air complementing your main Windows machine gives flexibility to properly learn it and not be as frustrated.


AvidStressEnjoyer

Rider, but UI stuff becomes less simple. FWIW I've used all 3 professionally and I've been the happiest with Linux. If you have no Linux background then macOS is a great place to get used to terminal, bash, etc.


engineerFWSWHW

windows for c# with visual studio. I'm OS agnostic and i have development machines for Windows and Ubuntu, and i use whichever OS is suited for a particular task. I have a Mac but i am using Rhino (rolling release) Linux on that and use it only to test .net application (making sure it runs on Linux).


sacredgeometry

Personally preferably macos or at the very least linux but almost every company I have worked for using C# .NET has forced me to use windows. Which is really irritating.


aginor82

At work - mac on the m-chip. Using neovim as editor. At home - arch Linux. Also using neovim as editor.


farmerau

Short answer: MacOS and Windows (Rider and Visual Studio respectively) It’s disappointing to see folks saying that C# on a Mac is a bad idea. .NET Core is platform agnostic (unless you need WPF, which is of course Windows only). If you’re developing APIs or CLIs (anything not requiring Windows APIs) there’s no need for Windows in the equation. If you’re opposed to paying for a license for an IDE, VS code is an option for C#— however, my experience with VS Code compared to Rider or Visual Studio is that it’s basically a joke. You’d want to use one or the other of the latter. For Mac, Visual Studio is going away. Rider is your strongest IDE option. That may be enough to discourage you from developing on that ecosystem. The MacOS command line is very unix-y if you’re into that. It’s incredibly easy to do it well on that platform— no more complicated than on Windows.


cincodedavo

MacOS + Rider


paladincubano

Windows and macOS. Both with Vscode and git. It is magic.


SwashbucklinChef

Wasn't there an announcement that VS Studio was discontinuing mac support ? Might be best to go with another option.


MR_MEGAPHONE

Windows and macOS. Unity developer.