Archivo para julio de 2010

31

31

Hoy día 31 hago 31. Un año más viejo sabio

Este año tendré que buscarme algo para regalarme (como todos los años) porque por el otro lado ya lo he recibido :P .

Refranero informático

Quién ríe el último… es que tiene copia de seguridad.

Visto en un comentario de Menéame sobre la pérdida de expedientes del hospital Clínico de Madrid.

Día del administrador de sistemas

Sysadmin Day Cake

Como cada último viernes de julio, hoy es el día del administrador de sistemas (informáticos).

Hoy ya no lo soy a tiempo completo aunque sí que tengo una solitaria máquina a mi cargo, pero hace algo más de un año tenía cuatro sistemas para mí solito (qué bien me lo pasaba…).

Y no, nadie me ha felicitado (ni hoy ni anteriormente), pero como buen friki geek hay que comentarlo :P .

Por cierto, este día tiene su propia página.

Soles

Soles

Soles (mini)

El puntito que hay a la izquierda del todo, de un sólo píxel, donde pone “Sun” representa a nuestro Sol. Lo siguiente son las representaciones de estrellas conocidas en nuestro universo, cada cual más grande… de hecho, la imagen de arriba sólo es el recuadro rojo que se ve en esta imagen de la derecha, y todavía no se ven la mayoría de estrellas.

Puedes hacer clic en la imagen de arriba para verla completa, pero ojo, es una imagen de 10173×2500 píxeles y con un tamaño de 4,63 MB. Como dicen en la nota original, espero que te guste hacer scroll lateral… :P

Visto en Menéame y de ahí a Stargazers Lounge.

Inventando la respuesta

A dios no se llega por hacer preguntas, sino por inventar la respuesta. Dios solo es miedo, miedo que tenía el hombre primitivo cuando su recién adquirida inteligencia le sacó del manto protector de la ignorancia animal y le mostró un universo indiferente hacia su existencia. Ahi apareció dios, y la tribu durmió tranquila esa noche sin saber el germen de intolerancia e irracionalidad que estaba creando.

Elocuente y acertado comentario de Lucien en el blog La ciencia y sus demonios en una entrada sobre la opinión de Carl Sagan sobre la demostración de la existencia de dios.

Afirmaciones

Afirmaciones extraordinarias requieren pruebas extraordinarias.

David Hume (1711 – 1776), filósofo, economista e historiador escocés.

Concatenar archivos PDF

Por curiosidad más que por otra cosa, he estado mirando cómo se crean drivers para Linux, así que, buscando en Google, me encontré con el libro «Linux Device Drivers, Third Edition». El problema es que está distribuido como 23 archivos PDF, y no me apetece andar abriendo y cerrando archivos mientras leo. Y menos si lo convierto al formato ePub para mi nuevo Papyre.

Así que buscando un poco por Internet, me encontré con una solución que funciona (a parte de alguna que otra que lo hace a medias). Eso sí, esta solución pasa por usar Ghostscript en modo comando en un terminal en Linux:

diego@box:~/ldd3:$ gs -q -sPAPERSISE=a4 -dNOPAUSE -dBATCH -sDEVICE=pdfwrite -sOutputFile=ldd3.pdf TITLE.pdf AUTHOR.COLO.pdf COPYRIGHT.pdf ldr3TOC.fm.pdf ch00.pdf ch01.pdf ch02.pdf ch03.pdf ch04.pdf ch05.pdf ch06.pdf ch07.pdf ch08.pdf ch09.pdf ch10.pdf ch11.pdf ch12.pdf ch13.pdf ch14.pdf ch15.pdf ch16.pdf ch17.pdf ch18.pdf ldr3IX.fm.pdf

Mediante este comando se genera el archivo ldd3.pdf que es la unión de todos los demás quedando un resultado que parece que el archivo se ha generado así (vamos, yo no he notado diferencia). Ahora sólo tengo que usar Calibre para poder leerlo en el eReader.

Ver miniaturas de archivos de Photoshop (.psd) en Windows 7

Si hace tiempo ponía que para ver las miniaturas de los archivos de Photoshop en el Explorer (que no funciona de forma nativa) se podía usar ThumbView, hoy me ha surgido el mismo problema, pero en Windows 7.

La solución pasa por unos sencillos pasos:

  1. Descargar e instalar el Microsoft VisualC++ 2008 Redistributable Package.
  2. Descargar Microsoft Expression Blend pero no instalar.
  3. Descomprimir el archivo descargado con WinRAR o 7zip (o cualquier otra utilidad).
  4. Buscar el archivo PSDCodec.dll y copiarlo a C:\Archivos de programa\PSDCodec\. Crear la carpeta en caso necesario.
  5. Los pasos de descarga del Expression Blend, descompresión y búsqueda del archivo os lo podéis ahorrar descargando el archivo directamente.
  6. Ejecutar como administrador una shell o símbolo del sistema.
  7. Ejecutar el comando regsvr32 "C:\Archivos de programa\PSDCodec\PSDCodec.dll".
  8. Listo. Ahora en el explorador saldrán las miniaturas de los archivos .psd.

Otra solución es MysticThumbs, una pequeña aplicación que no sólo muestra imágenes de Photoshop (.psd) en el explorador, sino que reconoce más de veinte formatos, entre ellos .ai, .pdf, .raw, .dng… Eso sí, hay que pagar 15 dólares.

Papyre 6.1

He recibido como regalo este fin de semana el lector de libros electrónicos Papyre 6.1.

Papyre 6.1

La verdad es que ya hacía tiempo que le tenía ganas a uno, aunque hubiera esperado a que bajaran de precio… pero es un regalo y, la verdad, estoy encantado.

El dispositivo en sí es muy manejable. No es muy grande y pesa poco (unos 200 g) con lo que se puede llevar perfectamente en cualquier bolso. Además, trae una funda semirrígida para evitar desperfectos.

En cuanto a hardware, tiene una pantalla de tinta electrónica de 6” con una resolución de 800×600 y 16 niveles de grises, un procesador ARM9 a 400 MHz, una batería de 950 mAh y varias teclas para su manejo que no incluye un teclado completo. Además, trae una tarjeta de memoria SD de 2 GB.

Respecto al software, cuenta con una versión de Linux básica suficiente para el manejo del dispositivo y con las utilidades necesarias para la presentación de todos los formatos de libros electrónicos que soporta, entre ellos PDF, ePub, FB2, TXT, RTF, HTML y Mobipocket. Además también puede presentar imágenes en blanco y negro en PNG, JPEG y BMP entre otras. Esta versión de Linux (aunque es Linux, en la página oficial lo llaman firmware) es actualizable.

Después de las características, mi opinión es que los textos se ven muy, muy bien. Como es de tinta electrónica, es necesario tener luz exterior para leer, pero aunque sea escasa, se lee perfectamente. Cuenta con dos tipografías principales (Arial y Times New Roman) que se pueden intercambiar y con ambas se lee muy bien. Eso ya depende de gustos.

Además se puede cambiar el tamaño de la letra e, incluso, se puede rotar por si prefieres que las líneas sean más largas, aunque el formato vertical es más parecido a un libro en papel.

El formato de libro electrónico que mejor se lee, en mi opinión, es ePub, aunque el formato FB2 y PDF también se leen correctamente. De todas formas, siempre se puede pasar de un formato a otro con software libre, por ejemplo con Calibre.

Lo único, quizás, que le le puede echar en cara son los tiempos de carga de libros y la pasada de página, que es de un par de segundos por el hecho de redibujar toda la pantalla (carencias de este tipo de pantallas), pero no es nada que moleste de forma excesiva.

En algún foro se comenta también que uno de sus problemas es la carencia de WiFi o 3G, pero en mi opinión son cosas innecesarias, ya que es un lector de libros electrónicos. Vale, estaría bien para hacer consultas o sincronizar las notas con Internet, pero para mí no es ningún problema, es más, creo que es una ventaja al no consumir batería con las conexiones inalámbricas.

En definitiva, me parece un buen lector de libros electrónicos que, aún habiendo alternativas más baratas, recomiendo por su calidad. Además, la tarjeta de memoria traía de regalo mil libros clásicos, como El Quijote o Don Juan Tenorio, pero, como es lógico, le puedes meter todos los que quieras.

Librería jsoncpp para trabajar con JSON en C++

Cuanto te creas una aplicación, uno de sus problemas es el de la configuración. Hay que guardarla, cargarla y aplicarla. Una opción para guardarla es usar XML, un formato ampliamente conocido, estándar y con muchas librerías que te ayudarán a tratarlo. Además, hacer una DTD es muy sencillo.

El problema llega cuando la configuración es tan grande que si no tienes procesos automatizados que la carguen, ésta se vuelve inmanejable. Hay tantas líneas de código que escribir para cargar un sólo valor que es totalmente contraproducente. Y eso que existen librerías bastante buenas (yo usaba PugiXML, no es que sea la mejor pero se adaptaba perfectamente a mis necesidades).

Es por eso que he hecho algunos prototipos y he decido cambiar el formato de guardado de la configuración de mi proyecto a JSON. Y para su tratamiento he usado la librería JsonCpp.

Esta librería está escrita en C++ y tiene una interfaz similar al acceso a map‘s de C++, usando los corchetes como método de acceso, posibilitando también el acceso encadenado (como si fuesen arrays multidimensionales). También está la librería JsonGlib, pero está escrita en C y no me gusta integrar librerías en C en aplicación en C++.

Además tiene un API muy clara y sencilla que conseguirá que, tanto la inclusión en el proyecto, como la programación de la misma se vuelva muy fácil (yo apenas tardé una hora en hacer un programa que cargase, guardase y chequease un archivo JSON).

Con esto se consigue que el mantenimiento del código de cargar de la configuración se reduzca enormemente (más o menos en mi proyecto, el código se ha reducido un 15%) y sea mucho más fácil de mantener.

La única “pega” que tiene esta librería es que todavía está en la versión 0.5.0, pero habrá que estar antentos a cada mejora e incluirla en tu aplicación.

En conclusión, si necesitáis manejar archivos en formato JSON en aplicaciones escritas en C++, os recomiendo esta librería ;) .

El primer país que garantiza por ley la Neutralidad de la Red

Neutralidad de la Red

¿Cuántos países hay en el mundo? Pues unos 241, aunque es un poco más complicado que eso…

Pues de esos 241, Chile se ha convertido en el primer país que garantiza la Neutralidad de la Red por ley, es decir, que Chile ha creado una ley que garantiza que ningún proveedor de Internet podrá interferir, discriminar o entorpecer de cualquier forma los contenidos, aplicaciones o servicios de Internet.

Al resto de países, que se vayan poniendo las barbas a remojar, porque esta ley es la expresión de toda la sociedad, no de las grandes corporaciones.

Y ya de estar, otra noticia relacionada, es que Nueva Zelanda ha prohibido las patentes de software. Y digo lo mismo que antes, que el resto de países tomen nota ;) .

España campeona del mundo de fútbol

Iker Casillas levantando la Copa del Mundo de Fútbol

El tema puede llegar a ser cansino (y llegará, eso seguro, toda la semana siguiente y más), pero hay que reconocer que la hazaña que han hecho los jugadores de la selección española de fútbol es épica.

Eso sí, el partido de fácil nada, con una Holanda que salió a dar patadas en lugar de a jugar al fútbol, un árbitro que perdonó lo imperdonable y una España descolada en varios momentos del partido, cosa compresible por la presión que debían tener.

Aún así, hemos ganado. La primera vez en la historia que estamos ahí. Desde aquí mi más sincera enhorabuena.

Por cierto, no hay que olvidarse que a veces la euforia juega malas buenas pasadas (y con vídeo) ;) .

Las tres leyes de la robótica

  1. Un robot no debe dañar a un ser humano o, por su inacción, dejar que un ser humano sufra daño.
  2. Un robot debe obedecer las órdenes que le son dadas por un ser humano, excepto si estas órdenes entran en conflicto con la Primera Ley.
  3. Un robot debe proteger su propia existencia, hasta donde esta protección no entre en conflicto con la Primera o la Segunda Ley.

Isaac Asimov (1920 – 1992), escritor de obras de ciencia ficción (entre otras) y bioquímico, originalmente nacido en Petróvichi, antigua RSSB, y nacionalizado estadounidense.

Me lo recordaron algunos juegos de lógica sobre las Leyes de la Robótica.

Mi presonalizado comando less

El comando less es una utilidad de los sistemas UNIX (cualquier sistema operativo compatible con POSIX lo debería tener) que sirve para ver los contenidos de los archivos de forma completa, pudiendo navegar entre dichos contenidos y consumiendo muy pocos recursos.

El comando less puede personalizar su salida, es decir, se puede incluir información adicional del archivo que se está viendo en la visualización del mismo, como el nombre del archivo, el tamaño, en qué posición nos encontramos, etc.

Por defecto la información mostrada es escasa, por lo que una pequeña personalización nunca viene mal. A continuación os dejo la que yo tengo en mi sistema:

alias L='less -NR -P "?f%f:<stdin>.?m (%i/%m). [%s bytes] %lt/%L (%pB \%) ?x-> ?x%x"'

Más o menos muestra el número de cada línea, el nombre del archivo abierto o <stdin> en caso de que sea la entrada estándar, la página en la que estás, el tamaño, el porcentage en el que te encuentras y el siguiente archivo pasado a less (en caso de que haya).

Así, con less tienes más información de lo que estás viendo. Por supuesto esto es totalmente personalizable, así que un poco de man less no viene mal para saber como mejorarlo ;) .