El frontend es fácil... hasta que realmente construyes algo
La gente piensa que el desarrollo frontend es fácil.
Dicen cosas como:
- Es solo una pantalla.
- El backend hace el trabajo real.
- La IA puede construir eso.
- Solo usa una biblioteca de componentes.
- Es solo una casilla de verificación.
Todo desarrollador frontend sabe cómo terminan estas historias. Una simple casilla de verificación puede arruinarte la semana entera.
Aprendí esto por las malas en mi último trabajo. Construimos una plataforma para una firma de auditoría. Una Project Manager pidió una casilla de verificación en un dashboard. Dijo que tardaría dos horas. Incluso me dio un día entero para probarla.
Pensé que estaba siendo generosa. Me equivoqué.
La casilla de verificación no era un simple elemento de la interfaz de usuario. Tenía reglas estrictas:
- Solo aparece para tipos de clientes específicos.
- Solo se muestra si el proyecto alcanza un umbral de ingresos.
- Solo aparece si el proyecto está activo.
- Solo se muestra si el consultor es el dueño del proyecto.
Luego la lógica creció. Marcar la casilla activaba una solicitud. Esa solicitud necesitaba la aprobación de un gerente. Esto requirió:
- Nuevos endpoints de API.
- Flujos de trabajo de aprobación complejos.
- Manejo de errores y estados de carga.
- Nuevos sistemas de notificación.
Empeoró. Los gerentes no querían que las solicitudes se quedaran inactivas. La casilla de verificación debía ocultarse si el gerente no estaba conectado. Tuvimos que implementar un seguimiento de presencia en tiempo real.
De repente, estábamos gestionando:
- Modelos de base de datos.
- Conexiones de socket.
- Sincronización de datos en tiempo real.
- Condiciones de carrera.
Pasamos treinta horas en una sola casilla de verificación.
No pasamos treinta horas dibujando una casilla. Pasamos treinta horas traduciendo reglas de negocio a código.
La complejidad del frontend proviene de los requisitos humanos. Debes resolver para:
- Usuarios sin conexión.
- Clics simultáneos.
- Cambios de permisos.
- Respuestas de API lentas.
- Sockets desconectados.
Las bibliotecas de componentes como ShadCN son geniales. La IA es útil para los diseños. Pero no resuelven problemas de negocio. Una biblioteca te da una casilla de verificación. No te dice quién la ve ni cómo fluye la aprobación.
La parte difícil no son los píxeles. La parte difícil es entender qué significa la casilla.
El frontend consiste en traducir el caos humano en algo en lo que la gente pueda hacer clic. El mejor trabajo parece fácil porque alguien pasó días haciendo que se sienta simple.
¿Cuál es tu historia de la "casilla de verificación simple"?
Fuente: https://dev.to/mdazlaanzubair/frontend-is-easy-until-you-actually-build-something-20fb
