← Volver

To do list:
desafíos para el día de mañana

Acá hay unos cuantos desafíos informáticos que todavía no fueron resueltos (al menos no en esta página). La idea es que te inspiren a hacer algo. Puede que quieras hacer exactamente lo que dice el enunciado, o que se te ocurra hacer otra cosa completamente distinta. Ta perfecto.

Lo mismo sucede con los lenguajes indicados: simplemente están a modo de sugerencia. Vos podés elegir el que más te guste, o el que te parezca más adecuado para cada desafío.

Ah, eso sí: la idea es que los hagas sin usar IA, porque la onda es aprender a programar.

Y no te bajonees si te lleva mucho tiempo: algunos de estos problemas quizás pueden resolverse en menos de una hora, pero otros capaz que requieren, como mínimo, algunas semanas. Ni idea.

Espero que alguno te cope :)

Usando Pascal:

Usando la librería p5.js:

Usando el lenguaje que a vos se te ocurra:

Pero, ¿por qué haría algo de esto, si seguramente ya existe?

Yep: es altamente probable que al menos una docena de chinos ya hayan resuelto estos problemas de la mejor manera posible; y quizás ChatGPT pueda resolverlos en —literalmente— menos de cinco minutos. Pero hay dos razones fundamentales por las cuales eso no tiene importancia.

Razón N° 1: porque si estás empezando a programar, creo que realizar este tipo de ejercicios es una de las mejores maneras de aprender. Por un lado, porque estás haciendo algo que vos mismo elegiste (y cuando uno hace eso por lo general le pone más ganas), y por otro lado, porque no son problemas que ya estén "cocinados": no hay una receta para resolver rápidamente el asunto copiando y pegando código. En muchos casos, para llegar a la solución vas a tener que pasar por varias etapas, tipo: definir bien el problema; hacer un boceto; empezar a escribir el programa; buscar documentación; probar el programa; corregirlo; y, finalmente, si se alinean los planetas y lo que escribiste funciona, ponerte a cantar We Are the Champions a todo volumen. Y en todo ese proceso uno realmente aprende un montón, no solo a programar, sino también a pensar analíticamente y a investigar.

Razón N° 2: porque te estarías perdiendo toda la diversión.

Así que, si tenés tiempo, te recomiendo mucho muchísimo que te enfrentes a este tipo de desafíos. No solo a los que aparecen en esta página, sino también a los que a vos se te ocurran.

Y si querés compartir algo de lo que hiciste (ya sea la solución a algún desafío anteriormente presentado, o plantear uno nuevo) te invito a que revises el README que está en el repositorio de MUCHO CÓDIGO, o que directamente me escribas a matuchitofg@gmail.com.

Sea como fuere, suerte con eso ;)