Me voy de vacaciones

viernes, 24 de agosto de 2007

Y también daré vacaciones al libro "Abismo de Hielo" [es demasiado parecido a "El Quinto Día"]. He estado buscando un libro que pueda leer en esta semana, que no aburra [seguramente leeré a la hora de la siesta] y me he encontrado con uno que parece gustar a todos los que lo leen: "Dios Vuelve en una Harley" de Joan Brady. Ya os contaré mi parecer a la vuelta.

Hasta luego.

DSD (Semana 22)

jueves, 23 de agosto de 2007

Hoy me quedé dormido, pero [excepto hoy] todos los días de esta última semana he salido a correr a las 6 de la mañana. Se que, si sigo corriendo no tardarán en llegar los resultados, pero por otro lado, estoy comiendo de manera desordenada (tarde, mucho acuarius, mucho pan) y con siestas de un par de horas, así que una cosa compensa la otra... Ayer, por ejemplo, cené a las 8:30 (bien) pero luego fuímos al cine a ver "Locos por el Surf" [entretenida pero no deberían haber insistido tanto en la idea de imitar un documental sobre surfing. nota: atención al pollo de Kentucky] y me comí un "mediano" de palomitas...

Así pues, sigo en 109.7. La semana que viene no habrá resumen porque estoy de minivacaciones [sin wifi] en la playa. Espero aprovecharlas para relajarme, leer una parte del "Abismo de Hielo" y bajar de una vez de los 109. Lo que no creo que haga es navegar ni surfear [me da mucho respeto el mar, sobre todo después de leer "El Quinto Día"].

El quinto dia

martes, 21 de agosto de 2007

Terminé este fin de semana pasado "El Quinto Día" ["De Zwerm" en el alemán original], el libro que comencé a leer en Septiembre del año pasado. Con clara tendencia ecologista y gran cantidad de contenido científico, el libro me ha gustado mucho, así que no daré detalles de su argumento. Después de leerlo, he recapacitado sobre algunas cosas.

Todos nosotros, desde el punto de vista de cualquier otro ser vivo del planeta somos una diminuta población de seres vertebrados muy dañinos [como un virus mortal]. Nos consideramos inteligentes, los elegidos para dominar el planeta, pero "evolucionamos" inexorablemente hacia nuestra propia destrucción. Y lo peor es que lo sabemos y no hacemos nada, dejando un problema cada vez mayor para las generaciones venideras: contaminación, enfermedad, consumismo, egoismo.

Dentro de la historia del planeta, nuestra existencia [desde el homo sapiens] se reduce a un corto lapso de tiempo. Hemos aparecido y podemos dejar de existir sin afectar al funcionamiento global de la Tierra [ya ocurrió con los dinosaurios]. Las bacterias y otros organismos seguirían existiendo, y a todas luces, vivirían mejor. No somos tan importantes, ni mucho menos imprescindibles.

Somos la comunidad de seres vivientes peor organizada que existe. Incapaces de avanzar en un mismo sentido, nos perdemos en la búsqueda del éxito personal en perjuicio los unos de los otros [en definitiva, en perjuicio de la comunidad]. Por poner un ejemplo, si se consigue un avance [digamos un nuevo descubrimiento científico] en lugar de hacerlo llegar de la manera más eficaz y económica a toda la humanidad, unos pocos se encargan de mantenerlo en secreto el máximo tiempo posible para sacarle provecho en su propio beneficio.

Lo que hemos llamado civilización [la tecnología] avanza sólo en un sentido: la sociedad del consumo. Mientras una hormiga no tiene más necesidad que su alimento, en los países ricos las personas necesitan un coche más rápido, una pantalla de 40", un reproductor MP3 por bluetooth, una segunda vivienda, etc... No importa que los accidentes de tráfico sean la primera causa de muerte en sociedades "civilizadas" o que los tipos de interés para las hipotecas no dejan de subir y puede que acabemos arruinados. Y el motivo no es otro que la falta de conciencia y memoria global. No vemos el peligro [no nos preocupa] hasta que no nos toca directamente. La comunidad reacciona tarde o nunca.

Si lo pensamos, otra posibilidad es que nuestra breve existencia SI tenga un sentido: acelerar una nueva glaciación y renovar las formas de vida en el planeta. En ese sentido seríamos útiles.

Se que todo esto te va a sonar derrotista y pesimista, pero también puede ayudarte a pensar en el lugar que ocupamos y en cúal debe ser el sentido de nuestra vida: ayudar a la comunidad [especialmente a los que nos rodean].

Sevilla, campeon de supercopa

lunes, 20 de agosto de 2007

R.Madrid 3 - Sevilla 5

Se van encadenando las copas una detrás de otra... 2 UEFAs, 1 Supercopa UEFA, 1 Copa del Rey y esta Supercopa de España.

Un año de blog

viernes, 17 de agosto de 2007

Hoy hace un año que escribí el primer artículo de este blog. Más de 250 artículos después echo la mirada atrás y es para echarse a llorar. ¡Qué desastre de blog! ¡Pero es mío, solo mío [mi tessoro]!. Lo he conseguido, ya soy un bloguero más. Ahora solo falta hacerlo bien....

Gracias a María por su felicitación.

DSD (Semana 21)

jueves, 16 de agosto de 2007

Parece que me han puesto pilas coincidiendo con los informes semanales. Llevo 3 días consecutivos saliendo a correr a las 6 de la mañana con TuX.

Ayer fué especialmente duro. Levantarse tan temprano siendo festivo (Día de la Asunción) es para pensarselo.... Luego, piscina con las niñas (me dieron una paliza) y terminamos yendo al cine a ver la segunda parte de Los Cuatro Fantasticos (nada fantastica por otra parte)

Instalar Wacom Graphire4 en Ubuntu 7.04

miércoles, 15 de agosto de 2007

Este año los Reyes le regalaron a María una tableta digitalizadora USB Wacom Graphire4. Venía con el Photoshop Elements [donde funcionaba perfectamente] pero no conseguimos hacerla funcionar correctamente [con soporte de presión] en el GIMP para Mac.

Después de un tiempo, María instaló Ubuntu en una partición de su iMac, pero no nos acordamos del problema de la tableta hasta ayer. Encontré un magnífico Howto fechado en 2005 que me funcionó con ligeros cambios en el Ubuntu 7.04 de mi ASUS tras varios errores (por mi parte).

Pasos:

  1. Conectar la tableta USB Wacom
  2. Instalar los paquetes wacom-tools y xserver-xorg-input-wacom (en mi caso ya estaban instalados)
  3. Editar el archivo /etc/X11/xorg.conf e incluir los dispositivos de entrada Wacom USB debajo del "Configured Mouse"
    
    Section "InputDevice"
     Driver  "wacom"
     Identifier "stylus"
     Option  "Device" "/dev/input/wacom"
     Option  "Type"  "stylus"
     Option  "USB"  "on"
     Option   "PressCurve" "50,0,100,50"
    EndSection
    
    Section "InputDevice"
     Driver  "wacom"
     Identifier "eraser"
     Option  "Device" "/dev/input/wacom"
     Option  "USB"  "on"
     Option  "Type"  "eraser"
    EndSection
    
    Section "InputDevice"
     Driver  "wacom"
     Identifier "cursor"
     Option  "Device" "/dev/input/wacom"
     Option  "USB"  "on"
     Option  "Type"  "cursor"
     Option  "Mode"  "relative"
    EndSection
    
  4. Agregar los dispositivos en la seccion "ServerLayout"
    Section "ServerLayout"
     Identifier "Default Layout"
     Screen  "Default Screen"
     InputDevice "Generic Keyboard"
     InputDevice "Configured Mouse"
     InputDevice     "stylus" "SendCoreEvents"
     InputDevice     "cursor" "SendCoreEvents"
     InputDevice     "eraser" "SendCoreEvents"
    EndSection
    
  5. Reiniciar las X con CTRL+ALT+DEL
  6. Habilitar los nuevos dispositivos de entrada en GIMP. En Archivo | Preferencias | Dispositivos de entrada | Configurar los dispositivos de entrada extendidos. Deben aparecer 3 dispositivos: "cursor", "eraser" y "stylus". Por defecto están deshabilitados y hay que seleccionar la opción "Pantalla".

Nota: Al principio parecerá que no funciona la goma de borrar del lapiz. No es cierto. GIMP asocia por defecto la misma herramienta a todos los dispositivos de entrada (en esos momentos tenemos 3: el ratón, la punta del lapiz y la goma). Si queremos que la goma funcione como tal solo tenemos que seleccionar la herramienta "Borrador" utilizando la propia goma. Desde ese momento GIMP recordará que la herramienta Borrador esta asociada a la goma del lapiz y seleccionará automáticamente dicha herramienta cada vez que la utilizemos.

Las virtudes del scripting

martes, 14 de agosto de 2007

En principio, pensaba titular este artículo "Lo que un programador de Java no sabe y uno de PHP si", pero era demasiado largo...

Antecedentes: Poco antes de empezar a programar web, lo hacía con Delphi en arquitectura cliente/servidor contra Oracle. Antes había programado en C, Pascal, Clipper y Cobol para DOS. Por entonces pensaba que programar en web era poco más o menos diseñar paginas web y programar algún script (algo sencillito para hacer un efectito). Después de siete años programando web con PHP mi opinión sobre los lenguajes de scripting ha cambiado radicalmente.

Antes de empezar, es imporante señalar la conveniencia de conocer varios lenguajes. Como ya cité anteriormente, según The Pragmatic Programmer,

Aprende al menos un nuevo lenguaje [de programación] cada año. Cada lenguaje resuelve el mismo problema de una manera distinta. Aprendiendo diferentes soluciones, consigues abrir tus ideas y te ayuda a desbloquearte.

¿Que ventajas ofrece un lenguaje de scripting como PHP sobre uno que no lo es como Java? Muchas, sobre todo en desarrollos complejos con muchas modificaciones.

  • El hecho de poseer un ciclo de desarrollo sin compilación, como todos los lenguajes interpretados, se aprovecha a la hora de desarrollar prototipos o depurar. Con sólo un editor de texto, cualquiera puede hacer un cambio sobre-la-marcha y el usuario da su visto bueno al instante. Pero aún podemos pedir más, e incluir el editor en la propia aplicación (los usuarios de Wordpress pueden dar fe de ello).
  • El código fuente siempre está disponible. Si a estas alturas alguien piensa que esto es una desventaja, debería plantearse repasar las tendencias que han dominado el mundo de la informática en los últimos 10 años
  • Los programas pueden reescribir partes de su código según determinadas condiciones. Esta posibilidad es mucho más complicada en lenguajes compilados.
  • Por regla general la mayoría de los lenguajes de scripting son más fáciles de entender (hecha la excepción de PERL) que los lenguajes compilados.
  • La flexibilidad otorgada por el tipado débil y el alto nivel de las funciones permiten a los programas desarrollados en lenguajes de script ocupar casi siempre menos lineas que los correspondientes en lenguajes compilados. Esto facilita aplicar la máxima KISS (Mantenlo Simple Estupido) al desarrollo.
  • Uso de scripting desde lenguajes compilados: En una de mis aplicaciones en Delphi, después de la cuarta o quinta modificación sobre el orden de una consulta o la inclusión de uno u otro campo en un informe, saqué todas las consultas SQL y las guardé en una carpeta. La siguiente vez que me pidieron una modificación les mandé por correo el archivo .SQL y lo instaló el cliente. Como solución mas profesional, existen extensiones que permiten utilizar lenguajes interpretados (como LISP) desde dentro de los lenguajes compilados, ganando así todas las ventajas de las que estamos hablando. Otro ejemplo de esta integración es el módulo de PHP para Apache (mas sencillo imposible).
  • Uso de lenguajes compilados desde scripting: desde PHP existe la posibilidad de desarrollar extensiones en C o C++, así como de utilizar clases de Java.
  • Rendimiento: Desde siempre se ha acusado a los lenguajes interpretados de lentos. El caso de Java (tambien COBOL) es curioso porque de alguna manera la máquina virtual "interpreta" un codigo optimizado, así que se situa a medio camino. La falta de rendimiento puede valer para el BASIC de los 80, pero desde hace tiempo los interpretes utilizan técnicas de mejora del proceso de interpretación, de manera que se genere un codigo optimizado intermedio cuando es necesario y no sea necesario interpretar el código cada vez. Si a esto le sumamos las tecnologias de caché de compilación, las diferencias se reducen considerablemente.

Para aligerar en trabajo en lenguajes compilados se hace necesario un entorno de desarrollo potente, que incluya herramientas para la depuración. En un programa web en PHP, el entorno es el servidor web.

Dos vueltas al parque

Esta mañana, a eso de las 6 sonó el despertador. Me levanté, cogí a TuX y fuimos al parque. Dí dos vueltas haciendo footing. No es demasiada distancia, pero hace muchísimo que no corro y tuve buenas sensaciones, solo noté un poco de presión en el tobillo izquierdo. TuX se portó bastante bien, apenas tuve que tirar de él.

El parque, a esa hora (de noche todavía), mantiene todas las puertas cerradas menos una (la inferior en el mapa), pero no entré, dí la vuelta por fuera.

Taller de Blancanieves en los Veranillos

Anoche, a las 9:30, fuimos a Los Veranillos del Alamillo, donde se realizaba un taller infantil titulado "Blancanieves". Las niñas fabricaron dos espejos de cartón, y los decoraron con purpurina, papel brillante y piedras. Mientras María les ayudaba un poco, yo me quedé con TuX. El pobre estuvo todo el rato nervioso porque veía a las niñas y a su "adorada" mamá a pocos metros y no podía acercarse.

Este año no habíamos ido todavía a "Los Veranillos del Alamillo", pero ya los conocemos de años anteriores. Todos los días de Julio y Agosto se realizan actividades para los peques. Cada día de la semana, una distinta. Así, los lunes hay taller infantil, los martes cuentacuentos, los miércoles teatro, danza, poesía o música, los jueves es el día de los jóvenes flamencos, los viernes cine infantil, el sábado cine para todos los públicos y el domingo un pasacalles. Las actividades siempre empiezan después de las 9, ideal para para pasar un rato fresquito.