No estoy del todo de acuerdo con su declaración, por lo que lo separaré un poco.
Hay algunas cosas que están en juego hoy para un ingeniero de software moderno.
Corrección de errores por desbordamiento de pila (SO)
Este es el comportamiento de ver un problema en un archivo de registro, una API que no funciona de la manera esperada o simplemente algo funky. Lo buscas y encuentras que alguien tiene un problema similar resuelto haciendo algo en Stack Overflow. Hay un conjunto de desarrolladores que simplemente aplicarán sin entender.
Muchas respuestas SO realmente buenas están llenas de ejemplos, referencias y pueden servir como un buen tutorial. Mucha gente echa de menos la parte del tutorial. Como han sugerido otros comentaristas, hay un valor en la comprensión y no solo en la fijación. Necesitas arañar la superficie.
Si SO le da un gancho más rápido por el cual puede obtener esa comprensión, entonces agrega mucho valor. La ruta de clic que toma de la respuesta SO ayuda a mostrar la diferencia entre los ingenieros buenos y los promedio (o malos).
La solución es la integración
Vivimos en una era dorada de software, hemos pasado de tener muy pocas bibliotecas de software públicas a estar casi ahogadas en bibliotecas de software.
Esto realmente causa mucha discordia para muchos ingenieros. Un estribillo común que escucho es
” No quiero ser fontanero, quiero ser artista “.
La traducción es
“No quiero tomar software escrito por otra persona, conectarlo a otro software escrito por otra persona. Quiero escribir el código desde cero”.
Una vez más, ver el problema como ingeniero, no tener que escribir otra biblioteca de visualización significa que puede omitir la banalidad de escribir los componentes y centrarse en la expresión de la escritura, pegar y dar forma a la solución.
Por ejemplo, tenemos muchos componentes que conforman un cliente de correo basado en la web. Hay bibliotecas SSL, bibliotecas SMTP, bibliotecas javascript UI, etc. Para armar un cliente de correo “simple”, puede hacerlo con bastante facilidad. Hacer un gran cliente de correo realmente significa juntar estas bibliotecas de formas nuevas e innovadoras.
Claro que puede estar pegando cosas juntas (o “cortar y pegar” como plantea la pregunta), pero en realidad estás mucho más cerca del cliente y tienes un impacto directo en las interacciones B2B o B2C al no escribir todos los detalles y pernos
PERO … Esto lleva a algunos comportamientos interesantes …
Llegas a las limitaciones del software más rápido.
Como no lo estás escribiendo a medida, llegas a los límites más rápido. Esto ha provocado un gran aumento del número de paquetes “también” a medida que las empresas personalizan la solución.
Las cosas no encajan perfectamente
En realidad, esto hace que sea más difícil elegir la colección correcta de herramientas que resuelvan el problema de manera consistente w
Entonces terminamos con grupos de tecnologías
LAMP, MEAN, ELK, etc. son colecciones de tecnologías que ayudan a superar la falta de un ajuste limpio. Estos grupos evolucionarán con el tiempo y pueden superponerse.
Hay una mayor tendencia a reinventar
En las empresas que requieren absolutamente esta biblioteca no muy adecuada, terminas teniendo un valor comercial al inventar una nueva. Esto está claro por compañías como Google, Facebook y Twitter que crean y empujan nuevos marcos para ayudar a resolver sus problemas. Afortunadamente, a medida que crecen, acumulan usuarios de marcos fragmentados y se convierten en marcos comunes.
En última instancia, gran parte del espacio web es realmente una industria naciente que vuelve a crecer gracias a HTML5. No es solo cortar y pegar, sino que puede serlo si así lo desea, sino que se ocupará del costo de mantenimiento y limpieza del producto de no tener un buen ajuste para el código y soluciones mal entendidas para los errores.