DEV Community


Discussion on: About Windows for devs

tcbyrd profile image
Tommy Byrd

It's definitely not bad to use Windows for development, it just depends on what kind of development you're doing. Visual Studio is a really powerful IDE, and people that use it basically live in it. This makes it awesome for doing things in the Microsoft ecosystem (Windows apps, web development using .NET/C#, deploying to Azure). For anything outside of that, it definitely takes a bit more work, and you'll find that resources are hit or miss, depending on what you're trying to accomplish. PHP and Javascript/Typescript web development? Sure. Ruby on Rails? Maybe not so much. As a previous system admin in a Windows-centric environment, I always found it frustrating to do things outside of the Microsoft bubble. Simple things like needing to SSH into a Linux server always seemed to be venturing into a territory that Microsoft people didn't care to support. But that seems to be changing.

This is one of the reasons a lot of people are liking Microsoft's new direction. Since Linux servers can run on Azure, it's actually in their best interest to support diverse workloads and build tools that give all developers a good code/compile/debug workflow. Windows Subsystem for Linux is a monumental achievement, but also they're starting to include tools in new builds of Windows like curl and tar that help developers outside of the traditional Visual Studio workflow feel more comfortable. This also means you can more confidently develop scripts on your Windows machine that should work in production environments.

I also think if you're doing development on Windows, you should not expect the experience to be as good as it would be on a Macbook Pro if you don't spend about the same on that Windows machine. Far too many people buy $500 Dell/HP/Lenovo machines and think that their experience is bad because of Windows. People that buy $1500-2000 Windows machines like a Dell XPS or Surface tend to like their systems just fine (in my experience). Those cheap machines always have lower quality displays, slower hard drives, frustrating track pads, and plastic cases. All of that leads to a system with a poor UX, and makes it not something you want to use every day.