27 octubre 2009

ISO 27001 y días raros

Antes de empezar a escribir cosas atrasadas, unos comentarios generales de esos que podríamos llamar de transición.

Estas últimas semanas me han pasado varias cosas, unas graciosas y otras que me gustan menos.

Lo primero. Ya es seguro que mi empresa, la que da nombre a esta bitácora empresarial sin contenido empresarial, va a obtener la certificación ISO 27001, que garantiza la seguridad en el tratamiento de la información. Y además, subvencionada, con que nos va a salir por poquito, ya que, en condiciones normales, es carísimo. En las encuestas previas, hemos obtenido una nota decente, teniendo en cuenta el mínimo tamaño de la empresa. Básicamente, se trata de tener un servidor, aunque sea pequeñito y baratito (el nuestro costó lo que una caja de un PC... no, no nos pidáis otro a ese precio, creo que ya no los venden), una red medio montada, antivirus, cortafuegos, claves para acceder a las cuentas de usuario y programas originales en los equipos. Todo esto lo cumplimos más o menos; si no tenemos programas legales, usamos software libre. Faltan otras cosas que entrarán en la certificación... Ya iré contando.

Lo segundo. He leído por encima el libro El sexismo en los videojuegos. Cuánto me he tenido que reír. No hay videojuego que se salve de la quema. Todos son violentos, sexistas y transmiten valores muy censurables. Y no exagero. El Tetris resulta criticado porque, aunque no discrimina a las mujeres, no transmite la necesidad de luchar por su igualdad, con lo cual, es sexista. Los lemmings son sexistas, porque las profesiones de los lemmings son "masculinas" (construir escaleras, volar rocas, etc...) y no aparecen profesiones femininas (cuidado de los demás, solidaridad). Aparte, todo juego en el que haya un ganador transmite valores de la cultura macho: competitividad, agresividad, etc... Ello convierte en sexistas y transmisores de valores patriarcales al ajedréz, al go, las damas, el parchís, la oca... el Catán, el Carcasonne... incluso juegos colaborativos como El Señor de los Anillos de Reiner Knizia son exponentes de la cultura macho, ya que el señor oscuro es muy malo y los hobbits muy buenos, y eso es maniqueismo machista. Ya hablaré más en profundidad.

Lo tercero. Geocities, el famoso servicio para alojar gratis páginas web, donde tenía mi antigua web, la primera que hice, ha cerrado, y mi página ha dejado de existir. La tengo guardada en una carpeta del disco duro, y algún día la volveré a colgar, pero me ha dado pena.

Espero poner dentro de poco mi opinión sobre la película Agora de Amenabar.

21 octubre 2009

Errores de programación, capítulo 5

Llevo una temporada sin escribir. Ando muy atareado con diversos asuntos, como ya os habréis imaginado. Y, claro, ya tengo mis nuevas anécdotas como programador. Algunas se me han olvidado, pero esta no...

Supongamos una función de Visual Basic. Supongamos que tengo una variable global, booleana, llamada, por ejemplo, Supervariable. Ya de por sí, programar con variables globales, aunque sean variables visibles sólo en un formulario, valdría como error de programación, o al menos, como mala práctica de programación, pero cuando hay prisa...

Bien. Yo necesitaba ejecutar una función, que devolvería un valor u otro, con la sentencia Return, en función de determinadas circunstancias. Y cumpléndose ciertas condiciones, debería dar un valor True o False a la variable Supervariable. Pues bien... No había manera... Supervariable no cambiaba de valor ni de broma, siempre tenía el original (True, creo). Tras cerca de una hora, revisando el código, veo cambiarle de valor a tal variable, se hacía sólo en un par de líneas, y se hacía correctamente. Esas líneas eran tales que así (el código es inventado):

If Condicion1>5 then
' Calcular el valor de Aux...
Return Aux
' Y cambiar el valor de Supervariable
Supervariable=False

Else
' Calcular el valor de Aux cuando no se cumple que Condicion1 sea mayor que 5
Return Aux
' Y cambiar el valor de Supervariable
Supervariable=False

End If

¡Por supuesto! Dejad de leer si queréis adivinar cuál es el fallo... La solución unas líneas más abajo. Supongo que debería descansar un poco más, desconectar, relajarme algún día a la semana, y entonces, no tendría estos fallos tan absurdos.





SOLUCIÓN: A ver. La sentencia Return dentro de una función, devuelve, como resultado de la ejecución de la misma, el valor que ésta dará lugar al ser llamada. Así, si escribo:

Return 1

la función devolverá 1. Además, Return acaba la ejecución de la función en ese mismo punto.

Entonces... ¡¡todo el codigo que ponga inmediatamente a continuación de una sentencia Return no se ejecutará nunca!! Por eso nunca se modificaba Supervariable; la función terminaba su ejecución en la línea anterior.

07 octubre 2009

La ciencia española no necesita tijeras

Pues nada, a ponerme reivindicativo otra vez. Supongo que, después de leer esto, comprenderéis por qué he puesto esa imagen en el lateral. Se trata de una protesta de la "blogosfera" contra el anunciado recorte de fondos para la ciencia y la investigación españolas. La lista de participantes casi al completo (son muchos y la mantiene una sola persona) está en: Ciencia sin tijeras. Antes de hablar del problema, un comentario gracioso que he leído en la edición digital del periódico ADN. Dice la ministra de ciencia e innovación que Ignacio Cirac recibirá el nobel un año de estos. Vale, es un gran científico español y me parece bien el apoyo. Pero lo siguiente me ha hecho mucha gracia. Como no podía ser de otra manera, Ignacio Cirac trabaja en Alemania, en el Instituto Max Planck, pero dice la ministra en el periódico ADN que: "como todos los científicos españoles que están fuera del país es un gran activo para nosotros porque sin duda establecemos lazos de colaboración con ellos". Y digo yo... ¿y no sería un activo aún mayor si pudiese trabajar en España? Porque si se lleva el premio nobel, lamento mucho decir que el prestigio se lo quedará el Max Planck y la ciencia alemana, y no la española. Bien, a lo que iba

Los presupuestos que el gobierno ha presentado para el año 2010 contienen algo que, a mi juicio, es más revelador y más erróneo aún que subirle los impuestos a un pueblo asfixiado por la crisis. Se han realizado recortes presupuestarios en muchas partidas y ministerios, que llegan un poco tarde en mi opinión, y el dato significativo es que el ministerio que más recortes sufre, un 15% (aunque en el borrador el recorte era el 37%, que una barbaridad aún mayor) es el Ministerio de Ciencia e Innovación. Ya, a lo largo del año en curso, los mayores recortes presupuestarios se han cebado con este ministerio que, teóricamente, era el encargado de coordinar el tan manido “cambio de modelo económico”. Más información en este enlace.

De este ministerio depende la financiación de la investigación científica en España, aparte de las ayudas públicas a programas de I+D+i, con lo que el hecho de que este ministerio sufra el mayor recorte de todos resulta muy indicativo de que la investigación científica es, para el Estado, una especie de “lujo” del que se puede prescindir cuando sea menester. Todos estamos de acuerdo en que los ingresos del Estado han disminuido, que hay que recortar gastos, pero, precisamente, traduciendo libremente el dicho latino: la verdadera amistad se demuestra cuando las cosas van mal. Y esto es lo que pienso peor del caso, más que el recorte.

España tiene unas infraestructuras de investigación científica de una calidad muy inferior a su nivel tecnológico. El nivel investigador de nuestro país está por debajo del de países más pobres y más pequeños. Hace años, solíamos hablar de esto haciendo cocientes. Esto es, se decía que el organismo francés equivalente al CSIC español tenía en nómina diez veces más científicos que éste. ¿Es Francia en población o PIB diez veces España? No, ¿verdad? Asimismo, se decía que el número de científicos en España era el doble que el que hay en Portugal. Pero es que en población, España tiene cuatro veces la de Portugal. En proporción, el sistema científico portugués es bastante mayor que el español. Pero, el gran problema es que un país como el nuestro, en que, aunque a los “mileuristas” nos parezca increíble, ya no puede competir como antaño con precios y salarios bajos, la única salida que nos quedaba para mantener nuestro “status” económico era la innovación, la investigación científica, y todo lo que eso conlleva. Y el gobierno es lo primero que sacrifica. Con la gracia añadida, además, de que a diferentes responsables públicos se le oyeron frases como “hay que cambiar el modelo económico” o “investigar es trabajar”.


Dicen por ahí que este recorte no va a afectar a los proyectos, y que se van a mantener o a ampliar las becas de investigación. El problema está en que el dinero para becas o investigación era ya el mínimo que permitía el funcionamiento. A mí no me salen las cuentas. Si los organismos de investigación no podían desarrollar su trabajo plenamente debido a los problemas presupuestarios y, ahora, bajo los presupuestos hasta un 26%, como ha sufrido el CIEMAT, y sigo necesitando pagar sueldos, electricidad, renovar y reparar equipos de medida, gastar en materiales fungibles… ¿cómo es posible hacerlo sin despedir a nadie y cancelar proyectos? Si hasta la NASA, cuando le recortan el presupuesto, tiene que cancelar proyectos y echar a gente a la calle… ¿vamos a ser nosotros mejores? Sí, dirán que los becarios actuales cobrarán su beca hasta el final, pero luego no se les renueva y no entran nuevos que, a fin de cuentas, es lo mismo que reducir plantilla.

Este problema de la investigación en España es algo que me ha tocado siempre muy de cerca, y puedo asegurar que desde hace 15 o 20 años las cosas siguen igual de mal. Bueno, con una excepción. Ha sido un avance enorme que un becario predoctoral, de cuatro años que pase trabajando, esté dado de alta en la Seguridad Social los dos últimos. Antes, era perfectamente posible estar nueve años trabajando en exclusividad (las becarios no cotizan a la Seguridad Social, pero tienen prohibido que les contrate una empresa, por ejemplo), sin haber cotizado ni un solo día. Y, por supuesto, que a los nueve años te dijeran que no hay financiación y a la calle. Y te ves con más de treinta años sin paro y sin experiencia laboral demostrable. Pues bien, el Estado les va a recortar los salarios a este sector que ya está mucho más desprotegido que el resto de trabajadores. Porque en una empresa privada, tener a la gente sin dar de alta es ilegal.

Por todas estas razones, y muchas más en las que no quiero entrar para no extenderme (por ejemplo, que se maquillen los datos nefastos metiendo la investigación militar, cosa que no hace otros países, o que se presuma de que la ciencia española es buena porque científicos españoles hacen grandes cosas en Suiza, Alemania, EEUU… como si esos países fueran colonias nuestras), me he unido a esta iniciativa: La ciencia española no necesita tijeras. No a que la ciencia española sea la que pague la crisis.

Lo digo siempre. A grandes rasgos, sólo hay dos modelos económicos posibles: el basado en la innovación, en crear productos mejores que los de la competencia, vender caro y, como es natural, pagar sueldos decentes a trabajadores muy cualificados (en realidad, vender caro y pagar bien suele estar relacionado, porque si a grandes profesionales les pagas una miseria se te van al extranjero). El segundo es el de tener sueldos bajos y hacer lo mismo que los demás, pero más barato. Sin ciencia ni innovación el modelo económico que nos queda es el segundo. No quiero que ese sea el futuro de mis hijos, si es que los tengo. Que si alguno salga con inquietudes científicas no tenga que elegir entre su familia o su vocación.

Por todo eso: no a los recortes en I+D+i