Hacker Newsnew | past | comments | ask | show | jobs | submitlogin

Out of curiosity, have you had a chance to explore the Windows Subsystem for Linux (WSL)? WSL allows you to run your favorite linux distro with access to most command-line tools, utilities, and so on[0]. I have been a .NET developer for about 5 years now and recently began working in Ruby. The WSL had allowed me to effortlessly set up my Ruby dev environment, while still maintaining Windows 10 as my main OS of choice. While the WSL might not be a full on replacement to a linux OS, it is definitely a neat addition to Windows 10.

[0] https://docs.microsoft.com/en-us/windows/wsl/install-win10



It's not so much about development. Even if I did move over to Mac OS, I would still probably use the same or similar tool set - Visual Studio Code for everything except .Net Core. For .Net Core I would probably use JetBrain's Rider.

It's about deployment. Anytime you use Windows in a cloud hosted environment, you end up spending more on licensing and needing larger instances -- increasing the costs and startup time. I can easily development on Windows and auto deploy on Linux instances when I'm using either Python, C#, or NodeJS. But if I am going to be using Unix like environments anyway for deployment, why not use a Unix environment for development? MacOS gives you the best of both worlds -- a Unix environment for development and polish for everything else.


That polish has slipped of late, at least with MacOS itself. I used Macs professionally for 14 years but switched to a Thinkpad+Ubuntu 4 months ago and haven't missed much. If you're going to invest time in the switch, I'd recommend giving Linux on desktop a try, as MacOS has been trending the wrong direction for years.


Ubuntu still doesn’t have the commercial software support, the hardware support, and more finicky than MacOS.

Most importantly. You the lose the flexibility of developing for two of the four major platform targets -MacOS and iOS. I don’t see a future of developing for MacOS but that may change with Apple’s announced efforts of unifying the APIs for Mac and iOS.


With tools like Vagrant and Docker, this is a solved problem. Use whatever OS you want for development, but the dev environment will still run on Linux, isolated from the rest of your system.


Going back to the point. If you’re going to deploy to Unix like operating system anyway, why muck around with Windows and add another level of complexity?


Because you prefer it to another OS? My point is that, with some exceptions[0], the OS your software runs on in production should not have much (if any) sway on the OS you use for development. If you don't care about your OS, that's fine, but some of us would prefer to use a specific operating system given the choice, and these days there are very few constraints to getting a dev environment running on any modern OS.

[0]: Obviously certain types of development, like iOS, are inherently and unavoidably OS-specific, but for them this discussion isn't relevant either way.




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: