Windows has a bad reputation in the Python community. Many consider it a bad choice for a developer, compared to Mac OS or Linux.

I’ve been using Windows for software development with Python for three years. The package I maintain, Sloth CI, is developed entirely under Windows and works on Windows, Linux, and Mac OS.

I’m going to tell you about my toolset, which I find pretty convenient. My goal is to convince you that being on Windows is not an obstacle for a Python developer, but in fact a nice option.

PowerShell

Before I switched to Windows, I had been using Arch Linux for a few years and had become a heavy console user. Actually, it’s the console I worried about the most when I switched.

Luckily, Windows has a great console built in — PowerShell. Switching from bash or zsh was not hard at all: although PowerShell’s syntax is totally different from bash, most popular commands have familiar aliases like ll, ls, cd, tail, etc. Also, PowerShell is much easier to write scripts with. It’s more explicit and readable than bash.

Vanilla PowerShell is pretty lame though: no autocompletion, SCM integration, or colors. This is why I highly recommend installing pshazz and concfg.

My current PowerShell inside a Mercurial repo

Pshazz adds Git and Mercurial info, useful aliases, and other stuff. Pshazz to PowerShell is what zsh-grml-config is to zsh, if you catch my drift.

Concfg is a color scheme manager for PowerShell. There’re plenty of schemes built in, and you can create your own ones.

Scoop

First off, there’s OneGet, which is a package manager manager (sic!) that comes with Windows 10. I don’t use it. There’s no naming convention for packages, and software I need is missing from the repos. Plus, it installs the programs all over the system; I like them programs contained.

What I use is scoop — a brew analog for Windows. Scoop really changed the game for me. Here’s what I love about it:

there’re lots of packages; if you can’t find the one you need, just create it

ssh, vim, git, hg, and other familiar console tools work just like on Linux or Mac OS

no root permissions necessary

all programs live in one place in your homedir; PATH is not turned into a mess

Installing python is as easy as `scoop install python`.

If you’re used to apt-get, pacman, or brew, scoop is basically a drop-in replacement. I had absolutely no trouble switching from pacman to scoop.

PTVS

PTVS stands for Python Tools for Visual Studio. PTVS turns Visual Studio into an excellent Python IDE. In fact, I think it’s the best Python IDE I ever tried.

It has an excellent debugger and IntelliSense. I think it even beats the famous PyCharm IDE.

PTVS works with Visual Studio Community Edition, which gives you a totally free IDE with amazing powers.

Here’s PTVS’s lead developer talking about its features: