← Todos los articulos

Filosofía de la ingeniería: Grace Hopper, haz que la computadora hable como un humano

Grace Hopper, contraalmirante de la Marina de EE. UU. y pionera de la computación

Ideas clave

  • Toda la filosofía de Hopper en una línea: haz que la computadora hable el idioma del humano, nunca obligues al humano a hablar el de la máquina.
  • El primer compilador, A-0 (1952), puso la carga de la traducción sobre la máquina —automatizada una sola vez en software en lugar de pagada a mano por cada programador para siempre.
  • El cable de un nanosegundo convirtió la latencia en un objeto físico: 30 centímetros que podías sostener, de modo que el costo del tiempo desperdiciado dejó de ser abstracto.
  • “Siempre lo hemos hecho así” era, para ella, la frase más peligrosa del idioma —y cada uno de sus inventos fue una respuesta a ella.

El principio

“Los humanos son alérgicos al cambio. Les encanta decir: ‘Siempre lo hemos hecho así’. Yo trato de combatir eso. Por eso tengo en la pared un reloj que gira al revés.” —Grace Hopper1

Ese temperamento se desprende de una sola convicción: la máquina debe hacerse para servir al humano, no al revés. En 1953, cuando programar significaba codificar a mano instrucciones numéricas para una máquina específica, Hopper propuso que los problemas de procesamiento de datos se plantearan con palabras en inglés y que la computadora hiciera la traducción. La gerencia le dijo que no se podía —las computadoras no entendían inglés.2 En realidad no afirmaba que lo entendieran. Afirmaba que la carga de la traducción correspondía a la máquina, donde podía automatizarse una vez, y no a cada programador, para siempre. Esa es toda la filosofía: haz que la computadora hable el idioma del humano, no al revés.

Resulta fácil, setenta años después, pasar por alto lo radical que era eso. La suposición dominante era que programar era un oficio esotérico para gente capaz de pensar en los términos de la máquina, y que esa era simplemente la naturaleza del trabajo. La respuesta de Hopper fue que la naturaleza del trabajo era una decisión que alguien había tomado y nunca había vuelto a revisar —“siempre lo hemos hecho así” calcificado en una ley de la física. Toda su trayectoria es el rechazo de esa calcificación: el primer compilador, el primer lenguaje parecido al inglés y toda una vida enseñándole a la gente que los límites que aceptaban no eran reales.

La vena antidogmática y la misión de accesibilidad son el mismo instinto visto desde dos lados. La abstracción —permitir que una persona exprese su intención en sus propios términos y que una herramienta la traduzca hasta el metal— no es una comodidad superpuesta a la programación. Para Hopper era el sentido mismo de programar: la labor de abrir la máquina a personas que de otro modo quedarían excluidas. Cuando el presidente Obama le concedió la Medalla Presidencial de la Libertad en 2016, la mención lo dijo con claridad: ella “inventó el primer compilador, que permitió que los programas se escribieran en lenguaje corriente y luego se tradujeran para que las computadoras los entendieran.”3 La misma convicción está bajo el argumento de que las buenas herramientas deberían optimizarse para el ser humano que las usa, no para la máquina que las ejecuta.

Contexto

Grace Brewster Murray Hopper nació el 9 de diciembre de 1906 en la ciudad de Nueva York.4 Obtuvo una licenciatura en matemáticas y física en Vassar College en 1928, luego una maestría (1930) y un doctorado en matemáticas (1934) en Yale —un doctorado en matemáticas que casi ninguna mujer de su generación tenía.4 Enseñó matemáticas en Vassar a lo largo de la década de 1930, y ese detalle importa: antes de ser programadora fue maestra, y el instinto de hacer comprensible una idea difícil nunca la abandonó.

En diciembre de 1943, en plena guerra, se enlistó en la Reserva de la Marina de Estados Unidos. La Marina al principio se resistió —tenía treinta y seis años y pesaba bastante menos de lo requerido—, pero insistió hasta lograrlo, y en 1944 la asignaron al Bureau of Ordnance Computation Project en Harvard, donde se convirtió en una de las primeras programadoras de la Harvard Mark I bajo la dirección de Howard H. Aiken.4 La Mark I era una calculadora electromecánica del tamaño de una habitación; Hopper fue coautora de su manual de 561 páginas, A Manual of Operation for the Automatic Sequence Controlled Calculator, que durante años fue el texto fundacional sobre cómo programar la máquina.4

Grace Hopper trabajando, rodeada de manuales del UNIVAC y un carrete de cinta magnética

Tras la guerra dejó el servicio activo pero permaneció en la Reserva, y en 1949 se incorporó a la Eckert-Mauchly Computer Corporation —pronto parte de Remington Rand— para trabajar en el UNIVAC I, la primera computadora comercial de Estados Unidos.4 Fue allí, ya no soldando código a mano a una máquina de investigación única sino tratando de hacer un producto utilizable por empresas comunes, donde el problema de su vida cobró nitidez. Aiken le había dado la máquina. UNIVAC le dio el cliente. El cliente no sabía programar, y Hopper decidió que ese era un problema que debía resolver la computadora, no el cliente.

El trabajo

El primer compilador: A-0 (1952)

Para 1952, Hopper había construido el sistema A-0, ampliamente reconocido como el primer compilador.5 La idea era casi vergonzosamente simple en retrospectiva y herética en su momento. Los programadores habían acumulado bibliotecas de subrutinas útiles, pero para reutilizar una había que copiar sus instrucciones a mano dentro del programa y corregir trabajosamente cada dirección de memoria. El A-0 de Hopper te permitía, en cambio, referirte a cada subrutina mediante un breve número de llamada y suministrar sus argumentos; el sistema entonces extraía las rutinas de una cinta, resolvía las direcciones y ensamblaba un programa ejecutable.5

Los puristas señalan, con razón, que A-0 funcionaba más como lo que hoy llamaríamos un cargador o enlazador que como un compilador optimizador moderno.5 Es cierto y vale la pena decirlo. Pero el salto conceptual es la parte que perdura: un programa podía ser una especificación escrita con símbolos convenientes, y una pieza de software podía traducir esa especificación a código de máquina automáticamente. La traducción ahora era tarea de la máquina. La propia explicación de Hopper de por qué lo hizo sobrevive en sus palabras sobre los años del UNIVAC: “Antes era profesora de matemáticas. En aquel entonces descubrí que había cierto número de estudiantes que no podían aprender matemáticas. Luego me encargaron la tarea de hacer fácil que los empresarios usaran nuestras computadoras.”2 Cada compilador desde entonces —cada línea de código que alguien haya escrito en un lenguaje por encima de las instrucciones de máquina puras— es descendiente de esa decisión.

FLOW-MATIC y el camino hacia COBOL

A-0 traducía símbolos. El siguiente paso fue volver esos símbolos inglés. Entre 1955 y 1959, Hopper y su equipo en Remington Rand construyeron FLOW-MATIC, el primer lenguaje de programación que expresaba operaciones mediante enunciados parecidos al inglés en lugar de notación matemática.6 Un programa FLOW-MATIC contenía comandos como INPUT, COMPARE y MOVE —palabras que una persona de negocios podía leer y entender a grandes rasgos sin ser matemática. Era, en su propia expresión, la labor deliberada de hacer la computadora utilizable para gente que nunca iba a pensar en los términos de la máquina.

FLOW-MATIC alimentó directamente a COBOL. Cuando el comité CODASYL se reunió en 1959 para diseñar un lenguaje común orientado a los negocios, FLOW-MATIC era el lenguaje de procesamiento de datos parecido al inglés más maduro que existía y se convirtió en la base principal del nuevo estándar.6 A Hopper se la llama con justicia la abuela conceptual de COBOL —no su única autora, sino la persona cuyo trabajo y defensa hicieron pensable un lenguaje de negocios parecido al inglés e independiente de la máquina. Y la independencia de la máquina es la segunda idea radical empaquetada aquí: defendió la noción de que un programa debía ser portable entre distintas computadoras en lugar de ajustarse a mano a una sola, antecesora directa de la convicción de escribirlo una vez y portarlo que Unix y C hicieron famosa. El mismo código, el mismo inglés, corriendo en máquinas para las que nunca se escribió. COBOL sobrevivió a casi todo lo que lo rodeaba; décadas después todavía hace funcionar los sistemas bancarios y gubernamentales del mundo, lo cual es su propio argumento silencioso a favor de la durabilidad de una idea construida en torno al lector humano.

El nanosegundo: volver física la latencia

El recurso pedagógico más célebre de Hopper no era código en absoluto. Era un trozo de cable. Cuando alguna vez le preguntaron por qué la comunicación por satélite tardaba tanto, se propuso convertir el costo del tiempo en algo que una persona pudiera sostener. Repartía trozos de cable cortados a 30 centímetros —la distancia máxima que la electricidad puede recorrer en un nanosegundo, una milmillonésima de segundo— para que una unidad abstracta de retardo se volviera un objeto físico en la mano.7 Luego sacaba una bobina de 300 metros de largo: eso, explicaba, era un microsegundo. “A veces pienso que deberíamos colgar uno sobre el escritorio de cada programador”, decía, “para que sepan lo que están tirando a la basura cuando desperdician microsegundos.”7

La comodora Grace Hopper hablando en un atril, 1985

El cable es el mismo instinto de maestra que impulsó el compilador, dirigido a una lección distinta. El compilador decía: no deberías tener que pensar en los términos de la máquina para usarla. El nanosegundo decía: pero sí tienes que respetar la física de la máquina. La latencia dejó de ser un número en una diapositiva y se volvió una longitud que una señal debe atravesar físicamente, gobernada por la velocidad de la luz, y cada microsegundo desperdiciado es cable que hiciste correr a la señal sin razón alguna. Los cables están ahora en el National Museum of American History del Smithsonian.8 Son también, casi exactamente, el “la velocidad de la luz apesta” de John Carmack —cuarenta años antes y hecho de cobre. Ambos convirtieron el límite físico duro de la latencia en algo que no podías abstraer ni desestimar, porque podías verlo, o sostenerlo.

El bug y el temperamento antidogmático

El 9 de septiembre de 1947, los operadores de la Harvard Mark II —la máquina sucesora de la de Aiken, el equipo en el que trabajaba Hopper— rastrearon una falla hasta una polilla atrapada en el relé n.º 70, panel F. Sacaron el insecto, lo pegaron con cinta en la bitácora y escribieron: “Primer caso real de un bug encontrado.”9 Esa página de la bitácora, con la polilla aún adherida, está hoy en poder del Smithsonian.8

La versión honesta de esta historia importa, porque Hopper la contaba tan bien que los hechos se difuminaron. La polilla fue real y la fecha está documentada. Pero la palabra “bug” para una falla de ingeniería la precedía con mucho —se usaba ya en la época de Thomas Edison— y los operadores casi con certeza estaban haciendo un juego de palabras, fundiendo el término de ingeniería que ya conocían con el insecto literal que acababan de desprender.9 Hopper, según la mayoría de los relatos, ni siquiera fue quien lo encontró. Lo que hizo, con su característico estilo, fue popularizar la anécdota y el vocabulario de “bug” y “debugging” hasta volverlos la lengua materna del campo.9 Así que el crédito preciso es este: no acuñó “bug”, y probablemente no atrapó la polilla, pero hizo que la historia y la palabra perduraran. Esa es su propia clase de aporte —el aporte de la maestra, otra vez.

El temperamento detrás de todo ello era una guerra permanente contra la suposición heredada. El reloj de su pared giraba al revés, a propósito, para demostrar que la convención que todos trataban como fija era arbitraria en cuanto decidías construir una distinta.1 “Siempre lo hemos hecho así” era, para Hopper, la frase más peligrosa del idioma —y el compilador, el lenguaje parecido al inglés, el programa portable y el cable en la mano eran todos respuestas a ella.

El método

El método es consistente a lo largo de cuarenta años —cómputo balístico, computación comercial, diseño de lenguajes y toda una vida de enseñanza.

Traslada la carga de la traducción a la máquina. El movimiento recurrente de su trayectoria es tomar trabajo que cada humano hace actualmente a mano —resolver direcciones, pensar en códigos de operación numéricos, ajustar el código a una computadora específica— y automatizarlo una vez, en software. El compilador es esta idea; FLOW-MATIC es esta idea; la independencia de la máquina es esta idea.56

Deja que la gente hable su propio idioma. La programación debería encontrar al usuario donde está. Una persona de negocios debería poder escribir MOVE y COMPARE, no memorizar un conjunto de instrucciones. La accesibilidad nunca fue una función atornillada a la herramienta; para Hopper era la razón misma de existir de la herramienta.26

Vuelve físico lo abstracto. Cuando una idea es demasiado abstracta para respetarla —un nanosegundo, un microsegundo desperdiciado— construye un objeto físico que imponga la lección. El cable es pedagogía como ingeniería: no puedes discutir con algo que tienes en la mano.7

Desconfía de “siempre lo hemos hecho así”. Trata la convención heredada como una hipótesis, no como una ley. El reloj que gira al revés es el método hecho objeto: demuestra que la restricción es arbitraria simplemente haciéndolo de otro modo.1

Pide perdón, no permiso. “Si es una buena idea, adelante, hazla. Es mucho más fácil disculparse que conseguir permiso”, aconsejaba —el corolario operativo de combatir el dogma. (El sentimiento la precede y la formulación exacta varía según las fuentes, pero la frase es suya en la forma en que la Marina y el campo la recuerdan.)10 No llegas a la abstracción esperando a que las personas comprometidas con el viejo método le den su bendición.

Cadena de influencia

Quiénes la formaron

Howard Aiken y la Harvard Mark I. Aiken le entregó a Hopper su primera computadora y su primer problema difícil, y el manual de la Mark I del que fue coautora la obligó a pensar con rigor sobre cómo se instruye a una máquina —la pregunta que se convertiría en el trabajo de su vida. (Influencia directa)

La Marina de Estados Unidos. La Marina le dio la institución, la disciplina y, en última instancia, la plataforma; permaneció de uniforme, con intermitencias, durante más de cuatro décadas. La exigencia militar de procedimientos confiables, repetibles y enseñables moldeó su convicción de que la programación debía hacerse sistemática y transferible en lugar de artesanal. (Influencia formativa)

Sus años como profesora de matemáticas. Antes de las máquinas, enseñó. La pregunta de la maestra —¿cómo hago esto comprensible para alguien que aún no piensa como yo?— es la semilla del compilador, del lenguaje parecido al inglés y del cable. (Influencia formativa)

A quiénes formó ella

Todo lenguaje de alto nivel. El compilador hizo posible programar en algo distinto del código de máquina puro. FORTRAN, COBOL y todo lo posterior se asientan sobre la premisa que A-0 demostró: que una herramienta puede traducir símbolos cómodos para el humano en instrucciones de máquina.5

COBOL y la computación empresarial. Como abuela conceptual de COBOL, Hopper puso la programación parecida al inglés e independiente de la máquina en manos de empresas de todo el mundo. El lenguaje todavía hace funcionar una porción enorme de los sistemas financieros y gubernamentales del mundo.6

La accesibilidad como objetivo de la programación. La herencia más profunda no es un lenguaje sino una postura: que abrir la máquina a más personas es el trabajo, no un efecto secundario de él. La mención de Obama —“podemos agradecer a Grace Hopper por abrir la programación a millones de personas más”— es exactamente esto.3

El hilo conductor

Yukihiro Matsumoto diseñó Ruby para optimizar la felicidad del programador —el lenguaje debe plegarse al humano, no el humano al lenguaje. Eso es el “hacer fácil que los empresarios usen nuestras computadoras” de Hopper dicho otra vez en 1995: el heredero filosófico directo de haz que la computadora hable como un humano. El “la velocidad de la luz apesta” de John Carmack es su cable de un nanosegundo convertido en frase —ambos insisten en que la latencia es física, un límite duro que respetas en lugar de abstraer; ella solo llegó allí cuarenta años antes y hizo el suyo de cobre que podías sostener. Y el Unix y el C de Thompson y Ritchie, construidos para que un sistema operativo pudiera escribirse una vez y portarse en lugar de soldarse a una sola máquina, son el cumplimiento práctico de la independencia de la máquina que Hopper defendió para COBOL: el mismo programa, corriendo en hardware para el que nunca se escribió. (Puente de la serie)

Lo que me llevo de esto

La lección que conservo es que la abstracción no es un lujo que agregas cuando tienes tiempo —es el trabajo entero. Hopper miró la programación en 1952, vio que la parte difícil la cargaba cada humano que tocaba la máquina, y trasladó esa carga al software donde podía pagarse una vez. Ese es el movimiento que intento hacer en todo lo que construyo ahora: encontrar el trabajo de traducción que los humanos hacen a mano, una y otra vez, y automatizarlo dentro de la herramienta. El estándar es el mismo que el de la calidad siendo la única variable —la pregunta nunca es “¿se puede entrenar a una persona para que tolere esta interfaz?” sino “¿por qué debería tener que hacerlo?”.

En el mundo en el que construyo ahora —agentes, bucles de herramientas, sistemas de IA— las dos mitades de Hopper son ambas estructurales, y tiran una contra la otra exactamente de la forma productiva. La mitad de la accesibilidad dice: deja que el humano exprese su intención en su propio idioma y haz que el sistema lo traduzca hasta lo que la máquina necesite —que es, casi literalmente, lo que es una capa de invocación de herramientas en un LLM, un compilador para el inglés setenta años después. La mitad de la física dice: pero no dejes que la abstracción te mienta sobre el costo; cada llamada al modelo es un nanosegundo de cable, y apilarlas porque la interfaz es amable es la manera de tirar a la basura microsegundos que no puedes ver. Y el temperamento —el reloj que gira al revés, el rechazo de “siempre lo hemos hecho así”— es la parte que más necesito alrededor de un campo que confunde sus convenciones actuales con leyes. Esa convicción, la de que el buen gusto es un sistema técnico que puedes examinar y cambiar en lugar de una tradición que heredas, corre en línea recta desde un compilador de 1952 hasta un arnés de agentes de 2026.

Preguntas frecuentes

¿Cuál es la filosofía de ingeniería de Grace Hopper?

La convicción central de Hopper era que la computadora debe hacerse para servir al humano, no al revés: la carga de traducir la intención humana a instrucciones de máquina corresponde al software, automatizada una sola vez, en lugar de a cada programador para siempre. Esa única convicción produjo el primer compilador (A-0, 1952) y el primer lenguaje de programación parecido al inglés (FLOW-MATIC), ambos dirigidos a hacer las computadoras utilizables para personas que no podían —y no deberían tener que— pensar en los términos de la máquina.256 Junto a esta misión de accesibilidad iba una incansable vena antidogmática, capturada en su idea de que “siempre lo hemos hecho así” es la frase más peligrosa del idioma.1

¿Qué inventó Grace Hopper?

Construyó el sistema A-0 en 1952, ampliamente reconocido como el primer compilador, que traducía especificaciones simbólicas de programas a código de máquina automáticamente.5 Luego dirigió el desarrollo de FLOW-MATIC (1955-1959), el primer lenguaje de programación en usar enunciados parecidos al inglés, que se convirtió en la base principal de COBOL.6 Se la llama la abuela conceptual de COBOL y una defensora de la programación independiente de la máquina. Ascendió al rango de contraalmirante en la Marina de EE. UU., se retiró en 1986 como su oficial en activo de mayor edad, y recibió la Medalla Presidencial de la Libertad de forma póstuma en 2016; un destructor de la Marina, el USS Hopper, lleva su nombre.34

¿Qué era el cable del “nanosegundo” de Grace Hopper?

Era su herramienta pedagógica más célebre: trozos de cable cortados a 30 centímetros, la distancia máxima que la electricidad puede recorrer en un nanosegundo (una milmillonésima de segundo). Los repartía para que una unidad abstracta de retardo se volviera un objeto físico que podías sostener.7 Lo contrastaba con una bobina de 300 metros que representaba un microsegundo, diciéndoles a los programadores que mostraba “lo que están tirando a la basura cuando desperdician microsegundos.”7 La lección era que la latencia no es abstracta —es una longitud física que una señal debe atravesar. Los cables están ahora en el National Museum of American History del Smithsonian.8

¿Acuñó Grace Hopper el término “computer bug”?

No, y la versión honesta es más interesante. El 9 de septiembre de 1947, los operadores de la Mark II de Harvard encontraron una polilla atrapada en un relé, la pegaron con cinta en la bitácora y escribieron “Primer caso real de un bug encontrado”; esa página de la bitácora está en poder del Smithsonian.89 Pero la palabra “bug” para una falla de ingeniería precede a la polilla por décadas —se usaba en la época de Thomas Edison— y los operadores casi con certeza estaban haciendo un juego de palabras con un término que ya conocían. Hopper, según la mayoría de los relatos, no encontró la polilla ella misma. Lo que hizo fue popularizar la anécdota y el vocabulario de “bug” y “debugging” hasta volverlos el lenguaje estándar del campo.9


Fuentes


  1. Philip Schieber, “The Wit and Wisdom of Grace Hopper,” OCLC Newsletter, n.º 167 (marzo/abril de 1987). “Humans are allergic to change. They love to say, ‘We’ve always done it this way.’ I try to fight that. That’s why I have a clock on my wall that runs counter-clockwise.” Véase también “Grace Hopper,” Wikiquote. 

  2. “FLOW-MATIC,” Wikipedia. Hopper propuso a fines de 1953 que los problemas de procesamiento de datos se expresaran con palabras clave en inglés; la gerencia al principio lo descartó por inviable. “I used to be a mathematics professor. At that time I found there were a certain number of students who could not learn mathematics. I then was charged with the job of making it easy for businessmen to use our computers.” 

  3. Presidente Barack Obama, “Remarks by the President at Presentation of the Presidential Medal of Freedom,” La Casa Blanca, 22 de noviembre de 2016. “If Wright is flight and Edison is light, then Hopper is code.” “She invented the first compiler, which allowed programs to be written in regular language and then translated for computers to understand.” 

  4. “Grace Hopper,” Wikipedia. Nació el 9 de diciembre de 1906, ciudad de Nueva York; murió el 1 de enero de 1992. Licenciatura en Vassar (1928); maestría (1930) y doctorado en matemáticas (1934) en Yale. Se enlistó en la Reserva de la Marina de EE. UU. en 1943; asignada a la Harvard Mark I bajo Howard Aiken en 1944; coautora del manual de la Mark I. Se incorporó a Eckert-Mauchly/Remington Rand en 1949 para trabajar en el UNIVAC I. Ascendió a contraalmirante; se retiró en agosto de 1986 como la oficial en activo de mayor edad de la Marina; el USS Hopper (DDG-70) lleva su nombre en su honor. 

  5. “A-0 System,” Wikipedia. Escrito por Grace Hopper en 1951-1952 para el UNIVAC I; ampliamente reconocido como el primer compilador, aunque funcionaba más como un cargador/enlazador que como un compilador moderno —aceptaba subrutinas especificadas por número de llamada con argumentos y ensamblaba código de máquina ejecutable. Le siguieron A-1, A-2 y, finalmente, FLOW-MATIC. 

  6. “FLOW-MATIC,” Wikipedia. Desarrollado bajo la dirección de Hopper en Remington Rand, 1955-1959; el primer lenguaje de programación en expresar operaciones mediante enunciados parecidos al inglés; listo para producción en 1958-1959; moldeó directamente a COBOL (a través del esfuerzo CODASYL de 1959), transmitiendo la organización de archivos, la cualificación de datos y la estructura de secciones de programa. Véase también “COBOL,” Wikipedia, sobre FLOW-MATIC como base principal del lenguaje. 

  7. “Grace Hopper Explains the Nanosecond,” ratfactor, transcripción de su conferencia; y “Grace Hopper to Programmers: Mind Your Nanoseconds!,” High Scalability. Un nanosegundo equivale a 30 centímetros de cable (la distancia máxima que la electricidad recorre en una milmillonésima de segundo); un microsegundo es una bobina de 300 metros. “I sometimes think we ought to hang one over every programmer’s desk… so they know what they’re throwing away when they throw away microseconds.” 

  8. “Nanoseconds Associated with Grace Hopper,” y “Log Book With Computer Bug,” Smithsonian National Museum of American History. Los cables de nanosegundo de 30 centímetros y la página de la bitácora de la Mark II de 1947 con la polilla están en la colección del museo. 

  9. “Bug (engineering),” Wikipedia, y “The First Use of ‘Bug’ in the Context of Computing,” HistoryofInformation.com. El 9 de septiembre de 1947, los operadores de la Harvard Mark II encontraron una polilla en el relé n.º 70, panel F, y anotaron “First actual case of bug being found.” El término “bug” para una falla de ingeniería precede a esto por décadas (hasta la época de Edison); Hopper probablemente no fue quien encontró la polilla, pero ayudó a popularizar la anécdota y los términos “bug” y “debug.” Véase también “The Bug in the Computer Bug Story,” JSTOR Daily. 

  10. “Grace Hopper,” Wikiquote. “If it’s a good idea, go ahead and do it. It’s much easier to apologize than it is to get permission.” Ampliamente atribuida a Hopper (y citada en la revista Chips de la Marina de EE. UU., julio de 1986); Wikiquote señala que el sentimiento subyacente aparece impreso antes que Hopper, de modo que la formulación es suya tal como se la recuerda mientras que la idea es más antigua. Discusión sobre la atribución: Quote Investigator. 

Artículos relacionados

Filosofía de la ingeniería: Barbara Liskov, el contrato es el tipo

Barbara Liskov convirtió la abstracción de datos en una primitiva de programación: un tipo es el contrato que cumple, y …

18 min de lectura

Filosofía de la ingeniería: Roberto Ierusalimschy

Roberto Ierusalimschy diseñó Lua en torno a un solo principio —mecanismos, no políticas—: un lenguaje pequeño, rápido e …

23 min de lectura

The Shader Gallery That Lied: Debugging 216 WebGL Presets

A user said the shader playground looked broken. Pixel-readback testing found 30 dead presets, 11 that never compiled, a…

11 min de lectura