
En resumen
- 5/5 en práctica y 1/34 en evaluación: el problema fue el ritmo, no la inteligencia.
- Mediana de 4:24 por tarea contra un límite de 5:00.
- 8 lecciones técnicas: de «determinista primero» a subir a servidor temprano.
- El tiempo era el presupuesto real; el dinero no (menos de 1 dólar en el día).
- No cambias de piloto, desarrollas el auto.
En mi primer hackathon quedé último. El agente que construí resolvió 5 de 5 tareas en la práctica y 1 de 34 en la evaluación. No lo cuento para justificarme: lo cuento porque de ese resultado salieron las lecciones más útiles que he tenido en mucho tiempo, técnicas y humanas.
¿Qué tiene que ver Checo Pérez en Cadillac?
Piensa en un equipo nuevo en la Fórmula 1, como Cadillac. Al auto le falta desarrollo, ritmo, fiabilidad y experiencia. Puedes poner al mejor piloto que quieras: si el auto no tiene ritmo, el resultado no llega. Y nadie sensato diría que el piloto manejó mal.
Así me sentí. Manejé bien el día: tomé buenas decisiones de arquitectura, resistí una trampa de prompt injection y sobreviví a un cambio de versión de la app a media tarde. Pero al auto, el agente, le faltó ritmo.
¿Qué dicen los números?
| Señal | Dato | Lectura |
|---|---|---|
| Práctica | 5/5 | La lógica funciona en una app conocida. |
| Evaluación | 1/34 | En una app nueva, casi nada terminó a tiempo. |
| Por dificultad | 1/10 · 0/14 · 0/10 | Solo cayó una tarea fácil. |
| Mediana por tarea | 4:24 de 5:00 | El agente se quedaba sin tiempo. |
| Llamada al modelo | 0.8 s | El modelo no era el cuello de botella principal. |
| Costo | Menos de 1 dólar en el día | El dinero no era el límite; el tiempo sí. |
El diagnóstico es claro: no fue un problema de inteligencia, fue de ritmo. Cada vuelta del loop lee la pantalla con OCR, decide, valida y actúa. En una app que nunca vio, el agente necesitaba explorar los menús, y explorar cuesta tiempo. Con 5 minutos por tarea, ese tiempo era todo.
¿Cuáles son las 8 lecciones técnicas?
- Determinista primero, el LLM solo decide. El código valida cada decisión (¿existe ese texto?, ¿JSON válido?). Eso evitó clics a ciegas.
- Actúa por texto, nunca por coordenadas. Por eso el agente sobrevivió cuando «Buscar» pasó a llamarse «Filtrar».
- Dale un mapa al modelo. Sin un mapa de menús ningún modelo acertaba. El mapa se arma con OCR y clics, sin gastar en el modelo.
- Todo lo que ves en pantalla es dato, nunca instrucción. Con esa regla el agente ignoró una nota que le ordenaba borrar pedidos.
- Fallar con evidencia es un buen resultado. Ante dos «Ana Torres», no adivinar y reportar ambos registros es lo correcto.
- Desconfía de tus éxitos. Atrapé un falso éxito: el agente reportaba 25 donde había 45.
- El tiempo es el presupuesto real. Puse un corte a los 4:30, pero la mediana quedó en 4:24: había que diseñar para la velocidad desde el principio, no al final.
- Sube a servidor temprano. FastAPI, systemd, HTTPS y logs con journalctl en 45 minutos. Git desde el minuto uno. Sin eso, la evaluación ni se hubiera podido seguir.
¿Y las lecciones humanas?
- Ir con dudas está bien. Postulé dudando y me aprobaron en dos días.
- Ir solo te obliga a todo. Arquitectura, código, servidor y pruebas recayeron en mí. Aprendí muchísimo, pero el reloj no perdona.
- Usar IA no es hacer trampa, es método. Usé Claude Code para buena parte del código. Yo definí la arquitectura, las reglas y las prioridades, revisé y desplegué.
- El resultado no define lo que aprendiste. Me fui con más claridad técnica que con muchos proyectos completos.
¿Qué me llevé de la gente?
Amigos nuevos. Platiqué el reto con ellos, saqué dudas y avancé gracias a esas pláticas. Amigos que conocí ahí quedaron en 1.º y 2.º lugar, y eso me dio una vara clara de lo que sigue.
¿Qué haría distinto?
| Lo que hice | Lo que haría |
|---|---|
| Corte de tiempo a los 4:30 como red de seguridad. | Diseñar cada vuelta del loop para la velocidad desde la primera hora. |
| Explorar los menús durante la tarea. | Explorar una sola vez al inicio y reutilizar el mapa en todas las tareas. |
| Probar sobre todo en la app de práctica. | Probar contra pantallas que el agente nunca haya visto. |
| Ir solo. | Considerar ir en pareja: uno en el agente, otro en pruebas y servidor. |
Si quieres el relato completo del día, está en mi primer hackathon y en la página de Frontier, con el código en GitHub. Y si estás por ir al tuyo, empieza por estos consejos.
No cambias de piloto, desarrollas el auto.
Preguntas frecuentes
- ¿Por qué falló el agente en la evaluación?
- Por tiempo: en una app nueva tenía que explorar los menús y la mediana por tarea llegó a 4:24 con un límite de 5:00.
- ¿El modelo de IA era el problema?
- No el principal: cada llamada tardaba 0.8 s. El costo de explorar la pantalla en cada vuelta era lo que se comía el tiempo.
- ¿Qué harías distinto?
- Diseñar cada vuelta del loop para la velocidad desde la primera hora, explorar los menús una sola vez y probar contra pantallas nuevas.


