En el entorno del desarrollo Web, es común hacer un primer intento de categorización entre aquellos que se especializan en la interacción directa de la aplicación con el usuario – frontend – y los que se dedican al funcionamiento interno de la misma – backend. Por ello, haremos una pequeña comparativa entre ambos, frontend vs backend.
A menudo estos curiosos personajes caen en una trampa de ego, capitalizada en frases como las siguientes: «Ser frontend es muy fácil»; o por el otro lado: «los backend solo hacen copy paste».
Ya sea que te encuentras en la industria y te ha dado curiosidad saber la perspectiva desde otro lado o deseas ingresar al medio y elegir un bando en esta insensata guerra santa, aquí podrás descubrir algunas respuestas.
Perspectiva foránea
Por ello, empezaremos con un panorama neutro para ambos lados, visto desde fuera de la industria tecnológica.

La mayoría de los aspirantes a programadores recurren a boot-camps , cursos cortos e intensivos, para capacitarse y así obtener su primer trabajo en TI. Es curioso como la mayoría de estos cursos han hecho un acuerdo tácito en que la mejor opción es optar por entrenarlos en el desarrollo frontend. ¿A qué se debe esto?
Frontend es la manera más directa para convertir a un no programador en un programador contratable.
Las razones son perfectamente identificables.
Primeros pasos
La siguiente gráfica ayudará a comprender mejor otro de los puntos importantes: el momento en que vemos resultados.
Frontend tiene la particularidad de pasar de no saber nada de código a tener algo funcionando en cuestión de unas líneas en el editor de texto. Mi primera página web fue algo así, utilizando solamente el bloc de notas e Internet Explorer.
“Wow” – pensé – “Ahora que realmente funciona, el resto es agregar estilos con algo llamado CSS y luego cambiar el ícono de mi cursor para dejar una llamativa estela de brillo con Javascript. No puede ser tan difícil”. Eso hasta intentar ponerse al día con los frameworks actualizándose al menos una vez cada semestre.
Para los desarrolladores backend, la historia tiende a ser diferente. Se requiere un mayor esfuerzo para llegar al punto de realmente funciona.
Desplegar un aplicación en backend puede involucrar al menos una de las siguientes tareas:
Y la lista puede continuar…
El punto es, para pasar de 0 a 1 en un aplicación backend se requiere entender una mayor cantidad de partes móviles. El alambrado entre estas hasta el punto de poder procesar finalmente la primera petición resulta en un cantidad de esfuerzo considerable, justo el de comprender mínimamente una pila tecnológica antes de que corra.
Y una vez más, obtenido el realmente funciona, se ha completado la parte complicada. Solo falta agregar un poco de lógica de negocio y la aplicación está terminada (palabras muy burdas, pero la idea general es ésta).
¡Qué fácil!
Es ahora cuando los desarrolladores backend quieren crear una interfaz de usuario sencilla para su aplicación; toman un poco de HTML, CSS y Jquery o cualquier otra biblioteca y proceden a mostrar su “Hola Mundo” pensando:
“¡Qué fácil! Solo necesito un par páginas más para terminar la aplicación. Ser frontend es sencillo después de todo”. Esa sentencia, por supuesto, es un gran error de perspectiva. Prácticamente, el mismo descuido que ocurre al enunciar que un backend solo crea uno que otro servicio REST de bolsillo usando un framework que hace todo el trabajo.
Frontend
Backend
No sería de extrañar que unos días después de desplegar ambas aplicaciones anteriores surgieran algunos desperfectos mientras se desarrollaban nuevas características.
Esto por la sencilla razón de ambas no eran escalables a un sitio web óptimo, rico y dinámico.
Para convertir una aplicación web principiante a una aplicación web real, esos desarrolladores tendrán que aprender una nueva pila y las buenas prácticas relacionadas a ella.
¿Es necesario hacer esto para correr un simple sitio web? Para nada.
¿Es mandatorio para construir una aplicación terminada y pulida que no nos avergüéncenos a nosotros mismo? Absolutamente.

Aprender todas esas tecnologías es el inicio de una larga travesía: una vez que un desarrollador ha invertido semanas o meses entendiendo realmente la interacción entre React con una REST API o buscado mensajes perdidos en una cola con diferentes usos horarios de por medio, jamás hablara de manera condescendiente a un desarrollador que haya pasado por lo mismo.
Decisión final
A priori, frontend parece ser nuestra respuesta a la pregunta inicial. Sin embargo, es tan complicado como el backend luego de sumergirte en él y puedes darte una idea de ambas rutas en el siguiente artículo.
Si lo anterior no te convenció para nada, prueba con un lente orientado a mejora; si lo tuyo es medir desempeño a partir de un consenso, frontend gana el oro. No es completamente correcto decir que el botón que acabas de cambiar de color y movido unos pixeles es mejor que el anterior solo porque tú – una minoría – lo percibes así.
Por otro lado, si te interesa más el rigor de las ciencias exactas, backend es más sencillo. Ninguna democracia podrá contradecir las cifras de rendimiento mostrando que la nueva versión es un 7% más óptima en uso de CPU y memoria.
Y tú, ¿cuál crees que es más fácil?
Deja tu comentario