On Sat, Sep 9, 2017 at 12:45 PM, Amir Rachum
Peter and Dan, there's "right" and there's "helpful" and you two are neither. Telling someone who was unsuccessful at installing Python on Windows to install Linux is just getting them deeper in trouble. I use both Linux and Windows for professional Python development and they are both adequate and most definitely not "3rd-rate software".
Actually, there aren't many developers who argue For Windows. They mostly work at Microsoft or own Microsoft stock - or simply have little to no basis for comparison. Oh, and IT people - they love being told "Sorry, we can't do that - but then you don't really want to" by Microsoft because it gets the IT department off the hook. But most people who use Microsoft products don't do so because it's good software, they use it because "that's what everybody else is doing". I had the displeasure of working at Microsoft for a while; they acquired a Linux company I was working at. They didn't give me a title, BTW. Real Amusing. Anyway, if we hadn't had some sort of virtualization product, we would've had big problems, because Windows kept messing itself. We had to reset to an old snapshot several times a day on some projects. Then there's the matter of passing a quoted string to a subprocess on windows. It's a mess, because every command has to do argument splitting itself and the default implementation doesn't do it well. The arguments are actually passed as a single, flat string, rather than as distinct strings in an array. And there's the matter of getting a usable exit code back from a Windows subprocess; they're nearly 100% reliable on *ix, but on Windows they frequently don't mean what they should. PowerShell actually abandons exit(exit_code) and adds its own way of doing it to work around the problem. Then there's the "It's only good if it comes from Microsoft" mindset, which is condemning enough on its own. EG: I suggested that I do my work in Python, and they replied that no one knows Python (implying it was thus a bad choice), and saying that I had to work in PowerShell. Even IronPython wasn't good enough for them! That's right, they'd probably prefer it if Python just died, and we all worked in PowerShell or C#. They literally said, during an all hands meeting across the entire company, that they wanted All of Earth's important software to come from Microsoft - that was their goal. So yeah, if you work on an important software product, they want you out of business. If you're lucky you might get acquired. The hubris is astonishing. Also, I once saw Balmer accidentally tackle a woman in a televised meeting, and just keep running up onto the stage without so much as helping her back up. There's priorities for you. Also, a guy I used to play Go with once told me about being told "F*ck you!" by Paul Allen on Microsoft's support line - Paul Allen being one of Microsoft's founders. There's quality tech support for you. Not. Oh, and there was the time I commented that Microsoft filesystems don't support symlinks. I got a sour face in response... until I finished my sentence saying that the latest Microsoft filesystem did support them, by a different name. That wasn't good enough for our product, but suddenly symlinks mattered to this guy, and talking about their absence wasn't so bad. It's like an honest, candid discussion of technical merits was off limits. Then there's the problem of Microsoft tools mostly having non-columnar output. That really makes a mess of automatically parsing their output. I have extensive notes on the problems I encountered in PowerShell. Do I really need to trot them out? And do I need to mention that I used to be fascinated by language design and implementation? Oh, and lets not forget Microsoft zooming from no security in their filesystems at all, to a baroque, overengineered security system. *ix sits somewhere in the middle, and is used much more effectively by endusers. Like I said, Windows is usable, but it's far from equal to *ix (which includes Linux and macOS). Microsoft has a history of emphasizing profit over software quality, and the problems just get layered deeper and deeper. Because what "matters" is MS Office sales, not technical debt in our foundations. Not. Now, mind you: I didn't say "Use Linux instead" nor did I say "Install Linux today" - those are both strawperson arguments. I did, however, say that there are reasons to discuss switching to something better, both for the O.P. (today, someday, maybe never, but at least the O.P. is relatively known to be aware) and for the list as a whole. Also, you don't have to buy a whole new computer to run Linux - Windows does, as I already implied, passingly well with virtualization (hey, it appears to be better than FreeBSD at that - I've used Windows more than FreeBSD though, so I could be wrong), so you can just install VirtualBox (or VirtualPC, or whatever) and run Linux inside your Windows. But I didn't just say that primarily as a response to the O.P. I'm saying it primarily to you, Amir. PS: I used to have Microsoft options, as a condition of employment. I flipped them as soon they vested, despite the tax implications. And I only feel a little dirty for accepting their money. PPS: One of the guys Microsoft acquired along with me, said "Windows just sucks!" during his interview-that-wasn't-an-interview. They kept him anyway. Make of that what you will. -- Dan Stromberg