¿Por que usar python?
En los ultimos meses, a dado la casualidad que me cuestionen distintas personas el por que uso python, supongo por que últimamente he estado muy pythonista en parte por que estoy programando mucho en python en mi trabajo y no solo en proyectos personales, estos son algunos de los puntos que se me ocurren por el momento.
Sintaxis clara
Esto es casi innegable todo persona que tenga vagos conocimientos de inglés puede tratar de interpretar algo de código en python y tratar de deducir que esta haciendo, es casi como pseudo código, las personas que podrían tener problemas con la sintaxis son los amantes de las llaves y símbolos de puntuación, un ejemplo claro de que alguien esa empezando a aprender a usar python y programaba en algun otro lenguaje basado en C, es que termina lineas con ";" y utiliza paréntesis en los ifs.
Consumo de recursos
Aun y cuando es un lenguaje interpretado y no puedes esperar un rendimiento aproximado a algo compilado (aunque pypy) me hace pensar sobre esa posibilidad), su consumo de memoria no es tanto considerando todos los beneficios que tienes al usar un lenguaje de super alto nivel como lo es python, en caso de que se llegara a tener algún problema de rendimiento es muy probable que se pueda arreglar mejorando el algoritmo que se esta implementando y no simplemente culpar al lenguaje, en php por ejemplo no puedes decir lo mismo de su consumo de memoria... es distinta la aproximación a la solución de problemas y el que en python todo sean punteros ayuda mucho a mantener el consumo relativamente bajo de memoria.
Extensa librería estándar
Python incluye una muy amplia gama de módulos en el mismo lenguaje sin necesidad de recurrir a paquetes externos (que hay muchos en el pypi) facilitando así el poder construir programas con mínimas dependencias, como se dice, es un lenguaje con baterías incluidas que te ayudan hasta para importarle un alma a un hamster.
Fácil extensibilidad
En el caso de que se requiera realizar algo que este muy optimizado y tu algoritmo ya no puede exprimirse mas, siempre existe la posibilidad de crear tu modulo en C y cargarlo dinamicamente en tu script de python, la verdad el api de C no esta tan loca como muchos podrían esperar todo gira en torno a los PyObjects.
Principios del lenguaje
El estar consiente que se programa en un lenguaje en que se apoyan las buenas practicas basado en propuestas de la comunidad misma y el legendario PEP8, te hace pensar mucho sobre la calidad de código, te ves casi obligado a escribir buen código, con el tiempo esas buenas practicas que aprendes al escribir buen python, se ven reflejadas en cualquier otro lenguaje en que se programe, te hace pensar un poco mas haya de la herramienta y verlo un poco mas como artesano que construye su código con cuidado.
No solo existe un solo python
Es algo que sorprende mucho a los nuevos en el lenguaje el que existan diferentes implementaciones del lenguaje, para mi eso representa un gran incremento en la productividad que puedes tener con los conocimientos que ya posees puedes pasar tu programa de ejecutarse en CPython, Jython, Ironpython o a alguna otra implentación con mínimas modificaciones.
Amplia comunidad
Con el tiempo la comunidad de python a crecido en gran medida, en parte creo que es por el apoyo que google le a dado al lenguaje al respaldarlo como la empresa que es, el tener una gran comunidad siempre implica muchas posibilidades para buscar información o reutilizar código y tener al alcance muchos módulos.
Uso general
El lenguaje es perfectamente adaptable tanto para desarrollo web con los muchos frameworks existentes o para desarrollo en escritorio con los muchos otro toolkits graficos y ademas poder pasarlos a un a aplicación nativa con py2exe o p2app, herramientas que te convierten tu python directo a un ejecutable para Windows o Mac correspondientemente, para linux casi nunca es un problema por que es seguro que tienes python con muchos módulos sin que siquiera te des cuenta de que mucho de lo que usas esta en python, hasta existen algunas implementaciones de python embebido para microcontroladores.
Como recomendación personal a todo programador empresarial que se la pasa en sus lenguajes empresariales diviértanse un poco y programen en python para que vuelvan a amar su profesión, la vida puede ser productiva y placentera, la solución es python =).