Poll :: ¿Pascal o Python? |
Pascal |
|
27% |
[ 27 ] |
Python |
|
60% |
[ 59 ] |
Otro |
|
12% |
[ 12 ] |
|
Votos Totales : 98 |
|
Autor |
Mensaje |
Izanagi
Nivel 7
Edad: 37
Registrado: 21 Ago 2008
Mensajes: 402
Ubicación: Belgrano
Carrera: No especificada
|
|
Bueno jovenes les comento la situación, desde hace un tiempo se anda hablando en el departamento de hacer que todas las catedras de 75.40 enseñen Python en lugar de Pascal / Otros.
Antes de emitir mi opinión, veamos una breve introducción de los dos de la mano de wikipedia.
Python:
Cita:
|
Python se utiliza como lenguaje de programación interpretado, lo que ahorra un tiempo considerable en el desarrollo del programa, pues no es necesario compilar ni enlazar. El intérprete se puede utilizar de modo interactivo, lo que facilita experimentar con características del lenguaje, escribir programas desechables o probar funciones durante el desarrollo del programa.
|
Paradigmas: programación orientada a objetos, programación estructurada y programación funcional.
Tipado? Sí.(dinamico)
Memoria dinamica? Sí
Pascal:
Cita:
|
Pascal se caracteriza por ser un lenguaje de programación estructurado fuertemente tipificado. Esto implica que:
a) El código esta dividido en porciones fácilmente legibles llamadas funciones o procedimientos. De esta forma Pascal facilita la utilización de la programación estructurada en oposición al antiguo estilo de programación monolítica.
b) El tipo de dato de todas las variables debe ser declarado previamente para que su uso quede habilitado
|
Paradigmas: programación estructurada.
Tipado? Sí.(estatico)
Memoria dinamica? Sí, engorroso, pero sí.
Aún hoy no me termina de convencer la idea de migrar, los motivos son simples:
a) Hay que capacitar a los docentes y ayudantes
b) El cambio de lenguaje no seria muy feliz
Con respecto a (a) no hay mucho que decir, tampoco es una tarea biblica.
Se limita a comprar un libro y aprender la sintaxis.
Más alla de eso, el cambio de lenguaje debe venir acompañado de un cambio en el programa de 75.40 a gran escala, con un cambio de mentalidad y metodologia.
El punto (b) es el que mas me preocupa y molesta en lo personal, va mas alla del lenguaje que se de en 75.40. Como dije anteriormente, se pone demaciado enfasis en la herramienta de desarrollo y no lo que se quiere enseñar. La idea, por lo menos es lo que pienso yo, es que la materia debe funcionar como una introducción a la metodologia de trabajo de un programador.
Como broche a la discusión, si el cambio sirve para que todas las catedras esten unificadas en temario y nivel, bienvenido sea.
Caso contrario, va a ser una inversion de tiempo y recursos al pedo.
Enjoy.
Esto no es un thread para ver que lenguaje es más banana que el otro.
Solo se busca la mejor opción para el alumnado.
Detalles que crean que merezcan agregarse al primer post serán bienvenidos.
EDIT:
03-11-09: Se agrega el tipo de tipado.
|
|
|
|
_________________
[Campaña]Revivamos el Chat Fiuba
Última edición por Izanagi el Mar Nov 03, 2009 8:43 pm, editado 2 veces
|
|
|
|
|
Johann
Nivel 9
Edad: 34
Registrado: 04 Abr 2009
Mensajes: 1098
Ubicación: Nuñez
Carrera: Informática
|
|
Yo apoyo al Pascal. Está bueno para aprender ya que tiene una sintaxis bastante estricta y no quedas con vicios de programación.
Además, el programa de algoritmos I no incluye memoria dinámica ni programación orientada a objetos, usar un lenguaje que facilita/habilita eso lleva a que los profesores den cosas que no deberían dar a cambio de no dar cosas que deberían dar (o que podrían dar con mayor profundidad).
|
|
|
|
|
|
|
|
|
Amadeo
Nivel 9
Registrado: 20 Oct 2008
Mensajes: 1436
Carrera: No especificada
|
|
Yo apoyo a Python. Me parece que en un primer curso de programación es BASTANTE molesto perder además de lo que tardás en hacer un ejercicio, unos 15, 20 o más minutos corrigiendo errores de sintaxis, que en definitiva son cosas secundarias. Yo creo que con Python uno se podría concentrar más en los conceptos y no tanto en ver como hacer andar al programa.
Para romperse la cabeza con la sintaxis ya está Algoritmos II que tengo entendido que ven C. E igualmente, podrían hacer tipo como hacen en Algoritmos III, que podés usar C# o Java, pero que te den a elegir entre Python/Pascal o Python/C.
|
|
|
|
|
|
|
|
|
DiegoNC
Nivel 4
Registrado: 17 Sep 2005
Mensajes: 86
Carrera: Informática
|
|
Izanagi escribió:
|
Como dije anteriormente, se pone demaciado enfasis en la herramienta de desarrollo y no lo que se quiere enseñar.
|
Hubo una discusión en iinfo sobre esto. Y de lo que leí recuerdo vagamente que esto no es así sino todo lo contrario, el eje central son los contenidos. Al menos por parte de quienes impulsan el cambio a python.
Dejo los vínculos al archivo por si alguien quiere consultarlos:
[Iinfo] Consulta lenguajes de algoritmos I (Agosto)
[Iinfo] Consulta lenguajes de algoritmos I (Septiembre)
(pd: yo apoyo a lua )
|
|
|
|
|
|
|
|
|
Izanagi
Nivel 7
Edad: 37
Registrado: 21 Ago 2008
Mensajes: 402
Ubicación: Belgrano
Carrera: No especificada
|
|
Cita:
|
Y de lo que leí recuerdo vagamente que esto no es así sino todo lo contrario, el eje central son los contenido
|
Actualmente, se hace demaciado incapie en el lenguaje por una cuestion de comodidad para enseñar. A mi parecer, las cosas deberian ser al revez, razonar y luego llevarlo al entorno donde estas desarrollando la solucion.
(Obviamente, el tiempo de cursada es un factor importante para que se de este fenomeno)
|
|
|
|
_________________
[Campaña]Revivamos el Chat Fiuba
|
|
|
|
|
facundo.olano
Nivel 8
Edad: 37
Registrado: 10 Ago 2006
Mensajes: 808
Ubicación: encadenado al ánima
Carrera: Informática
|
|
Izanagi escribió:
|
Python:
Tipado? Sí.
|
Te faltó aclarar que Python, a diferencia de pascal (y de todos los lenguajes que se ven en las materias troncales de la carrera), es tipado dinámico, lo cual no es un detalle menor. Para mí en un lenguaje de de alto nivel es algo muy deseable que el tipado sea dinámico, por que simplifica enormemente la programación (desde mi punto de vista, muchas de las comunmente llamadas "técnicas avanzadas" de los lenguajes orientados a objetos del estilo Java o C++, como los patrones de diseño, los templates, reflexión, son parches para la falencia de tipado dinámico, pero eso ya es una discusión larga). El tema es que es discutible que sea bueno como punto de partida para quien aprende a programar, por que quizás se pueda hacer difícil el cambio a un lenguaje estático. Estaría bueno que quienes pasaron por esa situación comenten su experiencia.
Izanagi escribió:
|
b) El cambio de lenguaje no seria muy feliz
El punto (b) es el que mas me preocupa y molesta en lo personal, va mas alla del lenguaje que se de en 75.40. Como dije anteriormente, se pone demaciado enfasis en la herramienta de desarrollo y no lo que se quiere enseñar. La idea, por lo menos es lo que pienso yo, es que la materia debe funcionar como una introducción a la metodologia de trabajo de un programador.
|
Programaste en Python alguna vez?? Para hacer un hola mundo en pascal tenes que hacer includes (o como sea que se llamen en Pascal, porque, obviamente, al mes te olvidaste de como se usa), usar un preambulo bizarro para declarar variables, begin, end, etc. Absolutamente inentendible para quien no sabe programar. Y probablemente por eso perdían no se cuantas clases con pseudocódigo.
El codigo de Python es muy claro, la sintaxis es súper minimalista y legible, tener un intérprete también ayuda mucho para probar las cosas, es muy raro que te trabes pensando en como se hace una cosa determinada en el lenguaje, etc. Para mí es un lenguaje mucho más apto para aprender a programar que Pascal o C.
Sumado a eso, es un lenguaje mu potente, lo que implica que salís de algoI con una herramienta muy buena, y googleando un poco podés hacer muchísimo más que lo que yo hubiera podido aventurar con pascal en su momento.
El único problema es que cuando te pidan usar C++ vas a querer viajar a dinamarca para matar a balazos a Bjarne Stroustrup, no porque no puedas usar su lenguaje, sino porque no vas a poder soportar la existencia de una mente tan retorcida en este planeta.
|
|
|
|
_________________
|
|
|
|
|
Moises
Nivel 8
Edad: 35
Registrado: 26 Sep 2007
Mensajes: 727
Carrera: No especificada
|
|
Izanagi escribió:
|
Como dije anteriormente, se pone demaciado enfasis en la herramienta de desarrollo ..
|
No coincido.
En las dos catedras que curse, Guarna (I) y Calvo (II) se enseñaba a programar, no a programar en Pascal ni C++ (en AlgoII nos pasaban "casi todo listo" y era enchufar y ya està, un poco de sintaxis y el resto era construir una aplicaciòn)
facundo.olano escribió:
|
Te faltó aclarar que Python, a diferencia de pascal (y de todos los lenguajes que se ven en las materias troncales de la carrera), es tipado dinámico, lo cual no es un detalle menor. Para mí en un lenguaje de de alto nivel es algo muy deseable que el tipado sea dinámico, por que simplifica enormemente la programación..
|
Si y no.
Muchos errores "tontos" son por querer sumar flotante y meterlos en enteros (por ejemplo), es un descuido y los ingenieros tienen que aprender a ser cuidadosos. Es cierto que despues el tipo de dato "numero" harà todo, pero despues... por ahora se cuidadoso.
facundo.olano escribió:
|
Sumado a eso, es un lenguaje mu potente, lo que implica que salís de algoI con una herramienta muy buena, y googleando un poco podés hacer muchísimo más que lo que yo hubiera podido aventurar con pascal en su momento.
|
Totalmente de acuerdo, desarrolle un prototipo que en C++ me tomaria una semana. En python tomo 2 horas? es realmente util trabajar con una herramienta de alto nivel.
|
|
|
|
|
|
|
|
|
Cradwel
Nivel 5
Edad: 36
Registrado: 29 Jul 2008
Mensajes: 184
Carrera: Informática
|
|
Mmm... No puedo ser del todo objetivo con este tema...
Si bien hice sólo algunas cosas pequeñas en Python, pude ver que tiene mucha facilidad de uso...
Es sencillo y se pueden hacer cosas complejas fácilmente...
Creería que es excelente para aprender algoritmos sin preocuparse por detalles menores...
Pero mi opinión está sucia por haberme iniciado en la programación allá por el secundario con Pascal =P
Pascal es incómodo, lento, caprichoso, destructor de retinas y hasta feo... Pascal merece la muerte (?)
Pero para sobrevivir todo eso me obligó a desarrollar buenas prácticas que hasta hoy en día me sirven...
Tuve que invertir bastante tiempo para poder atravesar esas incomodidades, pero me sirvieron para muchas cosas que vinieron después...
Por mi experiencia personal no sacaría Pascal... Todavía =P
Taría bueno leer alguna experiencia de alguien que cursó la cátedra piloto de AlgoI de Python (Si es alguien que era virgen mejor (?)) que venga y me diga:
"No, no es así Ele... Yo aprendí a tener muy buenas prácticas de programación aprendiendo Python sin sufrir" y que me calle la boca para sumarle puntos a Python =)
EDIT: Por eso me abstengo de votar todavia... Nunca escuché o leí experiencias de iniciados en Python
Saludos!
(Ojalá se pueda sepultar a Pascal algún día! )
|
|
|
|
_________________
▲
▲ ▲
|
|
|
|
|
Fido Nadal
Nivel 3
Registrado: 18 Jun 2009
Mensajes: 26
|
|
facundo.olano escribió:
|
El único problema es que cuando te pidan usar C++ vas a querer viajar a dinamarca para matar a balazos a Bjarne Stroustrup, no porque no puedas usar su lenguaje, sino porque no vas a poder soportar la existencia de una mente tan retorcida en este planeta.
|
Yo en Algo 1 de mi facultad había aprendido a programar en Funcional con Haskell y después nos enseñaron Imperativo en C++ y si bien son 2 cosas TOTALMENTE distintas, ese tipo de saltos te forman un montón pensando en largo plazo, creo que una de las mejores cosas que te puede dejar una facultad es que "aprendas a aprender" o "aprendas a pensar"
Pensando en esto, creo que una de las cosas que yo le daría a chicos de una primera materia de programación como pilares para formarle la cabeza es que aprendan a especificar formalmente y después si la idea es que no se enseñe programación funcional desde en esa materia (cosa que creo que sería un error porque te sirve para abrirte mucho el bocho) se manden a enseñar en C/C++ Python, etc.
|
|
|
|
|
|
|
|
|
SAn
Nivel 4
Registrado: 16 Ago 2005
Mensajes: 96
Ubicación: Uqbar
Carrera: Electrónica
|
|
Moises escribió:
|
facundo.olano escribió:
|
Te faltó aclarar que Python, a diferencia de pascal (y de todos los lenguajes que se ven en las materias troncales de la carrera), es tipado dinámico, lo cual no es un detalle menor. Para mí en un lenguaje de de alto nivel es algo muy deseable que el tipado sea dinámico, por que simplifica enormemente la programación..
|
Si y no.
Muchos errores "tontos" son por querer sumar flotante y meterlos en enteros (por ejemplo), es un descuido y los ingenieros tienen que aprender a ser cuidadosos. Es cierto que despues el tipo de dato "numero" harà todo, pero despues... por ahora se cuidadoso.
|
Moises, si no te interpreto mal creo estas mezclando typado dinámico con tipado débil. El tipado de python es fuerte, no podes equivocarte y guardar un float en un int, tenes que hacer un casteo explicito (además por ser dinámico el nombre de la variable no está ligado estaticamente a un tipo).
|
|
|
|
|
|
|
|
|
Izanagi
Nivel 7
Edad: 37
Registrado: 21 Ago 2008
Mensajes: 402
Ubicación: Belgrano
Carrera: No especificada
|
|
Cita:
|
Yo en Algo 1 de mi facultad había aprendido a programar en Funcional con Haskell y después nos enseñaron Imperativo en C++ y
si bien son 2 cosas TOTALMENTE distintas, ese tipo de saltos te forman un montón pensando en largo plazo,
creo que una de las mejores cosas que te puede dejar una facultad es que "aprendas a aprender" o "aprendas a pensar"
|
En un principio iba a proponer haskell como alternativa a Python.
Luego, pense que no alcanzaba como para orientar una materia cuatrimestral, pero tranquilamente podria darse como herramienta complementaria.
(Es más, creo que se lo había dicho a guarna.)
Cita:
|
En python tomo 2 horas? es realmente util trabajar con una herramienta de alto nivel.
|
Bueno, aca vamos a tener que hacer un merecido alto.
¿Que creen que se busca con el cambio?
Cita:
|
Creería que es excelente para aprender algoritmos sin preocuparse por detalles menores...
|
Concuerdo con la idea de que dejariamos de preocuparnos por detalles como dice Cradwel, ¿pero hasta que punto es bueno eso?
Sinceramente, son cosas que no me convencen( a mí).
|
|
|
|
_________________
[Campaña]Revivamos el Chat Fiuba
|
|
|
|
|
Sebastian Santisi
Administrador Técnico
Edad: 42
Registrado: 23 Ago 2005
Mensajes: 17451
|
|
Izanagui; repito lo mismo que le planteé a Sid Bernard en el thread de 75.41 Wachenchauzer hace no más de dos semanas.
Son unos boludos a cuerda (esto no lo había dicho), entendieron que el cambio que se hizo con 75.40 curso Wachenchauzer fue dar Python, cuando ese NO FUE el quid del replanteo.
Se planteó una metodología de enseñanza. Se planteó un modelo, se planteó una estructura de contenidos, se planteó un programa. Y con ese programa planteado y los objetivos planteados y la metodología planteada, se planteó un abanico de posibilidades de lenguajes, mixtura de lenguajes, frameworks y demases, para decidir dictar la materia en Python.
El debate no es "Python sí, Pascal sí", si esa es la duda que te inunda (el te y la segunda persona no recae necesariamente sobre vos, pero llega más), olvidate, sabés dictar la materia en Pascal (o el imperativo compilado -o no, si te gusta BASIC está bien- que sea de tu agrado) y lo mejor que podés hacer es seguir dictándola en Pascal. Para pretender dictarla en Python, primero tenés que entender la filosofía de didáctica (NO del lenguaje) que generó ese curso, y una vez sentado eso, podés decidirlo darlo en el lenguaje que te parezca mejor.
El debate planteado de cualquier otra manera, es un total sinsentido. Son dos maneras TOTALMENTE diferentes de encarar un curso. Si uno se da en Pascal o en C o en C++ o en Java o en C#, y el otro se da en Python o Ruby o PHP o Haskell u OZ o cualquier otra cosa; es totalmente indistinto. La materia no es el lenguaje. (Tambień, podés seguir dictando la actual pedorrez que dictan en varios cursos usando Python y hacerla igual de pedorra.)
Los planteos que están haciendo en este hilo son meramente prácticos, y el título es un reduccionismo que conlleva a eso. El planteo es en un plano totalmente filosófico y es "¿cómo enseñar una materia inicial de programación?".
@Fido Nadal: Rosita Wachenchauzer es la autora del actual plan de estudios de Cs. de la Computación. No te extrañe el paralelismo de empezar menejando un paradigma desde el enfoque funcional que también aplicó a este curso.
|
|
|
|
_________________
|
|
|
|
|
Izanagi
Nivel 7
Edad: 37
Registrado: 21 Ago 2008
Mensajes: 402
Ubicación: Belgrano
Carrera: No especificada
|
|
Cita:
|
Se planteó una metodología de enseñanza. Se planteó un modelo, se planteó una estructura de contenidos, se planteó un programa. Y con ese programa planteado y los objetivos planteados y la metodología planteada, se planteó un abanico de posibilidades de lenguajes, mixtura de lenguajes, frameworks y demases, para decidir dictar la materia en Python.
|
En vez de decirme boludo a cuerda, pone los cambios que se estan planteando( o que se aplicaron ) que es justamente lo que quiero saber.
El próximo thread prometo hacerlo en font 12345678 con bold.
Cita:
|
Los planteos que están haciendo en este hilo son meramente prácticos, y el título es un reduccionismo que conlleva a eso. El planteo es en un plano totalmente filosófico y es "¿cómo enseñar una materia inicial de programación?".
|
Sí, ¿en que momento oculte eso?(pregunta retorica)
|
|
|
|
_________________
[Campaña]Revivamos el Chat Fiuba
|
|
|
|
|
Sebastian Santisi
Administrador Técnico
Edad: 42
Registrado: 23 Ago 2005
Mensajes: 17451
|
|
Izanagi escribió:
|
En vez de decirme boludo a cuerda, pone los cambios que se estan planteando( o que se aplicaron ) que es justamente lo que quiero saber.
|
No, estás iniciando este hilo tirando particularidades de dos lenguajes, y preguntando "hay que dar el lenguaje Pepito", como si de Pepito dependiera las cosas.
Hasta bastante maduras las ideas que se planteaban dar, C era uno de los lenguajes que pensábamos que eran viables para el curso. Hubiera implicado armar un framework que encapsulara en las primeras semanas el manajo de bajo nivel; pero hubiera permitido dar el 100% de la materia en un solo lenguaje y era un pro bastante interesante. En ese caso, ¿este thread hablaría sobre si migrar a C?; yo doy C en 75.02 desde hace 6 años, te aseguro que no tiene nada que ver.
Si querés, empezamos el hilo de vuelta desde cero. Pero creeme, que Python tenga memoria dinámica (que, de hecho, no la tiene, ¿cómo va a tener memoria dinámica un lenguaje donde no se puede gestionar la memoria?) y Pascal sí pero sea difícil (??) es algo que no tiene nada que ver con el planteo.
Por otro lado, mirando el hilo de Iinfo; no puedo menos que pararme en la misma posición que Fontela. ¿Qué es lo que pretendés vos obtener del hilo?... el desarrollo del nuevo programa fue llevado adelante por gente que tiene BANDA de años de experiencia didáctica en estas materias. ¿Te parece que un debate con participantes de 18-19 y 20 años va a allanarte algún tipo de camino?
Izanagi escribió:
|
Sí, ¿en que momento oculte eso?(pregunta retorica)
|
En el mismo momento en el cual asumís que se trata de una migración de lenguajes y lo cuantificás de ese modo, y asumís que la metodología se ve forzada por imposición del lenguaje cuando es exactamente al revés.
|
|
|
|
_________________
|
|
|
|
|
Izanagi
Nivel 7
Edad: 37
Registrado: 21 Ago 2008
Mensajes: 402
Ubicación: Belgrano
Carrera: No especificada
|
|
|
|
|
|
Ir a página 1, 2, 3 ... 11, 12, 13 Siguiente
|
Ver tema siguiente
Ver tema anterior
Podés publicar nuevos temas en este foro No podés responder a temas en este foro No podés editar tus mensajes en este foro No podés borrar tus mensajes en este foro No podés votar en encuestas en este foro No Podéspostear archivos en este foro No Podés bajar archivos de este foro
|
Todas las horas son ART, ARST (GMT - 3, GMT - 2 Horas)
Protected by CBACK CrackerTracker365 Attacks blocked.
|