Python/Django development, windows or linux? [closed] Python/Django development, windows or linux? [closed] windows windows

Python/Django development, windows or linux? [closed]


I used Windows for quite some time for Django development, but finally figured out that Linux is simply the better way to go. Here are some reasons why:

  • some Python packages can not be installed at all or correctly in Windows OR it will create a lot of hassle for you to do so
  • if you need to deploy your Django app it makes more sense to use a Unix-flavored system, simply because its 99% likely that you deployment environment is the same. Doing a dry run on your local machine with the same configuration will save you a lot of time later on + here you are "allowed" to make mistakes.
  • If your apps gets complex its way easier in Linux to get the required dependencies, be it extensions, libraries, etc.. In Windows you end up looking for the right site to download everything and go through some hassle of installation and configuration. It took me lots of time to just search for some specific things sometimes. In Linux its often just an "apt-get" (or similiar) and you are done.
  • Did I mention that everything is faster to get and install in Linux?

Of course if your app is simple and you don't need to care about the deployment then Windows is fine.


Although there are some benefits in using Linux for Python development (for example, some libraries only work on Linux); there is nothing stopping you from using Windows for django work; I use it everyday and nothing has yet to crop up.

The right IDE that you are comfortable with will go a long way towards making your development experience more enjoyable. Many people use Pydev with Eclipse; but I prefer PyCharm

A lot of the tutorials will show you a Linux or Mac desktop (and shell) and you can get the equivalent commands (like touch, ls and others) by installing unixtools - which are native versions of common unix tools.

You should bookmark this website which has Windows installers for common Python libraries.


It depends what operating system do you like most. You could use Aptana 3 with pydev(included) for development.

When developing remember about use of "os" python lib for paths to dirs, so your application will work correctly under windows and linux.

For example:

PROJECT_DIR = os.path.dirname(os.path.abspath(__file__))MEDIA_ROOT = os.path.join(PROJECT_DIR, 'site_media')