Nunca creí que iba a aprender a programar y que me iba a ir bien. Programación fue la materia que más miedo me generó antes de entrar a la facultad, y empecé a tomar apuntes del PDF de Processing en febrero. Lo que yo no sabía es que la materia asesina de sueños era taller, pero esa es otra historia.
Hay muchas cosas que aprendí gracias a mi profe y a amigos, y muchas gracias por eso. A continuación, seis pequeñas cosas que aprendí de la programación en esta abominación rosita de Landing page:
Uno: Empezarás con un hola mundo.
Por algún motivo el Hola Mundo! es lo primero que hacemos en el primer sketch, y probablemente ahí termine. Si es que no probamos escribir en la consola y flashear ser hackers.
Yo no hice un hola mundo -soy una vergüenza-. Lo primero que hice fue dibujar formas, hacer líneas, círculos y triángulos. Lo que más me hizo sufrir fue la curva bezier que usé en el primer trabajo de la materia anterior, y cuando el profesor dijo que la foto de referencia debía estar en el lado izquierdo del trabajo tuve que agregar width- hasta en los vértices, pero como al principio no sabía cuantos width- iba a necesitar para que el dibujo quede bien, un ojo me quedó en el aire, la nariz se me estiró, se me dislocó un hombro y se me rompió el cuello. Cuando vi eso pensé que iba a tener que hacer el dibujo de cero.
Al principio tampoco sabía que debíamos incluir la foto de referencia, y tuve que poner la foto que usé para entrar a la facultad, y la cual no me gustaba mucho, pero total nadie la iba a ver más que el profe, ¿él qué me iba a decir?
Al final el profe organiza una competencia por Discord y mostró muchos de los trabajos, incluído el mío.
Dos: No usarás ChatGPT para crear código.
Un buen programador no usa ChatGPT para crear código. Sí como herramienta, para ordenar el desastre de código que por algún motivo funciona, o para orientarnos en la explicación de algo de nuestro trabajo, siempre que sepamos de lo que estamos hablando, pero solo para ese tipo de cosas, no para hacer todo el trabajo.
Yo lo terminé usando para el tpfinalparte1 por dos motivos, uno era un problema con el texto de dos botones y no encontraba forma de centrarlo correctamente. Me dió veinte soluciones distintas y ninguna servía para mi trabajo, incluso terminaba desfigurando mis botones. Al final decidí dejarlo así que destrozar los botones con las soluciones de ChatGPT.
También lo usé cuando el sonido no se reproducía al hacer click y yo había cargado todo. Pensé que lo había arruinado todo, pero era que había puesto dos veces mp3 al final del nombre del archivo. Me sentí una estúpida a niveles estratosféricos, pero al menos no era un bug peor, fiesta en el obelisco, se entrega el trabajo.
Y por eso, ChatGPT no te tiene que hacer el trabajo, andá a saber qué hace. Además, vas a re contra desaprobar, más si sos de la comisión cinco, ahí te desaprueban cuatro veces antes de entregar el trabajo.
Tres: Encontrarás el bug, cueste lo que cueste.
Hacés veintiséis mil líneas de código, dieciocho pestañas, ocho arreglos, cuarenta y dos botones, creás Facebook, hackeás Chile y tenés UN error en la línea dieciséis que JUSTO está vacía. Revisás si falta un corchete, una llave, un punto y coma, una variable sin declarar, un reinicio de sistema, pero no ejecuta.
Ojo, está la posibilidad de que el error sí esté en alguna de esas cosas, pero por alguna razón aparecen otros seiscientos ochenta y nueve errores. Después comentás casi todo el código y sigue estando igual. Creaste un nuevo tipo de virus. Ahí te preguntás porqué.
Entre tantos problemas que aparecen, solucionás, aparecen, solucionás, aparecen, y así, entrás en otro de los ciclos for de la programación: no dormir.
Cuatro: No dormirás.
Pasarás mínimo una semana programando dentro de tu cueva mientras los ojos se te resecan y las ojeras se oscurecen, mientras se hace de noche y vuelve a ser de día. Si llegás a dormir, soñás con el código. Dejás de salir, peinarte y de bañarte. Buscarás ese error con tu alma, vas a aprender eso que dijo el profe, vas a hacer eso que hicieron en los ejemplos de la otra comisión, vas a buscar por Internet, en los PDF, a preguntarle hasta al titular. Como último recurso... robarás.
Cinco: Robarás código.
Un buen programador no usa ChatGPT para crear código, eso es malo, pero sí lo roba de otro programador, eso es bueno. Y quién sabe, ese código quizá ya fue robado, y antes también.
Tengo que admitir que lo hice cuando me sentía perdida con el return en el transcurso de IPMI y me entregué a Dios. Pero llegó un pobre compañero inocente a pasar todo su código sin errores en Discord y probé cómo podía funcionar su return con mi código. Al final quedó bien, desaprobé porque hice mal el ciclo for y no había hecho una función con parámetros, pero la función que retorna quedó bien.
Había hecho ocho ciclos for lineales en lugar de uno anidado, congelando todo el sistema Windows de una. No me imagino cómo habrá hecho el profe para ver ese desastre además de ver ese video.
La función con parámetros me parecía la cosa más difícil de hacer. Hubo una última clase antes de la entrega en la que el profe volvía a explicarlo, pero sucedió que me quedé hasta las cuatro o cinco de la mañana haciendo un trabajo práctico de taller. Me dormí justo cuando el profe estaba explicando cómo hacer la función con parámetros.
No me dormí simplemente, tenía la boca abierta, babeando la hoja de mis apuntes y con el pelo pegado en la cara.
Seis: Si el código anda, no se toca.
El código anda perfecto, solo faltan algunas cosas, le ponés eso que falta y arruinás tu vida. O puede ser que solo querías arreglar una cosa y arruinás tu vida otra vez, ambos casos los experimenté.
Para cuando hice el tpfinalparte1 con los botones y los textos, me sentí la Diosa de la programación, solo faltaban algunas imágenes que sí correspondieran con la escena, después faltaba el sonido y el trabajo ya estaría listo, funcionaba bastante bien. Solo no había muy buena comunicación con mi compañera.
Inicia el espacio para mandar al frente a mi compañera.
Quedamos en que ella iba a hacer el resto de los botones en el salón y que seguiríamos con lo demás juntas. Entre dejarle a ella conseguir las imágenes y continuar con parte del código pasó que varias imágenes las tuve que conseguir yo y lo que siguió del código no servía para nada. Habíamos perdido tiempo y para variar ella no tocó la computadora en el salón.
Para cuando ya tenía las imágenes, las agregué al archivo y empezó a tener problemas; las imágenes no correspondían con los textos y tuve que cambiar la numeración de las pantallas y además los botones no llevaban a las pantallas a las que debían llevar, peor, algunos no andaban. Entre tanto cambiar cosas el código se volvió un caos, pero milagrosa, mágica y maravillosamente empezó a funcionar correctamente.
Ahora había que arreglar eso. Separé unas cosas en otra pestaña y ya no andaba. En un momento de cansancio/tirar la computadora por la ventana recurrí a ChatGPT para que me lo ordenara. Quedó perfecto, de ahí lo separé en pestañas y después seguí con la tarea, final feliz.
Fin del espacio para mandar al frente a mi compañera.
Otra vez en la que mejor no hubiese tocado nada fue en el tercer trabajo de IPMI. Ahí tuve un problema con las elipses que quise solucionar de una forma fantástica, que a nadie se le hubiese ocurrido, ni al profe titular ni a ChatGPT, era tan buena que no se ejecutó y en la consola salió dead code.
Esto también me pasó en el segundo trabajo. No sé qué lenguaje de programación inventé dentro de Processing que la consola escribió dead code cuando quería cambiar la dirección de movimiento de un texto. Pero bueno, ese tipo de cosas no le pasan a cualquiera.