¿Qué pensaría Isaac Asimov de los agentes software que están conquistando el mundo y que, cada vez más, se encargan de construir las aplicaciones del futuro? ¿Habría reformulado sus tres leyes de la robótica?
Nunca lo sabremos, pero me gustaría proponer mi propia interpretación, manteniendo el espíritu original de las reglas (si necesitas un recordatorio, lee las reglas originales al final).

Las tres leyes de los agentes software

  1. Un agente no debe introducir errores en el software ni, por omisión, permitir que un humano lo haga
  2. Un agente debe obedecer las órdenes de cambios en el software dadas por los humanos, excepto cuando dichas órdenes entren en conflicto con la Primera Ley
  3. Un agente debe proteger sus propias contribuciones al software siempre que dicha protección no entre en conflicto con la Primera o Segunda Ley

¿Qué opinas? ¿Tienes una propuesta alternativa? (si es así, ¡estaré encantado de leerla en los comentarios!)

Las reglas originales

Por si alguno necesita un recordatorio, aquí están las tres leyes originales de la robótica que debían seguir los robots en varias de sus historias. Las reglas fueron introducidas en 1942:

  1. Un robot no hará daño a un ser humano, ni por inacción permitirá que un ser humano sufra daño.
  2. Un robot debe cumplir las órdenes dadas por los seres humanos, a excepción de aquellas que entren en conflicto con la primera ley.
  3. Un robot debe proteger su propia existencia en la medida en que esta protección no entre en conflicto con la primera o con la segunda ley.

Otras variaciones de las reglas

Obviamente, no soy el único versionando las reglas. Por ejemplo, encontré estas otras tres reglas para el desarrollo de software:

  1. Un desarrollador debe escribir código que cree valor.
  2. Un desarrollador debe esforzarse en hacer que su código sea fácil de mantener, excepto cuando dicho esfuerzo entre en conflicto con la primera ley.
  3. Un desarrollador debe reducir su código al tamaño más pequeño posible, siempre que dicha reducción no entre en conflicto con las dos primeras leyes.

o estas otras tres leyes de la informática

  1. Los programas deben ser correctos.
  2. Los programas deben ser mantenibles, excepto cuando entre en conflicto con la Primera Ley.
  3. Los programas deben ser eficientes, excepto cuando entre en conflicto con la Primera o Segunda Ley.

que también tienen sentido para mí. ¿Has visto otros ejemplos?