¿Quién es considerado el mejor programador de computadoras de todos los tiempos?

Hablemos de programación en términos de desarrollar algo grande.

Los programadores más grandes de todos los tiempos

1.Dennis Ritchie

Dennis MacAlistair Ritchie fue un científico informático estadounidense a quien se le atribuye la formación y el desarrollo de la era digital. Creó el lenguaje de programación C más utilizado que se usa hoy en día en varias aplicaciones de software, desarrollo de sistemas integrados, sistemas operativos y ha influido en la mayoría de los lenguajes de programación modernos.

Dennis también co-creó el sistema operativo UNIX. Por su trabajo, en 1983 recibió el Premio Turing de la ACM, la Medalla Hamming en 1990 del IEEE y en 1999 la Medalla Nacional de Tecnología del presidente Clinton. Él era el jefe del Departamento de Investigación de Software de Sistemas de Lucent cuando se retiró en 2007. Falleció el 12 de octubre de 2011, lo que provocó que la distribución de Linux de Fedora 16 se publicara en su memoria.

2. Linus Torvalds

Linus Benedict Torvalds es un ingeniero de software finlandés en Estados Unidos, que fue el principal impulsor del desarrollo del kernel de Linux. Su creación se atribuye a él y más tarde se convirtió en el arquitecto principal del núcleo de Linux, y ahora es el coordinador del proyecto.

Linus fue honrado con el Premio de Tecnología del Milenio 2012 por la Academia de Tecnología de Finlandia debido a su creación de un nuevo sistema operativo de código abierto para computadoras que lleva al uso generalizado del kernel de Linux. También creó el siempre popular sistema de control de versiones distribuido llamado Git en 2005, así como el software de registro de buceo Subsurface.

3.Bjarne Stroustrup

Bjarne Stroustrup es un científico informático danés a quien se le atribuye la creación y el desarrollo del lenguaje de programación C ++ ampliamente utilizado y de gran éxito. No solo lo inventó, sino que también lo desarrolló, todo él mismo, escribiendo sus primeras definiciones, produciendo su primera implementación, formulando sus criterios de diseño, diseñando todas sus instalaciones principales, procesando propuestas de extensión para el comité de estándares y su libro de texto estándar.

Bjarne trabaja actualmente como profesor y titular de la Cátedra de Facultad de Ingeniería en Ciencias de la Computación en la Universidad de Texas A&M.

Whoa! Algunos grandes nombres tomados. Sin embargo, en lo que se refiere a mi voto, iría al Sr. Bill Joy .

Bill Joy se enganchó a Ciencias de la Computación desde sus días de licenciatura en la Universidad de Michigan en 1971. La Universidad de Michigan tenía instalaciones de vanguardia en ese entonces y también uno de los mejores programas de Ciencias de la Computación que existen.
En 1975, se matriculó en la Universidad de California en Berkeley y en el Grupo de Investigación de Sistemas Informáticos de Fabry CSRG en la versión de Berkeley Software Distribution (BSD) del sistema operativo Unix .
Su reputación como programador informático es legendaria, con una anécdota contada a menudo que escribió el editor vi en un fin de semana.
Joy también escribió su propia pila TCP / IP de alto rendimiento. Para aquellos que no saben qué es eso, solo recuerden que escribió un pedazo de código crucial que nos permite acceder a Internet.
Después de graduarse, fue cofundador de Sun Micro-Systems . Allí reescribió Java , uno de los lenguajes de programación de estreno de las últimas dos décadas.
En 2011, fue incluido como miembro del Museo de Historia de la Computación por su trabajo en el sistema Unix de Berkeley Software Distribution (BSD) y la cofundación de Sun Microsystems.

Fuente: Wikipedia, Outliers por Malcomm Gladwell.

12. Ada Lovelace
Augusta Ada King, más conocida comúnmente como Ada Lovelace, fue una matemática inglesa y la primera programadora de computadoras del mundo y fue principalmente conocida por su trabajo en la computadora mecánica de propósito general de Charles Babbage, el Analytical Engine. Las notas que creó para el motor analítico incluyen lo que se reconoce como el primer algoritmo creado únicamente con la intención de ser procesado por una máquina o, en otras palabras, el primer programa de computadora del mundo.
Ada era una chica talentosa desde el principio con una mentalidad poco común que predijo que algún día las computadoras trascenderían simplemente de ser utilizadas para procesar números, totalmente en contra de la opinión popular de esa época. La inspiración principal de Ada vino de su padre y sin ella, quien sabe cuánto tiempo le tomaría a otra persona diseñar un programa de computadora.

11. Niklaus Wirth
Niklaus Emil Wirth es un científico informático suizo que es considerado un pionero de la programación informática entre otros campos en ingeniería de software. Él es mejor conocido por diseñar varios lenguajes de programación, incluyendo Pascal, Euler, Algol W, Modula, Modula-2, Oberon, Oberon-2 y Oberon-07. También diseñó el lenguaje de programación simple PL / 0 para ilustrar el diseño del compilador que formó la base para muchas clases de diseño de compiladores universitarios.
Niklaus había trabajado anteriormente en parte del equipo de diseño e implementación de los sistemas operativos Lilith y Oberon, así como en el sistema de simulación y diseño de hardware digital de Lola. El trabajo pionero de Wirth y el desarrollo de lenguajes informáticos innovadores lo ayudaron a ganar el prestigioso Premio Turing en 1984.

10. Bill Gates
Podría decirse que uno de los programadores de computadoras más populares de todos los tiempos, Bill Gates es un magnate de negocios, programador de computadoras, pionero de PC, inversionista y filántropo estadounidense. Es cofundador, ex funcionario ejecutivo y actual presidente de Microsoft, que es la compañía de software para computadoras personales más grande del mundo. Es el empresario más conocido de la revolución de las computadoras personales y ayudó a desarrollar Windows, que es el sistema operativo más utilizado en el mundo.
Durante los primeros 5 años en Microsoft, además de manejar el lado comercial de la compañía, Gates también supervisó personalmente cada código que la compañía envió, a menudo corrigiendo los que consideraba incorrectos o defectuosos. Aparte de sus habilidades de programación, es ampliamente elogiado por su generosidad y buena planificación de inversiones, pero es muy criticado por sus tácticas comerciales anticompetitivas.

9. James Gosling
James Arthur Gosling es un científico informático canadiense y un oficial de la orden de Canadá. Ha codificado varios programas, pero es ampliamente conocido por su creación del exitoso lenguaje de programación Java de uso común en 1994, así como por su máquina virtual y compilador originales. Él atribuye su creación a sus días de estudiante de posgrado, donde creó una máquina virtual con código p para la computadora DEC VAX del laboratorio, de modo que su profesor pudiera ejecutar los programas de UCSD en Pascal y luego se dio cuenta de que se podía lograr la ejecución de arquitectura neutral para programas ampliamente distribuidos. Por una técnica similar.
James también ha hecho importantes contribuciones a varios otros sistemas de software, como NeWS y Gosling Emacs. Debido a sus logros extraordinarios, Gosling fue elegido miembro asociado extranjero de la Academia Nacional de Ingeniería de los Estados Unidos.

8. Guido van Rossum
Guido van Rossum es un programador informático holandés que es el autor del popular lenguaje de programación Python que se usa ampliamente en la actualidad. Su creación de Python lo llevó a ser declarado “Dictador Benevolente para la Vida” de In the Python community, lo que significa que continúa supervisando el proceso de desarrollo de Python, tomando decisiones donde sea necesario, para siempre.
Rossum había desarrollado Python mientras trabajaba en Google, donde también creó Mondrian (un sistema de revisión de códigos utilizado internamente por Google) y Rietveld. Después de trabajar para Google durante 7 años, ahora trabaja en Dropbox. Rossum ha sido reconocido como un ingeniero distinguido por la Asociación de Maquinaria de Computación y también recibió el Premio NLUUG en mayo de 2003.

7. Ken Thompson
Kenneth Lane Thompson, o simplemente “Ken”, como lo llama la comunidad de hackers, es un pionero estadounidense de la informática. Thompson había diseñado e implementado el sistema operativo original Unix y también inventó el lenguaje de programación B (el antecesor directo del famoso lenguaje de programación C), y fue uno de los primeros desarrolladores de los sistemas operativos Plan 9.
Desde 2006, Thompson también ha inventado el lenguaje de programación Go mientras trabajaba en Google. Las otras contribuciones de Ken incluyeron su trabajo sobre expresiones regulares, los primeros editores de texto de computadora QED y ed, la definición de la codificación UTF-8, e incluso su trabajo sobre ajedrez de computadora que incluyó la creación de bases de mesa de finales y la máquina de ajedrez Belle.

6. Donald Knuth
Donald Ervin Knuth es un científico informático y matemático estadounidense, así como un profesor emérito (profesor retirado) en la Universidad de Stanford. Knuth ha sido calificado como el “Padre del análisis de algoritmos”, ya que ha contribuido al desarrollo de un análisis riguroso de la complejidad computacional de los algoritmos y las técnicas matemáticas formales sistematizadas para ello.
Knuth también ha popularizado la notación asintótica y también es el creador del sistema de composición tipográfica por computadora TeX y del sistema de representación y lenguaje de definición de fuente METAFONT. Ha contribuido a varias ramas de la informática teórica y también ha creado la familia de tipografías Computer Modern.

5. Brian Kernighan
Brian Wilson Kernighan es un científico informático canadiense que trabajó en Bell Labs junto a Ken Thompson y Dennis Ritchie. Es el co-creador y desarrollador de UNIX. También es coautor de los lenguajes de programación AWK y AMPL. Kernighan es actualmente profesor y representante del Departamento de Pregrado en el Departamento de Ciencias de la Computación de la Universidad de Princeton.
Kernighan se hizo famoso coautor del primer libro sobre el lenguaje de programación C y autor de muchos programas UNIX como ditroff y cron para la versión 7 Unix. Su otro trabajo notable incluye sus críticas populares para Pascal llamadas “Por qué Pascal no es mi lenguaje de programación favorito”.

4. Tim Berners-Lee
Sir Timothy John “Tim” Berners-Lee es un científico informático británico reconocido en todo el mundo por su creación de la World Wide Web, así como por la implementación de la primera comunicación exitosa entre un cliente del Protocolo de transferencia de hipertexto (HTTP) y Servidor vía internet en noviembre de 1989.
Tim ha ganado múltiples premios por su ingeniosidad pionera, como convertirse en uno de los seis miembros del Salón de la Fama de la World Wide Web y uno de los cinco pioneros de Internet y de la Web que han recibido el primer Premio Queen Elizabeth de Ingeniería. También es el titular de la Cátedra Fundadores en el Laboratorio de Informática e Inteligencia Artificial del MIT.

3. Bjarne Stroustrup
Bjarne Stroustrup es un científico informático danés a quien se le atribuye la creación y el desarrollo del lenguaje de programación C ++ ampliamente utilizado y de gran éxito. No solo lo inventó, sino que también lo desarrolló, todo él mismo, escribiendo sus primeras definiciones, produciendo su primera implementación, formulando sus criterios de diseño, diseñando todas sus instalaciones principales, procesando propuestas de extensión para el comité de estándares y su libro de texto estándar.
Bjarne trabaja actualmente como profesor y titular de la Cátedra de Facultad de Ingeniería en Ciencias de la Computación en la Universidad de Texas A&M.

2. Linus Torvalds
Linus Benedict Torvalds es un ingeniero de software finlandés en Estados Unidos, que fue el principal impulsor del desarrollo del kernel de Linux. Su creación se atribuye a él y más tarde se convirtió en el arquitecto principal del núcleo de Linux, y ahora es el coordinador del proyecto.
Linus fue honrado con el Premio de Tecnología del Milenio 2012 por la Academia de Tecnología de Finlandia debido a su creación de un nuevo sistema operativo de código abierto para computadoras que lleva al uso generalizado del kernel de Linux. También creó el siempre popular sistema de control de versiones distribuido llamado Git en 2005, así como el software de registro de buceo Subsurface.

1. Dennis Ritchie
Dennis MacAlistair Ritchie fue un científico informático estadounidense a quien se le atribuye la formación y el desarrollo de la era digital. Creó el lenguaje de programación C más utilizado que se usa hoy en día en varias aplicaciones de software, desarrollo de sistemas integrados, sistemas operativos y ha influido en la mayoría de los lenguajes de programación modernos.
Dennis también co-creó el sistema operativo UNIX. Por su trabajo, en 1983 recibió el Premio Turing de la ACM, la Medalla Hamming en 1990 del IEEE y en 1999 la Medalla Nacional de Tecnología del presidente Clinton. Él era el jefe del Departamento de Investigación de Software de Sistemas de Lucent cuando se retiró en 2007. Falleció el 12 de octubre de 2011, lo que provocó que la distribución de Linux de Fedora 16 se publicara en su memoria.


Dennis Ritchie (9 de septiembre de 1941 – c. 12 de octubre de 2011), si nada más, es posiblemente el programador más influyente. Creó tanto el lenguaje de programación C como el Unix. Sistema operativo (con colega de larga data Ken Thompson). Ser autor de uno de estos proyectos tan exitosos te garantizaría un lugar en cualquier salón de la fama de programación, pero crear dos de estos proyectos es algo verdaderamente único. Es difícil exagerar la importancia de estos logros, ya que una gran parte de todos los programas que se ejecutan en la actualidad están escritos o utilizan herramientas y bibliotecas escritas en C o sus derivados (C ++, Java, etc.) y / o se ejecutan en Unix o sus derivados (Linux, BSD, etc.)

Yo podría nominar a estos candidatos

Linus Torvalds

  • Todo el mundo está seguro de que puede vencer a Zuckerberg, Bill Gates en el campo de la programación.
  • Creador de Linux.
  • También creó el sistema de control de revisión Git, así como el software de registro de buceo Subsurface .
  • En un entorno tan intenso y paranoico, donde se estaban haciendo cantidades colosales de dinero e incluso cantidades aún más colosales de dinero por hacer, nadie podría haber previsto el lanzamiento de un sistema operativo libre, abierto y colaborativo como Linux.
  • Fue honrado, junto con Shinya Yamanaka, con el Premio de Tecnología del Milenio 2012 de la Academia de Tecnología de Finlandia.

Mi próximo candidato sería

James gosling

  • Padre del lenguaje de programación JAVA que es ampliamente utilizado en todo el mundo.
  • Descubrió las computadoras a la edad de 13 años.
  • Desarrolló un proyecto llamado NEWS (Network Extensible Windowing System), un sistema basado en intérpretes de PostScript para distribuir el poder de procesamiento de la computadora a través de una red.
  • También escribió la primera versión de Emacs para UNIX.
  • Es el único programador que debe agregarse el perfil con etc. Ha trabajado en todo tipo de software, desde el análisis terrestre para telemetría desde el satélite ISIS II hasta el Unix Emacs original.

El siguiente es del Open Source.
Richard Stallman

  • Fundó la Free Software Foundation, entre otros proyectos bien conocidos en informática, y es una figura muy importante en la historia de la tecnología de la información.
  • Redactó la licencia GPL utilizada por Linux, proyectos GNu, proyectos abiertos y derivados FSF. Es oficialmente la licencia más utilizada del mundo.
  • Es considerado el padre del movimiento Open Source.
  • Programó las primeras versiones de GCC y Emacs.

Hola, hay 12 programadores más grandes de todos los tiempos

12. Ada Lovelace

Augusta Ada King, más conocida comúnmente como Ada Lovelace, fue una matemática inglesa y la primera programadora de computadoras del mundo y fue principalmente conocida por su trabajo en la computadora mecánica de propósito general de Charles Babbage, el Analytical Engine. Las notas que creó para el motor analítico incluyen lo que se reconoce como el primer algoritmo creado únicamente con la intención de ser procesado por una máquina o, en otras palabras, el primer programa de computadora del mundo.

Ada era una chica talentosa desde el principio con una mentalidad poco común que predijo que algún día las computadoras trascenderían simplemente de ser utilizadas para procesar números, totalmente en contra de la opinión popular de esa época. La inspiración principal de Ada vino de su padre y sin ella, quien sabe cuánto tiempo le tomaría a otra persona diseñar un programa de computadora.

11. Niklaus Wirth

Niklaus Emil Wirth es un científico informático suizo que es considerado un pionero de la programación informática entre otros campos en ingeniería de software. Él es mejor conocido por diseñar varios lenguajes de programación, incluyendo Pascal, Euler, Algol W, Modula, Modula-2, Oberon, Oberon-2 y Oberon-07. También diseñó el lenguaje de programación simple PL / 0 para ilustrar el diseño del compilador que formó la base para muchas clases de diseño de compiladores universitarios.

Niklaus había trabajado anteriormente en parte del equipo de diseño e implementación de los sistemas operativos Lilith y Oberon, así como en el sistema de simulación y diseño de hardware digital de Lola. El trabajo pionero de Wirth y el desarrollo de lenguajes informáticos innovadores lo ayudaron a ganar el prestigioso Premio Turing en 1984.

10. Bill Gates

Podría decirse que uno de los programadores de computadoras más populares de todos los tiempos, Bill Gates es un magnate de negocios, programador de computadoras, pionero de PC, inversionista y filántropo estadounidense. Es cofundador, ex funcionario ejecutivo y actual presidente de Microsoft, que es la compañía de software para computadoras personales más grande del mundo. Es el empresario más conocido de la revolución de las computadoras personales y ayudó a desarrollar Windows, que es el sistema operativo más utilizado en el mundo.

Durante los primeros 5 años en Microsoft, además de manejar el lado comercial de la compañía, Gates también supervisó personalmente cada código que la compañía envió, a menudo corrigiendo los que consideraba incorrectos o defectuosos. Aparte de sus habilidades de programación, es ampliamente elogiado por su generosidad y buena planificación de inversiones, pero es muy criticado por sus tácticas comerciales anticompetitivas.

9. James Gosling

James Arthur Gosling es un científico informático canadiense y un oficial de la orden de Canadá. Ha codificado varios programas, pero es ampliamente conocido por su creación del exitoso lenguaje de programación Java de uso común en 1994, así como por su máquina virtual y compilador originales. Él atribuye su creación a sus días de estudiante de posgrado, donde creó una máquina virtual con código p para la computadora DEC VAX del laboratorio, de modo que su profesor pudiera ejecutar los programas de UCSD en Pascal y luego se dio cuenta de que se podía lograr la ejecución de arquitectura neutral para programas ampliamente distribuidos. Por una técnica similar.

James también ha hecho importantes contribuciones a varios otros sistemas de software, como NeWS y Gosling Emacs. Debido a sus logros extraordinarios, Gosling fue elegido miembro asociado extranjero de la Academia Nacional de Ingeniería de los Estados Unidos.

8. Guido van Rossum

Guido van Rossum es un programador informático holandés que es el autor del popular lenguaje de programación Python que se usa ampliamente en la actualidad. Su creación de Python lo llevó a ser declarado “Dictador Benevolente para la Vida” de In the Python community, lo que significa que continúa supervisando el proceso de desarrollo de Python, tomando decisiones donde sea necesario, para siempre.

Rossum había desarrollado Python mientras trabajaba en Google, donde también creó Mondrian (un sistema de revisión de códigos utilizado internamente por Google) y Rietveld. Después de trabajar para Google durante 7 años, ahora trabaja en Dropbox. Rossum ha sido reconocido como un ingeniero distinguido por la Asociación de Maquinaria de Computación y también recibió el Premio NLUUG en mayo de 2003.

7. Ken Thompson

Kenneth Lane Thompson, o simplemente “Ken”, como lo llama la comunidad de hackers, es un pionero estadounidense de la informática. Thompson había diseñado e implementado el sistema operativo original Unix y también inventó el lenguaje de programación B (el antecesor directo del famoso lenguaje de programación C), y fue uno de los primeros desarrolladores de los sistemas operativos Plan 9.

Desde 2006, Thompson también ha inventado el lenguaje de programación Go mientras trabajaba en Google. Las otras contribuciones de Ken incluyeron su trabajo sobre expresiones regulares, los primeros editores de texto de computadora QED y ed, la definición de la codificación UTF-8, e incluso su trabajo sobre ajedrez de computadora que incluyó la creación de bases de mesa de finales y la máquina de ajedrez Belle.

6. Donald Knuth

Donald Ervin Knuth es un científico informático y matemático estadounidense, así como un profesor emérito (profesor retirado) en la Universidad de Stanford. Knuth ha sido calificado como el “Padre del análisis de algoritmos”, ya que ha contribuido al desarrollo de un análisis riguroso de la complejidad computacional de los algoritmos y las técnicas matemáticas formales sistematizadas para ello.

Knuth también ha popularizado la notación asintótica y también es el creador del sistema de composición tipográfica por computadora TeX y del sistema de representación y lenguaje de definición de fuente METAFONT. Ha contribuido a varias ramas de la informática teórica y también ha creado la familia de tipografías Computer Modern.

5. Brian Kernighan

Brian Wilson Kernighan es un científico informático canadiense que trabajó en Bell Labs junto a Ken Thompson y Dennis Ritchie. Es el co-creador y desarrollador de UNIX. También es coautor de los lenguajes de programación AWK y AMPL. Kernighan es actualmente profesor y representante del Departamento de Pregrado en el Departamento de Ciencias de la Computación de la Universidad de Princeton.

Kernighan se hizo famoso coautor del primer libro sobre el lenguaje de programación C y autor de muchos programas UNIX como ditroff y cron para la versión 7 Unix. Su otro trabajo notable incluye sus críticas populares para Pascal llamadas “Por qué Pascal no es mi lenguaje de programación favorito”.

4. Tim Berners-Lee

Sir Timothy John “Tim” Berners-Lee es un científico informático británico reconocido en todo el mundo por su creación de la World Wide Web, así como por la implementación de la primera comunicación exitosa entre un cliente del Protocolo de transferencia de hipertexto (HTTP) y Servidor vía internet en noviembre de 1989.

Tim ha ganado múltiples premios por su ingeniosidad pionera, como convertirse en uno de los seis miembros del Salón de la Fama de la World Wide Web y uno de los cinco pioneros de Internet y de la Web que han recibido el primer Premio Queen Elizabeth de Ingeniería. También es el titular de la Cátedra Fundadores en el Laboratorio de Informática e Inteligencia Artificial del MIT.

3. Bjarne Stroustrup

Bjarne Stroustrup es un científico informático danés a quien se le atribuye la creación y el desarrollo del lenguaje de programación C ++ ampliamente utilizado y de gran éxito. No solo lo inventó, sino que también lo desarrolló, todo él mismo, escribiendo sus primeras definiciones, produciendo su primera implementación, formulando sus criterios de diseño, diseñando todas sus instalaciones principales, procesando propuestas de extensión para el comité de estándares y su libro de texto estándar.

Bjarne trabaja actualmente como profesor y titular de la Cátedra de Facultad de Ingeniería en Ciencias de la Computación en la Universidad de Texas A&M.

2. Linus Torvalds

Linus Benedict Torvalds es un ingeniero de software finlandés en Estados Unidos, que fue el principal impulsor del desarrollo del kernel de Linux. Su creación se atribuye a él y más tarde se convirtió en el arquitecto principal del núcleo de Linux, y ahora es el coordinador del proyecto.

Linus fue honrado con el Premio de Tecnología del Milenio 2012 por la Academia de Tecnología de Finlandia debido a su creación de un nuevo sistema operativo de código abierto para computadoras que lleva al uso generalizado del kernel de Linux. También creó el siempre popular sistema de control de versiones distribuido llamado Git en 2005, así como el software de registro de buceo Subsurface.

1. Dennis Ritchie

Dennis MacAlistair Ritchie fue un científico informático estadounidense a quien se le atribuye la formación y el desarrollo de la era digital. Creó el lenguaje de programación C más utilizado que se usa hoy en día en varias aplicaciones de software, desarrollo de sistemas integrados, sistemas operativos y ha influido en la mayoría de los lenguajes de programación modernos.

Dennis también co-creó el sistema operativo UNIX. Por su trabajo, en 1983 recibió el Premio Turing de la ACM, la Medalla Hamming en 1990 del IEEE y en 1999 la Medalla Nacional de Tecnología del presidente Clinton. Él era el jefe del Departamento de Investigación de Software de Sistemas de Lucent cuando se retiró en 2007. Falleció el 12 de octubre de 2011, lo que provocó que la distribución de Linux de Fedora 16 se publicara en su memoria.

De: http://www.arkhitech.com/12-grea…

Un buen candidato podría ser Donald Knuth.

Es mejor conocido por su serie de libros llamados ” El arte de la programación de computadoras “, un gigante de múltiples volúmenes que está repleto de detalles completos sobre todo, desde estructuras de datos hasta números aleatorios y análisis de algoritmos (por cierto, se le conoce como el padre de análisis de algoritmos) para clasificar y buscar literalmente todo lo que se encuentre en el medio. Incluyó preguntas a nivel de tesis al final de cada capítulo, y escribió los ejemplos en lenguaje ensamblador para mayor claridad. Lenguaje ensamblador . Si pensabas que Bill Gates era un buen científico informático, decía lo siguiente sobre el libro:

“Si crees que eres un muy buen programador … lee el Arte de la Programación de Computadoras de Knuth … Definitivamente deberías enviarme un currículum si puedes leerlo todo”.

Comenzó a escribirlo en 1962 y ha completado 4 volúmenes hasta el momento. Se espera que el volumen 5 salga alrededor de 2020, lo que significa que habrá escrito los primeros 5 durante 58 años. Y tiene dos más planeadas .

Sin mencionar el hecho de que escribió TeX, uno de los lenguajes de composición tipográfica más utilizados en el mundo. O el lenguaje METAFONT. O WEB y CWEB. O la programación letrada.

También ganó la Medalla John von Neumann, la Medalla Franklin, el Premio Turing y una Medalla Nacional de la Ciencia. Alguien incluso ganó un premio por su trabajo en El arte de la programación de computadoras, dando derecho a Knuth como profesor emérito del Arte de la programación de computadoras .

Bastante genial si me preguntas.

Hay muchos programadores que en algún momento podrían considerarse como uno de los mejores del mundo en su oficio. Algunos por su trabajo como informáticos y proyectos que han creado, otros por ser políglotas (conocimientos y habilidades en muchos idiomas) y otros por su trabajo en un solo idioma.

Fuera de los nombres, los que voy a mencionar, se usa el conocimiento para crear una tecnología o lenguaje de programación (o influencia) de proporciones épicas:

1) Dennis Ritchie
Diseñé y creé el lenguaje de programación C con Brian Kernighan. Reescribió el kernel de Unix en C con Ken Thompson. Más del 99% de todos los núcleos utilizados por los sistemas creados desde el inicio del lenguaje de programación C, se han codificado en C.

2) Brian Kernighan
Diseñé y creé el lenguaje de programación C con Dennis Ritchie. Fue co-creador y coautor del lenguaje de programación AWK. La ‘K’ en AWK representa su apellido. También es coautor del lenguaje de programación AMPL y estuvo a la vanguardia de la filosofía de UNIX. ¡Muchos lo consideran el mejor programador de C que jamás haya caminado sobre el planeta tierra!

3) Ken Thompson
El empleado de Google que creó el lenguaje de programación Go. Antes de crear Go, creó el lenguaje de programación B y diseñó e implementó el sistema operativo original de Unix (que es en lo que se basan MacOSx, iOS, FreeBSD y Solaris).

4) Linus Torvalds
Un gran programador de C que leyó ‘Sistemas operativos modernos’ de Andrew Tanebaums y decidió crear el kernel del sistema operativo Linux. Que es lo que usan Android, ChromeOS, Ubuntu, Fedora, RedHat, Oracle Linux, Debian, etc. (obtienes la imagen), para sus núcleos. Aunque escribo esto en mi Macbook Air, personalmente poseo 6 máquinas Linux que funcionan con: Ubuntu, ChromeOS o Fedora (también tengo un dispositivo móvil con Android).
¡Uso Ubuntu diariamente!

5) James Gosling
Un doctorado de Carnegie Melon. Mientras trabajaba para Sun Microsystems, él y otros dos crearon el lenguaje de programación Java. ¡El cual es y probablemente será uno de los cuatro principales lenguajes de programación (por décadas)!

6) Bjarne Stroustrup
¡Creó el lenguaje de programación C ++! El impacto del lenguaje de programación C ++ en el mundo, como Java, siempre será alto. Miles de millones de personas utilizan tecnología todos los días que incorpora Cplusplus en algún momento de la tecnología.

7) Richard Stallman
Un políglota y líder del movimiento del software libre. Fundó la fundación de software libre en la década de 1980. Lo que ha hecho tanto por el mundo de la informática. Si ha utilizado una computadora, es muy probable que haya utilizado una tecnología que incorpora algo que la fundación de software libre ha creado, mantenido o influenciado.

8) Guido van Rossum
Creador del lenguaje de programación Python. Python es uno de los lenguajes más versátiles jamás creados. ¡Se utiliza para desarrollo web, sistemas, interfaces gráficas de usuario y más!
Desde un punto de vista personal, he hecho algo de programación en C ++, Java y Python. Desde que nombré a los creadores de Java y Cplusplus tuve que nombrar a Guido. Él y Python sí lo merecen.

9) Chris Lattner
Con mucho, la persona más joven en esta lista, un empleado de Apple cuyas contribuciones con la máquina virtual de bajo nivel, las herramientas de desarrollo de Xcode, el lenguaje lógico y la creación de los lenguajes de programación Swift; Ya han impactado a más de mil millones de usuarios y desarrolladores. La mayoría de las personas, ya sea que se lo puedan permitir o no, les gusta revisar el nuevo Macbook o el iMac cuando pasean por Best Buy. Lo mismo podría decirse sobre el último dispositivo Android (la edición de Starwars BB-8 acaba de estrenarse).

10) Dr. Peter Norvig

Es el Director de Investigación de Google, autor, ingeniero de software y matemático. Es considerado un experto en LISP (común), codifica numerosos lenguajes Python, Smalltalk (squek), C ++, Java, etc. Ha creado lenguajes híbridos (JScheme). Sus pensamientos sobre convertirse en un programador de primera categoría, son probablemente los más directos y realistas jamás impresos en la web.

¡Hay muchos grandes programadores en el mundo! Muchos también han tenido una gran influencia sobre los usuarios, ya sea directa o indirectamente. Sin mencionar los pocos grandes programadores que también son magnates de los negocios: Gates, Ellison, Zuckerburg, etc. La lista de los 25 principales, o los 100 principales, sería aún más impresionante. La lista probablemente estaría compuesta por algunos directores de investigación, asesinos políglotas y de aprendizaje automático, PhD’ers, ingenieros de compilación; y muy pocos otros que se conocen en sus campus y / o en sus corporaciones como las personas que lo hacen. ¡Diseñan y desarrollan proyectos y crean algoritmos para hacerlo!

¡Espero que esto ayude!

La gente como Knuth o Dijsktra son científicos informáticos bastante fantásticos, pero yo diría que la persona con la mejor habilidad de programación es Richard Stallman.

Cuando trabajó en el MIT AI Lab, trabajó en máquinas Lisp. Una compañía llamada Symbolics escribió el código del sistema operativo para esas máquinas, pero en el MIT AI Lab, Stallman tomaría ese código y lo reescribiría él mismo desde cero. Miraría el código, lo entendería y lo reescribiría. Cuando revocaron su acceso al código fuente, recreaba nuevas características por sí mismo de todos modos y luego las enviaba a sus competidores. Fue capaz de igualar la salida de todo el equipo de desarrollo de Symbolics, que incluía excelentes hackers contratados de MIT.

Como lo dijo Steven Levy: “Puedo ver algo que escribió Stallman, y podría decidir que fue malo (probablemente no, pero alguien podría convencerme de que fue malo), y aún diría:” Pero espere un minuto, Stallman no lo hace. No tengo a nadie con quien discutir toda la noche allí. ¡Está trabajando solo! ¡Es increíble que alguien pueda hacer esto solo! ”

Fuente: Libre como en Libertad.

También (en su mayoría) escribió la primera versión de la mayoría de las partes importantes de GNU: GCC, GDB, GNU Emacs y muchas otras partes del sistema.

12 PROGRAMADORES MÁS GRANDES DE TODOS LOS TIEMPOS

Un programador es una persona que puede crear y modificar programas de computadora. No importa qué tipo de programador pueda ser, todos y cada uno contribuyen con algo a la sociedad, sin importar lo trivial que sea. Sin embargo, hay algunos pocos que han contribuido más allá de lo que generalmente hace un solo programador en toda una vida. Estos programadores son pioneros en sus respectivas áreas y cada uno ha contribuido con algo que ha cambiado completamente la forma en que los humanos acceden a la información y los medios. Así que sin más preámbulos, aquí presentamos los 12 mejores programadores de todos los tiempos:

12. Ada Lovelace

Augusta Ada King, más conocida comúnmente como Ada Lovelace, fue una matemática inglesa y la primera programadora de computadoras del mundo y fue principalmente conocida por su trabajo en la computadora mecánica de propósito general de Charles Babbage, el Analytical Engine. Las notas que creó para el motor analítico incluyen lo que se reconoce como el primer algoritmo creado únicamente con la intención de ser procesado por una máquina o, en otras palabras, el primer programa de computadora del mundo.

Ada era una chica talentosa desde el principio con una mentalidad poco común que predijo que algún día las computadoras trascenderían simplemente de ser utilizadas para procesar números, totalmente en contra de la opinión popular de esa época. La inspiración principal de Ada vino de su padre y sin ella, quien sabe cuánto tiempo le tomaría a otra persona diseñar un programa de computadora.

11. Niklaus Wirth

Niklaus Emil Wirth es un científico informático suizo que es considerado un pionero de la programación informática entre otros campos en ingeniería de software. Él es mejor conocido por diseñar varios lenguajes de programación, incluyendo Pascal, Euler, Algol W, Modula, Modula-2, Oberon, Oberon-2 y Oberon-07. También diseñó el lenguaje de programación simple PL / 0 para ilustrar el diseño del compilador que formó la base para muchas clases de diseño de compiladores universitarios.

Niklaus había trabajado anteriormente en parte del equipo de diseño e implementación de los sistemas operativos Lilith y Oberon, así como en el sistema de simulación y diseño de hardware digital de Lola. El trabajo pionero de Wirth y el desarrollo de lenguajes informáticos innovadores lo ayudaron a ganar el prestigioso Premio Turing en 1984.

10. Bill Gates

Podría decirse que uno de los programadores de computadoras más populares de todos los tiempos, Bill Gates es un magnate de negocios, programador de computadoras, pionero de PC, inversionista y filántropo estadounidense. Es cofundador, ex funcionario ejecutivo y actual presidente de Microsoft, que es la compañía de software para computadoras personales más grande del mundo. Es el empresario más conocido de la revolución de las computadoras personales y ayudó a desarrollar Windows, que es el sistema operativo más utilizado en el mundo.

Durante los primeros 5 años en Microsoft, además de manejar el lado comercial de la compañía, Gates también supervisó personalmente cada código que la compañía envió, a menudo corrigiendo los que consideraba incorrectos o defectuosos. Aparte de sus habilidades de programación, es ampliamente elogiado por su generosidad y buena planificación de inversiones, pero es muy criticado por sus tácticas comerciales anticompetitivas.

9. James Gosling

James Arthur Gosling es un científico informático canadiense y un oficial de la orden de Canadá. Ha codificado varios programas, pero es ampliamente conocido por su creación del exitoso lenguaje de programación Java de uso común en 1994, así como por su máquina virtual y compilador originales. Él atribuye su creación a sus días de estudiante de posgrado, donde creó una máquina virtual con código p para la computadora DEC VAX del laboratorio, de modo que su profesor pudiera ejecutar los programas de UCSD en Pascal y luego se dio cuenta de que se podía lograr la ejecución de arquitectura neutral para programas ampliamente distribuidos. Por una técnica similar.

James también ha hecho importantes contribuciones a varios otros sistemas de software, como NeWS y Gosling Emacs. Debido a sus logros extraordinarios, Gosling fue elegido miembro asociado extranjero de la Academia Nacional de Ingeniería de los Estados Unidos.

8. Guido van Rossum

Guido van Rossum es un programador informático holandés que es el autor del popular lenguaje de programación Python que se usa ampliamente en la actualidad. Su creación de Python lo llevó a ser declarado “Dictador Benevolente para la Vida” de In the Python community, lo que significa que continúa supervisando el proceso de desarrollo de Python, tomando decisiones donde sea necesario, para siempre.

Rossum había desarrollado Python mientras trabajaba en Google, donde también creó Mondrian (un sistema de revisión de códigos utilizado internamente por Google) y Rietveld. Después de trabajar para Google durante 7 años, ahora trabaja en Dropbox. Rossum ha sido reconocido como un ingeniero distinguido por la Asociación de Maquinaria de Computación y también recibió el Premio NLUUG en mayo de 2003.

7. Ken Thompson

Kenneth Lane Thompson, o simplemente “Ken”, como lo llama la comunidad de hackers, es un pionero estadounidense de la informática. Thompson había diseñado e implementado el sistema operativo original Unix y también inventó el lenguaje de programación B (el antecesor directo del famoso lenguaje de programación C), y fue uno de los primeros desarrolladores de los sistemas operativos Plan 9.

Desde 2006, Thompson también ha inventado el lenguaje de programación Go mientras trabajaba en Google. Las otras contribuciones de Ken incluyeron su trabajo sobre expresiones regulares, los primeros editores de texto de computadora QED y ed, la definición de la codificación UTF-8, e incluso su trabajo sobre ajedrez de computadora que incluyó la creación de bases de mesa de finales y la máquina de ajedrez Belle.

6. Donald Knuth

Donald Ervin Knuth es un científico informático y matemático estadounidense, así como un profesor emérito (profesor retirado) en la Universidad de Stanford. Knuth ha sido calificado como el “Padre del análisis de algoritmos”, ya que ha contribuido al desarrollo de un análisis riguroso de la complejidad computacional de los algoritmos y las técnicas matemáticas formales sistematizadas para ello.

Knuth también ha popularizado la notación asintótica y también es el creador del sistema de composición tipográfica por computadora TeX y del sistema de representación y lenguaje de definición de fuente METAFONT. Ha contribuido a varias ramas de la informática teórica y también ha creado la familia de tipografías Computer Modern.

5. Brian Kernighan

Brian Wilson Kernighan es un científico informático canadiense que trabajó en Bell Labs junto a Ken Thompson y Dennis Ritchie. Es el co-creador y desarrollador de UNIX. También es coautor de los lenguajes de programación AWK y AMPL. Kernighan es actualmente profesor y representante del Departamento de Pregrado en el Departamento de Ciencias de la Computación de la Universidad de Princeton.

Kernighan se hizo famoso coautor del primer libro sobre el lenguaje de programación C y autor de muchos programas UNIX como ditroff y cron para la versión 7 Unix. Su otro trabajo notable incluye sus críticas populares para Pascal llamadas “Por qué Pascal no es mi lenguaje de programación favorito”.

4. Tim Berners-Lee

Sir Timothy John “Tim” Berners-Lee es un científico informático británico reconocido en todo el mundo por su creación de la World Wide Web, así como por la implementación de la primera comunicación exitosa entre un cliente del Protocolo de transferencia de hipertexto (HTTP) y Servidor vía internet en noviembre de 1989.

Tim ha ganado múltiples premios por su ingeniosidad pionera, como convertirse en uno de los seis miembros del Salón de la Fama de la World Wide Web y uno de los cinco pioneros de Internet y de la Web que han recibido el primer Premio Queen Elizabeth de Ingeniería. También es el titular de la Cátedra Fundadores en el Laboratorio de Informática e Inteligencia Artificial del MIT.

3. Bjarne Stroustrup

Bjarne Stroustrup es un científico informático danés a quien se le atribuye la creación y el desarrollo del lenguaje de programación C ++ ampliamente utilizado y de gran éxito. No solo lo inventó, sino que también lo desarrolló, todo él mismo, escribiendo sus primeras definiciones, produciendo su primera implementación, formulando sus criterios de diseño, diseñando todas sus instalaciones principales, procesando propuestas de extensión para el comité de estándares y su libro de texto estándar.

Bjarne trabaja actualmente como profesor y titular de la Cátedra de Facultad de Ingeniería en Ciencias de la Computación en la Universidad de Texas A&M.

2. Linus Torvalds

Linus Benedict Torvalds es un ingeniero de software finlandés en Estados Unidos, que fue el principal impulsor del desarrollo del kernel de Linux. Su creación se atribuye a él y más tarde se convirtió en el arquitecto principal del núcleo de Linux, y ahora es el coordinador del proyecto.

Linus fue honrado con el Premio de Tecnología del Milenio 2012 por la Academia de Tecnología de Finlandia debido a su creación de un nuevo sistema operativo de código abierto para computadoras que lleva al uso generalizado del kernel de Linux. También creó el siempre popular sistema de control de versiones distribuido llamado Git en 2005, así como el software de registro de buceo Subsurface.

1. Dennis Ritchie

Dennis MacAlistair Ritchie fue un científico informático estadounidense a quien se le atribuye la formación y el desarrollo de la era digital. Creó el lenguaje de programación C más utilizado que se usa hoy en día en varias aplicaciones de software, desarrollo de sistemas integrados, sistemas operativos y ha influido en la mayoría de los lenguajes de programación modernos.

Dennis también co-creó el sistema operativo UNIX. Por su trabajo, en 1983 recibió el Premio Turing de la ACM, la Medalla Hamming en 1990 del IEEE y en 1999 la Medalla Nacional de Tecnología del presidente Clinton. Él era el jefe del Departamento de Investigación de Software de Sistemas de Lucent cuando se retiró en 2007. Falleció el 12 de octubre de 2011, lo que provocó que la distribución de Linux de Fedora 16 se publicara en su memoria.

Probablemente hay una docena de buenas maneras de responder a esta pregunta, pero si bien considero que la programación es un arte, personalmente juzgo a los programadores como artistas.

Cuando juzgas a los grandes artistas de la historia, pesas su influencia histórica. En otras palabras, personalmente reformulo esta pregunta como “¿Quién es considerado el programador (es) más importante de todos los tiempos?”.

Entonces, ¿quién en los últimos 50 años ha sido el más influyente en otros programadores?

Si bien no soy historiador y solo puedo hablar de mi propia experiencia, consideraría la siguiente lista de programadores enormemente influyentes :

  • Grace Murray Hopper
  • Donald knuth
  • Brian Kernighan
  • Dennis Ritchie
  • Alan Kay (Smalltalk)
  • James gosling

Tenga en cuenta que estoy enumerando personas que influyeron en la programación en lenguaje y no , por ejemplo:

  • Programadores comercialmente exitosos (Gates et. Al.)
  • Programadores que crearon lenguajes muy populares (Brendan Eich, etc.)
  • Visionarios de sistemas operativos (Dave Cutler, Ken Thompson, etc.)
  • Hardware / visionarios de paradigmas (muchos)
  • Programadores que influyeron en el estado práctico / financiero de la programación (Linus Torvalds, Richard Stallman, etc.)
  • Los dioses de la base de datos (EF Codd, CJ Date, Michael Stonebraker)

Sí, estas personas influyeron en lo que programamos, pero no (tanto) la programación como tal.

Pero si intenta responder a la pregunta, “¿por qué hacemos la programación de computadoras de la forma en que lo hacemos?”, Mi primera lista (probablemente incompleta) de arriba es esa lista.

Ken Thompson tiene un lugar único en el panteón de grandes programadores. Android como una variante de Linux es un descendiente directo de UNIX que Ken escribió con Dennis Ritchie. La gran mayoría de los códigos de sistemas están escritos en lenguajes informáticos derivados de B, el lenguaje que creó Ken y que fue la base del lenguaje C de Dennis. Si su lenguaje humano necesita más de lo que ASCII puede manejar, entonces probablemente esté usando UTF8 bajo el capó todos los días. Adivina qué, Ken inventó eso también.

Las contribuciones de Ken, más que nadie en las que puedo pensar, fueron fundamentales y, sin embargo, tan prácticas y atemporales que todavía están en uso diario. Richard Stallman fue un desarrollador importante y es un evangelista aún más importante para la libertad. Las creaciones de código abierto de Linus Torvalds, linux y git, han generado compañías multimillonarias simplemente para respaldarlas. Ken los ha innovado fácilmente. Don Knuth es un gran artista y pensador cuyas ideas están en uso diario. Sus Tex y Metafont están en el núcleo de la industria editorial, pero la mayoría de las personas no entran en contacto tan directo con su trabajo como lo hacen con los de Ken.

Por esta razón, Ken merece el voto de todos como el mejor programador de todos los tiempos.

Acabo de enterarme de que el juego Space Travel de Ken fue el impulso para él para crear UNIX en primer lugar. Aquí está en las propias palabras de Dennis Ritchie:
El viaje espacial juego

El oficio de la programación informática es distinto de la teoría de la informática. El mejor programador es el que escribió el software más grande, más importante y más influyente, y quien hizo las mayores contribuciones prácticas al oficio.

Por lo tanto, mi voto va a Dennis Ritchie. Él es el gigante sobre cuyos hombros están todos los demás.

Subcampeones:

  1. Ken Thompson y Brian Kernighan [empate]
  2. Linus Torvalds
  3. John Carmack
  4. Larry Wall
  5. Richard Stallman (es un imbécil, pero, malditamente puede escribir código)
  6. Donald Knuth (por escribir TeX, frente a su brillante y fundamental trabajo teórico)
  7. [Mención de honor] Eric S Raymond (Él es una leyenda en su propia mente)

Dennis se lleva el primer puesto por un pelo porque es el factor común en dos de las innovaciones más importantes de la era digital: el lenguaje C (Kernighan y Richie) y el sistema operativo Unix (Thompson y Ritchie). Además, tanto Brian como Ken dieron crédito a Dennis por haber hecho la mayor contribución a sus respectivas empresas conjuntas. Cada otra persona en mi lista se basa en la fundación que Dennis creó.

Hay muchos grandes teóricos académicos que no hacen la lista porque son más conocidos por su trabajo teórico que por su habilidad de codificación y sus contribuciones prácticas al oficio.

Lo mejor es una pregunta sin sentido. Un “Salón de la Fama” probablemente debería incluir, en orden alfabético:

  • Ken Batcher – para ordenación bitónica y mucha computación paralela
  • Donald Becker – para controladores de Ethernet y enlaces de canales, etc.
  • Fabrice Bellard – para TCC, QEMU, FFMPEG, etc.
  • Dave Coffin – para dcraw (que decodifica imágenes RAW de cámara)
  • Bill Gates – para el Microsoft BASIC original
  • George H. Goble (ghg) – para el primer UNIX multi-CPU
  • James Gosling – para EMACS
  • Grace Murray Hopper – para CoBOL y tecnología de compilación temprana
  • Bill Joy – para convertir V7 UNIX en BSD
  • Brian Kernighan – para varios software UNIX
  • Donald E. Knuth – por “El arte de la programación de computadoras”
  • Ada Lovelace – por ser la primera, usando el motor analítico de Babbage
  • Dennis Ritchie – para C y UNIX
  • Guy L. Steele Jr. – por su piratería y trabajo en Lisp, C, Java, etc.
  • Bjarne Stroustrup – para piratear (y luego arreglar) C ++
  • Ken Thompson – para B y varios programas UNIX
  • Linux Torvalds – para convertir Minix en Linux
  • Henry S. Warren, Jr., por “Hacker’s Delight”
  • Niklaus Wirth – para Pascal, etc.

Hay muchos otros que son menos conocidos, pero de una grandeza comparable; por ejemplo, Raphael A. Finkel (para Quad Trees y un rango sorprendentemente amplio de otro software), Michael Wolfe (para varios trabajos de compilación), y David A. Padua (para una temible serie de trabajos de compilación de optimización / paralelismo).

Ahora que lo pienso, he tenido el placer de interactuar personalmente con muchos de los anteriores (la mayoría de ellos, en realidad). Esto se debe principalmente a que he hecho un montón de trabajo de compilación durante varias décadas, y la mayoría de los anteriores también son compiladores y / o sistemas operativos, por lo que, naturalmente, nos topamos unos con otros. Quizás estoy parcializado? Aun así, no creo que sea discutible que una fracción muy grande de los mejores programadores terminen haciendo que el compilador o los sistemas operativos funcionan …

Hablemos de criterios y abandonemos la restricción de que sea un solo programador. La mayoría de los programas que tienen un impacto real en el mundo han sido el resultado del trabajo en equipo y creo que es mejor pensar en términos de esos equipos.

Me gustaría utilizar Unix como el programa que tuvo el impacto más extenso y generalizado en la informática en general. Linux es el sistema operativo dominante en casi todo lo que no sea el mercado común de computadoras de escritorio / computadoras portátiles y es un contendiente bastante fuerte en el tercer lugar, incluso en las computadoras portátiles actuales, principalmente en el Chromebook de gama baja y la OLPC y plataformas relacionadas. Pero Linux está influenciado por UNIX … con su arquitectura fundamental, su sistema de llamadas y sus interfaces de sistema de archivos diseñadas de manera deliberada a partir de las de UNIX.

También se podría presentar un argumento sólido para el lenguaje de programación C (el compilador y el conjunto de herramientas que lo rodean) como el desarrollo de software más importante de la historia. Nuevamente llego a esta conclusión basada en la amplitud y la profundidad del impacto. Java está muy influenciado por C … y prácticamente todos los principales lenguajes de programación y sistemas operativos de uso generalizado se implementan en C o Java. (Creo que el núcleo de la JVM todavía está en C).

Así que consideraría a los creadores de UNIX: Dennis Ritchie y Ken Thompson como la primera opción para el título.

Luego observamos la tecnología de software que habilita UNIX y encontramos C … un lenguaje de programación creado por Brian Kernighan y Dennis Ritchie. Entonces encontramos a Ritchie en la intersección de estos dos desarrollos.

También vale la pena señalar que Kernighan, él mismo, otorga esencialmente todo el crédito por el diseño del lenguaje de programación C (o le asigna toda la culpa, si usted es un detractor) a Ritchie:

Kernighan afirmó que no tuvo parte en el diseño del lenguaje C (“es totalmente el trabajo de Dennis Ritchie”). [2]

Brian Kernighan (Wikipedia)

Entonces, basado en esa línea de razonamiento, consideraría que la respuesta es Dennis Ritchie.

No olvidemos a Mel Kaye de Royal McBee, el programador más real de todos los tiempos. Desde el archivo de jerga:

La historia de mel

Esto fue publicado en Usenet por su autor, Ed Nather (), el 21 de mayo de 1983.

Un artículo reciente dedicado al lado machista de la programación.
Hizo la declaración calva y sin barniz:

Los programadores reales escriben en FORTRAN.

Tal vez lo hacen ahora,
en esta decadente era de
Cerveza Lite, calculadoras manuales y software “fácil de usar”
pero de vuelta en los buenos viejos tiempos,
cuando el término “software” sonaba divertido
y Real Computers estaban hechas de tambores y tubos de vacío,
Los programadores reales escribieron en código de máquina.
No es FORTRAN. No RATFOR. Ni siquiera el lenguaje ensamblador.
Codigo de maquina.
Números hexadecimales crudos, sin adornos, inescrutables.
Directamente.

No sea una nueva generación de programadores.
crecer en ignorancia de este glorioso pasado,
Me siento obligado a describir,
lo mejor que pueda a través de la brecha generacional,
Cómo un programador real escribió código.
Lo llamaré mel
porque ese era su nombre.

Conocí a Mel cuando fui a trabajar para Royal McBee Computer Corp.,
una filial ahora extinta de la empresa de máquinas de escribir.
La firma fabricó la LGP-30,
Un pequeño, barato (para los estándares del día).
ordenador con memoria de tambor,
y acababa de empezar a fabricar
El RPC-4000, un muy mejorado,
Más grande, mejor, más rápido – computadora con memoria de tambor.
Los núcleos cuestan demasiado,
y no estaban aquí para quedarse, de todos modos.
(Es por eso que no has oído hablar de la compañía,
o la computadora.)

Me habían contratado para escribir un compilador de FORTRAN.
para esta nueva maravilla y Mel fue mi guía para sus maravillas.
Mel no aprobó los compiladores.

“Si un programa no puede reescribir su propio código”,
preguntó, “¿de qué sirve?”

Mel había escrito,
en hexadecimal,
El programa de computadora más popular de la compañía.
Funcionó en la LGP-30
y jugó blackjack con clientes potenciales
en programas de computación.
Su efecto fue siempre dramático.
El stand de LGP-30 fue embalado en cada show,
y los vendedores de IBM se pararon alrededor
hablando uno al otro.
Si esto realmente vendió computadoras o no
Fue una pregunta que nunca discutimos.

El trabajo de Mel era re-escribir.
El programa de blackjack para el RPC-4000.
(¿Puerto? ¿Qué significa eso?)
La nueva computadora tenía un uno más uno
esquema de direccionamiento,
en el que cada instrucción de la máquina,
además del código de operación
y la dirección del operando necesario,
Tenía una segunda dirección que indicaba dónde, en el tambor giratorio,
Se ubicó la siguiente instrucción.

En el lenguaje moderno,
Cada instrucción individual fue seguida por un ¡A IR!
Pon eso en la pipa de Pascal y ahúmalo.

Mel amaba el RPC-4000
Porque pudo optimizar su código:
Es decir, localizar instrucciones en el tambor.
así que justo cuando uno terminó su trabajo,
Lo siguiente sería simplemente llegar a la “cabeza de lectura”
y disponible para su ejecución inmediata.
Había un programa para hacer ese trabajo,
un “ensamblador optimizado”,
pero Mel se negó a usarlo.

“Nunca sabes dónde van a poner las cosas”,
él explicó, “así que tendrías que usar constantes separadas”.

Pasó mucho tiempo antes de que entendiera ese comentario.
Como Mel conocía el valor numérico
de cada código de operación,
y asignó sus propias direcciones de batería,
Cada instrucción que escribió también podría ser considerada
Una constante numérica.
Él podría recoger una instrucción anterior de “agregar”, por ejemplo,
y multiplicarse por ello,
Si tuviera el valor numérico correcto.
Su código no era fácil de modificar para otra persona.

Comparé los programas optimizados a mano de Mel
con el mismo código masajeado por el programa de ensamblador optimizado,
y Mel siempre corrió más rápido.
Eso se debió a que el método de diseño de programas de arriba hacia abajo
no había sido inventado todavía,
y Mel no lo habría usado de todos modos.
Escribió las partes más internas de su programa primero,
para que tuvieran la primera opción
de las ubicaciones de direcciones óptimas en el tambor.
El ensamblador optimizado no era lo suficientemente inteligente como para hacerlo de esa manera.

Mel nunca escribió bucles de retardo de tiempo, tampoco,
incluso cuando el baldío Flexowriter
Se requiere un retraso entre los caracteres de salida para funcionar correctamente.
Acaba de localizar instrucciones en el tambor.
por lo que cada uno sucesivo fue justo después de la cabeza de lectura
cuando era necesario;
El tambor tuvo que ejecutar otra revolución completa.
para encontrar la siguiente instrucción.
Él acuñó un término inolvidable para este procedimiento.
Aunque “óptimo” es un término absoluto,
Como “único”, se convirtió en práctica verbal común.
para que sea relativo:
“No es del todo óptimo” o “menos óptimo”
o “no muy óptimo”.
Mel llamó a las ubicaciones máximas de retraso de tiempo
El “más pesimista”.

Después de que terminó el programa de blackjack.
y lo tengo para correr
(“Incluso el inicializador está optimizado”,
dijo con orgullo),
Obtuvo una solicitud de cambio del departamento de ventas.
El programa utiliza un elegante (optimizado).
generador de números aleatorios
para barajar las “cartas” y repartir desde el “mazo”,
y algunos de los vendedores consideraron que era demasiado justo,
ya que a veces los clientes perdían.
Querían que Mel modificara el programa.
Así, en el ajuste de un interruptor de sentido en la consola,
Podrían cambiar las probabilidades y dejar que el cliente gane.

Mel se resistió.
Sintió que esto era evidentemente deshonesto,
cual era
y que incidió en su integridad personal como programador,
lo que hizo,
por lo que se negó a hacerlo.
El jefe de ventas habló con Mel,
al igual que el Gran Jefe y, a instancias del jefe,
unos pocos programadores compañeros.
Mel finalmente se rindió y escribió el código,
pero él consiguió la prueba al revés,
y, cuando se encendió el interruptor de los sentidos,
El programa haría trampa, ganando cada vez.
Mel estaba encantada con esto,
alegando que su subconsciente era incontrolablemente ético,
y se negó rotundamente a arreglarlo.

Después de que Mel había dejado la compañía por una pauta más verde,
El Gran Jefe me pidió que mirara el código.
y ver si puedo encontrar la prueba y revertirla.
Con algo de mala gana, accedí a mirar.
Rastrear el código de Mel fue una verdadera aventura.

A menudo he sentido que la programación es una forma de arte,
cuyo valor real solo puede ser apreciado
por otro versado en el mismo arte arcano;
Hay gemas preciosas y golpes brillantes.
oculto a la vista y admiración humana, a veces para siempre,
Por la naturaleza misma del proceso.
Puedes aprender mucho sobre un individuo
simplemente leyendo su código,
Incluso en hexadecimal.
Mel fue, creo, un genio anónimo.

Tal vez mi mayor sorpresa fue
Cuando encontré un bucle inocente que no tenía ninguna prueba.
No prueba Ninguno
El sentido común decía que tenía que ser un circuito cerrado,
Donde el programa circularía, para siempre, sin cesar.
El control del programa pasó a través de él, sin embargo,
Y con seguridad fuera del otro lado.
Me tomó dos semanas para averiguarlo.

La computadora RPC-4000 tenía una instalación realmente moderna.
llamado un registro de índice.
Permitió al programador escribir un bucle de programa.
que usaba una instrucción indexada dentro;
cada vez a través de,
el número en el registro índice
Fue agregado a la dirección de esa instrucción,
por lo que se referiría
al siguiente dato de una serie.
Sólo tenía que incrementar el registro índice.
cada vez a través de
Mel nunca lo usó.

En su lugar, él tiraría las instrucciones en un registro de la máquina,
añadir uno a su dirección,
y guárdalo de nuevo.
Luego ejecutaría la instrucción modificada.
desde el registro.
El bucle fue escrito por lo que este tiempo de ejecución adicional.
fue tenido en cuenta –
Justo cuando esta instrucción terminó,
el siguiente estaba justo debajo de la cabeza de lectura del tambor,
Listo para ir.
Pero el bucle no tenía ninguna prueba en ello.

La clave vital vino cuando me di cuenta.
el bit de registro de índice,
el bit que se encuentra entre la dirección
y el código de operación en la palabra de instrucción,
fue encendido
sin embargo, Mel nunca usó el registro de índice,
dejándolo en cero todo el tiempo.
Cuando la luz se encendió casi me cegó.

Había localizado los datos en los que estaba trabajando.
cerca de la parte superior de la memoria –
las ubicaciones más grandes que las instrucciones podrían abordar –
Así que, después de que se manejó el último dato,
incrementando la dirección de instrucción
Lo haría desbordar.
El acarreo añadiría uno al
Código de operación, cambiándolo al siguiente en el conjunto de instrucciones:
una instrucción de salto.
Efectivamente, la siguiente instrucción del programa fue
en la ubicación de la dirección cero,
y el programa se fue felizmente en su camino.

No me he mantenido en contacto con Mel,
así que no sé si alguna vez se rindió al diluvio de
Cambio que ha lavado las técnicas de programación.
desde aquellos días pasados.
Me gusta pensar que no lo hizo.
En cualquier evento,
Me impresionó lo suficiente como para dejar de buscar el
prueba ofensiva,
diciéndole al Gran Jefe que no pude encontrarlo.
No parecía sorprendido.

Cuando salí de la empresa,
El programa de blackjack todavía haría trampa.
Si encendiste el interruptor de sentido correcto,
Y creo que así debe ser.
No me senti comodo
hackear el código de un programador real.

Esta es una de las grandes épicas heroicas de hackers, verso libre o no. En unas pocas imágenes de repuesto, captura más sobre la estética y la psicología de la piratería que todos los volúmenes académicos sobre el tema juntos. (Pero para un punto de vista opuesto, vea la entrada para Real Programmer ).

[1992 PostScript: el autor escribe: “La presentación original a la red no estaba en verso libre, ni en ninguna aproximación, era un estilo de prosa recta, en párrafos no justificados. Al rebotar en la red, aparentemente se modificó en la forma de ‘verso libre’ que ahora es popular. En otras palabras, fue hackeado en la red. Eso parece apropiado, de alguna manera ”. El autor agrega que le gusta más la versión de ‘verso libre’ que su prosa original …]

[Actualización de 1999: El apellido de Mel es ahora conocido. El manual para la LGP-30 se refiere a “Mel Kaye de Royal McBee que hizo la mayor parte de la programación […] del sistema ACT 1”.]

[2001: El Royal McBee LPG-30 resulta tener otro reclamo a la fama. Resulta que el meteorólogo Edward Lorenz estaba haciendo simulaciones del clima en un LGP-30 cuando, en 1961, descubrió el “Efecto Mariposa” y el caos computacional. Esto parece, de alguna manera, apropiado.]

[2002: Una copia del manual de programación para la LGP-30 está disponible en http://ed-thelen.org/comp-hist/l …]

No creo que sea posible elegir una sola persona.

Todos tenemos nuestros favoritos, por supuesto, principalmente personas que son nuestros héroes personales.

Pero a pesar de tener héroes personales en el campo, está bastante claro que el arte de la programación es una disciplina enormemente multifacética, y no es posible que una sola persona incorpore los mejores atributos de cada faceta.

De hecho, creo que debe ser un objetivo contradictorio encarnar “lo mejor” entre algunas facetas y otras facetas.

¿Quién es el mejor compositor de música?

Me gustan las danzas eslavas de Dvořák; También me gusta Grieg’s In the Hall of the Mountain King ; si nos quedamos con piezas con violines, también me gusta el Lennon-McCartney Eleanor Rigby ; También me gustan Rory Charles Graham (Rag’n’Bone Man) y Jamie Hartman Human .

Entonces, ¿quién es el mejor compositor de todos los tiempos?

No puedo elegir a una sola persona.

Ni siquiera incluí a los 100 principales, a quienes considero “los mejores”, para varias facetas de la música. ¿Debería ser Ravel, quien escribió composiciones para zurdos para Wittgenstein, el pianista que perdió su brazo derecho en la Primera Guerra Mundial? ¿No son las composiciones con un mejor rango de notas y una simultaneidad de notas más complejas y más dignas de elogio, que algo que se puede tocar con una sola mano?


Tengo el mismo problema con el software.

Y sí, antes de que preguntes: escogí la analogía de la música porque no puedo escribir software y escuchar música al mismo tiempo: los proceso en la misma parte de mi cerebro.


Así que gracias por el A2A, pero como comer papas fritas, no puedes parar en solo uno. Lo siento si eso fue decepcionante.

Puede ser que, todas las personalidades mencionadas anteriormente, en algún momento acepten que hayan tenido su inspiración de su gran Padrino, el Dios de la Programación Dennis McAlistair Ritchie.

Dennis Ritchie fue un científico informático estadounidense a quien se le atribuye la formación y el desarrollo de la era digital. Creó el lenguaje de programación C más comúnmente usado que se usa hoy en día en varias aplicaciones de software, desarrollo de sistemas integrados, sistemas operativos y ha influido en la mayoría de los lenguajes de programación modernos.

Dennis también creó el sistema operativo UNIX, la madre de todos los sistemas operativos modernos. Por su trabajo, en 1983 recibió el Premio Turing de la ACM, la Medalla Hamming en 1990 del IEEE y en 1999 la Medalla Nacional de Tecnología del presidente Clinton. Dirigía el departamento de investigación de software del sistema de Lucent Technologies cuando se retiró en 2007. Falleció el 12 de octubre de 2011, lo que provocó que la distribución de Linux de Fedora 16 se lanzara en su memoria.

Mira la simplicidad de su legendario …
#include
int main ()
{
printf (“¡Hola mundo!”);
devuelve 0;
}

Esta pregunta es como “¿Quién fue el arma más rápida en Occidente?” Es indeterminada, en lo que respecta a una respuesta objetiva razonable.

Una de las razones más importantes de esta naturaleza indeterminada es que la programación no se mide directamente en términos de rendimiento (por contraste con el atletismo, por ejemplo, donde es posible afirmar y argumentar que Michael Jordan o LeBron James fue el “mejor de todos” en baloncesto, porque el rendimiento y la medición del rendimiento son parte del deporte en sí.)

Por supuesto, hay una programación competitiva en la que las métricas de rendimiento específicas y “ganar” son parte del contexto. Sin embargo, es relativamente fácil y razonable afirmar que muchos grandes programadores nunca compitieron, y el “mejor de todos” podría estar entre aquellos que no compiten (o no lo hicieron).

El enfoque más razonable para una respuesta es más cercano a “construcción de lista” y nominación, en lugar de una afirmación directa. Mi propio candidato para la lista y la nominación que primero presentaría para estar entre los mejores de la historia es un famoso profesor y programador de matemáticas que creó TAOCP (“El arte de la programación de computadoras”), a saber, Donald Knuth. El profesor Knuth es un genio ampliamente reconocido, que ha hecho el análisis y la elucidación de la programación de computadoras (y más específicamente los algoritmos) el trabajo de su vida. Los resultados (hasta ahora) han sido asombrosos y sorprendentes, desde cualquier punto de vista.

Aquí está mi descripción de sus primeros logros como programador, en una respuesta diferente de Quora:

La respuesta de David Carew a ¿Hay alguien que se convierta en un programador reconocido solo?

La falta de tu propia confianza es el comienzo de tu propio fracaso. Hay unos pocos programadores que los programadores promedio creen que son los maestros y pioneros de la programación. Me encontré con una cita de Billgate que dice “No soy rico, el rico eres tú”. ¿Crees lo que dijo el hombre más rico del mundo? Sí, según mi opinión, hizo una cita muy importante, principalmente para simpatizar con aquellos que creen que no pueden ser ricos algún día. Antes de Billgate había otros y otros que eran los más ricos y porque confiaba en el arduo trabajo de sus manos, ahora es lo mejor que puede decir, lo más alto de la pobreza y la riqueza de las llamadas al sistema.

Para nuestro caso, el gran programador eres tú. Nadie es mejor que tú. Puede ser que te falten las pautas, el procedimiento y la torsión correctos de tu médula oblongata para unirte a esa cadena de programadores hardcore del mundo. Nadie nace, la programación golpea en su cerebro, pero confían en que algún día se las ingeniarán en estos campos de impregnar su médula con la programación de preguntas retóricas.

Hay varios rasgos de esos prósperos programadores experimentados que necesita colaborar para unirse al mundo de los grandes programadores conocidos.

Confiar en su confianza y la confianza moldeará su carrera o viaje de programación. Poco que decir, estas citas mantendrán su confianza por encima del rango conocido