¿Cómo se compara el desarrollo con Django en Windows con el desarrollo con Django en Linux? ¿Cuáles son las compensaciones?

He estado desarrollando Python / Django en Windows durante los últimos 2 años sin muchos problemas. Mi servidor de producción también ejecuta Windows, y no he tenido ningún problema durante el año pasado. Tecnológicamente creo que es una opción segura y sólida.

Un proyecto en el que trabajé tenía 3 desarrolladores, y usamos Windows, OSX y Ubuntu Linux para colaborar en la misma base de código, y no fue un problema. Python es maravillosamente independiente del sistema operativo. La comunidad Python trabaja duro para mantener la compatibilidad entre las versiones del sistema operativo. De hecho, me sorprendió la cantidad de computadoras portátiles con Windows que vi en PyCon el año pasado.

Dicho esto, hay un puñado de casos en los que desarrollar en Windows ha sido doloroso. El procesamiento de texto en la línea de comando con texto codificado Unicode puede ser incierto. (Unicode es la forma en que la mayoría de las computadoras manejan alfabetos de texto no occidentales como el japonés o el sánscrito). Dicho esto, Python generalmente maneja el problema perfectamente bien cuando se ejecuta en un servidor y no en la línea de comando.

Un puñado de bibliotecas de última generación de Python no son compatibles con Windows o no funcionan en absoluto. También hay un par de bibliotecas realmente geniales que se pueden usar para automatizar tareas en productos de Microsoft Office que obviamente no están disponibles en Unix.

Gran parte de la retórica anti-MSFT de los programadores es de naturaleza religiosa. Sin embargo, hay algunas quejas legítimas. Si está en Silicon Valley, es posible que tenga más dificultades para encontrar programadores dispuestos a codificar en una plataforma Windows. Pero, siempre que esté escribiendo su código correctamente, debería poder trabajar en múltiples sistemas operativos sin problemas. Entonces, si su CTO quiere usar Windows y sus programadores quieren usar un sistema operativo diferente, no debería ser un gran problema