Con frecuencia leo a los desarrolladores de back-end que dicen que el desarrollo de front-end es un desastre. ¿Qué quieren decir con eso exactamente?

Te diré lo que quiero decir con eso. Antes de continuar, quiero señalar que el back-end también puede convertirse en un desastre. Es perfectamente posible, solo depende de la experiencia de los desarrolladores. Muy a menudo el lado del cliente se realiza en javascript. Y javascript también definitivamente permite estructurar el código como el uso de prototipos, módulos, módulos reveladores, patrones prototipos reveladores. Pero a menudo porque es muy fácil comenzar con los programadores js no saben cómo usar y aplicar ningún patrón para hacer que el código funcione. Simplemente hacen algún tipo de espagueti. Y cuando llega el momento de mantener su código, los desarrolladores junior que crearon un código ya crecen lo suficiente como para trabajar para otra compañía y no repetir su enfoque no estructural. Y los desarrolladores de back-end que tienen un umbral de entrada más alto pueden ir y arreglar el lado del cliente. Y, por supuesto, se sorprenden.

En la parte frontal, el desarrollador sabe muy poco sobre lo que sucederá con su software cuando se ejecute. No puede asumir que las funciones que está utilizando funcionarán, o si las soluciones que escribió seguirán funcionando en unos pocos años.

El back-end es un entorno mucho más controlado y las cosas cambian con menos rapidez. El desarrollador tiene más control y las cosas son más predecibles. Eso significa que las cosas son menos problemáticas en general.

La naturaleza del desarrollo front-end es a veces un desastre. Necesitamos muchas soluciones para diferentes tipos de navegador. Algunos códigos / propiedades de uso común son hacks que originalmente no están diseñados, por ejemplo. flota en css para hacer una columna.

El backend está mucho más estandarizado y es una plataforma estable para desarrollar en comparación con el front-end.