6 ms·
Then you did yourself a disservice, because the rest of the writeup is kind of interesting. Besides, for modern software development work, vanilla Windows is p
by angersock 11y ago
Then you did yourself a disservice, because the rest of the writeup is kind of interesting.
Besides, for modern software development work, vanilla Windows is pretty terrible compared with any of the 'nix variants.
- pjmlp 11y agoOnly for those that prefer AT&T to Xerox PARC.
- deleted 11y ago[deleted]
- TeMPOraL 11y agoTotally agree here. There is a problem that happens with some hobbies like radios and electronics - a lot of software and techniques was developed by people who were domain-specialists first and programmers second. This means they were disproportionally using Windows, and thus this platform has a lot of de-facto standard software written for the Microsoft's OS. On the other hand, today hobbyist programmers predominantly use Linux/MacOS, so when they want to start writing software for domains mentioned above, they hit a wall. And yes, Windows is pretty terrible for programming compared with Unixes - and I say that as a person who grew up with Windows, spent most of his programming life in it, and had to code under it for current and previous job. When you get used to working in terminal and to all little small utilities and features, it becomes really annoying to have to code under Windows. Personally, I usually paper over it a bit by using Emacs on both platforms, but sooner or later I always hit a toolchain problem. The solution isn't to bitch about Windows. It's a very good operating system, especially for everything that is not software development. Which means it's good for radio and electronics. Since software devs used to work under Linux like the myriads of "little things" they get from it, the only thing is for them is to sit down and just port the apps they need. Or port their favourite tools to Windows. Or both.
- tracker1 11y agoYou get a lot of those tools (including bash) with msysgit... I find that clover, gitextensions (includes msysgit) and conemu are some of my must haves in windows. And I tend to appreciate having Python, Ruby, Perl and Node everywhere I can. I wish the experience for .Net dev was better outside windows... finally starting to get a lot better recently.
- deleted 11y ago[deleted]
- brianberns 11y agoReally? Visual Studio is widely recognized as one of the best IDEs available, and the .NET platform is leaps and bounds better than, say, vanilla Java at this point. I'd like to know what sort of "modern software development" you do that is so "terrible" on Windows.
- angersock 11y agoI'll expand on both my own experience and that of TeMPOraL here. First, to clear up something: I don't dislike Windows, I don't dislike Visual Studio (having used it for over a decade now), and I absolutely think that .NET is better than Java--if you are only deploying on Microsoft platforms! Windows has a number of technical advantages over most of the 'nix folks (IOCP, for example, is pretty cool), and the documentation is like a thousand times better. The debugging experience can be a hell of a lot better. The drivers story is a hell of a lot better. The graphics and audio stories don't even bear bringing up because of how far behind and fragmented the 'nix ecosystem is. I am not making those complaints. However, Windows (and again, I noted vanilla Windows, not one with a bodged-on Cygwin or git-bash) was not designed for developers. It's heritage and primary interaction metaphor is not one that a developer uses. The Unix Way (as popular as it is lately to badmouth) is a powerful notion of composable simple programs. The desktop and GUI metaphor on Windows doesn't support that. The notion of a command-line as a happy little conversation between the user and the system doesn't exist, least of all because the selection of default tools on Windows is so cripplingly tiny that doing meaningful work from the command-line is near impossible (and Powershell only kinda/sorta helps with this). As TeMPOraL points out, a lot of software on Windows is written by domain experts who don't actually know anything about software engineering. Even a rank noob on 'nix quickly learns basic piping and complexity management. There is no such evolutionary pressure on Windows devs, least of all because of the friendly tools put into place to manage complexity. As a result, the basic ideas of little helper scripts or small programs or quick hacks to test ideas out are strange to a lot of devs--and when they do decide to play, they end up creating applications that are Winforms or MFC or <Microsoft flavor of decade> hairballs that are hard to update and maintain. They usually end up with nice little apps, but the source is usually closed and the app is large enough (due to boilerplate and IDE bloat) that a casual contributor may have a hard time jumping in (if they can at all). The mindset is just completely different, and not being exposed to both is pretty bad.
- gambiting 11y agoVanilla Windows + Visual Studio is hands down the best development solution for writing C++ code. For any Web stuff - absolutely, I would go with a Mac or a Linux machine any day. For C++, it's incredibly hard to beat Visual Studio.
- deleted 11y ago[deleted]