Login Barrapunto
¿Dónde están los ingenieros de software del mañana?
Fernandou nos cuenta: «En
Slashdot publicaron una noticia sobre un artículo escrito por Robert B.K. Dewar y Edmond Schonberg, dos profesores de Ingeniería Informática de la Universidad de Nueva York:
"Educación de Ciencias de la Computación: ¿Dónde están los ingenieros de software del mañana?".
En ella, apuntan a Java como "dañino" en el aprendizaje de la programación, así como critican a las universidades por no enseñar lenguajes sólidos como C, C++, Lisp y Ada.
El artículo se reflejó en varios sitios, y parece un verdadero referente del estado actual de la educación formal en Ciencias de la Computación (o Informática). Como estudiante, recomiendo a todos aquellos que estén estudiando programación (o similar) leerlo.
En su mayoría, este post es una traducción libre resumida de dicho artículo, así como opiniones y reflexiones personales agregadas.»
En general, creo que enumera bien las tendencias más preocupantes en la enseñanza de ingeniería informática (menor énfasis en los fundamentos de programación, abuso de las "recetas" empaquetadas, menor énfasis en matemáticas y lógica, etc.), aunque es obvio que son más acusados en unas universidades que en otras.
Historias relacionadas
[+]
¿Quién mató al ingeniero de software? 35 comentarios
Fernandou nos cuenta: «Robert Dewar, autor junto Edmond Schoenberg del artículo "¿Dónde están los Ingenieros de Software del mañana?" continuó la discusión al respecto en otra entrevista para Datamation. Su argumento se resume así: los programas universitarios de ciencia de la computación no son lo suficientemente rigurosos, y no promueven la resolución de problemas y pensamiento en profundidad. En vez de eso, en un esfuerzo por aumentar el matriculado, los programas se enfocan en un currículo fácilmente accesible, y fallan en preparar a los estudiantes a competir con sus colegas internacionales.
Una traducción general con algunas opiniones de dicha entrevista.»
Este hilo ha sido archivado.
No pueden publicarse nuevos comentarios.
¿Dónde están los ingenieros de software del mañana?
|
Log in/Crear cuenta
| Top
| 151 comentarios
| Buscar hilo
Y recuerda: Los comentarios que siguen pertenecen a las personas que los han enviado. No somos responsables de los mismos.

Y ahora se dan cuenta?
(Puntos:5, Inspirado)Si si... no vengais con el rollo de picar código que aqui pica código todo cristo, hasta los business analyst. Scrum? Extreme Programming? desarrollo ágil? os suenan? Realmente a veces pienso que esta web solo la visitan universitarios pajilleros y fracasados del INEM, porque el mercado esta bastante
Y claro, analisis de negocio... no hace falta estudiar informática... analisis orgánico... volvemos a lo mismo, ser un experto en la técnica, no en la filosofia... arquitecto lo da la experiencia, no un papel... y asi todo.
Que cada uno saque sus propias conclusiones, esto es aprender cada día, no dejar de estudiar nunca y por supuesto... humildad en los inicios.
Y ahora que vengan los fracasados de primera a rebatirme.
Agur.
Re:Y ahora se dan cuenta?
(Puntos:4, Inspirado)Si en la ing. se enseñan fundamentos algorítmicos no es para desarrollar planes de negocio ni mierdas similares (para ésto estan los FPeros y los ingenieros fracasados), son la base de una rama de la informática con una oferta dispar hoy en día, investigación bioquímica, sistemas de ficheros, o, desarrollo de las aplicaciones que TÚ (cómo usuario que eres) vas a utilizar. Esa es la idea.
Sí, con la tecnología actual, libros, y lenguajes puedes montar una consultoría informática.. no lo dudo, los clientes típicos tienen unos requerimientos de software más bien facilones.
No te enfades, no me estoy picando.
Sólo afirmo, cómo tú lo haces, que para dedicarte al desarrollo empresarial con un FP+experiencia vas que te sobras.
Por otra parte, me gustaría ver a un FP intentando desarrollar un programa que se ejecute en las máquinas del top100.
Re:Y ahora se dan cuenta?
(Puntos:5, Inspirado)No creo que alguien de FP se pueda poner a desarrollar ningún sistema de bajo nivel ó para investigación. El problema es que ese tipo de trabajos tiene una demanda baja, y por lo general
Por eso decía los "ing.tec regulares". Un ingeniero ó ing.tec de verdad, y cuando digo de verdad digo por vocación y no por "estudié esto porque hay demanda... y tardé el 2x ó 3x de tiempo estipulado", no tendrá que preocuparse por que los FPeros le quiten el trabajo, simplemente porque están a un nivel que requiere otra formación más extensa y profunda.
Ahora, si sales de la carrera solo sabiendo Java y te pones a programar en Java para una consultora... terminarás afiliandote a gilipolleces como "ingenieros de primera" porque hay algunos elementos (que no la mayoria) de FP con ganas y perspectiva dispuestos a perderse tardes de playstation y cervezas para leerse el último libro de certificación de Sun en Java ó que están programando cualquier cosa como hobby.
Yo digo que... si has estudiado una carrera y los de FP te quitan el trabajo... replanteate tu vida... y tu carrera futura... porque tienes un problema, no es que los demás vayan rápido... es que tu vas demasiado lento (no me refiero a ti, hablo en plan "proverbio chino"). Como decía, te doy la razón, un FPero no puede competir en el ámbito de alguien que ha hecho una carrera... si se ha hecho la carrera de forma consistente y no a la sopa boba.
Saludos.
Re:Y ahora se dan cuenta?
(Puntos:4, Interesante)Cierto es que yo venía ya bastante trabajado de FP donde fuera del horario de clases le daba bastante al ordenador.
Puedo decirte que el primer año desaprendí informática con tantos pasos previos a la hora de hacer un programa/aplicación que como teoría estan bien pero que luego en la carrera prácticamente ni se usan.
Como bien te han dicho un FPero con experiencia se puede merendar a uno con carrera sin mayor problema. Puede que no tenga la base teórica pero si que tendrá la mente más agil para resolver ciertos problemas no excesivamente complejos (programación en tiempo real, hilos, semáforos, mutex, etc) debido a que en FP haces más que dos grandes aplicaciones en una asignatura.
De todas formas y algo que es totalmente cierto en informática es que la persona a la que realmente le apasiona la informática y le hecha las horas que hagan falta se merendará a cualquier que tenga la carrera superior, incluso con masters y demás y que vea la informática como un mero trabajo y no le apasione.
---------
"Si miras fijamente la realidad, verás los pixels”
...
Ingeniería informática
(Puntos:3, Interesante)( http://unfito.blogspot.com/ | Última bitácora: Lunes, 28 Julio de 2008, 21:03h )
Da la casualidad de que en mi universidad (la de las Islas Baleares) en algún curso u otro hemos tocado Ada, C, Java, Lisp (prolog, perl...) aunque no C++. Yo opino que no es muy importante los lenguajes que utilices en clase, lo importante es cómo te hagan utilizarlos y cómo finalmente el alumnado los utilice. Los alumnos [casi] siempre van a lo fácil. También se guían por lo que oyen por ahí, así que si les das a elegir si quieren programar en Java o Ada la respuesta va a ser clarísima. Es más, si les haces programar en Ada es probable que vayan por ahí despotricando.
La única solución que veo a la desmotivación (o falta de vocación quizás) del alumnado, es que los profesores metan caña, que dejen claro que aquí se viene a aprender informática. Así es posible que mucha gente se diera cuenta de que quizás lo que a ellos les interesa no es hacer esa carrera, sino un FP de loquesea. La falta de vocación y dejadez de los alumnos repercute en la motivación de los profesores y eso se convierte en la pescadilla que se muerde la cola.
If I have seen farther, it is by standing on the shoulders of giants. (Isaac Newton)
Lenguajes y tecnologías
(Puntos:3, Interesante)( http://jadarios.wordpress.com/ )
Esto es un error. Se debería enseñar un lenguaje de cada categoría disponible (estructurado, orientado a objetos, funcional, tipado débil, etc) y en muchos casos adaptar qué se enseña a qué alumno.
Esta visión es extensible al mundo empresarial. Muchas empresas utilizan Java o
Todo depende de la universidad...
(Puntos:1)( Última bitácora: Jueves, 09 Febrero de 2006, 18:59h )
A mi no me jodas... todo lo que cuenta esta gente me parece un chiste, sencillamente porque en mi caso, mi universidad ha hecho todo lo contrario a lo que estos critican. Además, creo que por regla general en España, a ningún profesor se le ocurre enseñar a programar en Java. En todo caso se puede usar en cursos avanzados de ingeniería del software, sencillamente porque Java es la realidad en la industria
Pero volvamos al tema, yo creo que desde que un estudiante empieza la carrera hasta que sale, le graban en la cabeza todas y cada una de las consignas que esta gente repite. Luego podrá usar el lenguaje que le de la gana... Pero no me jodas! Después de diseñar ssoo, compiladores o saber perfectamente que hay mundos mas allá del paradigma imperativo. Ni el mas torpe de la facultad es tan necio de no saber que Java tiene por debajo ciento y la madre de pesados mecanismos ocultos.
En fin, en mi caso desde que llegamos pipiolos a la facul, hasta que se puede decir que sabemos programar perfectamente. La progresión va así:
ADA, Haskell
Mas ADA
C, ensamblador
C++, Prolog
Java
El profesor que enseñe Java desde un principio, pues puede saber un montón de informática, pero lo que no tiene es ni puta idea de docencia ni de metodología de la programación.
En fin. Mi conclusión es la que ya expuse al principio. El nivel de las ingenierías en España esta por encima de las del mundo anglosajón, aquí usamos el sistema francés. Hacemos lo que se puede decir super bachellors. Mientras que en USA, UK y muchos otros paises, hacen una carrera de base, bastante mas suave, y cuando acaban o se van a currar o hacen un Master of Science en alguna especialización. Aquí en cambio eso de los Masters es una cosa que no encaja en este sistema y de hecho está dando mucho dolor de cabeza a los que están implantando Bolonia.
Por lo tanto, esta crítica esta fuera de contexto en lo que es una ingeniería española. Y os lo digo yo que llevo dos años estudiando fuera.
Yo también hice Ada...
(Puntos:1)Ruben Norte - bLaDeRuNeR
La UBU es asín
(Puntos:1)Java considered harmful?
(Puntos:3, Interesante)( http://hronia.blogalia.com/ | Última bitácora: Lunes, 02 Julio de 2007, 20:51h )
Y sobre todo me inquieta porque se obvia que en la calidad de la docencia de programación tiene mucho más peso el profesor y los temarios que el lenguaje o plataforma escogida para transmitir los conceptos básicos.
___
"Tamparantán que te han visto Pepe, tamparantán que te han visto Juan"
En las bitácoras
(Puntos:2)( http://barrapunto.com/index.pl?section=mbp-draco | Última bitácora: Viernes, 18 Julio de 2008, 19:56h )
Personalmente creo que tanto da que sea Java o Ada, ninguno es ideal como primer lenguaje. De hecho, ambos me parecen pésimos.
Programs should be written for people to read, and only incidentally for machines to execute
y python?
(Puntos:1)( http://linuxhispano.net/ )
--- A veces es mejor cerrar la boca y parecer idiota, que abrir la boca y demostrar que lo eres.---
IT != FP
(Puntos:1)( http://pepssss.blogspot.com/ )
Lo primero, un FP no es lo mismo que un ingeniero ni un ingeniero técnico, lo que no quiere decir que un FP no pueda ejercer en tal puesto de trabajo.
Vamos a poner como ejemplo a dos alumnos normales pero motivados.
El FP de DAI (creo que se llama asi) frente al IT de Gestión. El de dai sabe programar perfectamene cuando termina y además tiene tiempo de coger un año de experiencia cuando acaba la carrera, sabe C/C++, Java, SQL, pl/sql y algo de UNIX y ha desarrollado un par de proyectos apañados con visual (lo que sea) + oracle.
El ITG sabe eso, ha programado algo menos pero lo que programado es de bastante mayor complejidad, ha dado media docena de algoritmos, ha dado las bases matemáticas de dichos algoritmos (TA), de unix sabe mas o menos bien que es una llamada al sistema, que pasos tiene (SO)..., de SQL seguramente halla dado algo de optimización y porque se optimiza así (fundamentos matemáticos), de C y demas lenguajes sabrá paso por paso que conlleva cada sentencia que escribe (ensamblador, estructura de computadores)... Y además de todo eso habrá aprendido a desnvolverse en un medio hostil, que no se parece en nada al colegio, donde la mitad de los profesores te mandan a tomar por culo cuando le preguntas algo (otros no), donde habrá elegido media docena de asignaturas sobre temas que le gustan.
¿Que conlleva esto? Pues que los universitarios tiene una base para adentrarse en nuevas areas con una facilidad bastante mayor que los FP, que han tocado mas areas y son, en general, mejores en asimilar conceptos sobre la marcha ya que, pensando un poco, sabrán que hay detrás de dichos conceptos y porque en los tres años de carrera se les ha puteado bastante.
ojo!! Hablo de alumnos aplicados.
http://pepssss.blogspot.com
Mi caso
(Puntos:1)( http://www.elmodem.com/ )
Los primeros 2 años fueron de Estudios Generales (comunes casi todos los cursos con el resto de ingenierías). Llevé 2 químicas, 3 físicas, 4 cursos de cálculo y cosas así. Cosas que ahora no uso, pero que sirvieron para "formar carácter" (académicamente hablando) para más adelante. Ah si, enseñaban rudimentariamente Pascal (era común para todos)
Luego siguieron 3 años de "facultad" con cursos propios de la carrera. En el primer ciclo de facultad llevamos un curso de algoritmos en Pascal , bastante difícil por cierto, la mayoría de personas reprobaba el curso (enseñaban algoritmos de ordenamiento, búsqueda, y cosas así). También había un curso de fundamentos de programación (cómo convertir una función recursiva en una iterativa, pre y post condiciones para un programa/función, etc.) que era algo más abstracto.
A lo largo de la carrera se diferenciaban 3 ramas: ciencias de la computación (teoría de algoritmos, teoría de lenguajes de programación, inteligencia artificial), desarrollo de sw (lo referido al análisis y desarrollo de programas) y lo que sería redes / adm de sistemas (redes, sistemas operativos, bases de datos, etc). Todos llevábamos algunos cursos de cada rama y ya de acuerdo a la inclinación de cada uno, escogía los electivos.
Para el caso concreto de la programación, luego de Pascal enseñaban C y C++(en Lenguajes de prog 1, donde enseñaban punteros, punteros void, etc.), Java / C++ y C# (leng de programación 2, teoría de objetos y el uso de GUI -hasta este curso todo había sido en "modo texto"). Luego venían los cursos que enseñaban cómo llevar proyectos (ingeniería de software, desarrollo de programas 1 y desarrollo de programas 2). En estos cursos pedían hacer un proyecto (análisis y desarrollo) por grupos en Delphi, Java,
Creo que la formación fue buena, exigían a un buen nivel, no como para salir como un gurú pero si para defenderse fuera (y por lo que he visto luego, más que la media de universidades locales). Claro que siempre había quienes pasaban copiando o sin hacer nada dentro del grupo, pero eso ya depende da cada uno y hasta dónde quiere exigirse.
Dejemos la pelea
(Puntos:1)( http://firma-tmp.blogspot.com/ | Última bitácora: Martes, 18 Julio de 2006, 16:14h )
En mi opinión, este problema es la falta de los conocimientos fundamentales, de lo que algunos llaman "la base", esta "base" acaba sustituyéndose por conocimientos prácticos y recetas heredadas que todos usan y nadie cuestiona (muchas veces porque ni siquiera entienden lo que hay debajo de esas recetas).
La raíz de todos los males
(Puntos:2)Droper
(Puntos:1)Re:Yo lo que no entiendo
(Puntos:3, Inspirado)( Última bitácora: Viernes, 01 Agosto de 2008, 12:00h )
Física o electrónica son básicas para poder adentrarse en el hardware, no que llegues a tercero sin saber lo que es un transistor.
Y sí, vale, es posible que de 300, 3 acaben dedicándose a algo de eso, pero es como si me dijeras que los médicos solo deberían aprender a tratar resfriados y gripes, porque la mayoría no verá un virus mortal en su vida...
Re:Blanca soltera busca.
(Puntos:1, Inspirado)Los ingenieros diseñan/crean la industria ó la explotan?
Manda huevos
(Puntos:1, Inspirado)Tío, ¿Tú no lees los enlaces o qué? Precisamente tu caso es uno de los casos patológicos de los que se habla en la noticia. La universidad no sirve para formar a los obreros del futuro, sino para formar a los pensadores del futuro.
No se trata de que te vaya a servir o no. Primero porque no tienes ni puta idea de lo que te va a servir, cuando termines la carrera y tengas que buscarte las castañas vas a ver que acabarás haciendo algo que ni te habías imaginado (y que seguramente no te va a gustar, para más inri). Segundo porque se trata de que aprendas de qué va la informática, la ciencia. No de que aprendas a programar en
Los computadores, las máquinas ejecutan tus programas, son cosas físicas. Y tendrás que aprender toda la física necesaria para entender cómo funcionan. Que es de lo que se trata. Entender cómo funcionan las tecnologías de la información, eso es la ciencia de la información. Eso incluye física, matemáticas, electrónica, etc.
Re:Problema
(Puntos:2)( http://unfito.blogspot.com/ | Última bitácora: Lunes, 28 Julio de 2008, 21:03h )
If I have seen farther, it is by standing on the shoulders of giants. (Isaac Newton)
Re:espero no perder el tiempo
(Puntos:1)Re:¿profesores de Ingeniería Informá
(Puntos:2)( http://www.boriel.com/ )
Cuando llegue el archifamoso Plan de Bolonia, entonces sí será una ingeniería de esas, plagada de Ingeniería del Software, y "métodos de gestión" y cosas así (desaparecerá Compiladores y Lenguajes, Teoría de Autómatas y Lenguajes Formales, Paralelismo, etc). Pero por ahora, no.
No en vano, por lo que me cuentan mis compañeros que trabajan en el extranjero, los ingenieros españoles están muy valorados... fuera de España.
Re:Están en China y en La India.
(Puntos:1)( http://barrapunto.com/ )
;) <- Por si las moscas... Y el karma.
Re:Estarán en dos sitios
(Puntos:1)( http://dame-tus-neuronas.blogspot.com/ )
Re:Problema
(Puntos:2)( http://vidimensional.wordpress.com/ | Última bitácora: Martes, 07 Agosto de 2007, 23:48h )
"Cuando el copyright impide el progreso de la ciencia, la ciencia debe desechar el copyright" - Richard M. Stallman
Re:java = perezosos?
(Puntos:1)( http://barrapunto.com/ | Última bitácora: Viernes, 17 Noviembre de 2006, 23:39h )
Eso es más que discutible. En aplicaciones de supercomputación se sigue usando mucho Fortran, entre otras cosas porque al ser un lenguaje más sencillo, es más fácil de optimizar, y hay mejores compiladores.
Pero vamos, si quieres hacer cálculo numérico en C... sí, se puede hacer, pero es infumable.
Ph'nglui mglw'nafh Cthulhu R'lyeh wgah'nagl fhtagn!
Re:espero no perder el tiempo
(Puntos:2)( http://vidimensional.wordpress.com/ | Última bitácora: Martes, 07 Agosto de 2007, 23:48h )
Esto es como en todo, aprenderás si tienes ganas de aprender, si vas a la universidad a sacarte las asignaturas de encima y poner en el examen lo que el profesor quiere leer, para sacarte un título, mejor haz FP que el papelito te saldrá más barato
Y, ojo, aprovechar el tiempo en la universidad y aprender no está reñido con vida social y otras aficiones, aunque sí hay que realizar ciertos sacrificios de vez en cuando.
"Cuando el copyright impide el progreso de la ciencia, la ciencia debe desechar el copyright" - Richard M. Stallman