En una entrevista realizada por Stiff se realizan una serie de preguntas a algunos de los programadores que ha contribuido con el mundo de la informática algunas de las preguntas fueron: ¿Cómo aprendieron a programar?, ¿Les sirvió de algo la Universidad? (esta pregunta es la madre de todas a mi parecer), ¿Qué es lo que más valoran de un programador?, ¿Sirven las matemáticas o física para programar?, ¿Cuál será el próximo boom en programación?, realmente se sacaron un diez con los entrevistados (muy a mi parecer), los cuales fuerón:
Linus Torvalds – Autor del kérnel de Linux
Peter Norvig– Director de desarrollo de Google, famoso Lisper, autor de famosos (en algunos círculos al menos) sobre IA.
Guido Van Rossum– El creador del lenguaje Python
Bjarne Stroustrup – El creador de C++
James Gosling – El creador del lenguaje Java
A continuación algunas de las preguntas que anteriormente les mencionaba:
1. ¿Cómo aprendiste a programar?
Linus Torvalds: No aprendí a programar en la Universidad. Lo hice leyendo libros y programando (al principio con un Commodore VIC-20 y luego con un Sinclair QL).
Peter Norvig: Realicé cursos en el instituto y en la Universidad, pero siempre sentí que aprendí más por mi cuenta.
Guido Van Rossum: Fui a la Universidad donde había un gran mainframe y había varios cursos de programación.
Bjarne Stroustrup: En la Universidad (Aarhus y después Cambridge).
James Gosling: Inicialmente yo era autodidacta. Tuve mi primer trabajo de programador antes incluso de ir a la Universidad. Me divertí mucho.
2. ¿Te sirvió de algo la Universidad?
Linus Torvalds: Especialmente pienso que la Universidad fue muy útil. En lugar de ir a una escuela de Ingeniería, fui a la Universidad de Helsinki, que es muy teórica, por lo que la enseñanza no se centraba mucho en la programación (que era sólo una pequeña parte, y en la que terminé trabajando más), la mayoría de los cursos eran sobre conceptos fundamentales y cosas como análisis complejos. Lo cual puede parecer aburrido e incluso un gasto de esfuerzo muchas veces, pero creo que fue útil, y muchas veces me divertía. Y creo que soy un mejor programador por ello.
Peter Norvig: Creo que aprendía más por mi cuenta.
Guido Van Rossum: Fue muy importante para mí.
Bjarne Stroustrup: Las Universidades me enseñaron mucho que era útil, incluido muchas de las bases de mi futuro trabajo. Además aprendí también programación por dinero, donde la comprensión de los problemas del mundo real, correcciones, mantenimiento, entrega a tiempo, etc., era más estresante que en el entorno Universitario.
James Gosling: Estuve en la Universidad hasta que finalicé el PhD.
3. ¿Cual piensas que es la habilidad más importante que todo programador debiera tener?
Linus Torvalds: Es algo que yo llamo “gusto”. Tiendo a juzgar a la gente con la que trabajo no por su eficiencia a la hora de trabajar: mucha gente puede tirar mucho código, sino por como reaccionan al código de otra gente, y obviamente también al tipo de código que escriben y que enfoques toman. Esto me indica si tienen “buen gusto” o no y el tema es que, una persona sin “buen gusto” a menudo no es muy buena juzgando el código de otra gente y su propio código termina siendo malo. Pero esta no es la única cosa. Algo que es muy útil, especialmente en un proyecto Open Source es simplemente la habilidad de comunicar bien lo que vas a hacer, y como lo vas a hacer. La habilidad de explicar a los otros “por qué” vas a hacer algo de tal modo, es muy importante, y no todo el mundo tiene esa habilidad.
Peter Norvig: No creo que haya una, pero diré concentración.
Guido Van Rossum: Sus cuestiones son un tanto generales y difíciles de contestar. Supongo que ser capaz de cocinar un huevo para desayunar es algo incalculable.
Bjarne Stroustrup: La habilidad para pensar claramente: Un programador tiene que comprender problemas y mostrar soluciones.
James Gosling: Ser capaz de motivarse a si mismo. Para ser realmente bueno, tienes que amar lo que haces.
4. ¿Crees que las matemáticas o física es una destreza importante para un programador?, ¿Por qué?
Linus Torvalds: Personalmente creo que una buena base de matemáticas viene muy bien. No estoy tan seguro que con física también, pero estoy convencido que sabiendo matemáticas y teniendo una buena base ayuda a ser un mejor programador. Ya sea solamente porque los modelos mentales son similares.
Peter Norvig: Sí. Muchas de las ideas son inherentemente matemáticas: inducción, recursión, lógica, etc.
Guido Van Rossum: Matemáticas, sí (alguna parte; No me importan las ecuaciones diferenciales, pero la álgebra y lógica son importantes). La física, no creo excepto que es siempre útil interesarse por muchas cosas.
Bjarne Stroustrup: Depende del programador y de las tareas de programación. Algunas partes de matemáticas son frecuentemente útiles, la física menos que ella, pero aprender física es una de las mejores maneras de aprender matemáticas prácticas.
James Gosling: Sí. Te enseñan lógica y deducción. Y a tener un ojo analítico. Y no hay nada que sustituya a las matemáticas cuando se trata de analizar los algoritmos.
5. ¿Cual crees que será la próxima gran innovación en programación?
Linus Torvalds: No creo que veamos un “gran salto”. Hemos visto un montón de herramientas que nos facilitan las tareas diarias – con los lenguajes de alto nivel y quizás la integración de bases de datos simples en los lenguajes serán una de ellas. Pero la mayoría de lo que se ha comentado públicamente ha sido de un uso muy limitado.Peter
Norvig: Procesamiento distribuido a larga escala.
Guido Van Rossum: Lo siento, no soy una persona con una bola de cristal. Predije el CGI unos 5 años después de que hubiera sido inventado.
Bjarne Stroustrup: No lo sé, no me gustan las suposiciones.
James Gosling: Los dos temas por los que estoy ocupado ahora son la copia con paralelismo y complejidad.