¿Qué es python? y porque debo aprenderlo en 2024

Python es un lenguaje de programación de alto nivel (esto significa que es más cercano a nosotros: usando lenguaje humano, que a las máquinas que usan ceros y unos) que sirve para desarrollar muchos tipos de aplicaciones: desde aplicaciones web, hasta bots inteligentes de whatsapp. Sumamente poderoso y escalable, fue creado a finales de los años 80's por Guido van Rossum. A pesar de que podamos pensar que al buen Guido le gustan los reptiles, no lo nombra así por las serpientes, lo nombra así pues es fanático de los humoristas británicos Monty Python.

Como lenguaje, algunas de sus características más importantes son:

  • Sintaxis Legible: Debido a su sintaxis (las reglas de cómo se escribe en un lenguaje) muy similar al inglés es muy fácil plasmar ideas y escribir requerimientos en código por lo que lo hace sumamente legible a la hora de codificar en pares.
  • Fácil de aprender y de enseñar: Extremadamente poderoso como herramienta de aprendizaje en programación. Una entrada fácil a este excelente mundo. Los conceptos se hacen más palpables sin toda la verborrea de otros lenguajes.
  • Multiplataforma: Puede ser ejecutado en casi todos los sistemas operativos. Incluso si te interesa el IOT, hay versiones del lenguaje que se ejecutan en microcontroladores.
  • Multiparadigma: Este tema un poco más técnico, pero Python soporta programación funcional y programación orientada a objetos.
Guido van Rossum

Usos de Python

  • Aplicaciones Web: Con herramientas como django o flask (frameworks populares del lenguaje) podemos crear aplicaciones web potentes, de manera rápida y sencilla.
  • Inteligencia Artificial: La sencillez del lenguaje junto con su robustez ha generado una comunidad activa y fascinante alrededor de librerías que permiten, en muy pocas líneas de código, generar modelos de reconocimiento facial o redes neuronales.
  • Análisis de Datos y Big Data: Casi como el punto anterior. Python junto con R y Julia, han tomado el mercado del análisis masivo de datos. Desde la limpieza, la extracción, hasta generar conocimiento: todo con el mismo lenguaje.
  • Internet de las Cosas: Como comenté hace unas líneas, Python tiene versiones (como micropython) que nos dan la posibilidad de interactuar directamente con hardware y microcontroladores. Incluso hay drones que pueden ser programados con este lenguaje.
  • Automatización: Al ser un lenguaje legible y sencillo de aprender es súper fácil hacer scripting para automatizar tareas o para administrar servicios a nivel de DevOps y pipelines de CI/CD
  • Juegos: Librerías como pygame o pilas engine han democratizado ampliamente la creación y generación de juegos. Si tienes una idea para un juego, es probable que Python sea la opción para hacer una prueba de concepto.

Desventajas de usar Python

No todo lo que brilla es oro y python no es una bala de plata que acabe con todos los problemas del desarrollador. Desde su lentitud por ser interpretado, problemas de detección de errores por su tipado dinámico, la falta de legibilidad por falta de administración en el código y por escribir código "pythonico", hasta problemas por falta de conocimiento en ciencias computacionales en los programadores (de lo cual hablaremos más adelante en el sitio) Python es una excelente herramienta y debe ser considerada siempre, pero como dijo el Tío Ben:

Un gran poder siempre conlleva una gran responsabilidad.

Empresas que usan Python en su día a día

  • Instagram: Hecha en Django (escrito en Python) y con más de 700 millones de usuarios mensuales activos es la red social de fotografía más importante y conocida del planeta. Es probablemente el sistema más grande construido en python. ¿Quieres conocer más? Da clic aquí.
  • Google: Python es uno de los 3 lenguajes principales en la empresa (junto con C++ y Java) y fue así casi desde el principio. Más info aquí.
  • Dropbox: 200 millones de usuarios usan la plataforma y está casi en su totalidad hecha en Python. Incluso contrataron a Guido hace algún tiempo (ya hablamos de eso en otro artículo) Si quieres conocer como está funcionando la plataforma te invitamos a que visites este sitio.
  • Uber: Tienen servicios asíncronos hechos en Python que soportan la plataforma. Si bien no es el único lenguaje que usan, es uno de los más importantes para el funcionamiento de su plataforma. ¿Quieres conocer más? Da clic aquí.
  • Spotify: Es la aplicación donde casi todos escuchamos música. Por detrás, casi el 80% de los servicios están escritos en éste lenguaje. Ver post en su blog de ingeniería aquí.
  • Netflix: No necesita presentación. Aquí los programadores eligen en que herramienta programar y cada vez más usan Python. Si quieres conocer más visita Python at Netflix.

¿Cuáles son los mejores sitios para aprender Python?

El principal sitio para aprender es la web oficial del lenguaje. Ahí puedes aprender a instalarlo en casi todos los sistemas operativos, seguir un tutorial y conocer toda la librería estándar.

Welcome to Python.org
The official home of the Python Programming Language

En learnpython.org podemos aprender a programar en Python relativamente rápido ya que no necesitas instalar absolutamente nada pues el sitio ofrece un tutorial interactivo

Learn Python - Free Interactive Python Tutorial
learnpython.org is a free interactive Python tutorial for people who want to learn Python, fast.

La Google's Python Class es el material que usa Google para enseñarle a sus desarrolladores. Si es de Google, es calidad.

Google’s Python Class | Python Education | Google Developers
Assorted educational materials provided by Google.

El path de Microsoft, "Construye aplicaciones del mundo real con Python" es un excelente recurso para aprender. Sobre todo porque la documentación que ofrece la empresa de Redmond siempre es de primer nivel.

Build real world applications with Python - Learn
Interested in learning how to build apps in Python that scales and that you want to maintain? Then this is the path for you. It will take you through basics of the language but also teach you various patterns you can use.

Full Stack Python es un sitio en el que puedes dar paso a el siguiente nivel de tu carrera en python. En él se explican de manera clara y sencilla conceptos del lenguaje (y de algunas librerías) y provee enlaces a los mejores tutoriales.

Full Stack Python
Full Stack Python explains programming concepts in plain language and provides links to the best tutorials for those topics.

Por último y no menos importante: Real Python, la referencia absoluta de Python si no quieres adentrarte en un libro aburrido (que abundan muchos) Hay cursos de pago y gratuitos, pero el contenido es espectacular

Python Tutorials – Real Python
Learn Python online: Python tutorials for developers of all skill levels, Python books and courses, Python news, code examples, articles, and more.

Conclusión

Python es una excelente herramienta para incluir en tu toolbox como programador e ingeniero si no la tienes aún. Es un conocimiento válido y amortizable en el tiempo debido al uso masivo del lenguaje en distintos ramos por lo que la salida laboral es grandísima. Si eres recién egresado (o sigues estudiando) puede ser una excelente opción a tener en cuenta. Si ya eres un programador experimentado, Python te ayudará a realizar pruebas de concepto mucho más rápido y/o a automatizar tus tareas en pocas líneas de código.

Si no le has dado la oportunidad, no lo dudes: con este lenguaje tu imaginación es el límite.