No empecé con un "hola mundo". Empecé con un piano porque quería algo que se viera y se oyera. Un reto real. Si funcionaba, iba a entender de verdad cómo se arma una cosa de estas. Y si no, al menos iba a fallar en algo que me importaba.
El orden me enseñó más que el resultado
Lo armé en una tarde, y cuando reviso cómo lo hice, el orden cuenta la historia. Primero el mapa de teclas (qué letra del teclado es qué nota). Luego los controles. Después el piano en tres dimensiones. Y al final el sonido y el motor que une todo. No lo planeé así. Salió así. Primero lo más simple que podía ver funcionando, y de ahí para arriba.
Esa fue la primera lección: construir no es escribir todo de golpe. Es hacer que algo chiquito funcione, verlo en pantalla, y construir encima. Cada pieza tenía que existir antes de poder unirlas.
El 3D me dio respeto
Nunca había hecho gráficos en el navegador. Resulta que con la librería correcta puedes dibujar un teclado, ponerle luces y hacer que caigan notas desde el fondo, como en Guitar Hero. La primera vez que vi el piano girar en pantalla, se sintió como magia.
Lo más difícil fue el tiempo
No fue lo visual. Fue el tiempo. Un piano que no está sincronizado es injugable. Si tocas la nota correcta pero llegas 200 milésimas tarde, el sistema lo marca como error. Y eso duele. Pero ahí está justo lo que enseña a tocar a tiempo. Calibrar esa ventana (la dejé en 150 milésimas) fue de las cosas que más toqueteé.
Tiene dos modos. En uno tocas libre mientras suena la canción. En el otro, el de aprendizaje, la música se detiene hasta que presionas el acorde completo. No avanza hasta que lo haces bien. Ese modo fue el que me hizo sentir que había construido algo útil, no solo bonito.
Qué me llevé
El flujo de producción dejó de ser un misterio. No es talento de genio. Es método: empieza por lo mínimo que funciona, pruébalo, y crece. Lo demás es repetir eso muchas veces.
Sigue vivo en piano.danielazpe.com. Diecisiete teclas, diez canciones, y mi primer "ah, así se hace".
