Para comenzar….
No importa el tipo de profesión que vayamos a elegir, sea técnica o humanística, cada vez más y con mayor frecuencia la utilización efectiva de las TIC requiere cierta organización del pensamiento, una manera metódica de ejecutar las acciones que nos lleven a la solución de un problema. Es muy común que necesitemos resolver un mismo problema muchas veces y constantemente estamos ejecutando acciones que: requieren unos supuestos de partida, seguidos por algunas transformaciones de esos supuestos, luego es posible que tomemos algunas decisiones que nos lleven a transformar más aún la información con la cual partimos. Esa forma sistemática de pensar que se traduce en una concatenación de acciones, siguiendo un conjunto de reglas predefinidas y ejecutadas un número finito de veces lo llamaremos pensamiento algorítmico. Algorítmo es un vocablo que hemos heredado del griego y el latín, pero que parece se remonta a la Persia antigua, haciendo honor a uno de sus más ilustres matemáticos Al-Juarismi, quien además se le considera el padre del Algebra.
La solución algorítmica de problemas se ejecuta con la utilización de 3 estructuras[1] que todos los lenguajes implementan, a saber
- Secuencia
- Decisión
- Iteración
Los diagramas de flujos y las instrucciones llamadas de pseudocódigo implementan de manera natural estas estructuras y nos ayudan a resolver algorítmicamente los problemas. Igualmente, todos los lenguajes de programación disponen de estas estructuras y, conjuntamente con una representación de los datos constituyen la base de toda la programación de sistemas[2].
Python [3] es un lenguaje de programación de alto nivel, interpretado, multiparadigma y de propósito general, en el cual se pone especial énfasis en la simplicidad de la programación y en la rápida implementación. Como es interpretado puede utilizarse como una calculadora que procesa, de forma inmediada, una gran variedad de instrucciones. Como pertenece al conjunto de lenguajes orientados a objetos, permite fácil reutilización de módulos previamente desarrollados, por ello se caracteriza por su facilidad de uso y una rápida curva de aprendizaje, lo que lo hace ideal para su incorporación como primer lenguaje de programación. Su orientación a objeto y robustez para realizar cálculos hará que las destrezas aprendidas acompañen al alumno en una gran parte de su carrera profesional. Python ha sido adoptado por organizaciones mundiales de primer nivel, como Yahoo, Google, NASA, NWS y el CERN, además de una enorme y activa comunidad de usuarios en todo el mundo que garantiza la existencia de una extensa base de ayuda en línea.
Referencias
[1] Böhm, Corrado, y Giuseppe Jacopini. “Flow diagrams, turing machines and languages with only two formation rules.” Communications of the ACM 9.5 (1966): 366-371.
[2] Wirth, Niklaus. Algorithms+ data structures= programs. Prentice Hall PTR, 1978.
[3] Duque, Raúl González. “Python para todos.” (2011).
¿Qué buscamos?
Al finalizar esta unidad el lector podrá ser capaz de:
- Instalar y confiburar una máquina virtual con sistema operativo LINUX
- Resolver algorítmicamente problemas sencillos de la vida cotidiana
- Entender códigos simples escritos en Python
- Escribir códigos simples en Python
¿Qué leer y escuchar en la red?
Existen muchos tutoriales que pueden ser encontrados en la red, entre los que recomendamos están
- La organización Python Argentina
- La utilización de Python en Ciencias
¿Qué hacer?
Este módulo requiere un poco más del trabajo habitual. Estas son algunas de las tareas que consideramos indispensables:
- Escribir una receta de cocina en pseudocódigo. Hay muchas en internet que puede utilizar como modelo, también puede repasar las notas de programación que hicimos y hacer la receta del arroz con leche
- Descargar y configurar la máquina virtual LINUX, para ello puede seguir nuestra receta paso a paso
- Repetir las primeras instrucciones en Python que aparecen en las notas de programación
¿Necesita recursos adicionales?
Para realizar las actividades propuestas el lector necesitará descargar y configurar una máquina virtual LINUX, para esto puede seguir nuestra receta paso a paso
¿Qué dedicación requiere este módulo?
Como el resto de los módulos de este cursillo, completar las actividades puede requerir entre 4 y 6 horas de dedicación, la mitad de las cuales son trabajo independiente previo a la discusión en el taller de 2h acompañados por los instructores.
Agradecemos
La realización de este módulo ha sido posible gracias al financiamiento del Fondo Regional para la Innovación Digital en América Latina y el Caribe, FRIDA y la Vicerrectoría de Investigación y Extensión de la Universidad Industrial de Santander.