Las 5 razones por las que todo el mundo quiere aprender Python

#Wordpress #Android #Linux #Ubuntu #CentOS #CloudLinux #CloudFlare #UnlockersCloud — www.1lockers.net —

Python es, en estos momentos, el lenguaje de programación más popular.  Personas tan distintas como niños, estudiantes, profesores, investigadores de todo tipo (Ciencias Sociales, Biología, Medicina, Economía…), expertos en Finanzas, Seguros, Marketing, desarrolladores, analistas o científicos de datos lo aprenden y lo utilizan en sus campos de interés. En el post de hoy, vamos a intentar explicar el por qué.

El lenguaje de programación más popular en estos momentos.

¿Cómo se mide la popularidad de un lenguaje de programación?
Depende de quien lo pregunte.

Los desarrolladores lo hacen calculando el número de preguntas que se hacen sobre él en webs como StackOverflow. Se trata de webs donde consultan sus dudas y comparten conocimiento con la comunidad. Así, aunque JavaScript sigue siendo el lenguaje con mayor número de preguntas acumuladas desde la creación de Stack Overflow, Python se ha convertido en el lenguaje que más interés ha despertado en lo que va de año.

Image Credit: Stack Overflow
Previsión del tráfico futuro sobre los principales lenguajes de programación
Image Credit: Stack Overflow

(Los desarrolladores más “puristas” prefieren consultar índices como el PYPL o rankings como el del IEEE.)

Y, a los no programadores, seguro que esta frase, de The Economist les sirve para hacerse un idea:

“En los últimos 12 meses, en EEUU, se han realizado más búsquedas en Google de Python que de Kim Kardashian”

“Python has brought computer programming to a vast new audience”

¿De verdad que Python es más popular que Kim Kardashian en EEUU?. Pues parece que sí 😉 Veremos alguna de las razones, pero antes de nada, explicaremos qué es Python.

Python en pocas palabras

Para “calentar motores”, empecemos por un dato curioso. ¿Recordáis “La vida de Brian”? ¿El famoso spot del “Spam”? El nombre de Python no tiene ninguna connotación zoológica, sino que es un homenaje de su autor al inolvidable grupo cómico inglés Monty Python, protagonista de una de las mejores comedias de la historia del cine.

Imagen del grupo Monty Python
 De Eduardo Unda-Sanzana - Flickr, CC BY 2.0,
De Eduardo Unda-Sanzana – Flickr, CC BY 2.0,

Retomamos la seriedad para empezar con una definición técnica que iremos “desgranando” poco a poco:

Python es un lenguaje de programación interpretado de código abierto, multiparadigma, aunque principalmente orientado a objetos de alto nivel. Su sintaxis hace énfasis en la legibilidad del código, lo que facilita su depuración y, por tanto, favorece la productividad. Ofrece la potencia y la flexibilidad de los lenguajes compilados con una curva de aprendizaje suave.

Logo de Python
By The people from the Tango! project. -
By The people from the Tango! project. –

A partir de esta definición, analizaremos las 5 razones por las que Python ha ganado tanta popularidad en los últimos años.

1. Python es un lenguaje interpretado

Python fue creado por Guido Van Rossum en 1991 como lenguaje de programación interpretado de uso general.

¿Qué significa que un lenguaje de programación sea interpretado?

Los lenguajes de bajo nivel, o lenguajes máquina, como Java, C o C++ pueden ejecutarse directamente en una computadora. Los de alto nivel, por su parte, tienen que ser reinterpretados (compilados) como lenguajes de bajo nivel antes de poder ser ejecutados. Esto hace que los tiempos de ejecución sean más lentos. Sin embargo, hoy día, esto no es un problema ya que los avances en computación en la nube (cloud computing), permiten disponer de capacidades de cálculo a medida a costes muy asequibles.

Con Python, programar es sencillo

Programar en código máquina es costoso y difícil. Python ofrece una sintaxis mucho más sencilla y cercana a la lógica de los humanos. Un código más legible resulta más sencillo de generar, depurar, y mantener. Por ello, la curva de aprendizaje de los lenguajes interpretados es mucho más suave.


2. Python es potente, flexible y versátil

Veamos el por qué de esta potencia y versatilidad. Argumentos, no nos faltan.

Es un lenguaje de propósito general

Al ser un lenguaje de propósito general, y no creado específicamente para desarrollo web, Python permite crear todo tipo de programas y herramientas.

Es compatible con otros lenguajes de programación

Su interoperabilidad con otros lenguajes de programación como C, Java, R, etc., es otro de los factores que han ayudado a su gran difusión en distintos ámbitos.

Permite trabajar con distintos modelos de programación

En Python, todo es un objeto. No obstante, aunque sea un lenguaje principalmente orientado a objetos, combina propiedades de distintos modelos o paradigmas de programación (imperativa, funcional, procedural o reflexiva).

Ofrece librerías y entornos especializados en temas muy diversos

Por otra parte, Python ofrece librerías y entornos de desarrollo muy potentes para Machine Learning, Ciencias, visualización de datos etc.  Por ejemplo:

  • Matemáticos y científicos utilizan SciPy y NumPy en sus investigaciones
  • Los lingüistas analizan textos con NLTK (the Natural Language Tool Kit),
  • Los estadísticos, usan Pandas para analizar datos
  • Los equipos de IT configuran y gestionan recursos en la nube con OpenStack
  • Los desarrolladores usan Djarngo para crear aplicaciones web
  • etc.

Es el lenguaje de referencia en Data Science y Machine Learning

De hecho, se ha convertido en el lenguaje de referencia en Data Science, siendo el preferido por un 57% de los científicos de datos y desarrolladores. Si tenemos en cuenta la evolución de los dos últimos años de entornos Python para Deep Learning, incluyendo la creación de Tensorflow y otras librerías especializadas, no nos extrañará que haya dejado atrás otros lenguajes como R, Julia, Scala, Ruby, Octave, MATLAB y SAS.

Es lenguaje de referencia en Educación

El hecho de que sea un lenguaje tan sencillo como para que lo puedan usar desde principiantes a programadores profesionales también lo ha convertido en el lenguaje de programación por excelencia en entornos educativos. Y no sólo por su sencillez, sino también por el hecho de que se pueda ejecutar en distintos sistemas operativos (Microsoft Windows, Mac OS X, Linux, o usando el intérprete correspondiente). También es accesible a través de servicios web como  Python Anywhere.

Esto es especialmente importante para el sector educativo porque se puede usar desde los equipos del aula de informática de las escuelas, o incluso desde casa, sin necesidad de instalar software adicional.

Gracias a esto, Python ha estado en el centro de distintos proyectos educativos muy interesantes, como los que veremos a continuación.

En 2015, la BBC lanzó el proyecto MicroBit project. Se trata de un pequeño dispositivo programable, micro:bit, cuyo objetivo es inspirar a una nueva generación de creadores, makers y coders, dirigido a niños a partir de 11 años de edad.

Otros proyectos, como MicroPython project, permiten trabajar con otros pequeños dispositivos, como Raspberry Pi, y usarse como base de muchos interesantes y entretenidos proyectos de electrónica para controlar pantallas, altavoces, micrófonos, motores etc. Incluso, crear sencillos robots.

En resumen, Python, sirve para crear todo tipo de herramientas, se puede ejecutar sobre distintos sistemas operativos, es compatible con otros lenguajes de programación y ofrece librerías y frameworks especializados en distintas áreas de conocimiento.


3. Python es un proyecto de software libre (free software)

Python Project nació como un proyecto de código libre (free software). Hasta hace muy poco, todavía era dirigido por su creador, Guido van Rossum, quien, nuevo guiño a Monty Python, ejerció durante casi tres décadas el rol de “benevolente dictador vitalicio” (Benevolent dictator for life) de la PSF.

Guido van Rossum By Alessio Bragadini - originally posted to Flickr
By Alessio Bragadini – originally posted to Flickr as Guido van Rossum

¿Qué caracteriza al software libre?

El software libre

Advertisement
, “free software” no es necesariamente siempre gratuito (aunque Python sí lo sea), sino que se caracteriza por el escrupuloso respeto a las conocidas como “4 libertades”:

  1. La libertad de usar el
    programa, con cualquier propósito. (libertad 0)
  2. La libertad de estudiar cómo
    funciona el programa, y adaptarlo a tus necesidades.
    (libertad 1)
  3. La libertad de distribuir
    copias, con lo que puedes ayudar a tu vecino. (libertad 2)
  4. La libertad de mejorar el
    programa y hacer públicas las mejoras a los demás, de modo que toda la
    comunidad se beneficie. (libertad 3)

Para que las libertades 1 y 3 sean posibles es necesario que los usuarios puedan tener acceso al código fuente de los programas.

En resumen,  software libre son aquellos programas que una vez obtenidos pueden ser usados, copiados, estudiados, modificados y redistribuidos libremente. Por tanto, la “libertad” del software está relacionada con los permisos que su autor ofrece y no con su precio.

Python se publica bajo la licencia Python Software Foundation License . La PSF es una organización sin ánimo de lucro, que fue creada en 2001 con el objetivo de gestionar el proyecto (desarrollo, administración de derechos, recaudación de fondos etc). Y es compatible con la GPL de GNU ( Licencia Pública General de GNU ,a partir de la versión 2.1.1).


4. Python es un lenguaje de código abierto (open source)

Además de libre, Python es un lenguaje de código abierto, que es parecido, pero no es lo mismo. Según Richard Stallman, tanto el software libre como el código abierto persiguen un objetivo común: dar mayor libertad y transparencia al mundo del software.  Sin embargo, difieren en la manera de llevarlo  cabo.

El software libre se define por su ética. Se considera software libre no sólo los programas cuyo código esté abierto, sino todos aquellos programas que respetan la cuatro libertades esenciales del usuario definidas por la Free Software Foundation (1985).

El concepto de software abierto surgión en 1998, cuando se creó la OSI (Open source initiative) como una escisión del software libre. En este caso, en lugar de las 4 libertades del software libre, se definieron 10 requisitios. que debe cumplir un software para ser considerado abierto.

La diferencia principal entre uno y otro tipo de software es sutil. El software libre prioriza los aspectos éticos, mientras que el software de código abierto prioriza los de índole técnica. Por ello, es normalmente menos estricto, de modo que todo el software libre es también de código abierto, pero no necesariamente a la inversa.

En cualquier caso, Python es libre y es abierto.  Y en esto radica una de las claves del éxito de Python: la comunidad Python. Se trata de una comunidad amplia y muy activa, que contribuye al desarrollo y mejora del código fuente, según las necesidades y demandas de los usuarios. Porque, aunque muchas empresas y organizaciones, como Google, Microsoft o Red Hat, utilizan mucho este lenguaje y tienen influencia en su evolución, ninguna ejerce un control sobre el mismo.

Este carácter libre y abierto, sin duda también ha facilitado la versatilidad, flexibilidad y potencia mencionadas en el punto anterior, ya que además de todo lo mencionado anteriormente, Python es un lenguaje multiplataforma. Es decir, podemos ejecutarlo en diferentes sistemas operativos como Windows o Linux simplemente usando el intérprete correspondiente.


5. Y además… es gratis

Como hemos apuntado antes, a pesar de la confusión que puede generar el hecho de que, en inglés, “free”, además de libre, significa gratis, el software libre no tiene por qué ser necesariamente gratis.  Sin embargo, sí se puede afirmar, que para programar en Python, no es necesario pagar ningún tipo de licencia. Sin embargo, no debemos olvidar nunca que cualquier código no desarrollado por nosotros mismos puede estar sometido a algún tipo de licenciamiento.

Advertisement

Conclusión

En resumen, la sencillez,  versatilidad, y potencia de Python le han
convertido en ese lenguaje de programación todoterreno que puede ayudar a
impulsar la alfabetización digital de amplios sectores de la población,
haciendo accesible la programación a personas y profesionales de todo tipo.

¿Y tú? ¿te atreves con el Python? Si te animas, puedes empezar por aquí:

Atrévete con  Python: un experimento para todos los públicos

Para mantenerte al día con LUCA, visita nuestra página web,  suscríbete a LUCA Data Speaks o síguenos en Twitter, LinkedIn o YouTube.

The post Las 5 razones por las que todo el mundo quiere aprender Python appeared first on Think Big.

— Las 5 razones por las que todo el mundo quiere aprender Python —