Me gustaría aprovechar este hilo para preguntar otra cosa relacionada con el tema. Hace unos años, en mi escuela (de ingenieros de Sevilla), el examen de programación era mediante un test, nada de hacer un programa.
A mí me parece que con un test no se demuestra si se sabe un mínimo de programación. ¿Qué opináis vosotros?
Saludos
Según la materia. Evidentemente, yo no pondría un examen de Ingeniería del Software, pero sin embargo creo que vienen bien para el LISP (¡aún recuerdo los diabólicos exámenes de Pepe Luís!) y en general para ver si sabes la sintaxis de un lenguaje o cosas así.
-- ___ "Tamparantán que te han visto Pepe, tamparantán que te han visto Juan"
un examen de programación en un computador quizás sea mas justo en tanto en cuanto es el entorno en donde vas a desarrollar en la vida real, tiene como ventajas que podrías tener acceso a manuales o ayuda durante el examen, como contrapartida los puntos que se mencionan en la noticia.
De todas formas, generalizando, creo que un examen de programación convencional (ya sea tipo test o a desarrollar) es mas sencillo que uno práctico. Hay que tener en cuenta además que se examina a "estudiantes" no a programadores curtidos, currando es donde se coge la experiencia, un estudiante por muy bueno que sea no va a tener las tablas de un profesional, además ya habrá tiempo para picar código en el trabajo. En definitiva, a mi me parecería mas complicado un examen de LISP delante de emacs que un examen sobre sintaxis o preguntas mas puntuales de un determinado lenguaje de programación.
Todo depende del tipo de examen, yo estudio informática y mis examenes de programación son terribles, arrays tridimiensionales, diseño del programa con objetos (si es en Java), entrada/salida, gestión de archivos, pilas, colas, documentación en javadoc ... todo ésto me lo encontré en el último que he hecho, la verdad, para un examen así, prefiero un ordenador, por los siguientes motivos:
1.- Tiempo (el tiempo es mínimo y yo escribo más rápido en un ordenador que a mano)
2.- Limpieza (los examenes quedan guarrísimos, no da tiempo de pasar a limpio y siempre hay errores en los códigos que debes tachar)
3.- Seguridad (con un ordenador siempre podemos estar seguros de si los algoritmos tienen algún error, es muy común equivocarse con el nombre de los objetos, variables, ... cuando tienes muchas líneas de código y poco tiempo)
4.- Esfuerzo (es matador escribir 10 folios por las dos caras llenos de código, comentarios, tablas, ... en un ordenador es mucho más llevadero)
A lo mejor se me olvida alguna razón, pero me parecen suficientes... hay algunos profesores que se exceden en sus examenes (casi todos los que he tenido la verdad) y piden ejercicio excesivamente largos que son MUY díficiles de escribir a mano por las cuestiones anteriores
Yo he hecho exámenes sobre papel en varios lenguajes: c, c++, i386, mc6820... ¡incluso de visual basic! :-/ (que manda webos tener que saberse todos los atributos y métodos de memoria. Por supuesto el profesor no tenía ni idea de lo que daba...) Obviamente no creo que ninguno de mis programas de exámenes compilaran realmente pero... ¡que importa! Depende mucho del profesor que te corrija el examen. Si el tío tiene dos dedos de frente, echándole un vistazo al examen puede tener una idea de hasta donde alcanzan tus conocimientos. Si, por otra parte, el profesor es el típico hueso que se excita viendo a la gente sufriendo en las revisiones... ¡¡¡preparate!!!
Como siempre historias hay para todos los gustos: desde gente suspendida por escribir (con lapiz ;-D) todo un examen de C en mayúsculas y con la excusa del profesor que eso jamás podría compilar porque C era case sensitive (nos ha jodío el lumbrera) a gente suspensa por tener faltas de ortografía en los comentarios. (Ojo, no defiendo la cantidad de gente que cursando estudios en la "uni" comenten faltas de ortografias garrafales y nada puntuales, más bien esto va por un colega que acabó el examen poniendo /* eto ya tá */ gracias a lo cual se ganó un suspenso por faltas de ortografía :-|).
Y bueno... no me extiendo más que tengo que estudiar pal lunes (examen de traductores, uséase flex + bison, eso sí... delante del ordenadorcillo :D) T'aluego!
Examen escrito, ya sea tipo test o de cualquier otra forma, totalmente necesario para demostrar de manera objetiva tus conocimientos. Esto en primera instancia.
Examen practico: absolutamente necesario, despues de superar el escrito. El programa a realizar debe ser mas complicado. Tener ayudas en forma de manuales y demas no seria problema, ya que has superado previamente el escrito. La manera de evaluar el resultado es lo importante: calidad del algoritmo, optimizacion, seguimiento de reglas de estilo,... Personalmente opino que la gran mayoria de los que acaban la carrera de programar, ni idea. Segun mi experiencia personal, un 80% de la gente que se decide por estudiar informatica o bien no ha tocado un ordenador en su vida, o lo ha tenido para lo tipico: juegos, 'hacer trabajos', 'para estudiar'... Solo un minimo porcentaje de 'geeks' estudian informatica porque es lo que realmente les gusta; de este porcentaje, no a todos nos tiene porque gustar programar. Yo creo que hoy en dia en general este es el principal problema por el cual la calidad del software (notese que digo en general, hay notables y muy loables excepciones).
Un examen tipo test puede medir tu conocimiento de un lenguaje de programación, puede presentarte unos algoritmos y medir si eres capaz de reconocer los erroneos o los correctos, se pueden medir tus conocimientos de algoritmos de ordenación, etc.
Pero en un examen tradicional tipo test es imposible que se mida tu capacidad de crear programas.
Muchas personas cuando empiezan a estudiar programación creen que es fácil porque entienden todos los problemas que pone el profesor.
La auténtica sorpresa se la llevan cuando intentan resolver un problema nuevo por su propia cuenta.
En un examen escrito no puedo usar los test unitarios. Si he hecho alguna pifia en el codigo estos tests me lo harian saber antes de entregar el examen salvandome de un terrible suspenso ;) (Tambien depende del factor tiempo , los test se escriben rapido , pero no instantaneamente )
A mi me da la sensación (tras salir otro junio escaldado xD) que el problema principal es el mismo que ante un exámen de matemáticas; que puede que estén evaluando si sabes resolver una ecuación diferencial pero no la cagues porque se te pasó un signo o te tirarán todo el ejercicio. Lo mismo nos pasó este junio con un exámen de redes de neuronas donde un ejercicio para el q tenías 45 minutos consistía más que en conocer la asignatura en iterar varias veces una operación de producto de matrices... multiplicando una matriz de unos 11x6 elementos por un vector de 11 elementos (mas la sorpresa final de multiplicar el resultado por su matriz transpuesta o_O).
En fin, que en programación acaba pasando igual; que si no has hecho los tabulados como a mi me gustaba, que si esto no compilaría diréctamente,... que por olvidarte de como era la sintaxis del IF en este enésimo lenguaje que te tienes que aprender se hacen los tontos y no importa el desarrollo que hayas hecho en todo el ejercicio... y claro, para rematarlo todo los exámenes de programación tienen la característica de que muchas veces el profesor ha tenido una idea feliz para resolverlo de tal modo que si no ajustas a lo que a él se le ha ocurrido como solución única ya puedes despedirte...
Vamos, que más que en el que se programe en papel, el defecto lo veo yo en la estupidez profunda del profesorado - aun con honrosas excepciones -, que es incapaz de aplicar criterios coherentes de corrección; quizá coincide que en mi facultad el departamento de programación parece ser un lugar donde los profesores luchan por el record de desconocimiento de su propia asignatura pero me da la impresión de que esto es algo general :?
Pero que se espera uno de profesores que mezclando coña y explicación cuentan que cuando su sobrina no responde al decirle que es la hora de la cena, decide finalmente harto el tipo darle un "palazo en el estómago y entonces viene a cenar", concluyendo que "y eso es una interrupción" xD
--
...just some flesh caught in this big broken machine
IMHO los métodos tradicionales no sirven para este tipo de cosas.
Creo principalmente que el programar tiene al menos 2 partes, una de conocimienro y otra de habilidad.
El conocimiento puede ser evaluado por los métodos tradicionales (hasta en papel, mal que me pese) sin problemas, pero ¿cómo evaluar la habilidad?.
Personalmente creo que para distinguir si alguien sabe programar (saber combina todas las partes), el evaluador (o profesor, en este caso) debe: superar holgadamente el nivel que propone la evaluación, hacer un seguimiento cercano del razonamiento y la evolución de la solución, y conocer al individuo al que está evaluando.
El hecho de programar en máquina o papel, ayuda en la segunda de estas tareas, y permite que la solución llegue a su último estado de evolución, o sea cuando se compila y se corre, demostrando su validez o no.
¿Qué es demasiado? Ya lo sé, pero así debería ser en un mundo ideal ¿no?.
--
--
... remember, the light at the end of the tunnel may be you ...
Yo sufrí esa triste experiencia en Álgebra Superior :-) Entendía perfectamente (según yo) todas las demostraciones, todos los planteamientos, todos los puntos... Sin embargo, tan pronto como tuve que hacerlo yo, obtuve un 2 (escala 0-10) :-(
En un examen de programación no te van a pedir que hagas el análisis de una situación compleja y lo implementes de manera óptima - esto sería por un lado demasiado difícil de medir objetivamente y por el otro demasiado complejo para una situación de tiempo limitado (típicamente hasta dos horas). Te piden, más bien, que hagas un programa que implemente, por ejemplo, el quicksort - De esta manera, están evaluando a la vez si aprendiste cómo funciona el quicksort y si posees la capacidad de abstracción para plasmar un algoritmo fundamental en el lenguaje de programación que estés aprendiendo. Y claro, si yo fuera el profesor, no daría demasiada importancia a que la sintaxis estuviera correcta, o a la elegancia del código... Acá hablas de -repito- la capacidad de abstracción y el conocimiento del programa.
...Después de leer los demás comentarios, me doy cuenta que en mi universidad (Kennedy Western) fui muy afortunado. Cabe mencionar que es una universidad a distancia, que jamás he estado físicamente ahí. El esquema que siguen es:
Envían el examen a un "proctor" (examinador), quien debe ser una persona (verificablemente) honorable, no familiar, amigo ni subordinado mío.
Las reglas generales para cualquier examen suyo: A libro abierto (como las situaciones en el mundo real), con dos horas (en un caso me tocó de tres horas, para análisis de algoritmos y estructuras de datos).
Hay examenes de opción múltiple (me parece que en España los conocen como 'tests') y para desarrollar - Típicamente incluyen ambas modalidades.
Hay ejercicios de programación. Sin embargo, como explicaba en un comentario anterior, son puntuales, específicos a un algoritmo o a una situación simple pero suficiente para verificar la comprensión de cierto tema.
No, los examenes no son simples. Sí, hay algunas materias que me costó aprobar - una, de hecho, que repetí. Y... Bueno, estoy muy satisfecho con esta universidad - tomaron lo que entiendo que es el camino más justo para evaluarnos.
Ah, claro, y tuve oportunidad para demostrar que sí se programar proyectos grandes en mi proyecto final.
jeje... bueno, esa misma pregunta te la tienes que hacer cuando estás compilando y te falla... ¿Qué demonios tengo que hacer para que compile?
y encima te dan las posibles respuestas...
yo tambien estudié en Sevilla, en ingenieros, telek, y precisamente, esa no fue una de las asignaturas traumáticas que recuerdo ( eso sí, lo que es el trabajo de fin de curso de programación es un coñazo de mucho cuidao, y ahí sí que aprendes a defenderte a la hora de crear programas ).
Por un lado se ve el análisis ( con los según tú absurdos tipo test ) y por otro lado el diseño. Y cada uno con el método que según a mi juicio es más efectivo: la detección de errores y análisis de la sintaxis con tipo test en la que te ponen casos más o menos complicados, y la creación de programas a tu bola ( de hecho puedes hacer el programa como quieras, solo tiene que funcionar como ellos quieren, es decir, dar las salidas que se esperan a la entrada ).
A ver si nos quejamos menos... :P
Slt
por
pobrecito hablador
el Miércoles, 03 Julio de 2002, 17:13h
(#117824)
En la UPM, en la asignatura de sistemas operativos, las prácticas se entregaban de la siguiente forma:
Una vez compilado el código fuente se enviaba por email, un programa te lo compilaba, le pasaba una bateria de pruebas, lo corregia y te enviaba la nota que sacabas por email, dándote la oportunidad de decidir si lo entregabas o lo revisabas. Había ciertos límites, como que no se podia entregar la práctica mas de x veces al día, ya que se corregían todas las entregadas a determinadas horas.
Además el programa al final de todo el proceso comparaba los códigos fuente con los entregados en los últimos 3 años (ya que las practicas eran iguales de un año a otro). Lo de las copias no era como comparar con MD5SUM, si no que el profesor se lo tenía muy currado.
En mi opinión, los exámenes donde se valora la sintaxis del código escrito son absurdos.
Hoy en día las herramientas CASE (p. ej. Rose) te generan buena parte del código a partir de la especificación (UML, ASN, etc.). ¿Qué sentido tiene que una persona haga de compilador?
Creo que lo realmente importante son los algoritmos, no las implementaciones. Hay mucha gente que cree saber programar, pero en realidad solo sabe C o Pascal, y si tuvieran que cambiar a otro lenguaje, para ellos sería un suplicio. No digamos si tuvieran que diseñar un algoritmo nuevo o modificar uno ya existente.
Cualquiera puede implementar el código a partir de un algoritmo dado en pseudocódigo (o simplemente escrito de palabra), pero lo complicado es elaborar ese algoritmo. Todos sabemos implementar el método de suma rápida de 1 a 100, pero ¿a cuántos se nos hubiera ocurrido el algoritmo?
En fin, que estoy contento de que mi profesor de programación no hiciera ni caso a la sintaxis (de hecho, el examen de programación era en realidad de algoritmia: todo se hacía en pseudocódigo, excepto un apartadillo de 1 punto que era de implementar en en lenguaje que quisieras).
si se hace que hay que escribir montones de funciones parecidas, y con cuestions absurdas sin sentido llenas de detalles, entonces lo prefiero por
ordenador. Simplemente es mucho mas facil copiar y pegar codigo o borrar un error, etc.. lo que se dice editar. Yo programacion la aprobe a la segunda, pero recuerdo que me costo un poco porque aparte de que habia que meterse en la mente del tio y pensar como el (te daban un tercio del programa escrito y habia que completarlo,..) por esto que comento era como repetir de memoria
dshfajsdhflakjshdkjfhasdfhoiu325443h5hjkwlhkjh
khkjh23bn4mn2b4b,12m34b2 kjsalkjfñlsakfda iu
sdfpuasf897as89df7897asdfklñjsalfk kjdslñkjañdlfj
Si al menos las tareas de las funciones hubiesen tenido algun sentido para mi, me hubiera costado un poco menos. Pienso que se puede hacer un examen
que no haga falta un editor de textos, como se puede hacer un examen de matematicas que no requiera de una calculadora, pero hee.. ahi va la habilidad y tiempo del que disponga el profesor. Si anda muy mermadico de las dos cosas por muy buena voluntad que le ponga no podra hacer milagros. Por supuesto el profesor debe ser consciente de que examen ha puesto igual que un profesor de matematicas tienen en cuenta si ha puesto un examen que requiere mucha potencia de calculo, no dispusieron de calculadora y el calculo no es lo que se examinaba.
si yo fuera el profesor, no daría demasiada importancia a que la sintaxis estuviera correcta, o a la elegancia del código
Los exámenes de programación que yo he hecho, la sintaxis no era importante (no importa el lenguaje, eso es secundario y si te equivocas en sintaxis el compilador avisa) pero si se califica la elegancia y la claridad en el código.
Jejeje, ¡tu colega es un artista!
Lo de ponerle "eto ya tá" es de traca, me recuerda a un colega mio que se subio en el coche de la autoescuela, cerro de un portazo cojonudo y le dijo al examinador, por supuesto sin ponerse el cinturón y acelerando el motor: ¿va a ser conducción tranquila o deportiva jefe? Por supuesto el tipo tenía muy mal y le suspendio sin más....
precisamente a eso me refiero, me parece mas complicado implementar un quicksort y que funcione correctamente a escribirlo en papel donde puedo "meter la pata" en algo. La única razón por la que pueda ser preferible un examen práctico es porque se acerca mas a un entorno real, evidentemente nada tiene que ver programar un pequeño algoritmo con el desarrollo de un proyecto, nadie te va a pedir eso. Es como si te hacen un examen de química práctico, no vas a desarrollar un proyecto en un examen práctico de 2-5 horas, pero si es un entorno mas similar a lo que se encontrará el alumno en su vida laboral.
Yo personalmente si valoraría la claridad del código como factor esencial de la reusabilidad.
Ningún tipo de examen es justo en si mismo, depende de que se pregunte y como se corrija.
Es díficil hacer un examen justo, pero el problema es que la mayoria de las veces al profesor no le importa si el examen es justo o no. Con esta premisa es casi imposible que el examen sea justo, ya sea escrito, tipo test, o con ordenador, ya sea de programación o de filosofia.
Yo he visto muchos examenes que lo único que demuestran es la incompetencia del profesor.
Siempre ha sido más productivo estudiar al profesor que la asignatura. (Si lo que quieres es el aprobado)
Me parece que los comentarios que habéis hecho hablan de exámenes de universidad. Este curso que ha acabado he tenido la oportunidad, por primera vez en mi vida, de explicar un poco de programación (unas 16 clases). Eran 18 alumnos de 1º de Bachillerato de Ciencias.
Los exámenes, como os imagináis, eran sencillos. Les puse tres preguntas por examen, cada una consistía en escribir un programa corto (en C, de 10 a 20 líneas). Podían usar durante los exámenes los apuntes que les di y el material que hubieran elaborado ellos durante las clases. Al corregir me fijé en si el programa podría resolver lo que se pedía, pero no en los errores de sintaxis. Buscaba ver si se habían enterado de qué iba eso de programar. Bueno, no les salió mal, aunque desde luego fue la parte más difícil del temario.
Lo de las faltas de ortografía es totalmente fundamental. Es perdonable tener un desliz de vez en cuando pero ¡maldita sea! que cada año que pasa la cosa va a peor. Se te pone delante uno de la famosa E.S.O. y se te caen las lágrimas de pena. Y no hay excusa. No te digo que si en un examen tienes UNA falta de ortografía puntual y que te quita el 0,25 que necesitas para aprobar, no se tome en cuenta. Pero esos son casos excepcionales (no lo de aprobar a lo justo, que eso sí que es bastante habitual... jejeje). Por lo demás: faltas == puntos menos.
Por otro lado, eso de que el que el estado de los equipos no sea problema tuyo... mmmmm... ¡¡¡JA!!! A mi me ha petado un ordenador en medio de un examen y me he tenido que buscar la vida como he podido. No subestimes la maldad de un profesor (en este caso profesora, pa que no digan que no existe la igualdad... ;D) incompetente. Menos mal que estaba practicando el noble arte de guardar en disco de vez en cuando ;-)
Hasta el mayor de los idiotas puede hacer una pregunta que el mayor de los sabios no pueda/sepa contestar.
No recuerdo de quien es, pero bueno... probáblemente sea de Anónimo, que ese tío sí que sabía... ;-) Que si una novela, un poema, una estatua... vamos ¡que valía pa tó! xDDDDDDDD
Ahora que miro hacia atrás, creo que fue de mís frases más recordadas durante la carrera jejeje. Saludos.
Cuando yo estaba en 2º BUP +/- 1989, el equivalente (al menos en edad, en contenidos lo dudo ;) al último curso de ESO de hoy en día había dos clases a la semana de una historia que ahora no me acuerdo como se denominaba y que te daban a escoger entre informática, dibujo técnico y otra más que ya ni me acuerdo cual era.
En las clases de informática que daba un licenciado en mates que había dado programación en la carrera aprendíamos en XT con GWBASIC (siiii ¿ que passssaaaa ?) a programar, las clases seguían en 3º de BUP (el 1º de Bachillerato actual) aprendimos de forma rudimentaria técnicas básicas de programación, algoritmos de ordenación (el de la burbuja y el shell al menos) y búsqueda sencillos, manejo de archivos, etc... recuerdo que el programa final de segundo que hice entre los propuestos era un programa que almacenaba información de personal en archivos y luego permitía hacer varios tipos de operaciones de búsqueda, clasificación o eliminación de registros, el de 3º me moló más :) era el típico juego cutre con navecita disparando en la parte inferior de la pantalla a los malvados bichos que iban cayendo desde arriba (cutreclónico de Space Invaders).
La mayoría de los que escogieron programación la aprobaron sin demasiados problemas, por tanto no se que problema hay en que alumnos de esa edad y nivel den programación, además en los que hagan un bachillerato tecnológico es básico y obligatorio. Desde luego es mucho mejor que aprendan algo de programación que a rellenar plantillas en Word ¿no?.
a pesar de que creo que no entro en la definición de gEEK si que me metí en la carrera para aprender a programar porque (perdonen que me ponga sentimental) es algo increible conseguir que todos esos cacharritos hagan lo que tú quieres,
Venga hombre, reconócelo, eres un geek como todos ;-)
-- ___ "Tamparantán que te han visto Pepe, tamparantán que te han visto Juan"
15 respuestas por debajo de tu umbral de lectura actual.
y los exámenes de programación tipo test?
(Puntos:1)( http://www.fusero.info/ )
A mí me parece que con un test no se demuestra si se sabe un mínimo de programación. ¿Qué opináis vosotros?
Saludos
Re:y los exámenes de programación tipo test?
(Puntos:3, Interesante)( http://hronia.blogalia.com/ | Última bitácora: Jueves, 22 Enero de 2009, 06:57h )
___
"Tamparantán que te han visto Pepe, tamparantán que te han visto Juan"
mas sencillo método tradicional
(Puntos:2, Interesante)De todas formas, generalizando, creo que un examen de programación convencional (ya sea tipo test o a desarrollar) es mas sencillo que uno práctico. Hay que tener en cuenta además que se examina a "estudiantes" no a programadores curtidos, currando es donde se coge la experiencia, un estudiante por muy bueno que sea no va a tener las tablas de un profesional, además ya habrá tiempo para picar código en el trabajo. En definitiva, a mi me parecería mas complicado un examen de LISP delante de emacs que un examen sobre sintaxis o preguntas mas puntuales de un determinado lenguaje de programación.
Depende....
(Puntos:3, Interesante)( http://flickr.com/photos/jmdana )
1.- Tiempo (el tiempo es mínimo y yo escribo más rápido en un ordenador que a mano)
2.- Limpieza (los examenes quedan guarrísimos, no da tiempo de pasar a limpio y siempre hay errores en los códigos que debes tachar)
3.- Seguridad (con un ordenador siempre podemos estar seguros de si los algoritmos tienen algún error, es muy común equivocarse con el nombre de los objetos, variables, ... cuando tienes muchas líneas de código y poco tiempo)
4.- Esfuerzo (es matador escribir 10 folios por las dos caras llenos de código, comentarios, tablas, ... en un ordenador es mucho más llevadero)
A lo mejor se me olvida alguna razón, pero me parecen suficientes... hay algunos profesores que se exceden en sus examenes (casi todos los que he tenido la verdad) y piden ejercicio excesivamente largos que son MUY díficiles de escribir a mano por las cuestiones anteriores
Morralla [flickr.com]
Como siempre todo depende...
(Puntos:3, Divertido)( http://barrapunto.com/ )
Obviamente no creo que ninguno de mis programas de exámenes compilaran realmente pero... ¡que importa! Depende mucho del profesor que te corrija el examen. Si el tío tiene dos dedos de frente, echándole un vistazo al examen puede tener una idea de hasta donde alcanzan tus conocimientos. Si, por otra parte, el profesor es el típico hueso que se excita viendo a la gente sufriendo en las revisiones... ¡¡¡preparate!!!
Como siempre historias hay para todos los gustos: desde gente suspendida por escribir (con lapiz ;-D) todo un examen de C en mayúsculas y con la excusa del profesor que eso jamás podría compilar porque C era case sensitive (nos ha jodío el lumbrera) a gente suspensa por tener faltas de ortografía en los comentarios. (Ojo, no defiendo la cantidad de gente que cursando estudios en la "uni" comenten faltas de ortografias garrafales y nada puntuales, más bien esto va por un colega que acabó el examen poniendo /* eto ya tá */ gracias a lo cual se ganó un suspenso por faltas de ortografía :-|).
Y bueno... no me extiendo más que tengo que estudiar pal lunes (examen de traductores, uséase flex + bison, eso sí... delante del ordenadorcillo :D) T'aluego!
_aM0ebA_
AMBOS!
(Puntos:2, Interesante)( http://www.google.com/ )
dordoka
Imposible
(Puntos:4, Interesante)( http://vidaartificial.com/blog | Última bitácora: Miércoles, 10 Octubre de 2007, 20:48h )
Pero en un examen tradicional tipo test es imposible que se mida tu capacidad de crear programas.
Muchas personas cuando empiezan a estudiar programación creen que es fácil porque entienden todos los problemas que pone el profesor.
La auténtica sorpresa se la llevan cuando intentan resolver un problema nuevo por su propia cuenta.
Mi blog: Vida Artificial [vidaartificial.com]
Test unitarios
(Puntos:1)Como en los de matemáticas
(Puntos:3, Divertido)( http://pagina.de/wintermute )
En fin, que en programación acaba pasando igual; que si no has hecho los tabulados como a mi me gustaba, que si esto no compilaría diréctamente,... que por olvidarte de como era la sintaxis del IF en este enésimo lenguaje que te tienes que aprender se hacen los tontos y no importa el desarrollo que hayas hecho en todo el ejercicio... y claro, para rematarlo todo los exámenes de programación tienen la característica de que muchas veces el profesor ha tenido una idea feliz para resolverlo de tal modo que si no ajustas a lo que a él se le ha ocurrido como solución única ya puedes despedirte...
Vamos, que más que en el que se programe en papel, el defecto lo veo yo en la estupidez profunda del profesorado - aun con honrosas excepciones -, que es incapaz de aplicar criterios coherentes de corrección; quizá coincide que en mi facultad el departamento de programación parece ser un lugar donde los profesores luchan por el record de desconocimiento de su propia asignatura pero me da la impresión de que esto es algo general :?
Pero que se espera uno de profesores que mezclando coña y explicación cuentan que cuando su sobrina no responde al decirle que es la hora de la cena, decide finalmente harto el tipo darle un "palazo en el estómago y entonces viene a cenar", concluyendo que "y eso es una interrupción" xD
...just some flesh caught in this big broken machine
Los métodos tradicionales no sirven para esto
(Puntos:3, Interesante)( http://clavijos.com.ar/~bj/ )
Creo principalmente que el programar tiene al menos 2 partes, una de conocimienro y otra de habilidad.
El conocimiento puede ser evaluado por los métodos tradicionales (hasta en papel, mal que me pese) sin problemas, pero ¿cómo evaluar la habilidad?.
Personalmente creo que para distinguir si alguien sabe programar (saber combina todas las partes), el evaluador (o profesor, en este caso) debe: superar holgadamente el nivel que propone la evaluación, hacer un seguimiento cercano del razonamiento y la evolución de la solución, y conocer al individuo al que está evaluando.
El hecho de programar en máquina o papel, ayuda en la segunda de estas tareas, y permite que la solución llegue a su último estado de evolución, o sea cuando se compila y se corre, demostrando su validez o no.
¿Qué es demasiado? Ya lo sé, pero así debería ser en un mundo ideal ¿no?.
--
... remember, the light at the end of the tunnel may be you ...
No sólo en programación...
(Puntos:2)( http://www.gwolf.org/ )
Normalmente no te piden proyectos...
(Puntos:2)( http://www.gwolf.org/ )
Aparentemente, fui muy afortunado...
(Puntos:2)( http://www.gwolf.org/ )
No, los examenes no son simples. Sí, hay algunas materias que me costó aprobar - una, de hecho, que repetí. Y... Bueno, estoy muy satisfecho con esta universidad - tomaron lo que entiendo que es el camino más justo para evaluarnos.
Ah, claro, y tuve oportunidad para demostrar que sí se programar proyectos grandes en mi proyecto final.
Re:y los exámenes de programación tipo test?
(Puntos:1)( http://www.kikov.org/ | Última bitácora: Domingo, 14 Diciembre de 2003, 14:31h )
¿Qué demonios tengo que hacer para que compile?
y encima te dan las posibles respuestas...
yo tambien estudié en Sevilla, en ingenieros, telek, y precisamente, esa no fue una de las asignaturas traumáticas que recuerdo ( eso sí, lo que es el trabajo de fin de curso de programación es un coñazo de mucho cuidao, y ahí sí que aprendes a defenderte a la hora de crear programas ).
Por un lado se ve el análisis ( con los según tú absurdos tipo test ) y por otro lado el diseño. Y cada uno con el método que según a mi juicio es más efectivo: la detección de errores y análisis de la sintaxis con tipo test en la que te ponen casos más o menos complicados, y la creación de programas a tu bola ( de hecho puedes hacer el programa como quieras, solo tiene que funcionar como ellos quieren, es decir, dar las salidas que se esperan a la entrada ).
A ver si nos quejamos menos... :P
Slt
Salu2
¿Y corregidos automaticamente?
(Puntos:1, Interesante)Una vez compilado el código fuente se enviaba por email, un programa te lo compilaba, le pasaba una bateria de pruebas, lo corregia y te enviaba la nota que sacabas por email, dándote la oportunidad de decidir si lo entregabas o lo revisabas. Había ciertos límites, como que no se podia entregar la práctica mas de x veces al día, ya que se corregían todas las entregadas a determinadas horas.
Además el programa al final de todo el proceso comparaba los códigos fuente con los entregados en los últimos 3 años (ya que las practicas eran iguales de un año a otro). Lo de las copias no era como comparar con MD5SUM, si no que el profesor se lo tenía muy currado.
Los exámenes de sintaxis son absurdos
(Puntos:2, Interesante)( http://www.elpauer.org/ )
Hoy en día las herramientas CASE (p. ej. Rose) te generan buena parte del código a partir de la especificación (UML, ASN, etc.). ¿Qué sentido tiene que una persona haga de compilador?
Creo que lo realmente importante son los algoritmos, no las implementaciones. Hay mucha gente que cree saber programar, pero en realidad solo sabe C o Pascal, y si tuvieran que cambiar a otro lenguaje, para ellos sería un suplicio. No digamos si tuvieran que diseñar un algoritmo nuevo o modificar uno ya existente.
Cualquiera puede implementar el código a partir de un algoritmo dado en pseudocódigo (o simplemente escrito de palabra), pero lo complicado es elaborar ese algoritmo. Todos sabemos implementar el método de suma rápida de 1 a 100, pero ¿a cuántos se nos hubiera ocurrido el algoritmo?
En fin, que estoy contento de que mi profesor de programación no hiciera ni caso a la sintaxis (de hecho, el examen de programación era en realidad de algoritmia: todo se hacía en pseudocódigo, excepto un apartadillo de 1 punto que era de implementar en en lenguaje que quisieras).
depende como se haga...
(Puntos:1)( Última bitácora: Viernes, 03 Febrero de 2012, 15:18h )
ordenador. Simplemente es mucho mas facil copiar y pegar codigo o borrar un error, etc.. lo que se dice editar. Yo programacion la aprobe a la segunda, pero recuerdo que me costo un poco porque aparte de que habia que meterse en la mente del tio y pensar como el (te daban un tercio del programa escrito y habia que completarlo,..) por esto que comento era como repetir de memoria
dshfajsdhflakjshdkjfhasdfhoiu325443h5hjkwlhkjh
khkjh23bn4mn2b4b,12m34b2 kjsalkjfñlsakfda iu
sdfpuasf897as89df7897asdfklñjsalfk kjdslñkjañdlfj
Si al menos las tareas de las funciones hubiesen tenido algun sentido para mi, me hubiera costado un poco menos. Pienso que se puede hacer un examen
que no haga falta un editor de textos, como se puede hacer un examen de matematicas que no requiera de una calculadora, pero hee.. ahi va la habilidad y tiempo del que disponga el profesor. Si anda muy mermadico de las dos cosas por muy buena voluntad que le ponga no podra hacer milagros. Por supuesto el profesor debe ser consciente de que examen ha puesto igual que un profesor de matematicas tienen en cuenta si ha puesto un examen que requiere mucha potencia de calculo, no dispusieron de calculadora y el calculo no es lo que se examinaba.
Imho.
Re:Normalmente no te piden proyectos...
(Puntos:1)Los exámenes de programación que yo he hecho, la sintaxis no era importante (no importa el lenguaje, eso es secundario y si te equivocas en sintaxis el compilador avisa) pero si se califica la elegancia y la claridad en el código.
Re:Como siempre todo depende...
(Puntos:1)( Última bitácora: Martes, 05 Octubre de 2010, 19:52h )
Lo de ponerle "eto ya tá" es de traca, me recuerda a un colega mio que se subio en el coche de la autoescuela, cerro de un portazo cojonudo y le dijo al examinador, por supuesto sin ponerse el cinturón y acelerando el motor: ¿va a ser conducción tranquila o deportiva jefe? Por supuesto el tipo tenía muy mal y le suspendio sin más....
Re:Normalmente no te piden proyectos...
(Puntos:1)Yo personalmente si valoraría la claridad del código como factor esencial de la reusabilidad.
¿Algún tipo de examen es justo?
(Puntos:1)Es díficil hacer un examen justo, pero el problema es que la mayoria de las veces al profesor no le importa si el examen es justo o no. Con esta premisa es casi imposible que el examen sea justo, ya sea escrito, tipo test, o con ordenador, ya sea de programación o de filosofia.
Yo he visto muchos examenes que lo único que demuestran es la incompetencia del profesor.
Siempre ha sido más productivo estudiar al profesor que la asignatura. (Si lo que quieres es el aprobado)
¿Presentarías un currículo con faltas?
(Puntos:1)Yo vi dos curriculos de dos personas diferentes pero entregados a la misma empresa en los que en el titulo ponia "CURRICULUM BITAE"
Fueron directos a la papelera.
Mis sencillos exámenes
(Puntos:2)( http://pedroreina.net/ )
Los exámenes, como os imagináis, eran sencillos. Les puse tres preguntas por examen, cada una consistía en escribir un programa corto (en C, de 10 a 20 líneas). Podían usar durante los exámenes los apuntes que les di y el material que hubieran elaborado ellos durante las clases. Al corregir me fijé en si el programa podría resolver lo que se pedía, pero no en los errores de sintaxis. Buscaba ver si se habían enterado de qué iba eso de programar. Bueno, no les salió mal, aunque desde luego fue la parte más difícil del temario.
Pedro Reina
Re:a mano o a makina?
(Puntos:1)( http://barrapunto.com/ )
Lo de las faltas de ortografía es totalmente fundamental. Es perdonable tener un desliz de vez en cuando pero ¡maldita sea! que cada año que pasa la cosa va a peor. Se te pone delante uno de la famosa E.S.O. y se te caen las lágrimas de pena. Y no hay excusa. No te digo que si en un examen tienes UNA falta de ortografía puntual y que te quita el 0,25 que necesitas para aprobar, no se tome en cuenta. Pero esos son casos excepcionales (no lo de aprobar a lo justo, que eso sí que es bastante habitual... jejeje). Por lo demás: faltas == puntos menos.
Por otro lado, eso de que el que el estado de los equipos no sea problema tuyo... mmmmm... ¡¡¡JA!!! A mi me ha petado un ordenador en medio de un examen y me he tenido que buscar la vida como he podido. No subestimes la maldad de un profesor (en este caso profesora, pa que no digan que no existe la igualdad... ;D) incompetente. Menos mal que estaba practicando el noble arte de guardar en disco de vez en cuando ;-)
_aM0ebA_
Re:¿Algún tipo de examen es justo?
(Puntos:1)( http://barrapunto.com/ )
Hasta el mayor de los idiotas puede hacer una pregunta que el mayor de los sabios no pueda/sepa contestar.
No recuerdo de quien es, pero bueno... probáblemente sea de Anónimo, que ese tío sí que sabía... ;-) Que si una novela, un poema, una estatua... vamos ¡que valía pa tó! xDDDDDDDD
Ahora que miro hacia atrás, creo que fue de mís frases más recordadas durante la carrera jejeje. Saludos.
_aM0ebA_
Pues no se de que te extrañas
(Puntos:2)( http://barrapunto.com )
En las clases de informática que daba un licenciado en mates que había dado programación en la carrera aprendíamos en XT con GWBASIC (siiii ¿ que passssaaaa ?) a programar, las clases seguían en 3º de BUP (el 1º de Bachillerato actual) aprendimos de forma rudimentaria técnicas básicas de programación, algoritmos de ordenación (el de la burbuja y el shell al menos) y búsqueda sencillos, manejo de archivos, etc... recuerdo que el programa final de segundo que hice entre los propuestos era un programa que almacenaba información de personal en archivos y luego permitía hacer varios tipos de operaciones de búsqueda, clasificación o eliminación de registros, el de 3º me moló más :) era el típico juego cutre con navecita disparando en la parte inferior de la pantalla a los malvados bichos que iban cayendo desde arriba (cutreclónico de Space Invaders).
La mayoría de los que escogieron programación la aprobaron sin demasiados problemas, por tanto no se que problema hay en que alumnos de esa edad y nivel den programación, además en los que hagan un bachillerato tecnológico es básico y obligatorio. Desde luego es mucho mejor que aprendan algo de programación que a rellenar plantillas en Word ¿no?.
Sal del armario...
(Puntos:2)( http://hronia.blogalia.com/ | Última bitácora: Jueves, 22 Enero de 2009, 06:57h )
___
"Tamparantán que te han visto Pepe, tamparantán que te han visto Juan"