Software basado en otro

El tercer nivel de daño ocurre en la interacción entre desarrolladores de software. Sabemos que cualquier campo del conocimiento avanza más rápido cuando la gente puede construir sobre el trabajo de otros. Ser dueño de la información impide exactamente eso: si alguien pudiera construir sobre el trabajo de otros, la propiedad sería poco clara, así que hay que asegurarse que cada nuevo integrante tenga que empezar de nuevo. Obviamente se hace mucho más lento el avance en el campo de que se trate.

Por ejemplo, ¿cuántos sistemas de planillas de cálculo fueron hechos por distintas compañías, cada una sin el beneficio de entender cómo lo hizo el resto? Obviamente la primera planilla no fue perfecta, y habría varias cosas que uno podría reescribir. Pero si hubieran tenido sólo que reescribir aquellas cosas que realmente querían mejorar, habría sido mucho menos trabajo que escribirla toda de nuevo. Uno puede ver como mejorar una parte en particular y no ver como mejorar otra. Si uno pudiera tomar esa parte que puede mejorar y hacer de nuevo sólo eso, terminaría con un sistema que es mejor que el anterior en todo sentido, con mucho menos trabajo que si lo reescribiera todo de nuevo. Por otro lado, todos sabemos que es común mejorar un sistema reescribiéndolo entero (al menos yo tengo experiencia al respecto), pero sólo si se puede ver el sistema anterior.

Entonces podemos decir que en el campo de la programación se ha descubierto una manera de perder mucho tiempo y crear la necesidad aparente de muchos más programadores de los que realmente se necesitan. ¿Por qué hay escasez de programadores? Porque con este sistema cada programador pierde la mitad del trabajo que hace, así que parece que necesitamos el doble de programadores. Cuando se ven las enormes cifras de empleo y vemos lo grande que es la industria de software, lo que realmente estamos viendo es que hay un montón de gente que está perdiendo tiempo y plata. Si se habla de mejorar la productividad de los programadores, todo el mundo comenta las herramientas "más modernas", la orientación a objeto, la creación rápida de interfaces gráficas, etc, pero la industria impide que se hable de eliminar esto que reduce la productividad de los programadores.

Y el daño espiritual que corresponde a este nivel de daño material afecta el espíritu de cooperación científica, que solía ser tan fuerte que incluso cooperaban científicos de países que estaban en guerra, porque sabían que lo que hacían no tenía nada que ver con la guerra, sino con el bien de toda la humanidad. Hoy en día la gente no se preocupa del bien de la humanidad.