Cómo convertirse en informático? Qué se necesita

Esa no es una pregunta fácil de responder, si realmente te importa el término «científico» del título. He escrito sobre esto un poco en mi blog: Si estás entrando en las ciencias de la computación, por favor, mira esto, Comenzando el viaje de convertirse en un científico de la computación, y Alan Kay: Rethinking CS education.

La ciencia de la computación comenzó como un término aspiracional a principios de la década de 1960, con la idea de que algún día sería una ciencia en el sentido real de ese término, no como la ciencia social, o la ciencia de la biblioteca. La disciplina persiguió ese objetivo durante unos 15 años, pero con la desvinculación de DARPA de la investigación en ciencias de la computación, sin ninguna institución alternativa que recogiera la pelota, ese objetivo se desvaneció. Así que, aunque lo que se llama ciencia de la computación hoy en día puede enseñar algunas ideas de fondo importantes para la disciplina, dependiendo de la institución, es raro que enseñe lo que la ciencia de la computación debería ser.

Alan Kay tenía esto que decir al respecto (de mi post «Alan Kay: Rethinking CS education»), hablando de Alan Perlis:

Okay, ahora la tercera idea, aquí. Volvemos al primer ganador del Premio Turing; este pequeño gnomo de hombre fue uno de los grandes hombres de nuestro tiempo, Al Perlis. Creó más o menos la ciencia de la computación, y pensé que ya que el término CS se utiliza mucho, podría ser interesante ver lo que el tipo que inventó el término realmente quería decir. Así que dijo esto a principios de los 60 («¡Necesitamos una ‘ciencia de la computación’!»), y alguien dijo: «¿Qué significa eso?». Él dijo: «La informática es la ciencia de los procesos». No quería decir «ciencia» como en la ciencia de las bibliotecas. No quería decir «ciencia» como en las ciencias sociales. Se refería a la ciencia. No lo decía como una metáfora. Quería decir que necesitamos tener una ciencia de las cosas en proceso, ¡y hay un montón de ellas! Eso es lo que quería decir. No tenía una definición de ingeniería. Eso es otra cosa. Dijo que tenemos que entender las cosas en proceso, y se refería a todos los procesos. Se refería a los procesos mecánicos, a los procesos tecnológicos, a la Constitución, a los procesos sociales (los tipos que hicieron la Constitución eran genios sociales. En realidad, crearon un sistema mejor que cualquier sistema informático que hayamos hecho, porque tiene millones y millones de partes que no cooperan demasiado, y básicamente ha prosperado, con algunos contratiempos en el camino, durante cientos de años. Piensen en ello. Y la Constitución -tengo una versión de ella conmigo- es sólo un pequeño libro. Es una metarreceta para un sistema operativo multiprocesador muy complicado, mucho más allá de lo que hemos podido hacer [en informática]), y por supuesto, la biología, y por supuesto los procesos mentales. Y la otra cosa que dijo Perlis es que además de observar todos los procesos, ella misma [la computación], por lo que es, puede servir como una representación, una especie de matemática para todos los procesos.

¡Así que esta es una gran idea! ¡Esta es una idea emocionante! Me ha entusiasmado. Es como una de las cosas más grandes. Odio ver que la computación y las ciencias de la computación se conviertan en una terrible clase de ingeniería en la que los babilonios podrían haber fracasado, con diminutas concepciones de programación de un ordenador, como munir variables con una declaración de asignación. ¡Esto es patético! Lo digo de esta manera tan fuerte, porque hay que darse cuenta de que estamos en medio de una forma completa de mierda que ha surgido de una cultura pop, chocando con este poder; este poder y riqueza. Para servir a la educación -que, en mi opinión, debería seguir ocupándose de lo que la gente necesita, más que de lo que quiere-, no puede ceder a lo que hace la cultura pop. Tiene que pensar en sí misma como en la otra cultura; la cultura desarrollada. No debe deshacerse de la cultura pop. La cultura pop tiene una energía increíble. Cualquier cultura desarrollada necesita esa energía, pero no puede ceder ante ella. Tiene que haber una tensión razonable ahí.

Así que lo que animo a la gente a hacer, en términos de intentar convertirse en informáticos, es buscar investigaciones interesantes de los mejores informáticos, y ver si te inspiras en lo que han hecho, y en sus ideas al respecto, y «tirar de ese hilo». En términos de educación formal, realmente recomiendo «buscar» no qué universidad te aceptará, sino qué universidad tiene lo que puedes discernir como el mejor programa que te dará la educación real que necesitas para seguir la investigación que quieres. La respuesta puede no ser obvia. Puede que no se trate de cursar ciencias de la computación en la licenciatura, sino de alguna otra carrera o combinación de carreras. Me ha parecido interesante lo que dijo Alan Kay (en el vídeo de abajo) sobre su propia formación en informática. Se licenció en biología molecular y matemáticas antes de «tropezar» con las ciencias de la computación (ni siquiera buscaba entrar en ellas). Dijo que no era posible obtener un título universitario en CS donde fue a la escuela, y que era «tan bueno!»

Edición: Puedes ver una discusión relacionada con Alan Kay en https://www.quora.com/What-is-a-good-advanced-OOP-course-that-is-equivalent-to-CS108-at-Stanford/answer/Alan-Kay-11/comment/24193488

Él publicó una respuesta relacionada con tu pregunta en Alan Kay’s answer to Como principiante, ¿cuáles son las mejores maneras de acercarse a la Informática? Creo que hay mucho «oro» en ella.