Cel: +52 (55) 3040-5403 Correo: mariana.velazquez@recluit.com
post-tittle

Preguntas a grandes programadores (Parte 2)

Por: Reclu IT

13 de mayo de 2015

El tener un acercamiento a las grandes mentes de las Tecnologías de la Información, además de inspirador, ayuda a prepararse y, en cierta forma, pensar como ellos para resolver los problemas diarios, por ello es que resulta sumamente interesante algunas de las respuestas de los desarrolladores más reconocidos del mundo,  esto fue gracias al autor de Stifflog, quien tuvo una buena idea al armar una serie de 10 preguntas, y se las envió por email a varios de los más grandes programadores del mundo.

Ya antes habíamos visto la primera parte de estas preguntas y sus respectivas respuestas, así que toca conocer la conclusión de estas preguntas.

Lista de los 9 programadores que respondieron:

  • Linus Torvalds – Creador de Linux y GIT, no necesita presentación.
  • Dave Thomas – Autor de “El programador pragmático”, “Programación en Ruby” y otros grandes libros de programación.
  • David Heinemeier Hansson – Creador de Rails Framework(framework web), escritor y conductor de autos de carreras. Autor del weblog Loud Thinking.
  • Steve Yegge – Uno de los menos conocidos del grupo, pero que tiene respuestas muy interesantes. Programador y blogger. Tiene unas 2 decadas de experiencia en esta industria.
  • Peter Norvig – Director de Investigación en Google, autor de varios libros importantes de inteligencia artificial. Pueden visitar su página principal.
  • Guido Van Rossum – Creador del lenguaje Python.
  • Bjarne Stroustrup – Creador de C++. Pueden visitar su página principal.
  • James Gosling – Creador del lenguaje Java.
  • Tim Bray – Uno de los autores de la especificación de XML y Atom. Publica en su blog ongoing.

 

6- ¿Qué hace que algunos programadores sean 10 o 100 veces más productivos que otros?

Steve Yegge: Creo que si te detenés a pensar porqué todos los atletas no son igual de buenos, ahí tendrías tu respuesta. Thomas Edison tiene una cita acerca de los genios que también te puede dar algunas pistas.

Linus Torvalds: No tengo idea. Creo que algunas personas son capaces de concentrarse en las cosas que importan, y mucho del asunto es hacer eso. La mayoría de los programadores realmente buenos que conozco comenzaron a serlo desde jóvenes.

David Heinemeier Hansson: La habilidad de replantear problemas difíciles como fáciles.

Peter Norvig: La habilidad de ver el problema completo en sus cabezas.

Dave Thomas: Les importa lo que hacen.

Guido Van Rossum: Estructura del cerebro genéticamente diferente.

James Gosling: Piensan lo que hacen. No se apuran en hacer las cosas. Tienen una visión holística de lo que necesita construirse.

Bjarne Stroustrup: Primero es una falta general de profesionalismo y capacitación adecuada que hace que el nivel báse sea muy bajo. Segundo, algunas personas tienen una combinación de «trucos» (la habilidad de pensar claramente y llegar al corazón del asunto), experiencia, y conocimientos de las herramientas. La programación deja más espacio para esto ya que es una combinación de teoría y práctica – ninguna de las cuales sirve de mucho sin conocimiento del dominio.

Tim Bray: La sorprendente diversidad de la menta humana.

 

7 – ¿Cuáles son sus herramientas favoritas (sistemas operativos, lenguajes de programación/scripting, editor de texto, sistema de control de versiones, shell, motor de base de datos, y otras herramientas sin las que pueda vivir) y por qué le gusta más que otras?

Steve Yegge: OS: ¡Unix! Uso linux, cygwin, y darwin por igual bastante a menudo. No se los puede igualar como herramientas de productividad. Cada programador debería aprender a usar todos los comandos de /bin y de /usr/bin. Lenguaje de scripting: Ruby. Domino casi cualquier lenguaje de scripting importante que existe: Perl, Python, Tcl, Lua, Awk, Bash y otros que me estoy olvidando. Pero soy bastante vago, y Ruby es por lejos el más facil, así que somos una pareja perfecta. Lenguaje de programación: no tengo un favorito; creo que todos apestan. Tiendo a preferir Java porque es robusto, tiene una plataforma portable y buenas herramientas y librerías. Pero el lenguaje Java a a evolucionar o morir; actualmente no es tan bueno como para mantener el liderazgo en forma indefinida. Editor de texto: Emacs, porque es lo mejor que hay hoy en día. Control de versiones: SVN. Perforce es mejor, pero es muy caro. Shell: Bash, porque soy muy vago para aprender otro. Motor de base de datos: MySQL, por supuesto. Nada se le compara. Otros: me encanta GIMP, aunque sea increíblemente poco intuitivo. Lo vengo usando por años y aún apenas puedo hacer algo con él. Pero no podría vivir sin el GIMP, aunque suene irónico. Firefox se está convirtiendo en una herramienta crítica para mi. Me siento sofocado cuando estoy forzado a usar IE o Safari. Nótese que todas estas herramientas (Unix, Emcas, Firefox, GIMP, MySQL, Bash, SVN, Perforce) tienen algo en común: son extensibles. Por ejemplo, todas tienen un API de programación. Los buenos programadores aprenden a programar sus herramientas, no sólo las usan.

Linux Torvalds: De hecho no suelo terminar teniendo muchas herramientas con las que trabaje, y con las que pasé algo de tiempo les dediqué tiempo propio para hacer que funcionen para mi. El sistema operativo es claramente la mayor ejemplo, pero también escribí mi propio sistema de control de versiones (git), y el editor de texto que uso (micro-emacs) lo terminé personalizando y extendiendo. Sin contar estas tres partes, lo único que me importa realmente es mi lector de emails. Uso «pine» – no porque sea el mejor lector de emails, sino porque estoy acostumbrado a él, y hace lo que necesito con una mínima intrusión.

David Heinemeier Hansson: OS X, TextMate, Ruby, Subversion, MySQL. Ese el el combo que me mantiene feliz hoy en día. Me gustan las herramientas que muestran un buen gusto y se enfocan en las cosa que importan.

Peter Norvig: No me gusta ninguno de los sistemas operativos principales – Windows, Mac, Linux. Me gusta Python y Lisp. Emacs.

Dave Thomas: Me cambié a las Mac hace un par de años luego de ser un usuario de Linux por más de 10 años. Las herramientas no son necesariamente mejores, pero no necesitan ser mejoradas o mantenidas tan a menudo, lo que me permite concentrarme en usarlas. No creo en las herramientas únicas: suelo cambiar bastante seguido para ganar experiencia con la mayor cantidad de herramientas posible. Ahora estoy usando OSX, Emacs, TextMate, Rails, Ruby, SVN, CVS, Rake, make, xsltproc, TeX, MySQL, Postgres, y un montón de ayudas más. Quien sabe lo que voy a estar usando el año que viene. Guido Van Rossum: Unix/Linux, Python, vi+emacs, Firefox.

James Gosling: En estos días vivo en NetBeans. Hace todo lo que quiero, y resulta ser muy claro, simple y eficiente. Es el mejor entorno que usé.

Bjarne Stroustrup: Unix, sam (un editor de texto muy simple), y por supuesto un buen compilador de C++.

Tim Bray: Me gustan los sistemas operativos basados en Unix, los lenguajes dinámicos como Python y Ruby, y los lenguajes estáticos como Java (en particular las API de Java), Emacs, cualquiera, bash, cualquiera, NetBeans.

 

8 – ¿Cuál es su libro favorito relacionado con la programación?

Tim Bray: Esa es dificil. Quizás *Gödel, Escher, Bach: an Eternal Golden Braid *(Hofstadter). Aunque no es estricticamente de programación. Si querés decir «libro favorito de programación», entonces quizás SICP (mitpress.mit.edu/* sicp*/).

Linus Torvalds: Heh. Hoy en día cuando leo algo, tiende a ser ficción, o cosas no relacionadas con la computación (uno viejo pero bueno: «El gen egoista», de Richard Dawkins).  Hablando de programación, el único libro real de programación que me viene a la mente es el clásico de Kernighan y Ritchie «El lenguaje de programación C», porque es un libro increíblemente útil, facil de leer y a la vez corto. Teniendo en cuenta que podés aprender uno de los lenguajes más importantes de nuestro tiempo con el libro, el hecho de que sea tan pequeño y facil de leer es una maravilla. Dicho esto, muchos otros libros que disfruté un montón no eran de programación en si, sino acerca de arquitectura de computadoras y hardware. Obviamente está el libro de Patterson y Hennessy sobre arquitectura de computadoras, pero yo prefiero incluso más el libro «Programación en 80386» de Crawford y Gelsinger, el cual fue el que usé cuando empecé con Linux. Por la misma razón, me gusta «Sistemas Operativos: Diseño e Implementación» de Andrew Tanenbaum.

David Heinemeier Hansson: Me gusta Extreme Programming Explained por desafiar al pensamiento común sobre las prácticas de programación, y Patterns of Enterprise Application Architecturepor tener el balance perfecto entre la abstracción y lo concreto.

Peter Norvig: Structure and Interpretation of Computer Programs

Dave Thomas: Depende qué quieras decir con «favorito». Probablemente el mejor libro que leí es «IBM/360 Principles of Operation» de IBM.

Guido Van Rossum: Quicksilver, de Neil Stepehnson.

James Gosling: Programming Pearls, de Jon Bentley.

Bjarne Stroustrup: K&R.

Tim Bray: Programming Pearls, de Bentley.

 

9 – ¿Cuál se su libro favorito que NO esté relacionado con la programación?

Steve Yegge: ¿Sólo un libro? Es imposible. Hay demasiados libros buenos para elegir sólo uno. Los libros favoritos que leí este mes son «Stardust» (Neil Gaiman) y «The Mind’s I» (Hofstadter/Dennet). Mis escritores favoritos son Kurt Vonnegut, Jr. y Jack Vance.

Linux Torvalds: Bueno, ya mencioné El gen egoista de Dawkins. Por el lado de la ficción, hay un montón de libros que leí y disfruté, pero de pocos podría decir que fueron «favoritos». No suelo re-leer libros, y la selección cambia con el tiempo. La mayoría es ciencia ficción y fantasía, por ejemplo mi libro favorito en la adolescencia era «Stranger in a Strange Land» de Heinlein, pero no lo es tanto estos días…

David Heinemeier Hansson: 1984, George Orwell.

Guido Van Rossum: Quicksilver, de Neil Stephenson.

James Gosling: Guns, Germs & Steel, por Jared Diamond

Bjarne Stroustrup: Cambia con el tiempo. Actualmente, la serie de O’Brian’s Aubrey/Maturin.

Tim Bray: One Day in the Life, de Ivan Denisovich.

 

10 – ¿Cuál es su banda/músico/compositor de música favorito?

Steve Yegge: Géneros favoritos: clasica, bandas de sonido de animé, música de video juegos.

Compositores favoritos: Rachmaninoff, Chopin, Bach

Músicos favoritos: David Russell (guitarra clásica), Sviatoslav Richter (piano).

OSTs de animé favoritos: Last Exile, Haibane Renmei

Linus Torvalds: No estoy muy metido en la música, pero cuando escucho algo, tiendo a escuchar varios clásicos de rock, desde Pink Floyd hasta los Beatles, desde Queen a The Who.

David Heinemeier Hansson: Me gustan muchos géneros. Beth Orton, Aimee Mann, Jewel, Lauryn Hill. De hecho, todos esos ejemplos entrarían dentro de Chicas y Guitarras ;).

Guido Van Rossum: Philip Glass.

James Gosling: Suelo escuchar músicos de folk: Christine Lavin, Woody Guthrie, Pete Seeger…

Bjarne Stroustrup: Banda: The Dixie Chicks. Compositor: Beethoven.

Tim Bray: Lean mi blog.

Deja tu comentario

Tu dirección de correo electrónico no será publicada.

Campos obligatorios(*)
post-tittle

Preguntas a grandes programadores (Parte 2)

Por: Reclu IT

13 de mayo de 2015

El tener un acercamiento a las grandes mentes de las Tecnologías de la Información, además de inspirador, ayuda a prepararse y, en cierta forma, pensar como ellos para resolver los problemas diarios, por ello es que resulta sumamente interesante algunas de las respuestas de los desarrolladores más reconocidos del mundo,  esto fue gracias al autor de Stifflog, quien tuvo una buena idea al armar una serie de 10 preguntas, y se las envió por email a varios de los más grandes programadores del mundo.

Ya antes habíamos visto la primera parte de estas preguntas y sus respectivas respuestas, así que toca conocer la conclusión de estas preguntas.

Lista de los 9 programadores que respondieron:

  • Linus Torvalds – Creador de Linux y GIT, no necesita presentación.
  • Dave Thomas – Autor de “El programador pragmático”, “Programación en Ruby” y otros grandes libros de programación.
  • David Heinemeier Hansson – Creador de Rails Framework(framework web), escritor y conductor de autos de carreras. Autor del weblog Loud Thinking.
  • Steve Yegge – Uno de los menos conocidos del grupo, pero que tiene respuestas muy interesantes. Programador y blogger. Tiene unas 2 decadas de experiencia en esta industria.
  • Peter Norvig – Director de Investigación en Google, autor de varios libros importantes de inteligencia artificial. Pueden visitar su página principal.
  • Guido Van Rossum – Creador del lenguaje Python.
  • Bjarne Stroustrup – Creador de C++. Pueden visitar su página principal.
  • James Gosling – Creador del lenguaje Java.
  • Tim Bray – Uno de los autores de la especificación de XML y Atom. Publica en su blog ongoing.

 

6- ¿Qué hace que algunos programadores sean 10 o 100 veces más productivos que otros?

Steve Yegge: Creo que si te detenés a pensar porqué todos los atletas no son igual de buenos, ahí tendrías tu respuesta. Thomas Edison tiene una cita acerca de los genios que también te puede dar algunas pistas.

Linus Torvalds: No tengo idea. Creo que algunas personas son capaces de concentrarse en las cosas que importan, y mucho del asunto es hacer eso. La mayoría de los programadores realmente buenos que conozco comenzaron a serlo desde jóvenes.

David Heinemeier Hansson: La habilidad de replantear problemas difíciles como fáciles.

Peter Norvig: La habilidad de ver el problema completo en sus cabezas.

Dave Thomas: Les importa lo que hacen.

Guido Van Rossum: Estructura del cerebro genéticamente diferente.

James Gosling: Piensan lo que hacen. No se apuran en hacer las cosas. Tienen una visión holística de lo que necesita construirse.

Bjarne Stroustrup: Primero es una falta general de profesionalismo y capacitación adecuada que hace que el nivel báse sea muy bajo. Segundo, algunas personas tienen una combinación de «trucos» (la habilidad de pensar claramente y llegar al corazón del asunto), experiencia, y conocimientos de las herramientas. La programación deja más espacio para esto ya que es una combinación de teoría y práctica – ninguna de las cuales sirve de mucho sin conocimiento del dominio.

Tim Bray: La sorprendente diversidad de la menta humana.

 

7 – ¿Cuáles son sus herramientas favoritas (sistemas operativos, lenguajes de programación/scripting, editor de texto, sistema de control de versiones, shell, motor de base de datos, y otras herramientas sin las que pueda vivir) y por qué le gusta más que otras?

Steve Yegge: OS: ¡Unix! Uso linux, cygwin, y darwin por igual bastante a menudo. No se los puede igualar como herramientas de productividad. Cada programador debería aprender a usar todos los comandos de /bin y de /usr/bin. Lenguaje de scripting: Ruby. Domino casi cualquier lenguaje de scripting importante que existe: Perl, Python, Tcl, Lua, Awk, Bash y otros que me estoy olvidando. Pero soy bastante vago, y Ruby es por lejos el más facil, así que somos una pareja perfecta. Lenguaje de programación: no tengo un favorito; creo que todos apestan. Tiendo a preferir Java porque es robusto, tiene una plataforma portable y buenas herramientas y librerías. Pero el lenguaje Java a a evolucionar o morir; actualmente no es tan bueno como para mantener el liderazgo en forma indefinida. Editor de texto: Emacs, porque es lo mejor que hay hoy en día. Control de versiones: SVN. Perforce es mejor, pero es muy caro. Shell: Bash, porque soy muy vago para aprender otro. Motor de base de datos: MySQL, por supuesto. Nada se le compara. Otros: me encanta GIMP, aunque sea increíblemente poco intuitivo. Lo vengo usando por años y aún apenas puedo hacer algo con él. Pero no podría vivir sin el GIMP, aunque suene irónico. Firefox se está convirtiendo en una herramienta crítica para mi. Me siento sofocado cuando estoy forzado a usar IE o Safari. Nótese que todas estas herramientas (Unix, Emcas, Firefox, GIMP, MySQL, Bash, SVN, Perforce) tienen algo en común: son extensibles. Por ejemplo, todas tienen un API de programación. Los buenos programadores aprenden a programar sus herramientas, no sólo las usan.

Linux Torvalds: De hecho no suelo terminar teniendo muchas herramientas con las que trabaje, y con las que pasé algo de tiempo les dediqué tiempo propio para hacer que funcionen para mi. El sistema operativo es claramente la mayor ejemplo, pero también escribí mi propio sistema de control de versiones (git), y el editor de texto que uso (micro-emacs) lo terminé personalizando y extendiendo. Sin contar estas tres partes, lo único que me importa realmente es mi lector de emails. Uso «pine» – no porque sea el mejor lector de emails, sino porque estoy acostumbrado a él, y hace lo que necesito con una mínima intrusión.

David Heinemeier Hansson: OS X, TextMate, Ruby, Subversion, MySQL. Ese el el combo que me mantiene feliz hoy en día. Me gustan las herramientas que muestran un buen gusto y se enfocan en las cosa que importan.

Peter Norvig: No me gusta ninguno de los sistemas operativos principales – Windows, Mac, Linux. Me gusta Python y Lisp. Emacs.

Dave Thomas: Me cambié a las Mac hace un par de años luego de ser un usuario de Linux por más de 10 años. Las herramientas no son necesariamente mejores, pero no necesitan ser mejoradas o mantenidas tan a menudo, lo que me permite concentrarme en usarlas. No creo en las herramientas únicas: suelo cambiar bastante seguido para ganar experiencia con la mayor cantidad de herramientas posible. Ahora estoy usando OSX, Emacs, TextMate, Rails, Ruby, SVN, CVS, Rake, make, xsltproc, TeX, MySQL, Postgres, y un montón de ayudas más. Quien sabe lo que voy a estar usando el año que viene. Guido Van Rossum: Unix/Linux, Python, vi+emacs, Firefox.

James Gosling: En estos días vivo en NetBeans. Hace todo lo que quiero, y resulta ser muy claro, simple y eficiente. Es el mejor entorno que usé.

Bjarne Stroustrup: Unix, sam (un editor de texto muy simple), y por supuesto un buen compilador de C++.

Tim Bray: Me gustan los sistemas operativos basados en Unix, los lenguajes dinámicos como Python y Ruby, y los lenguajes estáticos como Java (en particular las API de Java), Emacs, cualquiera, bash, cualquiera, NetBeans.

 

8 – ¿Cuál es su libro favorito relacionado con la programación?

Tim Bray: Esa es dificil. Quizás *Gödel, Escher, Bach: an Eternal Golden Braid *(Hofstadter). Aunque no es estricticamente de programación. Si querés decir «libro favorito de programación», entonces quizás SICP (mitpress.mit.edu/* sicp*/).

Linus Torvalds: Heh. Hoy en día cuando leo algo, tiende a ser ficción, o cosas no relacionadas con la computación (uno viejo pero bueno: «El gen egoista», de Richard Dawkins).  Hablando de programación, el único libro real de programación que me viene a la mente es el clásico de Kernighan y Ritchie «El lenguaje de programación C», porque es un libro increíblemente útil, facil de leer y a la vez corto. Teniendo en cuenta que podés aprender uno de los lenguajes más importantes de nuestro tiempo con el libro, el hecho de que sea tan pequeño y facil de leer es una maravilla. Dicho esto, muchos otros libros que disfruté un montón no eran de programación en si, sino acerca de arquitectura de computadoras y hardware. Obviamente está el libro de Patterson y Hennessy sobre arquitectura de computadoras, pero yo prefiero incluso más el libro «Programación en 80386» de Crawford y Gelsinger, el cual fue el que usé cuando empecé con Linux. Por la misma razón, me gusta «Sistemas Operativos: Diseño e Implementación» de Andrew Tanenbaum.

David Heinemeier Hansson: Me gusta Extreme Programming Explained por desafiar al pensamiento común sobre las prácticas de programación, y Patterns of Enterprise Application Architecturepor tener el balance perfecto entre la abstracción y lo concreto.

Peter Norvig: Structure and Interpretation of Computer Programs

Dave Thomas: Depende qué quieras decir con «favorito». Probablemente el mejor libro que leí es «IBM/360 Principles of Operation» de IBM.

Guido Van Rossum: Quicksilver, de Neil Stepehnson.

James Gosling: Programming Pearls, de Jon Bentley.

Bjarne Stroustrup: K&R.

Tim Bray: Programming Pearls, de Bentley.

 

9 – ¿Cuál se su libro favorito que NO esté relacionado con la programación?

Steve Yegge: ¿Sólo un libro? Es imposible. Hay demasiados libros buenos para elegir sólo uno. Los libros favoritos que leí este mes son «Stardust» (Neil Gaiman) y «The Mind’s I» (Hofstadter/Dennet). Mis escritores favoritos son Kurt Vonnegut, Jr. y Jack Vance.

Linux Torvalds: Bueno, ya mencioné El gen egoista de Dawkins. Por el lado de la ficción, hay un montón de libros que leí y disfruté, pero de pocos podría decir que fueron «favoritos». No suelo re-leer libros, y la selección cambia con el tiempo. La mayoría es ciencia ficción y fantasía, por ejemplo mi libro favorito en la adolescencia era «Stranger in a Strange Land» de Heinlein, pero no lo es tanto estos días…

David Heinemeier Hansson: 1984, George Orwell.

Guido Van Rossum: Quicksilver, de Neil Stephenson.

James Gosling: Guns, Germs & Steel, por Jared Diamond

Bjarne Stroustrup: Cambia con el tiempo. Actualmente, la serie de O’Brian’s Aubrey/Maturin.

Tim Bray: One Day in the Life, de Ivan Denisovich.

 

10 – ¿Cuál es su banda/músico/compositor de música favorito?

Steve Yegge: Géneros favoritos: clasica, bandas de sonido de animé, música de video juegos.

Compositores favoritos: Rachmaninoff, Chopin, Bach

Músicos favoritos: David Russell (guitarra clásica), Sviatoslav Richter (piano).

OSTs de animé favoritos: Last Exile, Haibane Renmei

Linus Torvalds: No estoy muy metido en la música, pero cuando escucho algo, tiendo a escuchar varios clásicos de rock, desde Pink Floyd hasta los Beatles, desde Queen a The Who.

David Heinemeier Hansson: Me gustan muchos géneros. Beth Orton, Aimee Mann, Jewel, Lauryn Hill. De hecho, todos esos ejemplos entrarían dentro de Chicas y Guitarras ;).

Guido Van Rossum: Philip Glass.

James Gosling: Suelo escuchar músicos de folk: Christine Lavin, Woody Guthrie, Pete Seeger…

Bjarne Stroustrup: Banda: The Dixie Chicks. Compositor: Beethoven.

Tim Bray: Lean mi blog.

Deja tu comentario

Tu dirección de correo electrónico no será publicada.

Campos obligatorios(*)

Política de privacidad de www.recluit.mx

Para recibir la información sobre sus Datos Personales, la finalidad y las partes con las que se comparte,
contacten con el Propietario.