Si bien uno podría discutir con métricas específicas (es decir, ¿han mejorado las cosas por un factor de 9.98?), Yo (hablando como algo antiguo) tengo que estar de acuerdo con el sentimiento general del comentario de Brooks.
En primer lugar, se ha inventado muy poca tecnología verdaderamente nueva desde quizás 1970. Sí, los circuitos integrados se han vuelto más largos, más bajos, más anchos, y la fibra de vidrio ha mejorado las velocidades de comunicación, pero por cada paso adelante hay uno atrás.
La tecnología del compilador ha permitido una mejora de aproximadamente 10 veces en la "productividad" del programador frente a 1970, cuando se calcula que la función se produce dividida por el tiempo de codificación real, pero la proliferación de lenguajes y entornos de programación nuevos o "revisados" significa que el programador promedio gasta más y más tiempo en modo "ponerse al día" y menos en actividad productiva. Apple, Google y Microsoft arrojan "actualizaciones" nuevas y sustancialmente incompatibles a sus entornos a un ritmo justo por debajo del que provocaría una revuelta entre sus servidores ... er, programando clientes. Del mismo modo, HTML / CSS / Javascript / lo que sea se vuelve más complejo.
Hubo un tiempo en que la velocidad a la que se podía producir y propagar la documentación habría limitado y acorralado toda esta "innovación", pero, gracias a Internet, la documentación rigurosa ya no es realmente necesaria: simplemente expulse las funciones y confíe en los bloggers para descubra los detalles y póngalos a disposición.
Agregado: He estado pensando en esto desde ayer, y en particular pensando en el proyecto en el que trabajé desde 1978 hasta 2008. Este proyecto (el Sistema IBM / 38 y sus sucesores) fue algo único ya que desde el principio los esfuerzos fueron hecho para controlar la complejidad del mismo (uno es la división del software en dos partes más o menos iguales, con una interfaz de "máquina" entre ellos). En el área particular donde trabajé, varios de mis compañeros de trabajo se dedicaron de manera similar a controlar la complejidad (aunque en ese momento no usamos mucho ese término). El resultado fue un producto que (al principio) era bastante robusto y un "éxito" con los clientes prácticamente desde el principio. Y fue un placer trabajar en él, como tocar en una orquesta bien entrenada.
Por supuesto, a lo largo de los años, la complejidad se deslizó, generalmente a instancias de los planificadores y gerentes de mercado que no apreciaban el control de la complejidad (que de alguna manera es diferente de simplemente mantener la simplicidad). No tengo la sensación de que esto fuera inevitable, pero era imposible de evitar en este caso sin un gerente (como Glenn Henry hizo originalmente) que rechaza las fuerzas de la confusión.