Nota del autor

Si la entrada que estás leyendo carece de imágenes, no se ve el vídeo que teóricamente lleva incrustado o el código fuente mostrado aparece sin formato, podéis conocer los motivos aquí. Poco a poco iré restableciendo la normalidad en el blog.
Este blog es un archivo de los artículos situados previamente en Lobosoft.es y ha dejado de ser actualizado. Las nuevas entradas pueden encontrarse en www.lobosoft.es. Un saludo,
Lobosoft.

lunes, 19 de enero de 2009

Testing Experience


Esta tarde, al llegar a casa después del trabajo me he encontrado con una grata sorpresa. Tenía en el buzón el cuarto número de la edición impresa de la revista Testing Experience. Creo recordar haber comentado su existencia por estos lares en alguna ocasión, y ahora vuelvo a recomendaros una publicación más que interesante dentro del mundo del desarrollo del software y, en particular, de la parcela correspondiente a las pruebas del mismo.


Las revistas están disponibles para su descarga en la web de la revista,aunque es posible suscribirse de forma gratuita para recibirlas impresas. Aunque siempre abogo por el uso del ordenador para la lectura de artículos técnicos y la consulta de libros de informática, hay ocasiones (como cuando el equipo de trabajo las consulta de forma intensiva, o pueden compartirse con colegas, compañeros y amigos) en las que creo que es incluso más interesante (y ecológico, pese a lo que pueda parecer) contar con un ejemplar impreso.


Además, y aunque resulte un poco off-topic, este mediodía cuando me dirigía a casa a almorzar (sí, envidiosillos, es la ventaja de vivir cerca del trabajo, jejeje) he visto dos cuervos sobrevolando la entrada del Parque Tecnológico. Aunque es habitual contemplar aves de paso, por estar ubicado cerca de la desembocadura del Guadalhorce, no es tan común que nos topemos con este córvido, aunque no es la primera vez que les veo por aquí. En cualquier caso, hoy su paso guarda un especial significado, ya que se celebra el bicentenario del nacimiento de Edgar Allan Poe, del que seguro que conocéis su poema El Cuervo.


Pues nada, lo dicho. Os dejo para sumergirme en la lectura de la revista. Y es que hay problemas causados por los bugs y problemas de diseño que no se han detectado por no llevar a cabo unas buenas prácticas de testing que dan más miedo que los cuentos del inmortal autor norteamericano ;) .

jueves, 15 de enero de 2009

Error 404... ¡no!

Quienes mantienen un sitio web, sea éste del tamaño que sea, deben mantener la coherencia entre las páginas, y evitar que se produzca en el propio sitio la aparición de errores indeseables, como el conocido 404 de página no encontrada, por ejemplo por tener un enlace roto o erróneo. Los bloggers que usan plataformas como la de Google (Blogger) pueden olvidarse generalmente de esto, porque la gestión de las URLs le es ajena, pero no ocurre lo mismo con los blogs que usan Wordpress, Drupal, Joomla o cualquier otro gestor de contenidos en los que el formato de las URLs pueden definirse para hacerlas más “amigables” al usuario.


En el caso de Wordpress, esto se lleva a cabo mediante los permalinks. Hay que tener cuidado, una vez que los hemos definido, ya que con las actualizaciones de la herramienta se puede cometer el error de cambiar la estructura, con la consiguiente regañina del experto en SEO correspondiente, y la nueva indexación del sitio por Google que puede dar lugar a páginas no accesibles desde el buscador. Sin embargo, el principal problema (por ser permanente) vendría de la mano de los enlaces internos que tengamos entre distintas páginas (o entradas, en el caso de los blogs) de nuestro sitio web. Por eso es útil contar con herramientas como la que ofrece el Consorcio W3C que permite analizar el sitio web buscando enlaces rotos, permitiendo solucionarlos. De hecho, no es el único servicio de este tipo, pero cuenta con la ventaja de que es posible descargar el software para instalarlo en nuestro servidor.



Aquí podéis ver una captura de la herramienta en funcionamiento:

miércoles, 14 de enero de 2009

Asistente para Interop


Hay múltiples ocasiones en las que tenemos que utilizar código nativo desde una aplicación manejada en .NET. Es el caso habitual de tener que reutilizar aplicaciones o componentes COM antiguos, desarrollados tiempo atrás en lenguajes como el obsoleto Visual Basic y para los que no está prevista una migración a .NET, o bien cuando debemos trabajar con drivers y componentes a bajo nivel, programados habitualmente en C/C++. En esos casos, tenemos que vérnoslas con Interop y, de paso, con la conversión de tipos entre las distintas tecnologías.



Dicha tarea no tiene porqué ser necesariamente dificultosa (aunque puede provocarnos más de un dolor de cabeza si decide no funcionar, a la hora de llevar a cabo depuraciones y averiguar a qué componente corresponde la responsabilidad del problema que nos estemos encontrando), pero sí es, como mínimo, tediosa. Por eso, los chicos de Microsoft lanzaron hace tiempo una herramienta que, he de confesarlo, no había probado hasta ahora, que andaba investigando un poco el tema y me he topado de frente con ella. Se trata de PInvoke Interop Assistant, un asistente que genera automáticamente el código en C# o VB.NET que maneja las llamadas a la API de Windows y DLLs provenientes de código no manejado (desarrollado en C).



Como puede verse en las capturas que adjunto, basta con consultar en la API de Windows, de la que ya trae información, o cargar una DLL que contenga su correspondiente manifiesto para obtener el código fuente correspondiente.


Toda una ayuda para los desarrolladores que tengan que enfrentarse al marshalling entre código manejado y nativo. La herramienta, documentación y código fuente asociados pueden descargarse desde la página del grupo en CodePlex.

Mapas "virtuales"

Nos mudamos. No virtualmente, de servidor, ni nada por el estilo, sino de casa. La tercera mudanza en justamente dos años (sí, se hace un poco pesado :P ), que me ha dado de momento un par de sorpresas o, cuanto menos, de pequeños descubrimientos. Por un lado, comprobar cómo la Wikipedia es un compendio de todo lo posible (y, en ocasiones, de lo imposible), algo que ya sabíamos pero que se convierte en curiosidad cuando encuentras que incluso las barriadas de las ciudades tienen su huequito en la mayor enciclopedia escrita. Por ejemplo, uno de los barrios de Málaga que barajábamos era el Puerto de la Torre, si no encontramos algo más cerca de los respectivos puestos de trabajo (y, por ende, más ecológico ;) ), como El Cónsul-Teatinos.


Pues bien, no sólo aparece en la Wikipedia, sino que aparece en un sistema de información geográfica denominado: Mapa Interactivo Ciudadano, que me parece una interesantísima aplicación de los mapas virtuales del tipo de Google Maps (en el que se basa, por cierto). Ya comenté meses atrás que durante la Hackmeeting de Málaga se habló del uso de Wikimapas para dar un contexto más real a la información construyéndolos de forma colaborativa y abierta, e incluso en otras ocasiones he traído sus aplicaciones para el diseño de rutas, localizar hipotéticas bases de ECHELON o ver las calles de nuestras ciudades.


Otros compañeros blogueros también han tratado el uso de Google Maps y sus curvas de nivel, la integración con Google Earth de herramientas GPS o cómo encontrar gasolina más barata utilizando estos mapas.



Siempre he sido un enamorado de los mapas: desde sus 2 dimensiones son capaces de trasladarnos a cualquier punto del globo, darnos información de la zona que nos encontramos explorando en nuestra última excursión e, incluso, trasladarnos a fabulosos e imaginarios lugares. Y desde un punto de vista más práctico de los mapas en Internet, me ha gustado el Mapa Interactivo Ciudadano: ofrece información sobre los comercios, paradas de autobús, edificios públicos e, incluso, problemáticas de la población y promesas electorales cumplidas e incumplidas. Una idea que sería interesante que se extendiese incluso desde la propia administración para propiciar así una efectiva y verdadera participación ciudadana.

martes, 13 de enero de 2009

El caso de la tetera caliente

Ayer aparecía una noticia que ha trascendido a todos los noticiarios debido a su capital importancia: realizar dos búsquedas en Google consume la misma energía que calentar una tetera, lo que equivale a una emisión similar de CO2 a la atmósfera (unos 15 gramos). Esta noticia parece ser la única información de interés que han extraído los medios del informe que, como resultado de dos años de estudios sobre consumo energético en sitios web, ha publicado el Doctor en Física Wissner-Gross.


Desde mi punto de vista, creo interesante que la población sea consciente de que todo, absolutamente todo, tiene una repercusión sobre nuestro medio ambiente. Esto es obvio, ya que formamos parte de un sistema que está en un delicado equilibrio, y cualquier alteración que causemos en el mismo tiene sus implicaciones. Así que si la forma de que nos llame la atención que usar algo tan “inofensivo” como es Internet tiene su coste es que se publiquen noticias como esta, bienvenidas sean.


En cualquier caso, creo que no hay que llegar a ser excesivamente simplistas. El ordenador que usamos para llevar a cabo las consultas también lleva asociado un consumo energético, que podemos estimar con herramientas como Local Cooling; “dejarlo bajando” para “amortizar” el coste de la conexión a Internet obviamente no es lo más recomendable para contribuir a minimizar nuestra huella ecológica. También es cierto que tanto Google como otras grandes empresas informáticas son conscientes de que lo verde vende, así que existen investigaciones en torno a medios para minimizar el consumo de sus servidores y, de paso, intentar ahorrar unas pesetillas. Ahora bien, medidas como instalar los datacenters en Islandia, porque el clima frío (que cada vez lo será menos, a pesar de que algunos digan que el cambio climático es una falacia), o al lado de un río para aprovechar la energía hidroeléctrica y tener una fuente de refrigeración cercana no son tan ecológicas como nos quieren hacer ver. Porque, por ejemplo, el calentamiento de los equipos sigue produciéndose, disipando además el calor sin que sea suficiente para reutilizarlo en la calefacción de los edificios, pero sí como para que altere su entorno, al producirse de forma constante. Por otro lado, los ríos ni son ni vertederos ni canales de riego (pese a quien pese, y se piense lo que se piense), sino ecosistemas en delicado equilibrio del que depende la vida en los mismos, en las zonas que riegan y en el mar o lago al que desembocan.


Los usuarios tampoco tenemos fácil la elección. ¿Equipos “ecológicos” de madera o bambú? ¿Desechar mi equipo antiguo por uno nuevo, cuando aún sigue funcionando y se utilizó tantísima agua y energía para fabricarlo, además de todo tipo de sustancias contaminantes, o tan escasas como el coltan?


Total, que todo esto de la noticia de la tetera, aparte de rellenar el hueco que vienen dejando en los informativos y la prensa escrita la huelga de pilotos de Iberia, las nevadas de Madrid (sí, soy consciente de que en toda la franja norte está nevando estos días, pero amigos míos, sólo se habla de la capital de España, qué le vamos a hacer ;) ) y la más que preocupante guerra (infinita) en la franja de Gaza, no creo que sea demasiado concluyente. Hay que consumir menos, sí, ahorrando energía antes que seguir produciendo más, dando a lo que compramos (dispositivos electrónicos, coches, muebles…) la vida más larga y útil que podamos. Y, sobre todo, hay que ser conscientes de cuanto hagamos tendrá sus implicaciones. Porque los gobiernos y las empresas, por supuestísimo, tienen su responsabilidad, pero ésta no nos exime de la nuestra. En relación con todo esto, os recomendaría un par de libros del gran pensador Saramago: su Ensayo sobre la lucidez y La Caverna.


Finalizando ya, según el estudio de Wissner-Gross los servidores que emiten vídeo generan 0.02 gramos de CO2 por segundo (aunque imagino que adicionalmente vendrá asociada una emisión paralela en múltiples servidores debido al streaming de vídeo). Así que os invito a una tacita de té, la cuarta parte de la tetera, si queréis oír esta canción sobre genocidio (llevado a cabo por el pueblo) judío, que desgraciadamente sigue tan vigente a día de hoy.



jueves, 8 de enero de 2009

Propósitos de año nuevo

Llegamos al final de la primera semana del año (la primera laborable para mí, al menos), y arranco con la primera entrada del año en Lobosoft, que se ha hecho de rogar. La verdad es que uno de los objetivos que llevaba en mente al terminar el año con unas ansiadas y necesarias vacaciones navideñas (de las que crean adicción, de tan parecidas a las de la infancia) era el de desconectar en lo posible de la informática: sin juegos, blog, Internet ni, por supuesto, un entorno de programación. El año 2009 se presentaba divertido, en lo laboral y en lo personal, y plagado de momentos informáticos, así que quería darme el “capricho” y dejar de lado un poco la disciplina que, por afición y profesión, me lleva acompañando la friolera de cuatro lustros. Y lo he conseguido, en parte al menos, ya que al final algún ratejo he dedicado a leer algunos blogs desde mi Adelita, o a cometer la locura de crear otro, que se suma a la colección para mayor esclavitud respecto a las publicaciones.


El nuevo año suele ser el momento de hacernos el propósito de enmienda, la propuesta de objetivos y deseos a cumplir. Generalmente son promesas que nos hacemos a nosotros mismos y que rara vez llegamos a cumplir: dejar de fumar, hacer deporte, comer con mayor moderación… Así que, aunque nunca he sido partícipe de esa fiebre de autoimplicación (tal vez por conocimiento propio y por evitar el escarnio de no cumplir con lo que me propongo), me gustaría arrancar el año con la intención de mantener el blog actualizado (que ha sido lo primero que he hecho, que ya le iba tocando a mis plugins anti-rusos, visto lo visto la que tienen montada con la energía en este invierno), también en lo tocante a las entradas, que me gustaría que fuesen más espaciadas que en el pasado verano, y más abundantes que el último mes de 2008. También intentaré que sean más técnicas, aunque me conozco y más de una vez pecaré de apóstata de uno u otro Imperio, o me dejaré llevar por la necesidad de evangelizar sobre un uso moderado y racional de los recursos. En cualquier caso, sí que intentaré centrarlos más en temas relacionados con la seguridad y el desarrollo de software, especialmente a la conjunción de ambos temas (que para eso constituyen el subtítulo del blog, y especialmente a lo primero me gustaría dedicarme con mayor interés durante el año presente).




Así las cosas, bienvenidos un año más, que esperemos sea fructífero y permita aprender mucho unos de otros.