¿Qué tan buenos fueron Bill Gates y el fallecido Steve Jobs en la programación?

La reputación de Bill Gates es que fue un excelente programador en su día, y técnicamente astuto e incisivo durante todo su tiempo al frente de Microsoft. En la universidad (en Harvard), Bill Gates y Paul Allen escribieron un intérprete de lenguaje BASIC completo en lenguaje ensamblador para una computadora a la que ni siquiera tenían acceso y que solo tenía 4000 bytes de memoria. Lo escribieron en un PDP-10 en Harvard que ejecutaba un emulador Intel 8080. Bill Gates dijo una vez que recordaba cada detalle técnico y nombre de variable de esos primeros programas, aunque seguramente eso no sería cierto hoy.

Steve Jobs nunca fue un programador. Era un producto visionario, un hombre de negocios astuto y un vendedor excelente aunque excéntrico. Fue Steve Wozniak quien construyó la Apple I mientras Steve la promovió. Dicho esto (desde mi experiencia trabajando en su empresa NeXT), Steve tenía una habilidad increíble para comprender los conceptos técnicos y cómo podrían ser relevantes. Si bien nunca había programado, su gente técnica lo convenció del poder revolucionario de la programación orientada a objetos. Como resultado, convirtió el diseño orientado a objetos en el tema central de la máquina NeXT y desarrolló un gran argumento de venta por su capacidad para reducir el volumen de código: “La línea de código que no escribe es la línea de código que nunca tiene depurar.”

Sus diferencias en personalidad y carácter los llevarían a lados opuestos de lo que se convertiría en la división fundamental en la era digital. Solo intentaremos ver sus diferencias y sus opiniones el uno con el otro en lugar de limitarnos a “quién es bueno en la programación”. .

Bill Gates y Steve Jobs, a pesar de sus ambiciones similares en la confluencia de tecnología y negocios, tenían personalidades y antecedentes muy diferentes. El padre de Gates era un destacado abogado de Seattle, su madre una líder cívica en una variedad de prestigiosas juntas. Se convirtió en un geek tecnológico en la mejor escuela privada del área, Lakeside High, pero nunca fue un rebelde, hippie, buscador espiritual o miembro de la contracultura. En lugar de una Caja Azul para estafar a la compañía telefónica, Gates creó para su escuela un programa para programar clases, lo que lo ayudó a unirse a las chicas correctas, y un programa de conteo de automóviles para ingenieros de tráfico locales. Fue a Harvard, y cuando decidió abandonar no fue para encontrar la iluminación con un gurú indio, sino para iniciar una compañía de software.

Gates era bueno en la codificación por computadora, a diferencia de Jobs, y su mente era más práctica, disciplinada y abundante en poder de procesamiento analítico. Jobs fue
más intuitivo y romántico y tenía un mayor instinto para hacer que la tecnología sea utilizable, el diseño sea agradable y las interfaces sean amigables. Tenía una pasión por la perfección, lo que lo hacía ferozmente exigente, y lo manejaba con carisma e intensidad dispersa. Gates fue más metódico; celebró reuniones estrictamente programadas de revisión de productos en las que abordaría problemas centrales con la habilidad lapidaria. Ambos podrían ser groseros, pero con Gates, quien al principio de su carrera parecía tener el coqueteo típico de un geek con los márgenes de la escala de Asperger, el comportamiento de corte tendía a ser menos personal, basado más en la incisividad intelectual que en la insensibilidad emocional. Jobs miraba a las personas con una intensidad ardiente y hiriente; Gates a veces tenía problemas para hacer
contacto visual, pero era fundamentalmente humano.

“Cada uno pensaba que era más inteligente que el otro, pero Steve generalmente trataba a Bill como alguien ligeramente inferior, especialmente en asuntos de
gusto y estilo “, dijo un asociado de Steve Jobs. “Bill menospreciaba a Steve porque en realidad no podía programar”. Desde el comienzo de su relación, Gates estaba fascinado por Jobs y un poco envidioso de su efecto hipnótico sobre las personas. Pero también lo encontró “fundamentalmente extraño” y “extrañamente defectuoso como un
ser humano “, y se desanimó por la rudeza de Jobs y su tendencia a ser” ya sea en el modo de decir que eras una mierda o tratando de seducirte “.
parte, Jobs encontró a Gates inquietantemente estrecho. “Sería un tipo más amplio si hubiera dejado caer ácido una vez o se hubiera ido a un ashram cuando era más joven”, dijo Jobs.
Una vez declarado.

Jobs era un perfeccionista que ansiaba el control y se entregaba al temperamento intransigente de un artista; él y Apple se convirtieron en los ejemplos de una estrategia digital que integraba estrechamente hardware, software y contenido en un paquete perfecto. Gates fue un analista inteligente, calculador y pragmático de negocios y tecnología; estaba abierto a licenciar el sistema operativo y el software de Microsoft a una variedad de fabricantes.

Después de treinta años, Gates desarrollaría un respeto a regañadientes por Jobs. “Realmente nunca supo mucho sobre tecnología, pero tenía un instinto increíble para
lo que funciona “, dijo. Pero Jobs nunca correspondió al apreciar plenamente las fortalezas reales de Gates. “Bill es básicamente poco imaginativo y nunca ha inventado
cualquier cosa, por eso creo que ahora se siente más cómodo con la filantropía que con la tecnología “, dijo Jobs, injustamente. “Él desvergonzadamente estafó a otro
ideas de la gente “.

Referencia: Steve Jobs por Walter Isaacson

Durante mis 11 años en MSFT desde mediados de los 80 hasta finales de los 90, tuve numerosas “revisiones de Billg” con diferentes equipos de productos, más frecuentemente con el grupo compilador (C, C ++). La comprensión de los detalles técnicos de Bill fue aterradora y todos los grupos de la compañía se prepararon febrilmente para estas reuniones, ya que tenía una extraña habilidad para hacer las tres preguntas que eran (en retrospectiva) muy importantes y que usted y su equipo habían logrado no pensar. de. Los dos temas que exploró constantemente fueron 1) ¿Cómo será exitoso este producto y 2) cómo haremos dinero con él? El primero abrió la puerta a profundizar en detalles sobre productos y tecnología. Por ejemplo, recuerdo una reunión mucho después de que la compañía tuviera un tamaño de miles de millones de dólares; el equipo del compilador estaba buscando construir un compilador RISC. Habíamos adquirido uno de los mejores arquitectos compiladores RISC del mundo. Bill llevó a cabo un sorprendente debate sobre los detalles de este tipo de compilador con el arquitecto en la reunión, basándose simplemente en lo que sabía sobre los compiladores de RISC sin tener ni idea de que lo mencionaríamos. Recuerde que en ese momento estaba supervisando un vasto imperio global con docenas de productos; El grupo compilador era una verruga en el trasero de una pulga en comparación con Office, Server, Windows y productos de bases de datos.

En resumen, en Microsoft en los primeros días, el nivel de coeficiente intelectual era realmente extraordinario (de alguna manera entré de todos modos) y Bill se destacó como el tipo más inteligente en cualquier sala de supergenios. Me imagino que su código refleja ese nivel de inteligencia, aunque nunca he visto nada de eso.

Una nota rápida sobre las cosas de la personalidad. Mucha gente escribe sobre esto, pero rara vez lo veo de personas con experiencia de primera mano. Tuve algunos tratos con Apple en mi trabajo en MSFT pero nunca con Steve Jobs, así que no tengo opinión sobre él. Bill podría ser mordaz, pero personalmente nunca lo vi atacar a nadie personalmente, solo ideas. Odiaba el pensamiento imperfectamente razonado. Yo mismo en mi primera reunión con él le pedí que me dijera que estaba equivocado acerca de algunos hechos que presenté. Tan pronto como le mostré los datos reales, inmediatamente revirtió su opinión y aceptó los datos. Si llegaras a una reunión con una opinión pero sin datos reales que lo respaldaran, él podría y te diría que tu idea fue la “cosa más estúpida que había escuchado”. Los novatos pueden herir sus sentimientos, pero los veteranos sabían que se refería a que IDEA era estúpida, no la persona que la traía. Por supuesto, si HIZO eso una vez, ese sí mismo era un punto de datos sobre la persona en la famosa memoria de Bill. Entonces esa persona en los próximos 20 encuentros podría contar con ser perforada sin descanso para obtener datos.

De todo lo que he leído, Bill fue un desarrollador más que competente. Nunca he visto nada que sugiera que Steve haya escrito código profesionalmente.

Ahora un dato divertido: aquí hay un enlace a la página de Wikipedia para el Tandy TRS-100, posiblemente la primera “computadora portátil” del mundo. https://en.wikipedia.org/wiki/TR
Esto se envió en 1983 y vendió 6,000,000 de unidades, lo cual es muy impresionante para la época.


Aquí viene la parte divertida. En 1983, Microsoft tuvo ingresos de $ 55 millones y una plantilla de 500. Bill era el CEO. Y, sin embargo, según Gates, “parte de mi nostalgia por esta máquina es esta fue la última máquina donde escribí un porcentaje muy alto del código en el producto”.

Ahora eso es muy impresionante. CEO de la compañía más popular del mundo, con $ 55 millones en ingresos y un equipo de 500 para administrar, ¡y aún así puede obtener un código serio!


Editar para agregar: espero que les haya gustado esta respuesta. Desearía poder escribir algunas respuestas más como esta, pero desafortunadamente estoy tomando un descanso de Quora, y he aquí por qué: estoy tomando un descanso voluntario de Quora mientras reevalúo mi futuro aquí por Scott Welch en Scott’s House O ‘ Respuestas de uso múltiple

Gates: Siempre tuve la impresión de que Paul Allen era el mejor programador, aunque Gates ciertamente podía programar.

Empleos: No pudo programar su salida de una bolsa de papel, pero no fue necesario que Wozniak hiciera el trabajo pesado.

Lo que más me atrae es el seguimiento de culto que estos dos han ganado a lo largo de los años. Creo que no eran tanto visionarios, sino personas que tomaron las ideas de otras personas, las mejoraron (o, en el caso de Jobs con Lisa, las arruinaron y luego las abandonaron), las comercializaron y luego afirmaron que se me ocurrió la idea en primer lugar. Jobs se apropió del trabajo de Xerox PARC para crear las primeras computadoras GUI / mouse, Lisa y MAC. El iPod era simplemente una extensión tecnológica del Sony Walkman, y desde allí es un paso sencillo fusionar la tecnología con el teléfono celular para crear el iPhone.
Unos años después de que salió la Mac, Gates a su vez se apropió de Windows de Apple. ¿Cuál fue el primer programa de procesamiento de textos para PC? Wordstar La primera hoja de cálculo? VisiCalc. ¿Base de datos? dBase III. Gates simplemente tomó estas ideas y las convirtió en la suite Office, lo que, por supuesto, fue un marketing brillante. Su comportamiento en las guerras del navegador fue vergonzoso.

Visionarios? No. Intenta con Alan Kay, Doug Engelbart y similares. Eran las personas que realmente veían las cosas de manera diferente.

Jobs comentó alguna vez: “siempre hemos sido desvergonzados por robar grandes ideas”. Vea abajo.

Steve nunca fue un programador. En una escena divertida de la serie “Silicon Valley”, el friki de la cabeza llamó a Steve “poser” porque no codificó. Por supuesto, Steve no era un impostor: era el hombre de negocios de los dos Steve (Wozniak era el otro) que fundó Apple. Woz era un ingeniero eléctrico autodidacta de nivel genio que, mientras estaba en la escuela secundaria, descubrió cómo reducir el recuento de chips en los diseños de tablero que su padre trajo a casa para trabajar. Esto lo ayudó a diseñar Apple I y II. Lo más probable es que nadie más en el mundo podría haberlo hecho tan bien. Jobs fue excelente para escarbar partes y hacer tratos para monetizar el trabajo de Woz; dejado en paz, Woz lo habría regalado. Más tarde, después de un paréntesis forzado por parte de Apple, Jobs volvió a enderezar el barco reduciendo el conjunto de productos de docenas a solo cuatro y aplicando su perspicacia al diseño del producto y la estrategia comercial (no fue perfecto, pero recordamos sus éxitos, no sus fracasos, como debería ser).
He oído que Bill G. escribió el Microsoft Basic original e hizo un buen trabajo, a menudo despertando con la nariz en el teclado durante todas las sesiones nocturnas de codificación. Al igual que Steve, su principal contribución fue en el negocio. A diferencia de Steve, parece menos motivado por la estética que por ganar en el mercado con productos poco elegantes que fueron “lo suficientemente buenos” para proteger la posición dominante de Microsoft en los sistemas operativos (cortesía de IBM) y la suite Office. Durante mucho tiempo, el enfoque de Bill G fue más exitoso, pero Apple tiene la delantera ahora.

Bill Gates provenía de un entorno de clase media alta (sus padres eran abogados exitosos). Bill era extremadamente bueno técnicamente. En una entrevista, dice que se habría sorprendido mucho si 50 niños en el mundo hubieran practicado la codificación en la misma máquina porque era realmente una rareza en ese momento. Cuando Gates tenía 19 años, tenía la habilidad suficiente para abandonar y encontrar a Microsoft.
Steve Jobs, por otro lado, realmente provenía de un fondo modesto. Su padre sabía cómo arreglar las cosas y estaba interesado en la electrónica, lo que hizo que Steve se interesara.
Sin embargo, Jobs nunca fue un gran programador o ingeniero, sabía un poco BÁSICO, pero no demasiado. Jobs fue increíble en diseño estético y ventas. Sabía cómo crear y vender un producto hermoso, mientras que Wozniak era un genio del hardware y también un excelente programador. Se complementaron entre sí.
De todos modos, tanto Gates como Jobs fueron excelentes en los negocios. Pero Gates era un ingeniero de software superior y Jobs sabía cómo diseñar y vender.

Gates: muy técnicamente sólido, gran programador. Empleos: tecnología entendida, no se programó en absoluto.

Pero realmente las habilidades técnicas y de programación no eran su talento más importante. Jobs entendió que las computadoras eventualmente se usarían para mucho más que solo números, y Steve Wozniak los construyó. Gates tenía un sentido comercial despiadado y le dio la vuelta a todo cuando, en lugar de simplemente (re) vender DOS a IBM, en su lugar, solicitó una parte de cada PC vendida. Este acuerdo comercial fue la piedra angular del imperio de Microsoft.

En general, aunque Gates tenía una comprensión más detallada de las tecnologías, Jobs tenía una habilidad especial para darse cuenta de cuál sería adoptado más rápido que cualquier otra persona: OOP, GUI, MP3, pantallas táctiles, etc. y llevarlos a los productos de Apple mejor que la competencia.

Aunque nunca tuve una interacción directa con Bill Gates en términos de programación, recuerdo que en una reunión de la compañía a fines de la década de 1990 alguien le hizo una pregunta sobre Internet, y habló sobre este pequeño programa que había escrito que ponía a CNN, MSNBC, y otros dos sitios de noticias en cuatro ventanas diferentes en un monitor, y los actualizaba continuamente, para que pudiera estar al tanto de las noticias. Aunque ese tipo de funcionalidad parece poco convincente para los estándares actuales, fue bastante revolucionario en ese momento y recuerdo haber pensado lo genial que era que BillG aún escribiera código, mientras dirigía una empresa que en ese momento tenía casi 70,000 empleados.

Si Bill Gates escribió el intérprete BASIC durante los años 70, debe ser bastante bueno, aunque, hoy en día, no puede pasar las entrevistas de Google o Facebook, cuando le piden que escriba un programa que genere toda la permutación de algunos elementos, y luego pregunte debe escribir un programa que genere todas las combinaciones (n elija k) de algunos elementos, y diga que aunque su respuesta sea correcta, pero en esos 20 minutos, su solución aún no es la más óptima, mientras que los propios entrevistadores tienen errores su código en la empresa, que después de 1 año, todavía no se puede arreglar.

Steve Jobs, él apestaba en la programación o el lado lógico de las cosas. Traería a su amigo Steve Wozniak para programar en Atari, y lo curioso es que el gerente de Atari sabía que si contrataban a Steve Jobs, entonces Wozniak vendría a trabajar por la noche, por eso contrataron a Steve Jobs. Pero si Bill Gates es la persona súper lógica del cerebro izquierdo, Steve Jobs es la persona del cerebro súper derecho. Él es la emoción, “siente” lo que la gente siente tipo de persona. La emoción es una gran parte de Steve Jobs, ya que una vez, el padre de Wozniak le dijo a Steve Jobs que Jobs no merecía ninguna parte de Apple, porque Wozniak hizo todo el diseño técnico y la creación de la computadora Apple, en ese momento Steve Jobs simplemente lloró. Pero es debido a esto, lo que hace que los productos de Apple sean tan intuitivos y fáciles de usar, mientras que el producto de Microsoft (y hoy en día Google) es “correcto” pero no intuitivo de usar o succionar de alguna manera. En una tienda Best Buy, todos los niños rodearán los productos de Apple, mientras que las tabletas de Android se abandonan en una mesa con algunos adultos al azar que lo miran durante unos minutos.

Algunas excelentes respuestas sobre BillG. Aquí hay un fragmento del sitio web de Wozniak:

¿Steve Jobs sabe codificar?
Woz
Steve nunca codificó. No era ingeniero y no hizo ningún diseño original, pero era lo suficientemente técnico como para alterarlo, cambiarlo y agregarlo a otros diseños. Hice todo el Apple I y Apple] [yo mismo, incluidas las opciones de funciones. Hice todo el BASIC yo mismo (está escrito a mano, ya que no podía pagar un ensamblador). La única persona que ayudó a escribir algo de Apple] [código fue Allen Baum, quien ayudó con el programa ‘monitor’.

Pirates of the Silicon Valley (película de 1999) sería un buen lugar para comenzar a conocer a estas personas.
Steve Jobs era más un biz. persona en lugar de un genio tecnológico. Aunque trabajó durante un tiempo para Atari como técnico, fue Steve Wozniak quien se encargó de la mayor parte del diseño inicial del circuito y del trabajo técnico en Apple. Sin embargo, para no quitarle crédito, su carisma y sus ideas fueron cruciales para el éxito comercial temprano de Apple.
Bill Gates, por el contrario, estaba bastante metido en la programación y trabajó en las primeras tareas de programación para Microsoft junto con Paul Allen, aunque debe haber disminuido tan pronto como se cambió al extremo comercial de la empresa. Curiosamente, tiene en su haber un algoritmo óptimo para el problema de clasificación de Pancake, demostrando un límite superior, junto con el matemático Christos Papadimitriou. Ciertamente dice mucho sobre sus conocimientos técnicos.

Un hombre de negocios y otro de marketing. Hay muchos problemas en hardware y software en los que Bill y Steve no tuvieron impacto, y posiblemente un impacto negativo. Bill logró acabar con mucha competencia que posiblemente era mejor tecnología; sus habilidades de programación o la falta de ellas son irrelevantes. Steve es venerado por ganar mucho dinero (para Apple), pero en su mayoría es la tecnología de otras personas unida mejor: me di por vencido con el mouse de 1 botón.

Si fueran buenos programadores y pasaran su tiempo haciendo eso, entonces no habrían construido las compañías que hicieron. Convertirse en un “buen” programador lleva tiempo, lo que ninguno de ellos puso en lo que puedo decir. NB: muchas de las cosas estaban a nivel de ensamblaje cuando comenzaron, y no querrás hacerlo de todos modos.

Es un error común pensar que Steve Jobs no era técnico.

Si lees la biografía de Jobs o ves imágenes antiguas, lo descubrirás diciendo esto:

“Steve [Wozniak] fue la primera persona que conocí que sabía más sobre electrónica que yo”.

Jobs pasó la mayor parte de su infancia aprendiendo acerca de la electrónica y obteniendo tanta información gratuita como pudo de las personas a su alrededor acerca de la electrónica. Hay una historia preciosa de cómo llamó a Bill Hewlett (de Hewlett Packard) para obtener diodos para su proyecto de contador de frecuencia, y en su lugar le ofrecieron un trabajo de verano en la fábrica de la compañía, donde obtuvo aún más experiencia técnica. Ver

Entonces, si bien Bill fue fácilmente el mejor programador, Steve todavía era muy sólido técnicamente y podría decirse que más que Bill si se tiene en cuenta su amplitud de conocimientos y su relevancia para Apple.

Si bien Bill Gates es conocido por sus habilidades en programación, creo que Steve Jobs no fue “malo” en la programación, al menos en sus últimos años. Aquí hay dos razones:

1. La programación se trata principalmente de descubrir cómo resolver problemas utilizando pasos simples: Steve pudo reconocer y desglosar las oportunidades comerciales e introducir un enfoque paso a paso para todas las empresas. Esto muestra que Steve es bueno programando el pensamiento.

2. No pretendas ofender a nadie que literalmente no puede codificar nada, la programación es bastante fácil … Muchas personas que afirman que no pueden codificar, es en gran parte porque nunca intentaron codificar. A los programadores a menudo les gusta hacer que parezca más difícil impresionar a las personas. La verdad es que programar para principiantes es bastante fácil, especialmente algo como Objective-C o Java (en comparación con lo que Bill comenzó). Steve podría no haber sabido programar en BASIC, pero obviamente se ha expuesto a los idiomas modernos. Recuerdo que cuando aprendí C, ni siquiera necesitaba un libro de texto. Solo miré los códigos de muestra de otras personas y descubrí cómo codificar en C. Steve podría no codificar muy rápido, pero estoy seguro de que tiene la capacidad de codificar.

Busqué un poco y encontré esto:
Microsoft BASIC para el código fuente original 6502 [1978]

La línea de copyright dice “1976”, que podría ser el año de finalización de la versión 1.0. En aquel entonces, Bill ya usaba las ventajas de una arquitectura de conjunto de instrucciones común y reutilizaba el código para múltiples plataformas. En teoría, el código P utilizado como representación interna del programa BASIC debe ser intercambiable entre estos intérpretes, siempre que no toquen elementos específicos del sistema (como lo hacen las instrucciones PEEK, POKE y SYS). Java alguien?

Aquí hay otra bonita historia:
http://www.theregister.co.uk/200

También recomiendo el libro de Paul Allen “Idea Man” para aprender un poco sobre Bill Gates y Steve Jobs.

Respondo a la competencia técnica de Bill Gate. En primer lugar, al igual que la construcción de una nueva casa, se necesitan muchas personas calificadas diferentes para construir la casa. Para equiparar la habilidad de Bill Gate, él era el electricista que cableó la casa. Se conectó a lo que dictaba el plano en la mano. El plano fue creado por un arquitecto. Bill Gates puede haber sido un buen “programador”, pero no fue el diseñador de la aplicación. Leonard Rattini, CCP (Google “ICCP” para saber qué significa un CCP)

No sé sobre Steve, pero Bill fue un caso interesante.

Tuve el honor de conocer a Bill Gates cuando trabajaba en la investigación de Microsoft, y actualmente soy arquitecto de software. Descubrí que estaba muy orientado a los detalles sobre las cosas que le importaban, pero tenía mucho que decir informal sobre las cosas que no le importaban.

Desde una perspectiva de programación, esto resultó en un código notablemente sucinto.

Entonces para responder a su pregunta … Bill Gates fue un muy buen programador.

Basado en demasiadas biografías y otros libros de los primeros días de Apple, incluidos los recuerdos personales de Woz, Jobs nunca fue un verdadero programador. De hecho, cuando se las arregló para abrirse camino en el Atari de Nolan Bushnell, Jobs insistió en hacer toda su “codificación” por la noche. Y eso se debía a que no había nadie cerca cuando iba a la puerta trasera de ese almacén y dejaba entrar a su amigo, Woz, y lo dejaba hacer todo el trabajo de código que luego entregaría a la mañana siguiente. Como luego confirmaron Bushnell y Woz.

Gates tenía una excelente comprensión y memoria de la codificación.

Steve Jobs fue la mente visionaria y de negocios. Woz fue el programador hasta que Apple pasó al Apple II. En los días de los 8080, Z80, M6502 y demás, todo el sistema operativo básico Apple entero podía ejecutarse en 8k de RAM y tenía espacio para aplicaciones y datos. Recuerdo que Computerland, que se vendió como mi Apple II de primera generación, cargó un sistema operativo en una computadora de bus Imsai 8080 S-100 utilizando interruptores binarios con el sistema operativo en un cuaderno encuadernado en espiral escrito a mano con tinta. Esos fueron días de codificación mucho más simples.