pabluk's blog... IPv6 ready!
Pablo
This user hasn't shared any biographical information
Posts by Pablo
La mierda de la inseguridad
Jun 24th
Seguramente no es novedad para nadie escuchar a alguien quejarse de la inseguridad, pero ahora me toco a mí, ayer entraron al departamento donde vivo para robarme entre otras cosas mi laptop, una HP Pavilion 2422. Viviendo en un lugar que cualquiera consideraría seguro, parece que de todas formas no es suficiente. Así que supongo que por un buen tiempo no posteare nada. Bye!
PD: muchas gracias a todos los hijos de re mil puta que compran cosas robadas por 2 mangos y se creen que son unos vivos bárbaros por comprar más barato.
mv /home/pabluk
Jun 21st
Hace unos días que terminé de mudarme por décima vez en Mendoza!! Desde que estoy hace un par de años estos fueron los lugares por los que estuve
- Compartiendo departamento con Charly sin palabras
- El tio Resi y su residencia de Sgto. Cabral, buenísimo! Conocí gente copada que todavía veo, Gabi, Dani, Nadia, Leandro y a otros a los que no veo tan seguido
- En la casa del Sr. viejito de Agustí Alvarez, ahí estuve viviendo con Marina en una parte de la casa que nos alquilaba. Después de un mes se puso insoportable el viejito
- En la residencia cerca de la UNC very dangerous! quedaba en un barrio copado lejos de todo pero cerca de un par de villas, por suerte solo estuve un mes ahí
- El dpto de Paso de los Andes donde estuve 2 años, al principio viviamos con Marina y después se sumó Amancay! que recuerdos
- La residencia Olascoaga the best! era como estar en un hostel y a la vez en la casa de Gran Hermano, solo faltaban las cámaras. Viviendo con 15 personas de todos lados, de España, Inglaterra, Chile, Bolivia, Francia, México, Ecuador, Alemanía, etc. Conocí mucha gente copada, loca, interesante, divertida e importante. Definitivamente las mejores fiestas estuvieron ahí
- El depa de Leandro buenísimo a unas cuadras de la facu
- Viviendo en un garage pude saber como se sentía Alf. Vivir un garage no es tan feo como suena
- La casa de Granaderos a metros de la pileta de natación del gimnasio municipal nro. 1, excelente para ir de 23:00 a 24:00
- El departemento de Gral. Paz con el Tute y familia
- Ahora viviendo en Lamadrid de vuelta a la quinta, solo (al menos hasta que llegue Méli), cerca de la facu y de la Parra donde venden los mejores brownies.
¿En que lugar de Mendoza será mi próxima mudanza?… quién sabe, pero espero que no sean muchas más! Después de tantas mudanzas puedo decir que todo lo que uno necesita para vivir puede entrar en una mochila normal y otra de 60 litros
Another Twitter command-line client
Jun 13th
No sé hasta cuando me va a durar, pero por ahora sigo usando Twitter. El tema o la excusa para escribir este script, es que es un embole tener un browser corriendo solo para ver los updates. Y aprovechando que la API esta por todos lados y no es nada complicado hacerse un cliente en cualquier lenguaje. En este caso lo hice con PHP, si si ya sé que podría haber usado hasta bash y tidy para esto. Pero esto fue lo más rápido que encontré para hacerlo, solo necesitaba PHP para parsear JSON y un poco de PEAR. Twitter también soporta XML, RSS y ATOM.
<?php
include ("HTTP/Request.php");
$user = "pabluk";
$pass = "pass";
$timeline = new HTTP_Request("http://twitter.com/statuses/friends_timeline/" .
$user . ".json");
$timeline->setBasicAuth($user, $pass);
$timeline->sendRequest();
$updates = array_reverse(json_decode($timeline->getResponseBody(), TRUE));
foreach ($updates as $update) {
if ($update['user']['screen_name'] == $user) {
echo "\033[32m" . $update['user']['screen_name'] . ":\33[37m " .
$update['text'] . "\n";
} else {
echo "\033[33m" . $update['user']['screen_name'] . ":\33[37m " .
$update['text'] . "\n";
}
}
?>
Bastante sencillo, muestra el username en color y uso array_reverse() para ordenar los updates en la terminal, así aparecen los más recientes al final.
Lo ejecuto con
pabluk@amidala:~$ php twitter-status.php
Para tenerlo cada tanto actualizado se puede correr con
pabluk@amidala:~$ while : ; do clear ; php twitter-status.php ; sleep 120 ; done
Y por supuesto que también se pueden enviar updates, usando curl
#!/bin/bash
curl -u "pabluk:pass" -d status="$@" \
"http://twitter.com/statuses/update.json" &> /dev/null
y haciendo
pabluk@amidala:~$ twitter-update.sh "fin del post..."
Keysigning Party @LUGMen
Jun 13th

Como algunos sabrán y para los que no también, en la reunión pasada de LUGMen se hizo una keysigning party, hace casi una semana, pero por los efectos del alcohol olvidé mi cámara con las fotos de la reunión en la casa de unos amigos
Pero acá están. Solo faltaron 2 de los 15 que confirmaron su presencia. Se habló sobre criptografía, nos reímos de los nombres reales y las fotos de los documentos de cada uno, y como siempre hubo tortitas y Coca-Cola®.
Así quedo actualmente mi anillo de confianza
pabluk@amidala:~$ gpg --check-trustdb gpg: 3 marginal(s) needed, 1 complete(s) needed, PGP trust model gpg: depth: 0 valid: 1 signed: 12 trust: 0-, 0q, 0n, 0m, 0f, 1u gpg: depth: 1 valid: 12 signed: 7 trust: 0-, 0q, 0n, 0m, 12f, 0u gpg: depth: 2 valid: 1 signed: 1 trust: 1-, 0q, 0n, 0m, 0f, 0u gpg: next trustdb check due at 2010-06-05
Aunque parece que todavía hay algunos que no firmaron y subieron sus claves al keyserver, de todas formas valió la pena.
Hay cosas que el dinero no puede comprar….
Jun 9th

Este parece ser el caso de Twitter. Después de leer este post en el blog de Kastor, decidí probar Twitter. Bajo el lema
“What are you doing?”
uno puedo postear en 140 caracteres lo que esta haciendo, pensando etc. y otros pueden verlo casi instantáneamente.

Parece ser que la idea de los creadores de Twitter fue un éxito y ahora están pagando su precio, porque aparentemente tienen grandes problemas de escalabilidad, las imágenes hablan por si solas, el link de help no lleva a ninguna parte, borrar un mensaje es imposible, lo intente durante 4 minutos y aunque parece procesar mi request no hace nada, también existe la posibilidad de enviar updates vía Jabber pero tampoco me funciono. Y llevo menos de 2 semanas probándolo.
Leyendo estos links (Twitter: Service vs. Platform, Twitter Said To Be Abandoning… y Twitter’s problems are the result of architecture, XMPP may be the answer), que me paso Marteen por irc, me entero del problema: el sitio recibe 11000 request por segundo! lo que no es poca cosa!
Esperemos que lo solucionen y follow me on Twitter.
Webcam shots and the Picasa Web Data API
Jun 3rd

Hace unos días estuve probando darle algún otro uso a la webcam de mi latop. Y terminé probando esto.
Capturar imágenes con la webcam y enviarlas a un webserver, en este caso como no tengo un hosting ni tengo forma de llegar al puerto 80 de mi router desde internet, se me ocurrió usar la API de Picasa Web para subir las fotos a un álbum desde un script.
Para capturar las imágenes probé varios programas que están en los repos de Ubuntu, pero termine usando fswebcam que no está en los repos, más que nada porque soporta v4l2, que es el driver con el que funciona mi webcam.
Con fswebcam tomo la foto, le seteo el tamaño, un titulo, etc. Y usando curl subo la imagen a un álbum público de Picasa Web. La API de Picasa Web está bastante documentada así que no hubo muchos problemas para hacerlo.
Acá están los scripts para capturar la imagen y para subirla a Picasa Web.
#!/bin/sh
fswebcam --resolution 640x480 --timestamp "%d.%m.%Y %H:%M GMT-03:00" \
--banner-colour "#AA000000" --line-colour "#ff000000" --skip 50 \
--loop 30 --title "PaBLuK" \
--font "/usr/share/fonts/truetype/freefont/FreeSans.ttf:10" \
--exec subirFotoPicasa.sh ~/webcamshots/habitacion.jpg
Con la opción –exec ejecuta el script que sube la imagen después de capturada.
#!/bin/bash
FOTO="/home/pabluk/webcamshots/habitacion.jpg"
AUTHKEY="$(curl --silent https://www.google.com/accounts/ClientLogin \
--data Email=pabluk@gmail.com --data Passwd=eltuyo \
--data accountType=GOOGLE --data source=Google-cURL-Example \
--data service=lh2 | grep Auth)"
FOTOID="$(curl --silent --header "Authorization: GoogleLogin $AUTHKEY" \
"http://picasaweb.google.com/data/feed/api/user/pabluk/album/Webcam?kind=photo" \
| tidy -quiet -xml|grep -A 1 edit-media|grep href| cut -d "'" -f 2)"
curl --silent --request PUT --data-binary "@$FOTO" --header "Content-Type: image/jpg" \
--header "Authorization: GoogleLogin $AUTHKEY" "$FOTOID" | tidy -quiet -xml
En estas líneas se autentifica, toma el id de la imagen dentro del albúm, en mi caso el álbum se llama Webcam, y con la última línea sube y reemplaza la imagen.
Lo bueno:
- No se necesita tener un hosting.
- No me preocupo por el BW consumido, que no es poco.
Lo malo:
- No se puede agregar Javascript o algo para recargar la página de la foto automáticamente desde Picasa Web.
Se vienen las JRSL 2008
Jun 1st
Hace unos días que la gente de CaFeLUG comenzó con la difusión de las Jornadas Regionales de Software Libre 2008 que se realizan el 20, 21, 22 de agosto en Buenos Aires.
La lista de invitados parece interesante y ya hay varios confirmados, pero más allá de los invitados también esta bueno el ambiente que se genera en estos eventos, incluido el viaje y las salidas post-evento
Espero poder ir, aunque para esas fechas se me puede complicar, además cae entre semana Ouch!. Veremos que pasa.
Más info sobre las JRSL acá.
Usando nautilus-scripts
May 28th
Me sucedió varias veces que necesito enviar por mail alguna foto que estoy viendo con Nautilus, y la mayoría de las veces son fotos de 2560×1920 píxeles, y es un perno tener que estar cambiandoles el tamaño, sobre todo si son muchas fotos.
Así que arme este script pedorro para Nautilus, con el que selecciono los archivos desde Nautilus, me los convierte y me los copia al desktop.
#!/bin/bash
TO="$HOME/Escritorio"
echo "$NAUTILUS_SCRIPT_SELECTED_FILE_PATHS" | while read FILE ; do
if [ -n "$FILE" ]; then
if [ `file -b "$FILE" | cut -b -4` = "JPEG" ]; then
FILENAME=`basename "$FILE"`
if [ ! -f "$TO/$FILENAME" ]; then
convert -resize 800x600 "$FILE" "$TO/$FILENAME"
fi
fi
fi
done
Hay que grabarlo, por ejemplo, como Img2Desktop, darle permisos de ejecución y copiarlo en .gnome2/nautilus-scripts/ para usarlo hay que seleccionar una o varias imágenes desde Nautilus, click derecho y dentro del menú scripts seleccionar Img2Desktop.
Hay que tener en cuenta que para la conversión de las imágenes usa convert incluido en el paquete imagemagick.
También se le puede agregar con Zenity una barra de progreso durante la conversión o que después de que termine avise en el área de notificación de Gnome, pero eso quedará para un futuro muuuy lejano.
Cruzando el charco!
May 24th
Así es, hace unos días me confirmaron el vuelo a Francia! Así que buenísimo! voy a andar por allá en julio. Aunque todavía no tenemos bien definido el itinerario, hay un par de ciudades por las que andaremos seguro, Paris, Normandie, Strasbourg, Lyon y Grenoble. Y el resto del tiempo a donde pinte, ahí veremos.
Le compte à rebours a commencé… à plus tard!
Un reality con geeks!
May 20th
Quizás algunos ya lo conozcan, yo gracias a joemac me entero del reality show Beauty and the Geek. Es estúpido como todo reality pero es muy gracioso ver a estos super freakis interactuando con minitas super huecas que en su vida escucharon la palabra geek.
Y como extra dejo otro video, de un reality de geeks noruego que por lejos es el mejor! Una minita que tiene que cambiar el procesador de una máquina! El episodio se llama The Princess and Professor, The CPU switch.
Hi! this is my personal web site and weblog about my projects, news related to free and open source software, internet and sometimes about real life ;)