martes, 31 de agosto de 2010

Los ingenieros que Apple no pudo despedir, que trabajaron en el proyecto que Apple no pudo cancelar

En agosto de 1993, el proyecto secreto en el que Ron Avitzur trabajaba en Apple fue cancelado. Según Ron, un exceso de intrigas políticas y de ego habían sido la causa. Después de un año dedicado a aquel nuevo ordenador, Ron, de 27 años, se quedaba sin proyecto y sin empleo. En un principio, un sentimiento de frustración se apoderó de él, pero no se resignó y decidió que al menos su parte del proyecto, una calculadora gráfica, no sería cancelada.

Graphing Calculator 3.2 corriendo sobre MacOS 7.6.1

Ron había comenzado a trabajar en la Graphing Calculator en 1987, cuando estudiaba física en la Universidad de Stanford. Allí, entró en contacto con los Mac, que comenzaban a reemplazar a las antiguas máquinas de escribir de los estudiantes de letras. Sin embargo, en opinión de Ron, para los estudiantes de ciencias los ordenadores resultaban mucho menos útiles, lo que no dejaba de parecerle una ironía.

Según él, el problema era el interfaz de usuario, así que se tomó un tiempo libre y comenzó a trabajar en Milo, una aplicación con la que pretendía portar al mundo de las matemáticas el concepto de procesador de textos. Milo resultó ser un producto que influyó y acabó integrado en muchos otros, pero económicamente, desde luego, no fue un éxito. Uno de los productos comerciales que lo integraban era FrameMaker 2.0, en el que Milo se convirtió en su módulo de edición matemática.

Pero Ron no estaba satisfecho con el resultado. Milo no resultaba tan fácil de usar como él pretendía. En su opinión, el problema era que las matemáticas usaban una notación que provenía del mundo del lápiz y el papel, con su multitud de símbolos, subíndices, superíndices o letras griegas, pero que resultaba difícil de introducir en un ordenador usando un teclado. Ron creyó que para que esta tarea resultara más amigable era necesario un hardware adecuado. Así, su objetivo fue hacer que Milo soportara una tableta digitalizadora e incluyera un algoritmo de reconocimiento óptico de caracteres. Este fue el motivo que había llevado a Ron Avitzur hasta Apple.

Sin embargo, el proyecto “secreto” en el que colaboraba, y del que Ron no le gusta dar demasiados detalles, después de un año de trabajo, fue cancelado. La primera reacción fue de alivio, el proyecto se había topado con algunos problemas hardware importantes, pero este alivio se tornó rápidamente en frustración por haber tirado un año entero de trabajo a la basura. A pesar de ello, Ron no se resignó y, al comprobar que pese a no tener un contrato con Apple su tarjeta identificativa seguía abriendo las puertas de las oficinas de Cupertino, decidió seguir yendo a trabajar, a terminar aquello que había dejado a medias.

Ron Avitzur en 2007. Original de atmonstergirl . Más fotos en su cuenta personal de flickr

La presencia de Ron no pasó desapercibida para el resto de ingenieros, pero eran muchos los que le dieron apoyo. Cuando les hacía alguna demo, muchos le decían lo mucho que hubieran querido tener algún programa similar cuando estudiaban. Especialmente, entusiastas se mostraban los ingenieros que trabajaban en el proyecto que crear el primer Macintosh equipado con un PowerPC, que creían que el programa resultaría ideal para demostrar la potencia de la nueva CPU.

Un día, después de la cena, aparecieron en la oficina de Ron un par de ingenieros que trabajaban en el PowerMac y le dijeron que no se irían de allí hasta que no accediera a portar su código al PowerPC. Finalmente, Ron accedió y los tres pasaron más de 6 horas revisando unas 50.000 líneas de código.

A la una de la mañana todo parecía estar listo para correr por primera vez la Graphing Calculator sobre un PowerPC. Las cosas, sin embargo, no empezaron bien, el monitor del ordenador se prendió fuego, aunque fue sólo un pequeño contratiempo. Después de buscar otro, cuando corrieron la primera simulación, todos se quedaron boquiabiertos. El PowerPC era 50 veces más rápido que la máquina que Ron utilizaba para programar y el programa parecía volar sobre él.

El resultado de la primera demo fue espectacular, pero Ron sabía que una cosa era una demo y otra muy distinta un producto comercial. Consciente que quedaba mucho por hacer y que él sólo no podía hacerlo todo, lo primero que hizo fue convencer a su amigo Greg Robbins para que se sumara al equipo. En aquel tiempo, Greg estaba trabajando en otra división de Apple y se le acababa el contrato. Así que le dijo a su jefe que a partir de entonces comenzaría a reportar a Ron. Su jefe no le preguntó quién era, pero le dejó ir sin dar de baja su tarjeta. A partir de entonces Greg diría que estaba trabajando para Ron y Ron que lo estaba haciendo para Greg. Sin managers de por medio y sin reuniones, podían programar 12 al día sin interrupciones, más productivo no se podía ser.


Un PowerPC 601v a 90 MHz (el del primer PowerMac iba a 60MHz) fabricado por IBM

Cuando alguien preguntaba a Ron si trabajaba en Apple, decía la verdad, que no. “Ah, entonces ¿eres de una empresa externa?”, le preguntaban. “Tampoco”, respondía Ron. Cuando le preguntaban que quien le pagaba, él respondía que nadie. La siguiente pregunta solía ser “¿Cómo vives?” y Ron respondía que “de manera sencilla”. Entonces, lo mejor era hacerles una demostración de su calculadora. En aquel tiempo, eran muchos de los empleados de Apple habían estado en uno o más proyectos que habían acabado cancelados, así que era fácil que se mostraran compresivos con su situación. Ron no hubiera sido el primero que trabajando horas extras había conseguido revivir algún proyecto cancelado. Ron recuerda algún un proyecto había sido cancelado y revivido hasta cinco veces.

En setiembre, una persona del departamento que se dedicaba a la gestión del espacio de las oficinas se pasó por el edificio en el que Ron y Greg habían encontrado refugio. Al verlos allí solos, ocupando un espacio que en teoría tendría que estar vacío, supuso que habían sido reasignados a otro proyecto, pero todavía no los habían movido con el resto del grupo. El empleado le dijo que en breve moverían a otra gente a aquel espacio que ellos ocupaban. Cuando le preguntó en qué grupo trabajaban, Ron le dijo la verdad. La verdad, sin embargo, no le hizo demasiada gracia al empleado de “facilities” que no dudó en llamar a seguridad y les pidió que abandonaran las oficinas.

Sus tarjetas fueron dadas de baja en el sistema de control de accesos, pero ellos necesitaban continuar entrando en Apple para acabar su trabajo. En aquel tiempo, la única manera de compilar el código del programa para que funcionara en un PowerPC era usando una estación de trabajo IBM RS6000 con un software hecho a medida para Apple que fuera era imposible de conseguir. Como tampoco existía documentación ni soporte para desarrolladores, la única fuente de información válida eran los que estaban trabajando en el sistema basado en el PowerPC.

Irónicamente para este par de despedidos la salvación llegó de la mano de más despidos. Eran tiempos difíciles en Apple y el 20% de sus 15.000 empleados fueron despedidos. A ellos, sin embargo, nadie podía despedirlos ya. A partir de esta “masacre” de empleados, en las oficinas comenzó a sobrar el espacio.

Con las tarjetas dadas de baja, cada día, tenían que arreglárselas para entrar detrás de otros empleados. Como conocían mucha gente, su comportamiento no despertaba sospechas. Luego el resto del día consistía en evitar a aquel empleado que llamó a seguridad, lo cual no les resultaba demasiado complicado.

PowerMac 6100. El primer Mac con PowerPC

De tanto en tanto, a Ron y Greg les asaltaban las dudas sobre lo que estaban haciendo. ¿Tenía sentido trabajar voluntariamente para una empresa que ganaba millones? Entre bromas, se decían que realmente no era así. En aquel momento, Apple estaba pasando dificultades financieras, así que se decían que, en verdad, estaban trabajando para una ONG. En realidad, la motivación era un tanto compleja. Había algo de reto, había algo del orgullo de que su programa corriera en millones de máquinas, pero también algo de tener la sensación de que estaban haciendo algo por el bien de la sociedad. Algo que ayudara a millones de niños a aprender matemáticas. Precisamente, a aquellos niños que iban a escuelas públicas que no se podían permitir comprar un software como aquel.

Aunque Ron también reconoce que había algo de subversión, de ir contra el sistema, detrás de todo lo que hacían. Todo el proyecto fue gestionado de una manera diferente a como se hacían los proyectos oficiales. No había burocracia, no había jefes, no había presupuesto ni gente asignada a él. Ron no tenía una relación de poder con sus “empleados”. Ellos simplemente cooperaban por interés en el proyecto, por amistad o lealtad.

A medida que pasaban los meses, se dieron cuenta que solos no podrían hacerlo todo. Necesitaban un equipo de gente con los conocimientos de los que ellos carecían. Necesitaban alguien con experiencia en diseño gráfico, alguien que se encargara de la documentación y, lo más importante, alguien que se encargara de la calidad del producto, que se dedicara a probar el producto y comprobar que funcionaba correctamente. Ron encontró ayuda de los aburridos ingenieros de calidad que trabajaban en el proyecto del PowerPC. El día se les hacía demasiado largo, ya que se lo pasaban corriendo tests automáticos que apenas requerían su atención. Ron, en seguida, les pasó unas copias de su programa para que lo comenzaran a testear.

A medida que pasaba el tiempo, algunos de los ingenieros que colaboraban a escondidas con el proyecto comenzaron a mostrarse partidarios de enseñarles a sus jefes lo que habían estado haciendo. Ron, por el contrario, prefirió esperar a que el programa estuviera más depurado y a tener listo el soporte 3D. Hasta entonces todos los gráficos que mostraba el programa eran en dos dimensiones. Ron, consciente que no tenían los conocimientos necesarios, contactó con un amigo que en tan sólo un fin de semana escribió el “renderer” tridimensional, un trabajo que a ellos les hubiera llevado como mínimo un mes.

Ahora sí que Ron que creyó que había llegado el momento de hacer una demo a los jefes. Una docena de personas acudieron a la demostración. Después de veinte minutos de “ahhhs” y “ohhhs”, le preguntaron: “¿Quién es tu jefe? ¿Por qué no hemos sabido lo que estabas haciendo antes?”. Ron les explicó la verdad y le aconsejaron que en el futuro no la volviera a repetir.

En seguida el manager de software para PowerPC vio el valor que tendría incluir un paquete de software así en cada ordenador. La Graphing Calculator tendría un enorme valor educativo, permitiendo a los profesores en clase de matemáticas mostrar fácilmente conceptos abstractos, pero también serviría a Apple para mostrar la potencia de su PowerMac. Un ordenador que, según Ron, cambiaba las reglas establecidas, permitiendo la interacción en tiempo real.

Sin embargo, antes se tenía que cualificar el software. El responsable de calidad de software del PowerMac contactó con Ron y le presentó a sus ingenieros, que él creía que estaban ocupadísimos. Aunque ese jefe no lo sabía, eran los mismos que ya llevaban un tiempo trabajando para Ron en la calculadora. Al mismo tiempo, comenzó la localización del software a una veintena idiomas y el grupo encargado de la experiencia de usuario comenzó las pruebas de usabilidad con usuarios reales.

Ron Avitzur contando su historia en las oficinas de Google en 2006. Ver en youtube.com

Ahora, Ron y Greg se encontraban en el centro de un torbellino de actividad, pero seguían teniendo que entrar a escondidas a las oficinas de Apple. El proyecto del PowerPC no podía conseguirles identificaciones sin una orden de compra. No podían conseguir la orden de compra sin un contrato firmado. No podían firmar un contrato sin la aprobación del departamento de legal, y si legal se enteraba de la verdad, no hubiera tardado en llamar a seguridad. Finalmente, encontraron una solución. Consiguieron tarjetas que los identificaban ni como empleados ni como trabajadores de una empresa externa, sino como vendedores.

Pero ahora los problemas vendrían de fuera de Apple. Primero, llegó una denuncia por violación de patentes y, después, presiones por parte de la empresa del Mathematica (otro paquete matemático) para que Apple no preinstalara la Graphing Calculator en sus ordenadores. Estos problemas quedaron en nada y en noviembre trabajaban a plena máquina, 7 días por semana, 16 horas al día, centrándose en estabilizar el producto y mejorar su usabilidad, para esto último fue de vital importancia los tests de usabilidad que Apple organizó con profesores de matemáticas.

Finalmente en enero de 1994, después de 6 meses de trabajo clandestino, la Graphing Calculator estaba lista. El programa se envió pre-instalado en más de 20 millones de ordenadores y miles de profesores de todo el mundo lo pudieron utilizar como “pizarra” para mostrar a sus alumnos conceptos abstractos. Antes había Apple licenciado el software a cambio de una cifra más bien baja de cinco dígitos.

Ron bromea diciendo que intentaron que su Graphing Calculator también se incluyera en Windows 98, Aunque lamenta que la seguridad de Microsoft era mucho mejor. Todos creen que hacer algo similar ahora en Apple también resultaría imposible, al no existir ese caos que existía en la compañía a mediados de los 90.

PS: Ron sigue trabajando en su empresa, Pacific Tech, como él dice en el primer programa en lenguaje C que escribió, su Graphing Calculator.

Enlace permanente a Los ingenieros que Apple no pudo despedir, que trabajaron en el proyecto que Apple no pudo cancelar.

Muchísimas gracias a Jeshua, el amo del Morbitorio , por descubrirme esta historia.

+posts:
- Una cabina en medio del desierto
- El Mecanismo de Anticitera, el primer ordenador de la historia
- El mensaje de la Pioneer para los extraterrestres
- Johnny Appleseed y sus manzanas

+info:
- The Graphing Calculator Story by Ron Avitzur
- They Hacked Readl Good, For Free in Newsweek
- Worming Into Apple in Wired.com
- Curriculum de Ron Avitzur

17 comentarios:

  1. Una historia de la voluntad, el entusiasmo y, en definitiva de la CABEZONERÍA (mayúsculas justificadas...) de gente inteligente y apasionada. No importa que sea un cuadro, software o ua patata frita: hay gente que dedica toda su atención a lo que hace.

    Por lo demás, revisa un poco el texto y eso... ¿"setiembre"?

    ResponderEliminar
  2. ¿Qué tal Jeshua?

    Umm, yo siempre he sido más partidario de septiembe que de setiembre... Pero según la RAE los dos son válidos. No?

    Saludos!

    ResponderEliminar
  3. Geniál y enriquecedór, como de costumbre.
    Y con moraleja : si uno cree de verdád en una idea, hay que apostarse hasta la camisa en el intento de realizarla.
    Con tú permiso, te he añadido a mi listado de blogs recomendables.

    Un saludo.

    ResponderEliminar
  4. Por su puesto, Rodericus. Es más, gracias por el honor ;-)

    ResponderEliminar
  5. Una historia tremenda. Seguro que hay más de ese tipo en los años 80/90. Hoy en día la seguridad en las empresas es tal que no puedes ni mear sin estar fichado.

    ResponderEliminar
  6. interesantisimo articulo. pero como hacian para subsistir? sin un sueldo o fuente de ingreso se me hace complicado como hacian para comer o pagar la vivienda (a no ser que vivieran con los padres)

    que opinion tiene steve jobs de esta historia?

    ResponderEliminar
  7. Ron cuenta que vivía de manera sencilla. No tenía hipoteca ni familia y podía permitirse vivir de los ahorros.

    Afortunadamente, la situación no duró demasiado, si no las cosas podrían haber sido diferente.

    Sobre, Steve Jobs, creo que todo esto pasó después de que dejara Apple. Unos tiempos, un tanto turbulentos para la compañía de Cupertino ;-)

    Un saludo, Darthxelos!

    ResponderEliminar
  8. Esto conecta directamente con cierta reflexión sobre lo que nos motivo ante un reto intelectual lo que a su vez conecta con un posible futuro libre de condicionamientos monetarios.

    La conducta de estos chicos está perfectamente reflejada en este divertido vídeo:

    http://www.youtube.com/watch?v=u6XAPnuFjJc

    ResponderEliminar
  9. Alejandro, cómo escribe este hombre de rápido! jajaja! Pero muy interesante!

    Teniendo unos mínimos de dinero garantizados. Si la gente se siente razonablemente pagada, es más fácil implicarse y más si se ponen los medios.

    Yo, por mi propia experiencia, el problema es que a veces se ponen las ideas, pero no los recursos y nadie se las acaba creyendo :-(

    Saludos y bienvenido!

    ResponderEliminar
  10. Una cosa que me dejaba.

    Creo que una de las cosas que más desmotiva no es hacer algo por amor al arte. Si que tu lo hagas por eso y otros se aprovechen económicamente de él.

    Por ejemplo, una cosa es trabajar en una aplicación open source de forma voluntaria y otra muy diferente traduciendo twitter al castellano de forma gratuita, por ejemplo ;-)

    Lo primero es por el "bien de la humanidad", aparte del buen rato de hacerlo, y lo segundo para que una empresa se ahorre un dinerillo.

    Creo que es fácil caer en el error de intentar utilizar este tipo de técnicas para intentar ahorrarse unos "durillos" intentando "enajenar" a los trabajadores.

    Claro si los trabajadores reciben su tajada, es diferente.

    Un tema interesante, sin duda.

    Saludos!

    ResponderEliminar
  11. Si yo fuera el dueño de Apple pensaría "Pago un dineral para el departamento legal, para un optimizador de rendimiento que casi acaba con este programa, para un montón de burócratas que sólo han anulado programas que funcionan..."

    La conclusión es lógica, menos burocracia y más ingenieros de calidad trabajando. Por cierto, ésto también se podría aplicar a los servicios públicos.

    ResponderEliminar
  12. En informática hay un poco de todo, con proyectos maravillosos parados por un burócrata sin seso, como el caso que citas, y con proyectos sin seso que nadie paró en su día, y acabaron con la empresa en cuestión (el juego Daikatana y otro Vaporware, o muchas de las empresas punto.com; ni hablemos de las "maravillosas" inversiones de Terra).

    También es común que falte gente para controlar a los ingenieros, o viceversa, en otros sectores industriales. Un ejemplo de falta de estructura administrativa era la Chrysler: los ingenieros diseñaban coches por su cuenta, felices de que nadie les controlase. Luego, resultaba que eran técnicamente muy buenos, pero invendibles, porque no cubrían necesidades de los clientes. Probablemente el Ford Edsel (tan feo era, que se dice que sólo robaron uno, ¡y lo devolvieron!) fuese un caso parecido.

    En la empresa de mi padre los ingenieros tuvieron que pelear duro con los contables, que habían adquirido el primer ordenador para hacer las nóminas, y se negaban a permitir su uso a otros departamentos, y eso a pesar de que la máquina sólo se usaba una semana al mes. A veces, simplemente la explicación está en esas tontas rivalidades entre departamentos que afectan tanto a empresas como a administraciones. Y creedme: como burócrata que soy (jeje), tan malo es que sobren y se dediquen sólo a mover papeles, como que falten y se hagan cosas inútiles, caras, duplicadas o directamente dañinas e ilegales. En el fondo, todo es cuestión de equilibrio y sentido común.

    ResponderEliminar
  13. Satur, en las empresas pasan tantas cosas... y me temo que cuanto más grandes más raras son las cosas que pasan ;-)

    Sin llegar a los extremos de la Graphing Calculator, he vivido de cerca casos similares :-$

    Golias, desde luego que a veces lo que sucede es que un buen proyecto no llega a buen puerto porque no cuenta con fondos, pero en otros casos hay demasiada gente ansiosa de invertir y se financian verdaderas locuras. Proyectos que gastan el dinero a manos llenas hasta... hasta que se acaba ;-)

    El caso de las punto.com, como tú bien dices, es un buen ejemplo. Aunque creo que pasa en muchísimos otros sectores. En especial, en los que se tienen unas expectativas altísimas, aparte de la informática, la biomedicina, por ejemplo.

    Respecto al control de los ingenieros, te cuento lo que me explicó una vez un jefe que tuve. Según él, su principal función era evitar que los ingenieros reescribieran cada vez el código de 0.

    Era su opinión, pero creo que algo de razón llevaba.

    Lo del Ford Edsel creo que da para otro post. Qué historia más interesante! A mí hasta me gustan los coches ;-)

    Lo de las guerras de departamentos... ya da casi para un libro entero Jajaja!

    Saludos para los dos!

    ResponderEliminar
  14. Pues igual te gusta esta: los 50 peores coches de la historia.

    http://www.time.com/time/specials/2007/completelist/0,,1658545,00.html

    (Por otro lado, como tengo mala memoria, mis disculpas si ya lo he dicho antes, o aún peor, si lo descubrí con una entrada tuya, que ya me ha pasado alguna vez)

    ResponderEliminar
  15. Vaya, sale cortada. Segundo intento:

    http://www.time.com/time/specials/2007/
    completelist/0,,1658545,00.html

    ResponderEliminar
  16. Golias, no me convencerás por muchas listas que pongas.

    El EdSel es todo un cochazo Jajajaja!

    Un saludo!

    ResponderEliminar
  17. Un gran artículo, me ha encantado.
    Saludos

    ResponderEliminar