Joel Spolsky’s «The perils of Java Schools»
Si bien estoy en desacuerdo en unas cuantas cosas con Joel, como su obsesión por contratar «great programmers», y sobre todo en la caracterización que hace de esa «casta», el artículo ilustra muy bien los puntos más relevantes del debate acerca de la enseñanza de la informática.
Y no, no puedo creer que hayan universidades que usen exclusivamente Java como lenguaje en toda la carrera de CS.
Creo que podría resumirse el asunto con esta frase:
«Are pointers and recursion the Latin and Greek of Computer Science?».
Por mas que me caliente pelearme con los Hash, los diccionarios, los punteros y demás, tengo que bancarmela. De ultima también podría decirse cosas como «¿para que necesito saber programar si Genexus me da casi todo hecho?».
Algo que de repente me molesta mas es esa tendencia a que conozcas la historia de las cosas, tipo cual fue el primer algoritmo de remplazo de paginas o cual fue la primer implementación de paralelismo. Eso si me parece muy al pedo. O sea, esta bueno saberlo, pero de ahí a casi basar un curso en eso. Mmmmmmm.
Por ahora, a falta de mayores conocimientos de causa, estoy en una posición intermedia. Creo que seria bueno enseñar (por lo menos para una licenciatura) algo a medio camino entre el 0-1 y el «comida digerida». En todos los campos, no solo en la programación.
También puede ser que mi visión este parcializada. Soy un mal programador, no me gusta y nunca me gustara.
Mmmm..hay algunas joyitas…
I’ve seen all kinds of figures for drop-out rates in CS and they’re usually between 40% and 70%. The universities tend to see this as a waste; I think it’s just a necessary culling of the people who aren’t going to be happy or successful in programming careers.
No sé…esa visión elitista se ve que existe en todas partes del mundo. Los rates de deserción no están mal che ;)
Yo sé programar un poco, aprendí Java en la carrera de Ing. Eléctrica, más alguna que otra cosita. Me considero un programador amateur.
Creo que el problema es que si solo sabés programar (o al menos lo que se yó) no sabés Computer Science no? Si no sabés punteros no podés hacer un OS, y en algún lado hay que tener gente que haga OSs…entender cómo funcionan…inventar nuevos…
Ahí es donde concuerdo con diego en que vos podés sacar programadores y expertos en computación, computer science o como quieras llamarle. El 90% del código no precisará punteros y referencias…bueno…que ese 90% lo hagan los Eloi, que viven en su mundillo, y el resto que lo hagan los Morlocks subterráneos (H.G.Wells dixit).
El otro problema es cómo llevás ese paradigma a la práctica, que es el que encuentro interesante. Hoy en día la respuesta en varios lugares es ofrecer cursos de diferentes temas y que vos te armes tu currícula en función de tus intereses/capacidades (diferentes? :))/tiempo/ganas…etc.
Y no me queda claro que esa solución funcione, dándole un mismo título a todo el mundo.
Sobre lo de la historia? Bue…ahí es más a libertad de cada uno, estoy de acuerdo. Por ejemplo a mí me encanta saber la génesis de cada idea.
Da para seguirla…abundante…
Siempre mire con desconfianza eso de armarte tu propia curricula. Probablemente sea como el pájaro liberado que vuelve a la jaula, que me de miedo la libertad. :)
Según me comentaron, a raíz de un reunión entre los rectores de las facus que dan informática y de la CUTI, en el 2006 se va a empezar a implementar esto en las privadas ya desde primer año y con fuerza. Veré, me suena a rumor por ahora.
Con lo que dice Ferra que si solo sabe programar no sabe CS, mmmm, si, es así. O sea, a menos que vos por tu cuenta tengas la suficiente fuerza de voluntad para estudiar los demás campos que no son programación, en algún momento vas a encontrar un muro duro. Bases de Datos, redes y anda a saber cuanta cosa mas. Ojo, esta lleno de tipos muy salados que nunca se recibieron de CS, pero bueno, lo mas «esperable» es que en algún momento te espatifes contra un «¿y esto que carajo es?». Así pensando rapidito recuerdo 4 Ing Eléctricos que andan volando en campos de computación (dos de ellos son profesores repulsivamente pedantes en la FING). Creo que Richard Stallman y Linus Torvalds dejaron por la mitad sus estudios (aunque Stallman es del MIT, no tengo ganas de Googlear). Y el amigo Billy Puertas me parece que no paso de segundo año. Pero si, sin duda que SOLO con saber programar no llegas muy lejos.
Y sobre lo de la historia, a mi también me gusta saber la génesis de cada cosa, pero tener en todos los cursos dos semanas donde se explica la evolución de cada tema ¡es para valientes!. :)
Ahh si, y esa desercion esta barbara. Si de la FING desertara solo el 40% habria dos Ingenieros por cuadra. :)
Eso de los programadores y los (permítaseme la libertad de usar el termino local más ajustado) ingenieros es algo que algunas empresas tiene claro, como TCS, que estan contratando a cualquiera que sepa manejar un pc como programador.
Yo, en particular, creo que el aprendizaje de la programación en si misma, es un efecto colateral inevitable y deseable, pero jamás central, en la enseñanza de la informática como disciplina, sin perjuicio que sea factible, y deseable la formación de programadores «a la Tata», gente que básicamente es un dactilógrafo del siglo 21.
Por eso me molesta un poco la forma en que Spolsky, a quién respeto precisamente por el hecho de tener claro como organizar una empresa de software, caracteriza a los «great programmers». Confunde las aguas refiriéndose de esa forma a lo que el realmente quiere, que son CS majors que sientan pasión por la programación. Suerte en pila, BTW, porque conozco poca, muy poca gente con esas características.
Que sabran las mujeres de futbol?????
La discucion se halla en un terreno de idioteces!
Sorry!