Antiguo y abandonado blog de Ricardo Galli :-(

Wednesday 22/8/2007

Convoco a una manifestación de licenciados matemáticos y físicos

Filed under: ciencia, provocación, ironías incomprendidas, Legales, Software — gallir @ 20:11

Sí, acabemos ya con tanto intrusismo. Todos sabemos que los precursores de la informática fueron físicos y matemáticos, ¿y en qué situación están ahora? Que nadie reconoce su trabajo, están mal pagados y tienen más paro que los intrusos que se denominan “informáticos”. Esos informáticos que ni siquiera saben la ley de la conservación de la energía o la teoría de Shannon –fundamentales para el funcionamiento de los ordenadores–. Esos mismos informáticos que usan fórmulas todo el tiempo y pretenden elaborar complicados modelos matemáticos generalmente erróneos, que no saben ni lo que es el cálculo Lambda pero pretenden ser expertos en programación… y no consultan a los verdaderos expertos: los matemáticos.

Salgamos a reclamar que establezcan leyes que os protejan de semejante intrusismo. No podemos permitir que la sociedad de la información dependa de semejantes ignorantes. Exijamos que sea una profesión regulada y que los matemáticos y físicos tengan que aprobar y firmar todo proyecto donde se requieran de complejos modelos dinámicos o matemáticos. No puede seguir así.

Salgamos a la calle y que se haga justicia. Luchemos por el interés del ciudadano y empresas que usen modelos matemáticos. No podemos dejarlo en manos de incompetentes. Si así fuese se acabaría el problema del paro, de estar de becarios en universidades por tanto tiempo y que se os considere de segunda.

Nota: Por supuesto todo esto una chorrada de ironía con ganas de provocar un poco, pero hay algunos que lo dicen más gordas y van muy en serio. Si sabes de qué va el tema quizás te hayas sonreído, o mosqueado (era la intención). Si no tienes idea, olvídalo, no tiene sentido que pierdas el tiempo. Pero si aún así te intriga, puedes comenzar por este comentario (y sus noticias relacionadas).

Monday 13/8/2007

Desafío que un “programador” respondería en segundos

Filed under: provocación, chorradas, Hackerdom — gallir @ 16:14

Como era de esperar, el apunte Diez señales de que no eres tan buen programador como piensas generó mucho debate (también en Java Hispano, como era de esperar por mencionar a Java:-) ), como también respuestas falaces y alguna que otra crítica como “que es muy generalista y/o poco técnico”. Pues vale, empecemos con algo más “técnico” para seguir pasando el agosto.

Supongamos que en C (en Java debería dar resultados comparables [1]) inicializamos una matriz de tamaño considerable:

#define S 10000

int a[S][S];

Al bucle siempre lo haríamos de la siguiente forma:

for (i=0; i<S; i++)
    for (j=0; j<S; j++)
        a[i][j] = 0;

Preguntas:

  1. Explicar porqué –casi intuitivamente aunque muchas veces sin saberlo– hacemos la asignación así y no a[j][i].

  2. Fundamental aunque derivada de la anterior. ¿Por qué si hacemos la asignación a[j][i] el código se ejecuta al menos un orden de magnitud más lento? La respuesta es muy concreta y se puede dar en menos de dos tres líneas.

  3. ¿Por qué pongo a la matriz como global y no local?

  4. ¿Por qué a veces las primeras veces que se ejecuta el código toma más tiempo que en las siguientes?

  5. ¿Qué relación tienen este problema de eficiencia con la programación estructurada?

[1] Pruebas con Java

Hice las pruebas en un “sencillo” programa en Java.

class j1 {
        public static void main(String[] args) {
            int[][] a = new int[10000][10000];
            int i, j;
            for (i=0;i<10000;i++)
                    for (j=0;j<10000; j++)
                            a[i][j] = 0;
       }
}

Con Java GNU no tuve ningún problema para ejecutarlo, todavía no sé cómo lograr que se ejecute el Java6 de Sun sin que me de problemas de heap y luego que pueda pre-asignar la memoria con el -Xmx y -Xms, me da siempre Could not create the Java virtual machine ¿Alguien sabe cómo resolverlo si liarme con clases especiales? En resumen, el ejecutable “óptimo” tarda unas 6 veces más que C, unos 6.5 segundos. Mientras que en C el bucle erróneo toma 11 segundos, en Java 25 segundos.

Conclusión de Java: la gestión de memoria es bastante más lenta y se nota menos la diferencia entre uno y otro (no llega al orden de magnitud). Pero lo importante: también hay con el mismo cuidado que con C, el compilador no “optimza” estos casos. No vale la excusa, “en Java no te preocupas de estos temas”.

PS: Por favor abstenerse mis alumnos y amigos que me hayan escuchado sobre este ejemplo ;-)

Thursday 17/5/2007

Una nueva universidad

Filed under: provocación, UIB, Educación — gallir @ 15:10

Hace un momento participé en una mesa redonda por el día de Internet. Se trataba de “redefinir” el papel de la universidad en esta era digital. Como no podía ser de otra manera surgió tangencialmente el tema “genérico” de la organización universitaria, si los profesores son malos, que los métodos son malos, etc. etc.

A ello contesté con una provocación que hasta ahora la tenía como una provocación sólo a colegas:

Si quieren refundar la universidad en aras de la “excelencia” con cambios radicales, vale, estoy de acuerdo. Echemos a la mitad de los profesores –y doblemos el salario de los que se queden–, pero también al ochenta por ciento de los alumnos que no tienen la misma capacidad y/o que no están motivados como los demás. Si es así, firmo mi renuncia inmediatamente –hay mejores profesores que yo–, pero sólo si se quedan los mejores, profesores y alumnos.

La pregunta es, ¿cómo sabremos a los “mejores”? ¿será mejor esa solución? ¿qué tipo de universidad tendremos? ¿una elitista? ¿quienes podrán estudiar y ser profesionales? ¿una élite?

Pues eso, para soluciones radicales cabe aplicar el mismo criterio para todos. Pero dudo que la búsqueda de la “perfección” sea beneficioso, tanto para un programa como para “soluciones sociales”.

PS: La audiencia era ínfima, ¡cómo nos agrada el debate en la universidad! ¡qué interés que tienen alumnos y profesores por participar!. Por no estar ni siquiera había directivos a los que seguro les interesa el tema. Por otro lado, ¿qué es eso que organizó el Govern Balear llamado “Comunidades Sociales en Internet” sin ningún ponente que hablase del tema? Todo iba de empresa, mercados y aumentar ganancias.

Powered by WordPress