pcollaog’s blog
Linux, Java, Música y otras hierbas…
Linux, Java, Música y otras hierbas…
Jan 21st
Si te has vuelto mono haciendo clicks cuando trabajas con Eclipse en Ubuntu 9.10 Karmic Koala, aquí les dejo una solución que encontré por ahí:
Deben crear un pequeño script que configura una variable de entorno y luego llama al binario de eclipse, veamos el script eclipse.sh
#!/bin/sh export GDK_NATIVE_WINDOWS=1 cd $HOME/Software/eclipse ./eclipse
El problema (bug) al parecer es en cómo Eclipse a través de SWT hace uso de las librerías de GTK dejando inhabilitado las acciones de los botones y otros componentes como por ejemplo los árboles desplegables con checkbox (ventana de los updates).
Nov 9th
Después de haber navegado por todos lados buscando el por qué PulseAudio genera un ruido molesto (se pedorrea), encontré una explicación y al parecer es que por ahorro de energía el dispositivo de audio lo desconecta provocando un chasquido molesto cada N segundos definidos en la configuración. (se conecta y se desconecta)
Solución: Modificar el archivo donde se configura dicho parámetro:
$ sudo gedit /etc/modprobe.d/alsa-base.conf
Luego buscar la linea que dice mas o menos así:
# Power down HDA controllers after 10 idle seconds options snd-hda-intel power_save=10 power_save_controller=N
Y finalmente hay que modificar el parámetro que dice power_save=10 aumentando el valor o simplemente comentando la linea, quedando de la siguiente forma:
# Power down HDA controllers after 10 idle seconds # options snd-hda-intel power_save=10 power_save_controller=N
Esto funciona bien en mi maquina, un HP530 con tarjeta de sonido intel:
$ lspci Audio device: Intel Corporation 82801G (ICH7 Family) High Definition Audio Controller
Listo… ahora a trabajar!
Nov 8th
Luego de haber realizado el MozCamp Hispano y las Jornadas Regionales de Software Libre 2009 siento que estoy en la “rutina calma” de todos los días. Les dejo algo que quizás no represente ni siquiera un 10% de todo lo que viví en esa semana.
Día Lunes 5 de Octubre:
Todo partió el día Lunes 5 de Octubre, bien temprano en la mañana pase por el Hotel a encontrarme con Sarah Doherty y llevarla al INACAP para dar inicio al MozCamp Hispano.

A medio día tuve que hacer un alto en las actividades del MozCamp para poder ir a buscar a Sang Shing, uno de los charlistas invitados y que tuve el placer de alojarlo en mi casa.
Un FAIL en el camino…. el equipaje de Sang Shing no había llegado a SCL, así que al día siguiente tuvimos que ir nuevamente al aeropuerto por su equipaje.
Día Martes 6 de Octubre:
El día martes inicia muy temprano en la mañana con un viaje al aeropuerto SCL a buscar el equipaje de Sang Shing y de pasada a esperar que llegue Willie Walker, otro de los charlistas invitados.
De vuelta al MozCamp conversando con Sang, Willie y Lecaros se dieron cuenta que ambos trabajan para Sun Microsystem, además trabajan en la misma ciudad y que increíblemente trabajan en el mismo campus… pero!!! nunca se habían visto y mucho menos conocido. Pues bien desde el primer día se hicieron buenos amigos.
Llegue justo a la hora del break en el MozCamp y luego de presentar a los invitados me uní a lo que quedaba de conferencia de Chofmann y Seth. En esa tarde nos tocó presentar el proyecto que esta desarrollando Firefox Chile junto con Rodrigo García mas conocido por estos lados como RodChile. La audiencia quedó bastante interesada y recibimos un gran feedback para mejorar lo que estamos haciendo.
La tarde terminó con un trabajo en equipos dentro del MozCamp para reunir información acerca de como mejorar la comunidad hispana de Mozilla. De esa actividad salio un plan que debemos desarrollar durante todo el 2010 hasta la próxima junta, donde nos tocara hablar de los objetivos planteados y los logros obtenidos.
Una vez terminado el MozCamp… nos quedaba trabajo para las JRSL09 que se iniciarían al día siguiente, pues bien, todos los egipcios se pusieron a trabajar a toda máquina, es más, nuestros invitados también quisieron participar de el trabajo egipcio y fueron nombrados egipcios honoríficos.

Dia Miércoles 7 de Octubre:
Inicia nuevamente el día muy temprano en la mañana, alrededor de las 6.30 AM y rumbo al INACAP para dar inicio a las JRSL09. Llegando a la Universidad nos quedaba mucho trabajo por hacer, preparar las salas, señalética, preparar el área de los stands, empezar a recibir a los charlistas y prepara el área de registro.
Para las 9:00 nos llevamos una grata impresión… el área de registro estaba repleta de gente acreditándose… impresionante! Para las 9:30 damos inicio a las JRSL09 en todas las salas y comienza el más emocionante trabajo que he hecho en el mundo FLOSS.

A las 12:00 se iniciaba el primer KeyNote de las JRSL09 y el turno era de Willie Walker y con un inesperado auditorio repleto de gente. Willie nos vinos a compartir su experiencia con las accesibilidad a la información a través de herramientas libres y mas específicamente del proyecto Gnome Orca el cual lidera.
A eso de las 14:00 después del almuerzo se preparaba el laboratorio de Sang Shing sobre JavaFX el que inició a la hora y repleto. Algunos inconvenientes del laboratorio… el aire acondicionado estaba malo para esa sala y hacia mucho calor, pero el taller estuvo repleto de inicio a fin gracias al carisma de Sang.
Para cerrar el día Seth Bindernagel nos dio una demostración sobre OpenWeb y como Mozilla Firefox implementa muchas de las características de HTML5.
Dia Jueves 8 de Octubre:
Nuevamente muy temprano en la mañana iniciamos el camino hacia el INACAP y la escena se repite, el área de registro repleta de personas que querían disfrutar de esta fiesta.
El día jueves podríamos decir que era el día de la virtualización ya que los dos keynotes de Christoph Hellwig y Marco Sinhoreli, tocaron ese tema y de como es aplicado en la industria.

Dia Viernes 9 de Octubre:
Último dia de JRSL09 y un día donde queríamos tirar toda la carne a la parrilla, se presentarían 2 KeyNotes que teníamos guardadas para el final. La primera era sobre la plataforma Java EE 6.0 the next generation Enterprise Platform y el expositor sería Sang Shing.
El keynote comenzó con la presentación de Sang por parte de RodChile y luego …. se apagaron todas las luces y luego el sonido de “Beat It” de Michael Jackson da la entrada de Sang al auditorio disfrazado nada mas ni nada menos que de Marcelo Chino Ríos. Les dejo el video para que lo disfruten. Sang Shing nos demostró que un rockstar de tomo y lomo comparte con la gente y de forma generosa, siendo el sentido del humor parte del perfil egipcio.
Luego del keynote de Sang nos tomamos la foto del equipo que ayudo a que las JRSL09 fueran todo un éxito, aquí aparece el equipo egipcio, los amigos del otro lado de la cordillera, los invitados al MozCamp y los charlistas internacionales. Una foto para el recuerdo!
En la tarde y para cerrar las JRSL09 Chris Hofmann nos presentaría su keynote acerca de cómo ha evolucionado Firefox en América Latina y las razones del por qué. Fue una charla interactiva donde todo el público presente pudo participar con ejemplos didácticos del cómo Firefox ha ido ganando terreno en nuestra región.
Finalmente el cierre de las JRSL09 con las palabras de agradecimiento y la entrega del símbolo de las JRSL09 para el próximo equipo organizador de parte de @Janitux.

Debo decir que la semana de las JRSL09 y del MozCamp han sido las mas trabajadas, emotivas e increíbles de todo lo que llevo en el mundo FLOSS y con una marca en mi vida. Tuve por suerte, la responsabilidad de alojar en mi humilde casa a dos grandes de las JRSL09, William Walker y Sang Shing. Pude conocerlo desde el lado más humano al más técnico, sin duda alguna dos grandes personajes que no pasaran inadvertidos por quienes los tuvieron cerca y compartieron durante esa grandiosa semana.
Quiero agradecer en primer lugar a mi @guzyy que siempre me entendió y apoyó en esto que parecía un sueño y que de alguna u otra forma pudimos concretar. Luego al equipo egipcio organizador, a @rodchile, @lecaros y @cereal_bars quienes dieron todo para que estas JRSL09 fueran todo un éxito.
Debo mencionar a los dueños de casa INACAP que confiaron en nuestra propuesta y nos ayudaron en toda la organización y logística. También vayan mis agradecimientos a los egipcios revelación de este año, @pottersys, @hyoga2k, @Janitux quienes demostraron que con compromiso se pueden hacer muchas cosas. Un abrazo para los amigos de Argentina quienes se pusieron la camiseta de las JRSL09 y se la juraron para que saliera todo un éxito.
Agradecer también al apoyo de Mozilla Fundation que tambien confiaron en que podiamos estar a la altura de las circunstancias y dejarnos organizar el Primer MozCamp Hispano en nuestro país. Gracias Sarah, Chris, Seth, Pascal, Dan ya los muchachos de América Latina.
En lo personal quiero agradecer también a Excelsys quienes confiaron en nuestro proyecto y apoyaron. Mis agradecimientos a @ferchik y @rrazon por confiar en nosotros.
A todos los que participaron muchas gracias, y si se me olvida alguien…. muchas gracias!!
Nos vemos el próximo año con el OpenCommunity!!!
Aug 20th
Este post lo voy a iniciar con un chiste que siempre se hace cuando se quiere hablar de Scrum (una metodología ágil de desarrollo de software) pero para el caso viene como anillo al dedo.
¿A que viene todo esto? simplemente es una vía de desahogo y de pasadita planteo un tema que da para discutir mucho.
He estado comprometido en la organización de todos los OpenCommunity que hemos realizado, desde hace casi 3 años y la tónica siempre se ha dado, en mayor o menor grado. Me refiero al compromiso de las Comunidades para con sigo mismas y para la comunidad en general.
Dejo aquí los hechos para que saquen sus propias conclusiones:
Vamos ahora con algo que me tiene profundamente decepcionado (quizás los egipcios sientan lo mismo).
Es bien sabido que asumimos el reto (como organizadores del OC) el de organizar las “Jornadas Regionales de Software Libre 2009” que se realizarán aquí en Santiago de Chile. Todo esto corresponde al trabajo serio que hemos realizado durante estos años de OpenCommunity y es de alguna u otra forma, una muestra de confianza a nuestro trabajo. Es por eso el grado enorme de compromiso que uno adquiere cuando eres organizador o de la familia egipcia. Entre nosotros somos super exigentes y quizás hasta medios “cerrados” en el buen sentido de la palabra, es decir, tenemos que aceptar a personas que en realidad se comprometan y no solamente se involucren (nuevamente vea el chiste).
El tiempo de alguna forma nos ha dado la razón, a la organización no se han agregado ni quitado personas, somos los mismos de siempre y con el mismo ánimo, el mismo empuje y siempre con ganas de que aparezca alguien con el grado de compromiso que necesitamos para integrarlo. Y si… tenemos harta pega y para delegar debemos confiar. Las puertas siempre están abiertas. Si quieres criticar hazlo, estas en todo tu derecho, como también deberías tener el deber de comprometerte o involucrarte con alguna solución.
Volviendo ahora sobre la participación de la comunidad local, solo tengo una palabra: PAUPERRIMA
No puede ser posible que en la postulación al CFC sólo hayan llegado 3 o 4 presentaciones de Chilenos contra unos 30 extranjeros, que dicho sea de paso, ellos mismos se financian su viaje y estadía, en cambio algunos que se creen Rockstars piden que los tratemos como dioses (y créanme… son de nuestro propio país). ¿No sera mucho?
Dejo abierta la discusión, hay muchos otros matices que puede que valga la pena tratarlos, pero lo fundamental creo que está.
El consejo… participen!!! de verdad que se aprende mucho y por sobre todas las cosas, sean humildes
Los créditos de la imágen para http://www.implementingscrum.com
UPDATE: Mas de lo mismo aquí
Escuchando: “Chris Cornell – Disappearing Act”
Aug 19th
Jul 26th
![]()
Como todos sabrán, Ubiquity es un complemento para Mozilla Firefox que trata de acercar a la web el lenguaje natural, como por ejemplo, puedes decirle, google wikipedia y ubiquity realizara la búsqueda en Google con la palabra Wikipedia. Además tiene un pequeño recuadro de preview donde mostrara los posibles resultados de búsqueda (ver imagen):
Mas información acerca de Ubiquity en Firefox Chile.

Hoy visitando algunos sitios me encontré con que muchos de ellos publican las URL’s sin que sean un link, es decir, un texto simple al cual no se le puede hacer clic y visitar dicho link.
De ahí partió la necesidad de tener algo a la mano que me permita abrir estos pseudolinks, miré rápidamente ubiquity para ver si tenía un comando para este problema y me fue mal. Entonces me decidí a hacerlo yo mismo
, les dejo el código para que lo enchulen mejoren a su medida o hagan sus contribuciones.
/* * Open URL selected in browser. */ CmdUtils.CreateCommand({ names: ["openurl"], icon: "http://www.mozilla.com/favicon.ico", description: "Abre una pestaña con la url seleccionada", help: "open + selected url", author: { name: "Francisco Collao Garate", email: "pcollaog[at]firefox[dot]cl" }, license: "GPL", homepage: "http://pcollaog.firefox.cl/", arguments: [{role: 'object', nountype: noun_arb_text}], preview: function preview(pblock, args) { var selectedText = args.object.text; if (Utils.isEmpty(selectedText)){ pblock.innerHTML = "Debes seleccionar una URL."; }else{ pblock.innerHTML = "Abrirás la siguiente URL en una nueva" + " pestaña: <strong>" + selectedText + "</strong>"; } }, execute: function execute(args) { var selectedText = args.object.text; // TODO: validar que la URL sea valida if (Utils.isEmpty(selectedText)) { return; } Utils.openUrlInBrowser(selectedText); displayMessage("Se abrirá la siguiente URL: " + selectedText, this); } });
El código se divide en dos grandes partes, la función preview y la función execute, que como sus nombres lo dicen, una muestra una previsualización de la acción y la otra ejecuta la acción.
Analicemos primero la función preview:
Lo primero que hace es obtener desde el argumento la URL seleccionada asignándosela a la variable selectedText y luego valida que ésta variable no este vacía. En ambos casos (vacía o no) se le envia un mensaje al usuario en el cuadro de preview (en el cuadro de dialogo abajo).
Vamos ahora por la función execute:
Hace lo mismo que la función preview al principio, es decir, asigna el valor del argumento a una variable y valida que no este vacía.
Luego viene la parte interesante, toma la URL seleccionada y haciendo uso de la función Utils.openUrlInBrowser() nos permite abrirla en una nueva pestaña. Luego de eso mandamos una notificación al usuario sobre la acción ejecutada, para eso utilizamos la función displayMessage().
Eso seria por ahora, ahora a seguir jugando con Ubiquity. Espero sus comentarios y/o aportes.
Código: OpenURL ubiquity code
Jun 3rd
Para el que entienda… excelente… para el que no… que pregunte ![]()

May 3rd
Si son de los que usan Tomboy para las notitas y eso lo combinan con la sincronización con servidores con ssh, este post es para ti.
Debido a los avances que ha tenido el kernel de linux en estos últimos tiempos, han ido agregando módulos como parte del núcleo de linux, es por eso, que en esta última entrega de Ubuntu Jaunty el módulo FUSE deja de existir como módulo y es parte del núcleo, en otras palabras, ya no hay que hacer más un:
$ sudo modprobe fuse
bueno si lo intentas te saldrá lo siguiente:
$ sudo modprobe fuse FATAL: Module fuse not found.
Resulta que tomboy usa FUSE para sincronizar las notas a través de sshfs con otras máquinas (Secure SHell File System).
¿Ahora donde viene el problema? El problema viene al momento de configurar Tomboy para usar la sincronización con SSH (FUSE), les dejo un pantallazo para que vean donde es.

Si configuras todo eso y te sale lo siguiente, estas en problemas:


Buscando por ahí y por acá, encontré un repositorio en launchpad que resuelve el problema de Tomboy para Ubuntu Jaunty, sólo debes agregar estas líneas a tu /etc/apt/sources.list y actualizar Tomboy.
deb http://ppa.launchpad.net/brywilharris/ppa/ubuntu jaunty main deb-src http://ppa.launchpad.net/brywilharris/ppa/ubuntu jaunty main
Luego actualizas e instalas
$ sudo add-apt-key E4B303886E4F2656 $ sudo apt-get update $ sudo apt-get install tomboy
Luego tendrás tu Tomboy actualizado y sin ese feo bug en la sincronización.
Apr 30th
Desde que me actualicé a Ubuntu Jaunty he tenido algunos problemas con la aceleración de video (tengo una placa intel). Les dejo aquí una solución que encontré luego de buscar por todos lados. Les dejo el detalle de mi placa intel.
Intel Corporation Mobile 945GME Express Integrated Graphics Controller (rev 03)
Primero debemos agregar un par de repositorios desde launchpad .
deb http://ppa.launchpad.net/ubuntu-x-swat/x-updates/ubuntu jaunty main deb-src http://ppa.launchpad.net/ubuntu-x-swat/x-updates/ubuntu jaunty main
Luego agregamos la llave para dicho repositorio (si no sabes que es esto, lee este post Agregar llaves de repositorios apt en Ubuntu)
$ sudo add-apt-key AF1CDFA9 --keyserver keyserver.ubuntu.com
Luego de eso, actualizamos nuestro Ubuntu:
$ sudo apt-get update $ sudo apt-get dist-upgrade
Una vez que tengamos todo instalado, editamos el archivo /etc/X11/xorg.conf con lo siguiente
Section "Device"
Identifier "Configured Video Device"
Driver "intel"
Option "AccelMethod" "UXA"
EndSection
Luego de todo este procedimiento, debemos reiniciar.