Ask HN: How is Windows for developers nowadays?
13 points| CJefferson | 9 years ago | reply
I alternate between doing POSIX and Windows development, so I'm tempted to run Windows 10, with one of "Bash on Windows", cygwin, or a Linux VM.
Is anyone using Windows as their daily machine, while doing POSIX coding? How does it work out?
[+] [-] munchbunny|9 years ago|reply
I use a mix of cygwin and "native" tools depending on whether the language has multi-platform support. It's good enough for most purposes (Python stuff mostly), but not so good if you want POSIX threads in your C++ code, and so on.
But, for example, if you're trying to do game programming, arguably the tooling on Windows is substantially better.
Basically, it's maybe 70% good and highly depends on what tools you need.
[+] [-] TurboHaskal|9 years ago|reply
I honestly think Windows is great for development, but for that you need to embrace the whole OS and live in .NET land. If you need POSIX and commercial applications such as Office, Skype and Adobe you're currently better off with macOS.
[+] [-] ksherlock|9 years ago|reply
Alternatively, you can sudo editing your /etc/apt/sources.list file to add an entry for xenial. I did that to replace hopeless obsolete versions of gcc (4 -> 5) and cmake (2.8 -> 3.2).
So far, all of my problems with WSL have been ubuntu.
[+] [-] Amezarak|9 years ago|reply
It's exactly the same as that of Ubuntu, is it not?
[+] [-] BjoernKW|9 years ago|reply
From direct comparison I can tell that Windows still sucks for general-purpose software development (if you develop Windows software you'll be fine, obviously):
Installing, maintaining and running common development tools takes considerably more effort. Many of the tools used in software development come from a UNIX background that often just doesn't quite fit the Windows way of doing things. The Windows command line - though greatly improved in recent years - is still playing catch-up with its UNIX equivalents.
Basically, what one commonly ends up with to make Windows usable for development at all is installing some sort of UNIX environment (Cygwin, Git Bash etc.).
[+] [-] ohgh1ieD|9 years ago|reply
Yea well, I work for a .NET company and therefore I'm on windows on a daily basis.
It depends a lot on, what kind of development I'm doing, for example if I work in Visual Studio on some C# code everything is just fine, integration between SQL-Server/VS/ASP.NET-MVC is just great but when I have to work on web projects where npm is involved or commandline in general, it's a nightmare.
If found that the only useable shell on Windows is babun[0]. Executing Ruby or Python scripts is also not good at all and therefore I just use powershell for glue scripts.
[0] https://babun.github.io
[+] [-] CJefferson|9 years ago|reply
I hadn't heard of babun. It looks like a much neater cygwin distro, I will give it a try.
[+] [-] Meph504|9 years ago|reply
There are just a lot of development tool sets that aren't based around working in windows. In that same respect though .net development is improving on *nix, it's clearly not something you want to do for production yet.
[+] [-] ddorian43|9 years ago|reply
[+] [-] kennell|9 years ago|reply
[+] [-] wprapido|9 years ago|reply
[+] [-] eb0la|9 years ago|reply
There are lots of Java stuff that would be machine independent but in fact rely on native libraries that you cannot find easily.
[+] [-] samfisher83|9 years ago|reply
[+] [-] wprapido|9 years ago|reply