Madrid…

En menos de un dia he recordado por que te amo y por que te odio.

He vuelto a sentir los empujones y las largas colas.

El vertigo de sus interminables edificios.

IMG_9191.JPG

Las caras de la gente que camina como zombis sin importarles el destino.

Una vez fue parte esa gente.

Una vez hace mucho seguí los horarios de 8 a 8.

.. pero decidí cambiarlo todo por un sueño.

IMG_9189.JPG

Licencia para copiar ? ..

Visto que algunos de mis artículos están teniendo éxito.

y aunque orgullosamente Google reconoce la auditoría del artículo. He decidido dejar claro mi opinión sobre que debe hacer la gente que «linka» esos artículos.

Y aunque se que se pasarán la licencia por donde puedan al menos queda claro.

Al final de los artículos podéis ver esto.

licencia.jpg

Para hacerlo simplemente tenéis que instalar el pluggin the creative commons para wordpress.

Muchas gracias.

Quien dijo que esto era trabajar ?

La semana pasada cansado de estar en el puesto de soporte sin nada que hacer e intentando hacer un poco mas «aceptable» mi estancia allí me propuse construir algo nuevo. La idea era transformar el ordenador que tenía para ejecutar unas aplicaciones de soporte en una estación multimedia.

Y a eso me puse. Supongo que por que quiero que no se me olvide lo he que hecho estoy escribiendo este post. Supongo que será cosa vuestra el juzgar si esto es trabajo o no.

La idea era consolidar varios servicios en los mínimos ordenadores posibles. Las aplicaciones que tenemos que consolidar son:

  • Aplicación web con una pantalla tactil
  • Musica
  • Video

Para poder hacer esto disponía del siguiente Hardware.

hardware.jpg

Si no queda muy claro con los dibujos lo describiré.

  • Dell 390
  • Sharp Aqua 50″
  • Elo touch screen (USB)

La idea era utilizar linux como sistema operativo y configurar todas las aplicaciones sobre el. Manos a la obra se ha dicho. Supongo que entenderéis que no voy a entrar en detalles sobre la instalación de linux. Realmente no tiene nada especia. Simplemente acordaos de instalar estas opciones durante la instalación.

  • SSH Server
  • Ubuntu desktop

Una vez hecha la instalación añadimos una segunda tarjeta gráfica a la workstation. La idea es que cada una de las tarjetas alimentará un monitor diferente. Con lo que tenemos los siguiente.

01:00.0 VGA compatible controller: nVidia Corporation NV41 [Quadro FX 3450/4000 SDI] (rev a2)

05:04.0 VGA compatible controller: nVidia Corporation NV34 [GeForce FX 5200] (rev a1)

La idea es que cada una de las tarjetas alimente un monitor diferente y que cada tarjeta corra una sesión X diferente. Para hacer esto necesitamos modificar los siguientes ficheros:

  • /etc/X11/xorg.conf

Este fichero debe contener la definición de los 2 servidores. Imaginaos que tenéis 2 ficheros de configuración xorg.conf para cada uno de los servidores y los juntáis en uno solo. Tendréis entonces 2 secciones de cada. Lo importante es que os quedéis con el nombre que le asignáis a las secciones de «ServerLayout». por que la utilizaremos más adelante.

Aunque no está relacionado con la configuración del servidor X vamos a indicar como se configuraría el interfaz para la pantalla táctil. Esta pantalla tiene un conector USB para utilizar el dispositivo táctil. Para configurar ese dispositivo tenemos que hacer lo siguiente.

El la siguiente página

Nos podemos descargar el driver para Xorg. Si utilizamos el que viene con la distribución (xserver-xorg-input-elographics) tendremos que utilizar el interfaz serie, ya que este no soporta USB.

Para instalarlo simplemente tendremos que hacer lo siguiente:

 

 

 

wget -c http://www.softcoded.net/eduard/zx_pub/elousb_binary.tar.gz

 

tar -zxpvf elousb_binary.tar.gz

 

cp elousb_drv.so /usr/lib/xorg/modules/input

y en el fichero de configuración tenéis que añadir lo siguiente:

Section "InputDevice"
Identifier "touchscreen"
Driver "evtouch"
Option "Device" "/dev/input/evtouch_event"
Option "DeviceName" "touchscreen"
Option "MinX" "434"
Option "MinY" "503"
Option "MaxX" "3563"
Option "MaxY" "3524"
Option "SwapY" "true"
Option "ReportingMode" "Raw"
Option "Emulate3Buttons"
Option "Emulate3Timeout" "50"
Option "SendCoreEvents" "On"
EndSection

La parte en negrita es muy complicada, son los valores de calibración. Básicamente yo he encontrado los míos al tuntún. Hay varios programas para realizar la calibración, pero solo funcionan a través del interfaz RS232.

Como podéis ver vuestra touchscreen se comportará como si de un ratón se tratara para el sistema de Xwindows.

Una vez hecho eso tenemos que decirle a nuestro display manager (en este caso GDM) que deberá cargar 2 servidores X. Uno con cada configuración.

  • /etc/gdm/gdm.conf

Para eso utilizamos este fichero. La configuración que vamos a realizar se llama multiseat. No es algo fuera de lo común, pero es la primera vez que lo hago. Se supone que con añadir un par de lineas al fichero gdm.conf esta hecho.

 
En la sección
  • [servers]

Hay que añadir algo como

  • 1=Television

Y luego decirle como se carga ese servidor, con algo parecido a esto.

[server-Television]
name=Television
command=/usr/bin/X -novtswitch -sharevts -layout Television
flexible=true

Reiniciamos nuestro gdm y voilá .. ya tenemos dos Xservers… uno en :0 y otro en :1… uno en cada pantalla.

Pues ahora tenemos 2 pantallas con 2 sesiones X.. genial, ahora solo hay que configurarlas para que hagan autologin y ejecuten las aplicaciones que necesitamos.
Pero eso es otra historia y será contada en otro momento.. 😉

Dos nuevas adquisiciones…

Como homenaje a mi año en Dublín he hecho lo que mi poco autocontrol me obliga. Y como el HMV estaba de oferta (3 por 30 Euros) pues hice una visita.

IMG_9188.JPG

Las dos películas que cayeron fueron Children of men y Hairspray. Estas dos pelis marcaron de una forma u otra. Hairspray fue una refrescante sorpresa. Me fié de Rocio para ver esta película y me sorprendió. Casi llegamos tarde pero estuvo bien. Children of men también fue una elección de Rocio (va a ser que ella tiene mejor gusto que yo en cine)

Para aquellos que no las han visto os cuento un poco de que va.

Hairspray es un músical que nos narra los problemas de integración de una adolescente en los años sesenta. Todo se lía mas cuando ella gana un concurso televisivo de baile.

Children of men nos habla de que pasaría en el mundo si los niños dejaran de nacer. Cual sería nuestra última esperanza, a donde iríamos a parar..

Pues nada.. dos más para la colección…

Plugin de Kostracal

Una de las cosas que tenía en mi pagina en la versión anterior y que pensé que me iba a costar mas migrar era el KostraCal.

Inicialmente el KostraCal fue un intento de «ahorrarme» trabajo. Aunque no lo parezca desde que me fui al extranjero hemos tenido un montón de visitas en casa y a veces el organizar las visitas era un poco caótico. Todo el mundo preguntando cuando puedo, cuando no puedo. Hasta que me cansé y decidí cortar por lo sano.

«Yo os apunto los días que se puede o no en un calendario y vosotros miráis y os organizáis»

La primera versión fue algo de andar por casa, pero suficiente para mis necesidades. Utilizando varios programas ya hechos y modificandolos para que se adaptaran a lo que necesitaba.

Hice ciertas modificaciones en el frontend para que modificara el CSS de los días dependiendo de si existía o no un evento y también del estado del evento. Otro de los añadidos era el poder exportar los datos en Mysql a ICAL. Había un pequeño php, pero no recuerdo donde estaba. Para poder dar de alta y baja un pequeño php que hacía insert en la base de datos.

Como veis la cosa era muy sencilla.

En esta versión el «reto» era la integración con wordpress. Para mi todo lo de las tecnologías web me resulta un poco «oscuro», supongo que por que nunca me he preocupado de aplicarme un poco en ese campo.

Como siempre prefería ver si alguien tenía algo hecho para no tener que andar todo el camino.

Este proyecto: iCal Events te permite mostrar una lista de eventos utilizando como fuente ical. Eso esta chulo. Ademas como en la aplicación Calendar en Google se permite exportar directamente a ICal. La primera etapa estaba conseguida. De forma rudimentaria se mostraban los eventos, aunque en forma de lista.

La idea era hacer un pequeño hack en el Plugin e intentar que mostrara un calendario. No se me resulta mas visual. La librería de PHP ya estaba allí, pero de alguna forma había que «juntarlas»

Haciendo una pequeña chapuza programática (sería un suspenso en mis clases de programación) pero funciona.

La instalación es sencilla:

  • Descomprimir esta carpeta en el directorio de plugins del wordpress.
  • Activar el plugin
  • Editar vuestro index.php y añadir lo siguiente:


<?php

$ical_url = ‘http://URL to ical file’;

if ( $_GET[‘gmt_start’] == «» )

{ $printdate = strtotime(‘this month’, strtotime(date(‘m’) .’/01/’.date(‘Y’).’ 00:00:00′ )); }

else { $printdate = $_GET[‘gmt_start’]; }

ICalEvents::display_events(‘url=’.$ical_url.’&gmt_start=’ . $printdate . ‘&type=’ . ‘calendar’ );

?>

  • El CSS que controla como se muestra el calendario es el siguiente:

.calendarHeader {

font-weight: bolder;

color: #CC0000;

background-color: #FFFFCC;

}

.calendar {

background-color: #ffffff;

width: 100%;

}

.booked {

background-color: #CC0000;

}

.booked a {

text-decoration: none;

}

.prebooked {

background-color: #FFFF00;

}

.prebooked a {

text-decoration: none;

}

.denied {

background-color: #A0A0A0;

}

.denied a {

text-decoration: none;

}

El estado se controla en la descripción (debe coincidir con el nombre del CSS).

Bueno, echarle un ojo al código si os interesa. Cualquier mejora (que las habrá) comentadla. Muchas gracias a la gente que desarrolló las librerías que he utilizado, y poco mas.

KostraCal Plugin

Dios mi que trajin..!!!

Esto de trabajar para una empresa que no deja de sorprender al mundo.. pues es lo que tiene .. que de vez en cuando las sorpresas también nos las da a nosotros.

Lunes por la mañana, llego al trabajo. Mi lista de cosa que hacer en la libreta. He empezado a organizarme, era un caos intentar recordar lo que había hecho y lo que iba a hacer. A eso de las 11 de la mañana se me aproxima mi manager y dice esas palabras mágicas:

¿ Juan, estas liado esta semana ?

Que traducido a idioma coloquial es:

Te voy a enmarronar digas lo que digas ¿ das tu consentimiento ?

Así que con cara de cordero degollado y previniendo el dolor le digo que me de las buenas nuevas.

Te importaría irte a Amsterdam es que «xxxxx» se ha puesto mala. (lo de xxxx es por guardar la confidencialidad)

Respuesta inmediata.

No. Pero dime.

No se por que la gente preguntará cosas de las que ya saben la respuesta. Quieres que te clave este puñal en la espalda, lo voy a hacer, es para que el dolor no te sorprenda. Así que lo habéis adivinado ya no. ¿ Donde esta el nene ? … pues sí , en Amsterdam. Por suerte solo estoy hasta el Jueves, por que el Viernes nos vamos a Londres.

Por lo menos hay algunas cosas buenas de este viaje.

Una de ellas es donde estoy durmiendo.

 

No creo que se vea bien la X, pero si haceis click en el mapa para ver donde, y aqui teneis unas fotitos en vivo y en directo.

 

 
 
Esta es una de la parte principal.

 

 
y aqui es donde estoy durmiendo…
 

 
 
Y para mas «inri», hoy le ha dado a alguien por jugar con los cables de la fibra.
 
Resultado:
  • El viaje chulo.
  • El sitio donde estoy durmiendo chulo.
  • He trabajado como un burro.
  • De Amsterdam he visto una mierda.

Pd: Y este no es el «último» viaje de la lista.

CamTwist.. (si.. a veces me aburro)

Llevo varias semanas probando la nueva versión de MacOS, la 10.5, también llamada Leopard.

 

La verdad es que no le he visto muchas diferencias, pijotadas lo mucho, pero aún así me gusta ver que trae nuevo.

 

Entre las novedades quería probar la nueva versión de iChat, el programa de mensajería que viene con MacOS. La razón de esto era principalmente el tema de la videoconferencia.

 

Así que dicho y hecho. Lo estuve viendo un rato… nada interesante, pero había una cosa curiosa. Como novedad incluye la «facilidad» de aplicar efectos de video a tu cámara, con lo que lo hace un poco más divertido.

 

El problema de eso es que ambos participantes deben usar iChat.

 

Pero .. (y aquí esta la parte interesante de este post) … si iChat lo puede hacer .. seguro que se puede crear una cámara virtual (o algo así) que te permita aplicar efectos sobre una fuente de video a tiempo real. Estuve investigando un poco, pero todo lo que veía era para iChat o no funcionaban como yo quería.

 

 

Pero por casualidad (leyendo un RSS) encontré este programa, CamTwist.

 

CamTwist es justamente lo que andaba buscando. Lo que hace es generarte una cámara virtual a la que puedes aplicar varios efectos. Para esa cámara puedes usar varias fuentes, como un video, fotos, o tu propio escritorio. Ni que decir tiene que si eres el feliz propietario de un mac con cámara puedes utilizar esta como fuente del video.

 

He estado haciendo varias pruebas con varios softwares de video conferencia y el resultado ha sido alucinante.

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Las pruebas las he hecho con el preview del Skype, pero vamos.. funciona de miedo.

 

Echarle un ojo.. esta curioso.

 

 

 

 

Postmortem de la migración.

Bueno, creo que es costumbre en mi empresa, cuando algo ha fallado, escribir un pequeño documento de como ha ido todo.

Llebava bastante tiempo queriendo migrar de SPIP a WORDPRESS. La razón, basicamente era por que WORDPRESS soprta XML-RPC, lo que te permite escribir en el blog offline.

Creeis que esto es una pijotada, pero es bastante cómodo el poder estar en cualquier sitio escribiendo y preparando tu artículo sin tener que estar conectado a internet.

Pero había varias cosas que tenía claras.

  1. No quería perder los articulos/comentarios
  2. No quería tener que meter todos los articulos uno a uno.
  3. Había varias cosas que quería conservar (Kostratour, Gallery, etc)

Así que por eso he tardado mas.

MIGRACION DE SPIP A WORDPRESS

Después de investigar mucho sobre esto, mirar en foros, preguntar y no obtener respuesta llegue a la conclusión que a la gente de SPIP no en interesa que se pierdan adeptos.

En una pagina en frances encontré una instrucciones de como migrar el XML de SPIP 1.9.2 a WXR, que es un formato que utiliza wordpress para importar/exportar el contenido de su base de datos.

http://www.korben.info/script-de-conversion-spip-vers-wordpress.html

Para los que los idiomas no sean lo suyo os explico:

  1. Haceis un volcado a XML del contenido de SPIP
  2. Descargar el fichero que os indica (es un plantilla para la conversión)
  3. Descargar OxygenXML.
  4. Pedir una licencia de pruebas. Es para 30 dias.. os da de sobra.
  5. Abrir el XML de SPIP
  6. Generar un nuevo escenario de transformación.

    paso01.jpg

    Completa los campos tal y como se indica aquí:

    XSL URL: Es la ruta al fichero que os habeis bajado.

    paso02.jpg
  7. Aplicar la transformación.

  8. Limpiar el documento. Para ellos iremos a Document -> XML Document -> Format and Indent (puede que las opciones varien dependiendo de la versión)
  9. Grabamos el documento como WXR y ya estamos listos para usar la opción IMPORT del wordpress.

NOTA: Que no se os olvide antes de importarlo remplazar el texto ‘korben.info’ del archivo resultante por el de vuestro dominio. Parece que el que hizo el XLS escribió ese valor fijo.
Aunque parece una tontería aquí me costo mas de lo que pensais. Ahora solo me queda buscar un tema chulo y añadir las 2 tonterias que tenía en el blog.
Espero que los cambios os gusten.

Migración del Blog.

Simplemente comentaros que el Blog va a ser migrado a WordPress…

 

Cosas que se van a romper en el camino.

 

– RSS feeds

 

 

– Numeros de artículos.

 

Al hacer la importación los numeros de artículos son diferentes, así que si alguien tiene un link a un articulo en concreto … ups.. creo que fallará..

 

– El template aún no esta terminado. Espero que este en breve.