Más que programar mal como dice #1 tenemos que tener en cuanta la gran cantidad de capas que se han ido agregando al mundo de la programación o sistemas operativos. En los 90 tenías el DOS y BASIC, ahora tienes el Windows , con todo lo que el solo necesita y luego para programar las herramientas necesarias visual studio, todas las librerías, etc, etc. Más todo la complejidad de cominicackonws, bases de datos, seguridad...