Blog /

¿Qué es Python y para qué sirve? Guía para principiantes

Hoy en día, saber que es Python es esencial en el mercado de la Tecnología de la Información. Si tienes ganas de adentrarte en este lenguaje de programación, ¡has venido al lugar correcto!

Python es un lenguaje de programación usado por los gigantes tecnológicos de todo el mundo, como Google, Amazon y la NASA. También se utiliza en los proyectos más innovadores de la actualidad, como la inteligencia artificial y la ciencia de datos.

Y, aunque es uno de los lenguajes más poderosos para el desarrollo de aplicaciones, no deja de ser abierto, simple y fácil de aprender.

Así que, si estás empezando a programar o quieres adentrarte en este mundo, Python puede ser tu puerta de entrada. Acompáñanos para que aprendas todo sobre este lenguaje:

¿Qué es Python y para qué sirve?

Python es un lenguaje de programación de código abierto extremadamente simple y versátil. Este lenguaje trabaja con diferentes paradigmas y ofrece una vasta biblioteca con funciones y clases, que ayudan a estructurar un buen código.

Muchos desarrolladores lo consideran el mejor lenguaje de programación. No en vano es uno de los más utilizados en la actualidad, tanto en pequeñas y medianas empresas como en gigantes del mercado, por ejemplo Google, Amazon, NASA, Facebook, Microsoft y Globo. Se puede utilizar en diversas áreas, desde la programación web hasta las tecnologías más avanzadas de computación científica, machine learning y blockchain .

Pero Python no es solo una tecnología de desarrollo web. El lenguaje se basa en una filosofía de programación, que abarca principios como la simplicidad, lógica, legibilidad, transparencia y practicidad. Uno de los mandamientos de Python es el siguiente: si la implementación es difícil de explicar, entonces es una mala idea.

Debido a que está orientado hacia la simplicidad, Python tiene una curva de aprendizaje más baja que otros lenguajes de programación, lo que lo convierte en una buena opción para los programadores principiantes.

¿Cuál es el origen de Python?

Los que piensan que Python es un lenguaje reciente en el mundo de las Tecnologías de la Información, se equivocan. En 1989, el matemático y programador holandés, Guido van Rossum, buscaba un pasatiempo con el qué entretenerse en la semana de Navidad.

En esa época, terminó desarrollando un sistema para mejorar otro software de programación utilizado en la institución en la que trabajaba, el Centrum Wiskunde & Informática (CWI), en Holanda. A este sistema lo llamó Python, ya que se inspiró en el humor del grupo de comediantes Monty Python.

En los años siguientes, perfeccionó el lenguaje y lanzó una iniciativa de financiación del proyecto, llamada ​ Computer Programming for Everybody (Programación de computadoras para todos). Su objetivo era crear un lenguaje fácil, intuitivo, de código abierto, cercano al inglés, para que cualquier persona pudiera desarrollar sus aplicaciones con él.

En 2001, Python fue lanzado oficialmente y pronto se convirtió en un lenguaje de programación popular. Luego del lanzamiento, Guido recibió premios, trabajó en Google, Dropbox y siguió liderando la comunidad de Python en todo el mundo.

¿Qué puede hacerse en Python?

Python es un lenguaje de programación muy versátil, por lo que puede utilizarse en diferentes aplicaciones, desde las más básicas hasta las avanzadas, así como en pequeños y grandes proyectos.

Python se utiliza mayormente en la programación web. Se pueden construir sitios web, aplicaciones móviles, algoritmos, juegos, gráficos 3D y otras aplicaciones para web.

También se utiliza con frecuencia en el campo de la ciencia de datos (Data Science). El lenguaje permite, por ejemplo, procesar grandes bases de datos debido a la infinidad de bibliotecas y patrones orientados a los cálculos numéricos y al análisis estadístico.

Este poder de manejo y procesamiento de datos hace que Python sobresalga también en el área de la inteligencia artificial (IA) y en sus subáreas, como el machine learning y el deep learning .

Además, se pueden identificar patrones, cruzar datos y automatizar acciones, como realizar modelos predictivos de análisis técnico para el mercado financiero o incluso mejorar estrategias de SEO.

Aparte de la biblioteca predeterminada, se cuenta con extensiones adicionales que permiten desarrollar todo tipo de aplicaciones. Las bibliotecas de módulos, que tienen funciones específicas, amplían el poder del lenguaje. Django (desarrollo web ágil), ZODB (gestión de banco de datos) y Pygame (desarrollo de juegos) son algunas de ellas.

¿Por qué aprender Python?

Ya debes haberte dado cuenta de que Python es uno de los lenguajes de programación más simples y fáciles de aprender. Esos principios fueron parte del lenguaje desde su creación y se han mantenido a lo largo de los años, lo que ha generado una gran comunidad de desarrolladores de este lenguaje.

Por lo tanto, aprender sobre Python y cómo usarlo es una gran puerta de entrada al universo del desarrollo web. Aunque nunca hayas programado antes, puedes aprender de forma rápida y contar con gran variedad de documentación creada por la comunidad.

Pero la importancia de aprender Python no solo radica en su facilidad. Y es que gracias a este lenguaje puedes desarrollar una infinidad de aplicaciones, lo que facilita la inserción en el mercado laboral, en el cual existen diversas vacantes para desarrolladores de Python.

Además, es un lenguaje con gran potencial para el futuro, ya que es capaz de procesar grandes cantidades de datos. Por esta razón, se usa en las áreas de inteligencia artificial, machine learning, deep learning y redes neuronales, por ejemplo. Es decir, vas a prepararte no solo para el mercado actual, sino también para el futuro.

Ventajas y desventajas de Python

Python es uno de los lenguajes más utilizados y uno de los más promisorios. Sin embargo, a pesar de su éxito, algunos factores pueden jugar en contra. A continuación, especificaremos las principales ventajas y desventajas de Python para que puedas decidir si vale la pena aprender sobre este lenguaje de programación.

¿Cuáles son las ventajas de utilizar Python?

Python tiene muchas ventajas, especialmente para aquel que se está iniciando en la programación.

Te mostramos sus principales ventajas:

  • Lenguaje robusto y de alto nivel que permite hacer más con menos.
  • Versátil (puede utilizarse en varias aplicaciones web, de escritorio, móviles y de juegos).
  • Multiplataforma, funciona en cualquier sistema (Windows, Linux, Mac).
  • Sintaxis simple (permite escribir el mismo requerimiento en menos líneas de código).
  • Interoperabilidad con otros lenguajes de programación.
  • Variedad de bibliotecas, módulos y frameworks.
  • Curva de aprendizaje menor que la de otros lenguajes.
  • Código abierto (accesible a cualquier persona).
  • Comunidad global (en constante evolución).
  • Documentación abundante (aclara dudas en cualquier momento en Internet).
  • Oportunidad laboral (buenas perspectivas de mercado).

¿Cuáles son las desventajas de utilizar Python?

Un lenguaje tan simple, pero al mismo tiempo tan poderoso, ¿podría tener alguna desventaja? En algunos casos, sí.

En algunas aplicaciones, Python puede ser lento. Es un lenguaje interpretado, lo que significa que se necesita un intérprete para ejecutar los programas, por lo que generalmente es más lento que los lenguajes compilados.

Además, algunos desarrolladores critican a Python en el aspecto de la creación de aplicaciones móviles, pues no es tan eficiente, por lo que debe combinarse con otros lenguajes para solucionar los problemas.

La gran facilidad con la que se aprende Python también puede verse como una desventaja. Algunos profesionales comienzan a programar sin pensar en cuáles problemas deben resolver, lo que genera que los proyectos sean más frágiles y propensos a errores.

Debido a la facilidad de aplicación, los profesionales también pueden saltarse etapas en el aprendizaje de la programación y no fortalecer algunos conceptos durante su capacitación, lo que puede convertirse en un problema cuando les toque enfrentarse a proyectos más complejos.

¿Qué hace un desarrollador Python?

La persona que trabaja con Python se convierte en un desarrollador Python. Ese profesional conoce bien el lenguaje de programación y desarrolla las más variadas aplicaciones, por lo que puede especializarse en algún área, como programación web o inteligencia artificial.

Pero ¿qué hace este profesional a diario? Veamos ahora cómo trabaja el desarrollador Python para que conozcas mejor la profesión. Estas son algunas de las actividades que realiza:

  • Analiza y estructura las bases de datos.
  • Codifica los sistemas en Python.
  • Realiza el mantenimiento de los sistemas y las posibles correcciones.
  • Construye, depura y realiza pruebas de sistemas.

Además de estas actividades técnicas, el desarrollador Python también puede participar en tareas de gestión y supervisión. Especialmente en cargos más altos, este profesional también:

  • Aplica metodologías de desarrollo de software (como Scrum y Kanban).
  • Gestiona los proyectos de desarrollo.
  • Dirige los equipos de desarrollo.

Vacantes para desarrolladores de Python: ¿cómo es el mercado de trabajo en el área?

Si quieres aprender Python, debes saber que entrarás en un mercado promisorio y valorado. Python es uno de los lenguajes de programación más utilizados por empresas de diferentes tamaños y segmentos, además de ser uno de los favoritos de los desarrolladores. En los últimos años, ha tenido un gran crecimiento y sigue en ascenso.

De hecho, a raíz de la pandemia del coronavirus en 2020, muchas empresas comenzaron a adoptar el sistema de trabajo a distancia.

Este sistema facilitó la contratación de desarrolladores que no vivían cerca de las sedes de las grandes empresas. Dicho de otra forma, se hizo aún más fácil para las empresas reclutar desarrolladores.

Ahora bien, ¿quién contrata a los desarrolladores? Por lo general, esas oportunidades están dentro de las empresas que tienen un área de Tecnología de la Información sobresaliente, en startups o empresas de tecnología. Puedes escoger entre varias opciones:

  • Desarrolladores de juegos.
  • Desarrolladores web y frameworks.
  • Big Data.
  • Web testing.
  • IA y Machine learning.
  • Ciencia de datos.
  • Internet de las cosas.

Los salarios también son interesantes y se acercan al promedio de la carrera de desarrollador de software. El sitio web Glassdoor informa que el salario medio nacional del desarrollador de Python es de unos 716 dólares mensuales. Debes considerar también que existen diferencias entre las regiones del país y los niveles de los cargos (junior, semi senior y senior).

Muchas veces las empresas notan una falta de cualificación en los profesionales del área, ya que muchas personas entran en la ola de popularidad de Python sin un entrenamiento adecuado para su desempeño. Así que, la persona que quiera sobresalir en el mercado laboral necesita buscar conocimientos, crear proyectos, construir su portafolio y capacitarse constantemente.

¿Cuáles son los comandos básicos de Python?

Python es un lenguaje de programación, lo que significa que existen reglas que determinan cómo se colocan las palabras y cómo estas envían instrucciones para que la computadora ejecute las tareas. Cuando escribes el código fuente de una aplicación, estás enviando esas instrucciones.

Cuando programas en Python, utilizas pocas líneas de código para crear numerosas funcionalidades. Se cree que Python utiliza de 3 a 5 veces menos código que Java y de 5 a 10 veces menos que C++.

Para que comprendas mejor lo simple que es Python y comiences a familiarizarte con los códigos, observa el siguiente ejemplo de cómo el texto “Hello, world!” está escrito en diferentes lenguajes.

En Python:

En Java:

En C:

Se puede notar que en el ejemplo de Python se utilizó la función print(), que es uno de los principales comandos del lenguaje. Este se utiliza para ordenar a la computadora que muestre algún mensaje en la pantalla. Solo se debe colocar la frase entre paréntesis y entre comillas y Python intenta mostrarla en el programa. Existen otros comandos, como:

  • input – Se utiliza para recibir los datos que el usuario proporciona a través del teclado.
  • if - Se utiliza para crear comandos condicionales.
  • while – Se utiliza para repetir bloques de código hasta que se logre una condición.

Por lo tanto, para programar en Python necesitas conocer los comandos básicos del lenguaje. De esta forma, empezarás a construir tus líneas de código conforme a las reglas de Python.

Versiones de Python: ¿Qué es Python 1, Python 2 y Python 3?

Esta es una duda muy común: ¿cuál versión de Python es mejor?

Para responder a esa pregunta, explicaremos cuáles son las diferencias entre ellas. Estas son las principales versiones de Python hasta ahora:

  • Versión 1.0 (publicada en enero de 1994).
  • Versión 2.0 (publicada en octubre de 2000).
  • Versión 3.0 (publicada en diciembre de 2008).

La versión más reciente es el Python 3.8.5. Entre cada gran actualización, hay una serie de mejoras, con nuevas funcionalidades, nuevas bibliotecas y correcciones de errores. Por esta razón, es importante seguir las actualizaciones.

La versión más reciente efectivamente es la más avanzada. Vino a mejorar y corregir los problemas de la versión anterior. Así que, en proyectos nuevos y para desarrolladores principiantes, se recomienda preferiblemente Python 3.

No obstante, gran parte de las aplicaciones fueron desarrolladas en Python 2, que no es compatible con la última versión. Es decir, lo que programas en 2.0 puede que no se ejecute en 3.0.

En general, se recomienda migrar a la última versión. Sin embargo, esta migración puede acarrear problemas técnicos y ser inviable en algunos casos. Así que, tal vez el programador necesite incluso trabajar en la segunda versión. Por lo tanto, también es importante conocer las versiones anteriores, en caso de que necesites lidiar con proyectos desarrollados anteriormente.

¿Qué es IDE?

IDE es un entorno de desarrollo integrado de programas en Python. IDE proviene del inglés Integrated Development Environment.

Podrías usar cualquier procesador de texto para programar en Python y guardar el archivo en la extensión .py. Sin embargo, los procesadores de texto comunes no ofrecen muchos recursos para el desarrollo de programas en Python. Por eso existen los IDEs, que proporcionan más recursos para este lenguaje de programación y facilitan la vida del programador.

Mejores IDEs para Python

No existe un IDE mejor que otro. Todo depende de las preferencias del programador o del entorno en el que se sienta más cómodo. Así que, un IDE que es bueno para ti puede no ser bueno para otro profesional.

A continuación, hemos seleccionado algunos:

  • IDLE: este entorno viene con la instalación de Python para Windows, tiene una interfaz simple y es fácil de usar. Recomendado para principiantes.
  • VSCode: es uno de los entornos de desarrollo más utilizados en el mundo, no solo para Python. Fue desarrollado por Microsoft, es altamente adaptable y ofrece soporte para Python mediante la extensión Microsoft Python.
  • Jupyter: es uno de los IDEs que se recomienda para trabajar con grandes conjuntos de datos. Las integraciones de Jupyter también permiten crear atractivas presentaciones de visualización de datos.
  • Pycharm: es un IDE dedicado exclusivamente a Python. Desarrollado por JetBrains, permite analizar códigos, depurar, autocompletar, entre otros recursos.
  • Atom: es un editor de código abierto, muy ligero y con una interfaz amigable. Cuenta con una infinidad de extensiones y complementos para ejecutar análisis y programar en Python.

Introducción a la programación con Python: usándolo por primera vez

Ahora que sabes lo básico sobre Python, ¿qué tal comenzar a usarlo? A continuación, te mostraremos cómo descargar e instalar el sistema y cómo dar los primeros pasos. Veamos:

1. Descarga el software

El primer paso es descargar Python. Para ello, puedes acceder a la página de descargas del sitio web oficial de Python y elegir la versión que deseas. Al bajarlo, también se descargará el IDLE para empezar a programar en el entorno de desarrollo. Algunos sistemas operativos (Linux y algunas computadoras Windows) ya vienen con Python instalado.

2. Instala Python

La instalación es simple y funciona como cualquier otro programa que instalas en la computadora. El único detalle está relacionado con su directorio de instalación, que explicaremos a continuación.

3. Descubre el directorio de instalación de Python

Para ejecutar el programa, necesitas identificar dónde se instaló Python. Sigue los pasos siguientes para descubrir y activar el programa:

  • a. En el disco principal de Windows (generalmente C:), abre la carpeta Usuarios.
  • b. En Usuarios, busca la carpeta de usuario predeterminada (generalmente “user”);
  • c. En user, en la parte superior de la ventana, haz clic en Ver > Elementos ocultos.
  • d. Después de activar esa opción, abre la carpeta AppData.
  • e. En AppData, haz clic en Roaming > Microsoft > Windows > Start Menu > Programs.
  • f. Dentro de Programs, haz clic en el archivo del programa Python para ejecutarlo.
  • Para localizarlo más rápido la próxima vez, crea un atajo para el programa en el escritorio.

4. IDE Python: conoce el entorno de desarrollo

Cuando abras la aplicación, te encontrarás con el entorno de desarrollo (IDLE). El espacio principal de interacción de IDLE es Python Shell (intérprete). Este espera el comando de entrada del desarrollador y, cuando lo recibe, ejecuta y muestra el resultado. Por lo tanto, es en ese entorno en el que escribirás los códigos del programa.

¿Cómo crear tus primeros códigos Python?

Si ya instalaste Python y conoces el entorno de desarrollo, ya puedes comenzar con la programación de tus primeras líneas de código.

En la ventana de Python Shell de IDLE, notarás que hay un símbolo de >>>. Este símbolo muestra que Python está listo para recibir un nuevo comando. Es decir, desde allí podrás comenzar.

Como explicamos antes, la función print() es un comando básico de Python, usado para mostrar cualquier mensaje o valor en la pantalla. Empieza a utilizar esta función con el mensaje que deseas mostrar. Por ejemplo:

>>> print(“Probando Python”)

Python mostrará el resultado de forma rápida:

Probando Python

Python también puede funcionar como calculadora

>>> 2+4

6

>>> 3*8

24

¿Ves lo simple que es? Ahora bien, estos comandos son básicos. Pero puedes ejecutar varias funcionalidades usando la misma lógica.

Debes tener en cuenta que de esta manera escribirás varios comandos, pero la próxima vez que abras el editor, ya no estarán ahí. Por lo tanto, necesitas crear un archivo con los comandos que quieres conservar y guardarlo como documento.

Para realizarlo, debes abrir un nuevo archivo (File > New File). Se abrirá una ventana completamente en blanco. En ella escribirás solo los comandos que deseas ejecutar (sin el símbolo de >>>), aunque no obtendrás la respuesta inmediata como en Python Shell.

Después de que escribas los comandos que deseas, guarda el documento con el nombre que quieras y la extensión .py. Luego haz clic en Run > Run Module (o tecla F5). Finalmente, el resultado aparecerá en Python Shell.

Este es el funcionamiento básico de Python. A partir de ahí, puedes construir líneas de código más complejas, con códigos que instruyen al intérprete a ejecutar varias funcionalidades.

Curso de Python: conoce los mejores cursos en línea de programación Python para principiantes

Hasta ahora, solo hemos dado una pequeña muestra de lo que puedes hacer con Python. Sin embargo, si quieres avanzar y dominar este lenguaje de programación, es importante capacitarse. Existen varios cursos en línea para aprender Python y empezar a programar.

Curso: Python desde cero

Empresa: Udemy

Instructor: Mariano David Melgar Zavala

Descripción: como su nombre lo indica, este curso enseña a programar en Python desde cero, así no sepas nada de programación. Son más de 30 clases sobre los fundamentos de la programación y sobre Python.

Precio: 13 USD

Curso: Python 3. Curso completo de Python 3. Aprende desde cero

Empresa: Skillshare

Instructor: Redait Media

Descripción: presenta el lenguaje Python desde la instalación, funciones y variables principales, completamente práctico. Son más de 10 horas de videoclases.

Precio: 8.25 USD

Curso: Comienza con Python: Curso de Python para principiantes

Empresa: Udemy

Instructor: Sebastian Tunnell

Descripción: este es un curso de Python para programadores principiantes. El estudiante aprende los conceptos básicos para empezar a programar en el lenguaje. Es una buena introducción para los que entran en este mundo.

Precio: 13 USD

Curso: Introducción a Python

Empresa: Coursera

Instructor: Jorge Muñoz Gama

Descripción: enseña lógica de programación, estructuras de datos, conceptos básicos de Python, variables y operadores; todo de manera práctica.

Precio: gratis

Curso: Python – Introducción a la programación

Empresa: Udemy

Instructor: José Luis Guisado Folgado

Descripción: este curso también arranca desde cero para explicar los principios de la programación hasta los primeros códigos en Python.

Precio: 13 USD

Curso: Python Estructuras de Datos y Algoritmos MASTERCLASS

Empresa: Udemy

Instructor: León Ramírez

Otro curso para aprender a programar en Python. El curso aborda Python desde la resolución de problemas con algoritmos. Tiene una calificación de 5.0 en Udemy y más de 40 estudiantes inscritos.

Precio: 13 USD

Curso: Curso de Programación (Python 2 & Python 3)

Empresa: Udemy

Instructor: Lipiam Co

Descripción: Este curso aborda los conceptos básicos y enseña la sintaxis del lenguaje de programación Python en sus dos versiones, por el precio de 19,99 USD

Curso: Python Acelerado

Empresa: Udemy

Instructor: Tomas Bradanovic

Este curso de Python ofrece una introducción rápida y práctica a este lenguaje para empezar a programar. Tiene un costo de 19, 99 USD.

Desde principiante a avanzado, el curso cubre todo lo que necesitas saber para convertirte en un programador. Tiene un costo de 19,99 USD.

Estos son solo algunos de los cursos para principiantes. Si quieres ver más opciones o una capacitación más avanzada, accede al buscador de cursos de Classpert.

Libros de Python: ¿cuáles son los mejores para aprender el lenguaje Python?

Leer un libro sobre Python puede ayudarte a entender mejor la lógica de este lenguaje de programación y a aprender los principales conceptos. A continuación, verás algunas indicaciones de libros (todos ellos están en español):

Python paso a paso : enseña a programar desde cero usando el lenguaje Python. Autor: Ángel Pablo Hinojosa Gutiérrez.

Curso de Programación Python: dirigido a programadores principiantes que desean adentrarse en el campo de la programación. Autor: Arturo Montejo Ráez.

Python para Principiantes: 2 Libros en 1 : también enfocado a principiantes y, como su nombre lo indica, son 2 libros en 1. El primero se centra en la parte teórica y el segundo en la práctica. Autor: Programming Languages Academy.

Programar con Python 3 : aborda desde los conceptos básicos hasta los más avanzados e incluye una gran cantidad de ejemplos y ejercicios para practicar. Autor: Alberto Cuevas Álvarez.

Aprendiendo A Programar en Python : un libro que explica aspectos generales de la programación utilizando el lenguaje Python. Autor: Paula García Entrambasaguas.

Conclusión

A los programadores les encantan desarrollar en Python. Miles de empresas en todo el mundo utilizan este lenguaje de programación. El mercado laboral está abierto a los profesionales que programan en este lenguaje. Y, aún mejor: es un lenguaje simple y fácil de aprender.

Así que ahora que sabes qué es Python y cómo funciona este lenguaje de programación, es hora de profundizar y aprender a desarrollar tus propios códigos. Aprovecha los consejos de los cursos en línea y de los libros para capacitarte y ¡comienza ya a programar!

Preguntas frecuentes

¿Qué es Python?

Python es un lenguaje de programación simple y multiplataforma que se utiliza para desarrollar aplicaciones en varias áreas, como la programación web, la ciencia de datos y la inteligencia artificial. Muchos desarrolladores lo consideran el mejor lenguaje de programación y miles de empresas lo utilizan, ya sean pequeñas o grandes.

¿Qué puede hacerse en Python?

Python sirve para construir una infinidad de aplicaciones. Puedes desarrollar sitios web, scripts y complementos para programas web, programas de escritorio o móviles, software de ciencia de datos, aplicaciones de inteligencia artificial, juegos y gráficos 3D, entre otras posibilidades.

¿Cuál Python es mejor?

Python ya ha tenido tres versiones. Siempre se debe dar preferencia a la versión más reciente (actualmente la 3.8.5), que ha mejorado y corregido los errores de las versiones anteriores. Pero todavía hay muchas aplicaciones desarrolladas en la versión 2.0, que no son compatibles con la 3.0 y pueden requerir que el programador sepa cómo trabajar con ella.

¿Python es difícil?

Python es probablemente el lenguaje de programación con la curva de aprendizaje más baja. Caracterizado por la lógica y la simplicidad, siempre busca facilitar el trabajo del programador.

¿Por qué aprender Python?

Python es uno de los lenguajes más utilizados por las empresas hoy en día, lo que abre las puertas a los programadores en el mercado laboral. También se aplica a tecnologías avanzadas como la IA y la ciencia de datos, lo que le vislumbra un futuro promisorio. De hecho, es fácil de aprender, aunque no sepas nada de programación.

¿Dónde puedo aprender sobre Python?

Una de las mejores maneras de aprender programación es tomar cursos de corta duración. Puedes encontrar buenas opciones en Hotmart, Udacity y Udemy.

Renan França
I am a journalist responsible for SEO and Content strategies at Classpert. I usually write about entrepreneurship, marketing, SEO, programming and e-learning platforms.