De un ban a los seis años a un servidor colapsado: la saga de Franco
Franco tiene 16 años y aprendió todo solo. Cuando le pregunté cómo empezó, salió una cadena donde cada eslabón nace de un problema personal muy concreto, y donde el concepto técnico siempre llega después.
Es la mejor historia de aprendizaje autodidacta que he escuchado.
1. El ban
Tuvo computadora desde los tres años, y aprendió a leer y escribir muy temprano, pero demasiado temprano, lo que le permitió manejarse mejor con ella.
Alrededor de los seis años, en pleno auge de Club Penguin, lo banearon.
Yo estaba tratando de... bueno, en esa época no sabía que se llamaba así, ¿te suena el brute force, el ataque de fuerza bruta? El servidor FTP de Club Penguin: quería subir un index con mi personaje rankeado a lo más top.
Se ve que salió mal, notaron algo raro, me banearon. Pero definitivo. Encima era miembro. Todo un desastre.
Fíjate en el orden: primero hizo un ataque de fuerza bruta, después supo que eso tenía nombre.
2. Hamster Society, en PowerPoint
Baneado y con un hámster en casa, se le ocurrió lo obvio. El creador de Club Penguin era fanático de los pingüinos; él era fanático de los hámsters.
Quise hacer algo que se llamaba Hamster Society. Era para mis amigos y yo, una especie de mundo abierto similar a Club Penguin. Con el tiempo derivó a un juego de rol con hámsters, que era una cosa muy rara.
Y el detalle que lo vuelve entrañable: lo programó en PowerPoint.
No sabía de los motores de videojuegos. Usaba PowerPoint. El personaje lo podías mover a ciertos puntos, pero después me aburrió.
3. Visual Basic escondido adentro
Después me di cuenta de que PowerPoint tenía una configuración avanzada que te permitía usar funciones de Basic.
Con eso pudo mover al personaje a cualquier punto de la pantalla —que para mí era un avance, una locura— y agregarle inventario.
Pero quedaba el problema que originó todo:
Todavía faltaba el hecho de cruzarme con mis amigos. Jugábamos y simulábamos que íbamos a los mismos lugares, pero nunca nos cruzábamos, porque era PowerPoint.
Esa imagen —niños jugando en paralelo, fingiendo estar juntos— es lo más triste y lo más motivador de toda la historia.
4. SmartFox Server: por fin
Alrededor de los siete años descubrió SmartFox Server.
Ahí ya pude programar algo más. Igual, obviamente, siempre viendo tutoriales o leyendo libros, porque no tenía base de nada.
El juego usaba sprites que en realidad eran estáticos moviéndose por la pantalla. No importaba:
Ahí sí podía hablar con mis amigos. Ya era lo que quería.
Cuatro años de trabajo para conseguir exactamente lo que buscaba desde el principio.
5. El servidor que colapsó
Y aquí viene el eslabón que cambió su carrera.
El servidor decía "0 de 4" por defecto. Siempre se conectaban los mismos cuatro.
Un día fui a la escuela y empecé a comentar que tenía un videojuego. Los profesores lo comentaron también, y se lo descargó mucha gente. O sea, 30 personas. Y se trataron de conectar y colapsó el servidor.
Yo no entendía por qué decía "0 de 4" y por qué colapsaba. Después me di cuenta de que los servidores tienen un límite que en realidad no es de personas: es tasa de bits, refrescos y demás cosas.
Y su diagnóstico, con toda la inocencia del caso:
Fue básicamente una negación de servicio. Fue una especie de ataque, pero no fue intencionado por parte de mis amigos: no tenían ni idea, y yo menos.
Ahí me empecé a informar más de servidores, redes, y me basé más en seguridad informática.
6. La base de datos de su mamá
Un ramal aparte, del mismo periodo. Al descubrir que Visual Basic no era sólo una opción de PowerPoint sino una aplicación aparte —Visual Studio— hizo algo útil:
Aproveché que mi mamá tenía una gestoría del automotor, que es donde hacés trámites de autos. Vi que tenía una carpeta, y se me ocurrió hacer como una base de datos.
En realidad guardaba los textos en un bloc de texto, pero en formato de aplicación. Eso fue lo primero que programé.
Lo que enseña esta cadena
Cinco saltos técnicos serios —FTP y fuerza bruta, scripting, arquitectura cliente-servidor, límites de red, persistencia de datos— y ninguno empezó por el concepto.
Cada uno empezó por algo que él quería y no podía: entrar al juego, moverme donde yo quiera, hablar con mis amigos, entender por qué se cayó, ordenarle los papeles a mi mamá.
El concepto llegó siempre después, y llegó con contexto, y por eso se le quedó.
Es exactamente al revés de como lo enseñan casi todas las escuelas. Y es, con enorme diferencia, más rápido.
Este texto sale del episodio 020 del Podcast Algoritmos, una conversación con Franco.