#4<<3. Un profesor, en especial el director de la escuela de informática de oviedo, no debería mofarse en proyectos fin de carrera del alumno, ya que: El alumno podría sentirse ofendido y, por alguna manera, si leyese este blog, podría sentirse como la mierda y lo segundo, al que se le tenía que caer la cara de vergüenza sería al profesor que se lo ha dirigido.>>
#10venga va, ¿ofendido porque se muestre ese código? no fastidies #4. El alumno debería de ser capaz de admitir que ha hecho una pifia. Que todos las hacemos.
#12Me parece que no es para tanto. El profesor sólo está mostrando el "pecado" y no al "pecador", que seguirá en el anonimato. El post es sólo para reflejar una determinada situación: tanto la del alumno como la del tutor. No podríamos poner nunca ejemplos de nada para no "herir" la sensibilidad de nadie.
#17A mi me pasó algo parecido. Mi PFC lo hice yo solito y sin tutores. Justo el día en que cerré el código encontré tutor y el se encargó de supervisar la documentación. Y hete aquí lo que pasó.
Me pusieron un notable. Me alabaron (y mucho) la aplicación. Se cagaron en mi documentación y me echaron una bronca de las que hacen época... con la vista puesta en el tutor, ya que sabían perfectamente la historia de mi PFC (dos de los miembros del tribunal rechazaron dirigírmelo y estaban al tanto de la evolución posterior). Finalmente volvieron a alabar el proyecto y me dijeron que no me debía parecer mal toda la bronca... sin despegar la vista del tutor.
Pero tuve que joderme y conformarme con el notable :(
#26Sería aún más fácil no hacer nada o incluso if($day) {if($day)>31 $day='';} else $day='';
Eso sin contar con las funciones de fecha y hora de php, que tienen en cuenta los dias del mes e incluso si el año es bisiesto... incluso te dicen que el 32 de marzo en realidad es el 1 de abril
#28#26 y alguno mas. Como dice un comentario del articulo, si pretendes tener seguridad entonces "No trust user Data." es decir no confies en los datos de los usuarios. PQ por ejemplo
es.wikipedia.org/wiki/Buffer_overflow
Alguno por ahi dice que se puede hacer de manera mas comoda.Yo no se mucho de esto pero se me ocurre una.
1.-Defines un array con los numeros enteros del 1 al 31
2.-compruebas si tu valor coincide con alguno de los que se encuentran en tu array
y actuas en consecuencia.
Seguro que hay maneras mejores de hacerlo, ¿cual es la buena y por que?
#31#28 y #29 Mi línea de código hacía eso, aunque la de #29 es más legible y por tanto debería ser la usada (alguien tendrá que mantener el código en el futuro). Revisándola encuentro que "casca" si alguien mete un día negativo.
Podríamos escribir algo como if(!(($day>0)&&($day<32))) $day=''; que a lo mejor no es tan fardón, pero hace el trabajo. No es necesario devolver el valor de $day ya que no lo alteramos, salvo que no cumpla las condiciones.
Cualquier cosa mejor que esa burrada. Pero como he dicho, lo mejor sería usar las funciones de fecha y hora de php, que tienen en cuenta cosas como que alguien quiera saber en qué día de la semana cae el 32-13-2006 (que si no me equivoco equivale al 01-02-2007) y eso sí que es no confiar en la habilidad del usuario (como debe ser)
#35Bah, es lo mas corriente en una carrera de informatica.
Pensadlo bien. ¿Cuantas asignaturas de programacion tiene una carrera de informatica?.
Pues exactamente dos. Amen de cosas como programaciones concurrentes y demas que suelen ser optativas.
Pero basicas basicas solo son 2.
A eso sumadle el hecho de que el 50% de los estudiantes de informatica no tienen ningun interes en la materia. Simplemente es una carrera para tener un titulo y trabajar en algo (y estan en su derecho).
No me digais que nunca habeis aprobado asignaturas asi casi de casualidad para olvidar rapidamente lo poco aprendido (hay que reconocer que muchas asignaturas son poco utiles o practicas).
Pues yo ya he vis... » ver todo el comentario
#37Por que la informática es solo programación? Estoy hasta las narices de que los profesores hablen de proyectos, entidad relación, programación... hay algo más que eso en la informática.
#38No es por nada, pero me da que por aquí hay más de uno descojonado que no tiene claro el concepto validación de los datos, incluido el autor del blog.
#39Primero que nada me parece sumamente LAMENTABLE que un profesor se "mofe" de un alumno copiando el código para que todos los listillos frikis informáticos (que no son pocos) demuestren lo listos que son y lo que ellos hubieran hecho o dejado de hacer. Deja claro por tanto, la calidad humana y sobretodo como profesor del personaje que escribe en el blog.
Si yo como alumno me dedicase a pegar en mi santo blog la sarta de GILIPOLLECES que algunos (si no todos) los profesores que he tenido en la carrera han dicho o hecho, me faltaban horas.
La culpa, como bien dicen por arriba, es del tutor del PFC que no es capaz de explicar como Dios manda.
Y de todas formas seguramente (en un 99% de los casos) todos estos 'entendidos' de informática que pululan por aquí y por el propio blog, dándoselas de su propia autosuficiencia, meterían la gamba en algo de lo que el resto de informaticossuperlistos se podrían reir.
#42#35 Pues yo tampoco se donde estudiaste tu, pero en FiC (Facultad de informatica de Coruña) en la técnica de sistemas hay:
1º Programación y edi (en mi epoca pascal, ahora no sé)
2º Tecnologia de la programación (Java)
Metodologia de la programación (Java)
Sistemas operativos (C)
Computación Numerica (Fortran)
Base de datos
#43#35 Pues yo tampoco se donde estudiaste tu, pero en FiC (Facultad de informatica de Coruña) en la técnica de sistemas hay:
1º Programación y edi (en mi epoca pascal, ahora no sé)
2º Tecnologia de la programación (Java)
Metodologia de la programación (Java)
Sistemas operativos (C)
Computación Numerica (Fortran)
Base de datos (Pro*c + SQL)
Estructura de computadores (ensamblador en MIPS)
Sistemas conexionista (matlab)
3º Sistemas operativos 2 (C)
Teoria de lenguajes formales (lo que diese la gana. Desde C, java, etc)
Estructura de computadores 2 (más ensamblador y C)
Medios de transmisión (matlab o octave)
Redes (C)
#44Soy Labra, el autor del comentario. Creo que muchos malinterpretaron mi intención al escribir en el blog el fragmento de código pensando que quería mofarme del alumno. Simplemente decir que no era ésa mi intención. Me llamó la atención dicho código y por éso lo puse.
Como no era mi intención molestar a nadie, y menos al alumno, he borrado dicho artículo y pido disculpas a los que se hayan sentido ofendidos.
#45#42 y #43 en la Fic además de toda esa programación hay en la AFI unos cursos buenísimos que enseñan a usar interné y te podrían ayudar a la hora de escribir los comentarios.
No te molestes, es que te has lucido!
#49No he visto el post porque el autor lo ha retirado, pero si el código del que se habla es el que ha citado #19, me sorprende que nadie se haya dado cuenta de que el estudiante estaba comparando cadenas, y no enteros, por lo que las funciones que proponen #29 ó #40 no funcionarían.
Otra cosa es que sea apropiado usar una cadena para representar un día, que no creo que lo sea.
Por otro lado, y metiéndome en un terreno que no es el mío (con la consecuente posibilidad de cagada), con respecto al código original, decir que, aunque mejorable, no sabemos el contexto del programa, y que se supone que hay que comprobar los datos introducidos por el usuario.
Imaginad si, según el contexto, esto viene de una cadena de texto introducida por un usuario en un formulario y le da por poner ;rm -rf /
#56A ver, todos esos que se han sentido ofendidos.
Se mire por donde se mire, esa función es una cagada brutal. El tutor y el autor deberían haberse muerto de vergüenza, ya que esa tontería se hace en una o dos líneas (y de forma más eficiente y legible) y es impropia de alguien que ha terminado la carrera. E insisto, la forma correcta de validar una fecha es usando las funciones de php (que están extraordinariamente bien pensadas), o bien una tontería en javascript si esto se usaba para validar formularios.
Y es bueno que se escriba, para que los que estén aprendiendo no cometan errores de este calibre y piensen antes de ponerse a teclear como locos. Con todos los WTF así de gordos deber... » ver todo el comentario
¿Es GPL? Me gustaría meter una función así en mi PFC, a ver que cara se le queda al profe xD
Plas, plas, plas.
Es un insulto para un informático
¿Como llego ese tio a aprobar todas las asignaturas?
¿quien le enseño programacion y algoritmica?
A la puta calle un profesor con el suspenso, la mitad de la culpa de ese no es de el sino de la escuela.
Me pusieron un notable. Me alabaron (y mucho) la aplicación. Se cagaron en mi documentación y me echaron una bronca de las que hacen época... con la vista puesta en el tutor, ya que sabían perfectamente la historia de mi PFC (dos de los miembros del tribunal rechazaron dirigírmelo y estaban al tanto de la evolución posterior). Finalmente volvieron a alabar el proyecto y me dijeron que no me debía parecer mal toda la bronca... sin despegar la vista del tutor.
Pero tuve que joderme y conformarme con el notable :(
function valida_dia($day) {
$solu = "";
switch ($day) {
case "01" : $solu = "01"; break;
case "02" : $solu = "02"; break;
(...)
}
return $solu;
}
Ese código devuelve un "valor", un número.
Si es el día "01", devuelve "01"
Si es el día "02", devuelve "02"
Etc.
Hacer un caso para cada día es una guarrada increíble. Sería mucho más fácil hacer:
function valida_dia($day) {
return $day;
}
Eso sin contar con las funciones de fecha y hora de php, que tienen en cuenta los dias del mes e incluso si el año es bisiesto... incluso te dicen que el 32 de marzo en realidad es el 1 de abril
es.wikipedia.org/wiki/Buffer_overflow
Alguno por ahi dice que se puede hacer de manera mas comoda.Yo no se mucho de esto pero se me ocurre una.
1.-Defines un array con los numeros enteros del 1 al 31
2.-compruebas si tu valor coincide con alguno de los que se encuentran en tu array
y actuas en consecuencia.
Seguro que hay maneras mejores de hacerlo, ¿cual es la buena y por que?
Salu2
Octan
si $day.aEntero > 31 ó $day.aEntero < 1 devolver "" si_no devolver $day
Podríamos escribir algo como if(!(($day>0)&&($day<32))) $day=''; que a lo mejor no es tan fardón, pero hace el trabajo. No es necesario devolver el valor de $day ya que no lo alteramos, salvo que no cumpla las condiciones.
Cualquier cosa mejor que esa burrada. Pero como he dicho, lo mejor sería usar las funciones de fecha y hora de php, que tienen en cuenta cosas como que alguien quiera saber en qué día de la semana cae el 32-13-2006 (que si no me equivoco equivale al 01-02-2007) y eso sí que es no confiar en la habilidad del usuario (como debe ser)
Pensadlo bien. ¿Cuantas asignaturas de programacion tiene una carrera de informatica?.
Pues exactamente dos. Amen de cosas como programaciones concurrentes y demas que suelen ser optativas.
Pero basicas basicas solo son 2.
A eso sumadle el hecho de que el 50% de los estudiantes de informatica no tienen ningun interes en la materia. Simplemente es una carrera para tener un titulo y trabajar en algo (y estan en su derecho).
No me digais que nunca habeis aprobado asignaturas asi casi de casualidad para olvidar rapidamente lo poco aprendido (hay que reconocer que muchas asignaturas son poco utiles o practicas).
Pues yo ya he vis... » ver todo el comentario
Si yo como alumno me dedicase a pegar en mi santo blog la sarta de GILIPOLLECES que algunos (si no todos) los profesores que he tenido en la carrera han dicho o hecho, me faltaban horas.
La culpa, como bien dicen por arriba, es del tutor del PFC que no es capaz de explicar como Dios manda.
Y de todas formas seguramente (en un 99% de los casos) todos estos 'entendidos' de informática que pululan por aquí y por el propio blog, dándoselas de su propia autosuficiencia, meterían la gamba en algo de lo que el resto de informaticossuperlistos se podrían reir.
No somos nadie oztia! XD
if (dia == i) {
return i;
} else {
continue;
}
}
Esta es la forma optimizada, que no teneis ni idea joer xD
PD: Si, yo también estoy de acuerdo en que el profesor es un cretino.
1º Programación y edi (en mi epoca pascal, ahora no sé)
2º Tecnologia de la programación (Java)
Metodologia de la programación (Java)
Sistemas operativos (C)
Computación Numerica (Fortran)
Base de datos
1º Programación y edi (en mi epoca pascal, ahora no sé)
2º Tecnologia de la programación (Java)
Metodologia de la programación (Java)
Sistemas operativos (C)
Computación Numerica (Fortran)
Base de datos (Pro*c + SQL)
Estructura de computadores (ensamblador en MIPS)
Sistemas conexionista (matlab)
3º Sistemas operativos 2 (C)
Teoria de lenguajes formales (lo que diese la gana. Desde C, java, etc)
Estructura de computadores 2 (más ensamblador y C)
Medios de transmisión (matlab o octave)
Redes (C)
Como ves, unas cuantas, toda... » ver todo el comentario
Como no era mi intención molestar a nadie, y menos al alumno, he borrado dicho artículo y pido disculpas a los que se hayan sentido ofendidos.
No te molestes, es que te has lucido!
En lo referente a dicho profesor... me parece un tanto hipócrita andar 'meneando' noticias del estilo 'a fulana la han despedido por blogar no se qué', andar llamando 'sensuradores' a too lo que pillemos y que luego una persona normal y corriente, porque aunque sea profesor tiene vida, escriba en su blog algo anecdótico de su trabajo lo pongamos a caer de un burro.
Lo siento mucho por el mozo, pero la verdad es que la funcioncita se las trae... no creo ni que se sienta ofendido.
Saludos fisgonas y meneadores.
Otra cosa es que sea apropiado usar una cadena para representar un día, que no creo que lo sea.
Y ahora, sin venir a cuento, otro WTF que presencié en vivo y en directo no hace mucho tiempo.
if(i<10) { ... }
» ¿Y el resto de socios qué? ¡Digo yo que habrá más de 10!
if(i<10 || i>=10) { ... }
Por otro lado, y metiéndome en un terreno que no es el mío (con la consecuente posibilidad de cagada), con respecto al código original, decir que, aunque mejorable, no sabemos el contexto del programa, y que se supone que hay que comprobar los datos introducidos por el usuario.
Imaginad si, según el contexto, esto viene de una cadena de texto introducida por un usuario en un formulario y le da por poner ;rm -rf /
Se mire por donde se mire, esa función es una cagada brutal. El tutor y el autor deberían haberse muerto de vergüenza, ya que esa tontería se hace en una o dos líneas (y de forma más eficiente y legible) y es impropia de alguien que ha terminado la carrera. E insisto, la forma correcta de validar una fecha es usando las funciones de php (que están extraordinariamente bien pensadas), o bien una tontería en javascript si esto se usaba para validar formularios.
Y es bueno que se escriba, para que los que estén aprendiendo no cometan errores de este calibre y piensen antes de ponerse a teclear como locos. Con todos los WTF así de gordos deber... » ver todo el comentario
30/02/2006 -> foo(30) -> return 30;
estoo......