Last year I went to North Bay Python 2018 and saw a lot of really fantastic talks. One of my favorites from the conference—and in general—was the very last, which closed out the weekend: Steve Dower's "Python on Windows is Okay, Actually".
In fact, I think it's so good and important that I'm going to embed it here, my anti-JS sentiment be damned (external link):
There's also a Talk Python To Me episode with him talking about some related things, and touching on the above in part. It's also very much worth listening, though it doesn't cover quite the same topic. I suggest you give it a chance, but the talk is more relevant to what I'm covering here.
Now, I don't personally care about Windows. I haven't used it since XP was the main thing, and I'm perfectly fine with that. Back then I didn't do much development, and what I did was static sites and PHP, and even that usually via SFTP directly on a Linux server.
I do, however, care about the Python community, because communities are made of people. And as we learned from Steve, quite a few of those people are using Windows. Trying to get them to switch is ridiculous both because it's patronizing and because it's impossible.
I would instead much rather embrace them.
Today I spent some time and made steps toward ensuring my two "serious" Python packages work on Windows. After some general cleanup, I added continuous integration on Windows to both, so now I get free test runs. It wasn't a lot of work, and it doesn't cost me a penny. Feel free to take a look at logs for both Parsenvy and Keysort.
I was lucky enough that everything I did was already cross-platform, so tests passed right out of the box, but I was fully prepared to deal with whatever issues came up to get everything sorted out.
Because I'm not comfortable writing software for only half the people who could theoretically use it. And you shouldn't be either.
Steve, thank you for the motivation.
If you want to chat about the above for any reason, the best ways to do so are probably email and Twitter. If you’d like to be notified when I post, you can subscribe to my newsletter. I promise I won’t spam you or sell your email address.