Answer the question
In order to leave comments, you need to log in
Is there any difference between writing Django applications using Windows or Linux?
Most advise to use Linux, because. almost all servers run on Unix and therefore it is better to use the system that will be used by your application in production.
I would like to hear the opinion of experienced professionals.
Answer the question
In order to leave comments, you need to log in
Yes, it's definitely better to develop on Linux.
I myself do Django development from under Ubuntu.
Under Windows, I had problems with pip, sometimes it was necessary to build sources and for this I needed different libraries.
I can also advise using Vagrant as a server \ interpreter, with the same Linux distribution and environment as on the production server, it will be even better. In this case, you can even try to develop from under Windows.
Like it or not, but developing the server side, be it Python or something else, is much more convenient on Linux.
in order of priority:
- bash (there is MinGW on Windows, but not for ease of use)
- the ability to configure the base environment in one command (via package managers)
- some libs work only under linux (although almost all popular ones seem to work under windows as well ) ).
- All the cool stuff to automate the linux-only deployment process.
- you still have to deploy to linux.
On the whole... install Ubuntu, PyCharm, oh-my-zsh (which would be nice), and you will not find a more convenient environment for work (just for work, living under linux is a pain, although this is personal). As a compromise - Mac.
I'll give my opinion: I'd rather shoot myself in the foot than go back to Windows.
And if on the topic, at first I had problems with the paths, I liked hardcoding, and the slashes on Windows and Linux were in different directions (:
Sometimes it happened that pip refused to install packages, in general, a lot of problems, it would seem, from scratch.
If Linux-like systems to use for development - they are very cool, both in terms of stability and in terms of the "post-deploy" period.Perhaps
not everyone will agree to use Linux as an everyday desktop system, but as a workhorse it is a good tone, again IMHO.
I had experience implementing a Django project for Windows.
There were no special crutches, but there the project did not go further than working with the database and the python.
Linux is convenient, and there is no need to be afraid of it. Two years ago, I completely moved to it from Windows and do not feel any inconvenience. Install at least Linux Mint for starters - it has a very simple and intuitive interface.
Python, of course, will work under any line, as well as under Windows. But it is worth doing development in the system where it will eventually be executed, and under which all libs are written, and not under which they are adapted
By and large, there is no difference. If you are not using something very systemic (for example, WinApi, COM or process forks there), and the application reads and writes the database as standard, then development and testing can take place in the same way on any platform.
Didn't find what you were looking for?
Ask your questionAsk a Question
731 491 924 answers to any question