El 9 de enero del 2020 me inscribí en un curso de programación que ofrecía el MIT vía online. El curso se llama 6.00.1x y requirió de 16 horas a la semana por esos dos meses. Mis objetivo en un inicio era aprender las bases de la programación ya que me parecía un mundo realmente interesante. Dentro de los aspectos CAS que este curso tuvo, sobresale la creatividad, ya que como expondré pronto, la creatividad requerida para poder realizar los programas era mucha. Dentro de la planificación que hizo para poder realizar el curso tuve que hacer un horario en el que le dedique dos horas al día al curso, de esta manera me daba tiempo de ver las clases, estudiarlas y luego realizar las tareas.
La primera clase se llama "Python Basics", en esta lección se daba una breve introducción de como funcionaban las computadoras y de como hacer programas simples. La tarea era hacer un programa que devolviera la lista mas larga de letras en orden alfabético que hubieran. Me costo bastante hacer el programa pero quedo asi:

Este programa me lleno de alegría y sentí como esto de la computación me estaba retando.
Para la siguiente unidad aprendí a hacer uso de algunos algoritmos básicos, en concreto el exhaustive search y el binary search. Esto se implemento luego para hacer un programa que calculara los gastos de un préstamo, lo podemos observar aquí:
En la tercera clase se enseño como utilizar nuevas maneras de almacenar la información, en concreto las listas y los diccionarios, esto me pareció sumamente interesante por que luego se hace un uso de esto para optimizar un programa. El programa que tenia de la serie de Fibonacci pasa de durar horas a segundos utilizando un método con diccionarios que se llama meoization.
Los temas hasta este punto fueron los que entraron en el examen parcial del curso. En este examen logre obtener un 92.
La siguiente unidad se llamaba "Good Programming Practices" y como lo dice el nombre, hablaba de como tener buenas practicas a la hora de programar. Explicaba como todo buen programador debe de procurar tener programas modulares y ademas explicaba cuales practicas hacían que fuera mas fácil para otros entender el código que uno escribía.
La siguiente clase se llamaba "Object Oriented Programming". Esta clase sinceramente se me complico bastante y tuve que dedicarle muchas horas, pero valió la pena. La idea de la programación orientada a objetos me pareció brillante y implementarla fue muy divertido. El programa final era un desencriptador, pero el código supera las 200 lineas por lo que no lo incluiré aquí.
La siguiente unidad era "Algorithmic Complexity", en esta unidad se explicaba lo que era la "Big OH notation" que es un método matemático que se usa para determinar que tan complicado es un algoritmo según aumenta la variable. Esta unidad me encanto ya que en esta pude entender lo importante que era la mate en la programación. En estas graficas se pueden observar los distintos tipos de dificultades que pueden tener los algoritmos.
La ultima unidad se llamaba plotting, en esta aprendí a hacer gráficos sencillos en python. Fue sumamente interesante ver como el código se podía convertir en algo visual.
Al final con mucho esfuerzo pude obtener un 97 en el curso, y obtener el titulo.
Dentro de los grupos de aprendizaje CAS el grupo 2 es en el que mas se progreso, ya que los desafíos fueron muchos. Dedicar 16 horas a la semana teniendo BI y ademas estudiar para los exámenes del curso fue muy complicado y muchas veces pensé en dejarlo, sin embargo valió la pena y aprendí mucho de la experiencia.
Esto lleva por lo tanto a el grupo de aprendizaje 5, ya que tuve que estar comprometido con el proyecto y no dejarlo. Cosa que naturalmente costo mucho.
Dentro de las cosas que aprendí con este proyecto considero que hay dos que vale la pena mencionar, la primera de ellas es lo mucho que me gusto la programación. Al punto que he decidido estudiar ingeniería en computadores en la universidad. Por otra parte aprendí el bien que se puede hacer a la sociedad junto a la programación. A lo largo del curso se hicieron programas de finanzas personales, como por ejemplo el de los prestamos o uno que se hizo de cuanto había que ahorrar al mes para tener un fondo que fuera suficiente para vivir la vejez. En definitiva, fue de suma ayuda, un curso que valió mucho la pena.
Comentarios
Publicar un comentario