← Volver a la página principal 'Cómo utilizar Fedora'.

Michel, investigador web y comunicador social

Michel Alexandre Salim, oriundo de Indonesia, hoy en día se encuentra realizando un doctorado en Alemania. Su grupo de investigación está concentrado sobre el software y las herramientas de desarrollo wiki. Michel es otro antiguo usuario de Fedora, y nos comenta sus herramientas de desarrollo preferidas para utilizar en Fedora.

Michel Alexandre Salim

¿De dónde eres?

Soy indonesio, nací en Indonesia, pero he vivido en varios lugares diferentes -- Singapur, Inglaterra, Estados Unidos. En estos momentos estoy haciendo mi doctorado en una universidad de Alemania.

¿Qué es lo que estás estudiando?

Mi grupo de investigación está concentrado sobre herramientas wiki y de desarrollo de software. Estamos trabajando para proporcionar fundamentos de ingeniería más sólidos para ambos aspectos. Esto es, diseñar wikis mejor estructurados y programables, para hacer posible describir el proceso de una organización de desarrollo de software, de manera que pueda reusarse en diferentes contextos. Somos un taller basado en Linux -- por ahora la mayoría usar Debian/Ubuntu y OpenSUSE, pero puedo compartir alegremente que también tenemos una laptop funcionando con Fedora.

¿Cuál es tu apodo de IRC?

Hircus. Hay una historia curiosa detraś. Yo tenía muy poco interés en la astrología, pero resulta que nací bajo el mismo signo tanto en zodíaco grecorromano como chino: Capricornio en el año de la cabra. Y creo que "Capra hircus" es el nombre científico de las cabras. Es algo irónico. Tanto en la astrología como en muchos pasajes del Evangelio se dice que es preferible comportarse como un rebaño de ovejas antes que como cabras -- aunque, yo no soy *tan* rebelde :)

¿Cuándo comenzaste a usar Fedora?

Bueno, en cierta forma, ¡antes de que exista Fedora Extras! La primera vez que descubrí Linux fue en una feria de computadoras en Singapur. En ese entonces ni siquiera tenía mi propia PC, y como estoy hablando de épocas anteriores a los CDs/USBs, el conocimiento que yo tenía de Unix/Linux era completamente teórico. En el 98 ya tenía mi propia computadora, y en un libro venía un CD de Caldera, y ... este problema con la tarjeta de gráficos va a ser un cuento repetido ... tenía una tarjeta Diamond FireGL. El primer Linux que le puse fue un RHEL 5.1 o tal vez 5.2, y por supuesto, las X arrancaban en una definición de 640x480 de 16 colores. Con esta computadora ejecutaba por lo general SuSE Linux y Debian, de modo que al principio ya estaba acostumbrado a varias distribuciones basadas en RPM, además de Debian. Pero bueno, resumiendo, alrededor de la época de Red Hat 7.x yo ya estaba casi siempre allí. En algún momento empecé a realizar backports de algunos paquetes de la rama Fedora Rawhide - Evolution y alguno que otro - fue por ese entonces que Warren Togami iniciaba su Proyecto Fedora, así que conversamos un par de veces acerca de él. Y entonces empezó Fedora Extras, y luego la sección Core/Extras fue eliminada. Curiosamente dejé de utilizar Evolution. Y había dejado de hacerlo desde el momento en que el soporte para IMAP quedó definitivamente inutilizable un par de versiones antes. Sin embargo me gustó el hecho de ser los primeros en ofrecer el concepto de "carpetas virtuales", y ese manera de actuar fue lo que orientó mi forma de trabajar empaquetando en Fedora. Cosas nuevas.

¿Cómo fue que te involucraste en asuntos relacionados con la web y los contenidos sociales?

Tengo esta especie de fascinación con los medios de comunicación electrónicos, y de alguna manera, la mayoría de los primeros conceptos relacionados con un entorno de red provienen de Unix (la Web empezó bajo la forma de NextSTEP, y eso ya era un derivado de Unix-y). En un determinado momento decidí utilizar mayormente Linux, a no ser por algunas causas que no dependen de mí (tengo una partición Windows casi únicamente para actualizar el BIOS), y necesitaba asegurarme que pudiera actualizar normalmente mis entradas de blog, o chatear, etc.. Por suerte hoy en día es una tarea sencilla. Suelo ser anticuado a la hora de utilizar servicios similares a Twitter. Los utilizo o bien directamente desde el sitio, enlazándolos mediante algún otro servicio (por ejemplo, Ping.fm para transmitir a varios microblogs, y HootSuite para recuperar mis blogs y automáticamente reenviarlos a Ping.fm), o bien utilizando herramientas de línea de comando como la excelente bti de Greg KH (un cliente para Twitter e identi.ca que nos permite crear entradas desde un intérprete de comandos Linux denominado bash.)

¿Qué aplicaciones de chat y de mensajería instantánea recomiendas en Fedora?

Para mensajería instantánea, recomiendo una aplicación denominada Pidgin. Existen varios complementos muy interesantes para utilizar con él:

  • OTR (por las iniciales en inglés de Off the Record) que ofrece un método de cifrado punto a punto muy sencillo de utilizar. Yo lo utilizo con mi hermana, que es una usuario de Mac.
  • El modo psíquico, que es verdaderamente asombroso. En algunas redes de conversación, uno recibe una notificación en el momento exacto en que alguien empieza a escribirle un mensaje. La mayoría de las aplicaciones de chateo no aprovechan este recurso, mientras que Pidgin sí. de modo que uno puede sorprender a la otra persona enviándole rápidamente un "¿si?" mientras aún se encuentra escribiendo :) (Adium, un cliente muy conocido de Mac está basado en el motor de Pidgin --libpurple, de modo que también es agradable que exista soporte multiplataforma para él).
  • Existe un complemento musical que actualiza tu estado con la melodía que estés reproduciendo con Rhythmbox. Vagalume, la herramienta de código abierto para Last.fm, también puede configurarse para esto.

El cliente para IRC de Pidgin también es muy interesante.

¿Qué software recomiendas para trabajar con blogs en Fedora?

Para escribir blogs, yo utilizo Drivel - que tiene soporte para LiveJournal, WordPress y otros sistemas - aunque lamentablemente hoy en día ya no es mantenido en la rama desarrollo. Aunque ScribeFire, basado en Firefox, funciona muy bien, y ahora funciona también en Chrome. Ofrece soporte para casi cualquier plataforma de blogs que se nos ocurra.

Para quienes recién empiezan con Linux o con el software libre, y que además estén permanentemente utilizando aplicaciones relacionadas con redes sociales como Facebook, Twitter, MySpace, ¿consideras que tendrán algún tipo de inconvenientes ejecutando estas aplicaciones en Fedora? o ¿simplemente funcionarán?

Los usuarios de Linux pueden mantener videoconferencias entre ellos (ya sea utilizando los sistemas de escritorio, o los sistemas móbiles como por ejemplo los basados en Maemo de la serie N de los teléfonos Nokia). Pero la interacción entre usuarios que utilicen diferentes plataformas Windows/Mac/Google Talk es algo problemática. Pidgin solía caerse cuando un usuario de GTalk iniciaba una video llamada en plataformas Linux de 32 bits, pero esto ya fue solucionado. En un sistema Fedora de 64 bits, las instrucciones para poder hacer funcionar el plugin de Flash son, lamentablemente, un poco complicadas. Hemos documentado el proceso bastante bien - y creo que Firefox redirecciona a los usuarios al sitio de Adobe donde poder descargar el complemento, pero lamentablemente el proceso no es tan automático como en Windows o en Mac (el sitio de descarga puede ser bastante críptico si uno no sabe lo que es un archivo RPM o Deb.)

Pero no hay ningún problema en los sitios que no utilizan flash, ¿verdad? ¿Los sitios Web 2.0 / ajax funcionan correctamente?

AJAX funciona perfecto. Recientemente sólo tuve inconvenientes con *una* herramienta de redes sociales que no funcionaba en Linux - el complemento Delicious.com para Firefox. Delicious es un servicio de marcadores de redes sociales. Además, uno puede definir que sus marcadores sean privados, lo que es ideal cuando se está utilizando más de un tipo de navegador, y no se puede confiar en las herramientas de privacidad que ofrece el proveedor. Bueno, una actualización reciente inutilizó el soporte para Linux - uno puede instalar este complemento, pero su lista de complementos estará vacía - ¡y los desarrolladores reconocieron que no verificaron esto en Linux! Versiones anteriores continúan funcionando, y solucionaron este inconveniente en el transcurso de un par de semanas.

Algo buenísimo que tiene Fedora al ser una distribución de vanguardia, es que aún utilizando las versiones estables, uno siempre disfruta de todas nuevas funcionalidades y no mucho después que hayan sido anunciadas. Por ejemplo, Fedora 14 ofrece un nuevo decodificador WebM. Si no me equivoco YouTube está codificando con este todos sus nuevos videos HD, además del H.264.

¿Qué puedes decirnos acerca de los desarrolladores web interesados en utilizar Fedora para sus propósitos? ¿De qué manera un desarrollador web puede beneficiarse utilizando Fedora?

Desde el punto de vista de una plataforma de desarrollo, probablemente Fedora sea una de las mejores alternativas gracias a las tecnologías de virtualización disponibles. Red Hat lidera el desarrollo de KVM, y también se encuentra disponible VirtualBox de Oracle (que a excepción del soporte 3D y USB que ofrece, en su mayoría es de código abierto), aunque solo en las versiones estables. De modo que si quieres realizar todas tus pruebas desde una máquina sola, Fedora es verdaderamente una opción excelente. KVM es la única herramienta de virtualización que conozco que soporta de manera impecable instalaciones de sistemas huéspedes BSD, y Richard W. M. Jones (empleado de Red Hat) se encuentra trabajando en un proyecto muy interesante, guestfish, que nos permite ingresar a las imágenes huéspedes desde el sistema operativo anfitrión.

¿Entonces con guestfish ya no va a ser necesario tener que ejecutar el sistema huésped para poder acceder a sus archivos? ¿Uno puede montarlo directamente como si fuera un sistema de archivos común y corriente?

No es necesario, y creo que incluso puede montar LVM, y permitirnos editar secciones de la imagen de disco, etc.

¿Qué puedes decirnos acerca de las plataformas de desarrollo web disponibles en Fedora? ¿Disponemos de Ruby on Rails, o algo parecido? ¿Qué aplicaciones disponibles hay para los desarrolladores?

Estoy seguro que disponemos de Ruby on Rails, y de las más utilizadas plataformas basadas en Python (TurboGears, Django, etc.).

Para la edición de código, depende: No estoy casado con un sólo editor. Particularmente para el desarrollo de medios sociales, yo diría que el editor de código que debería utilizarse varía de acuerdo al marco de trabajo que se esté utilizando para la plataforma en cuestión. Si es Java, entonces se puede utilizar Eclipse o Netbeans (a los dos los tenemos en nuestros repositorios, pero si quieren utilizar repositorios externos, si bien nuestra versión de Netbeans probablemente sea más fácil de utilizar, recomiendo descargar Eclipse desde eclipse.org en el caso de querer realizar algunas personalizaciones). Para Python recomiendo o bien Eclipse, o bien Netbeans (los dos ofrecen buen soporte), o - lo que yo prefiero - utilizar ipython en la terminal junto con Emacs para editar el código. ipython es un intérprete mejorado para python. Ofrece sintaxis resaltada, auto completado de código, etc. Y no nos olvidemos de gedit. GNOME, nuestro escritorio predeterminado utiliza una biblioteca compartida para resaltar sintaxis, de modo que gedit, Anjuta (un IDE de GNOME) y otras aplicaciones, obtienen soporte para los mismos idiomas. Ofrecemos Vala, un lenguaje de programación con soporte para C#, que es utilizado por algunos de nuestras aplicaciones de escritorio fundamentales (como por ejemplo el editor de fotografías Shotwell, o el cliente de microblogging Pino), y además existe un complemento verdaderamente interesante para gedit que lo transforma en un IDE Vala (con auto completado de código, etc), gracias a los mismos desarrolladores de Shotwell. Su nombre es Valencia y actualmente está siendo revisado, para luego ofrecerse en Fedora 13 o Fedora 14.

Si tuvieras que preparar la mejor estación de trabajo destinada al desarrollo web con Fedora, parecería que uno dispone de varias opciones. ¿Qué es lo que tu elegirías en términos de entornos y frameworks de desarrollo web?

Soy partidario de plataformas como Django. Las únicas donde no tienes que saber realmente acerca de todos los diferentes componentes de que está compuesta -- simplemente deberían *funcionar* en conjunto. Así que diría Djando para Python, y si quieres algo más escalable, Play Framework para Java/Scala es realmente agradable. Ambos te permiten soporte en Google App Engine también, así que tienes hospedaje gratuito para tu aplicación web (App Engine tiene dos backend: el de Python es un Django ligeramente modificado y el de Java básicamente, te permite usar tu propio framework, con algunas limitantes). Lo realmente bello acerca del Play framework es que es el primer framework basado en Java que conozco que funciona exactamente como Python / Ruby on Rails. Tampoco necesitas compilarlo manualmente, y detecta automáticamente tus cambios en el código.

Para IDE, soy fanático de Netbeans y Eclipse. Si eres un desarrollador J2EE, Netbeans funciona con proyectos Ant y Maven - incluso permite editar los archivos de configuración.

¿Funcionarán Netbeans y Eclipse con Django?

Netbeans posee un excelente tipo de soporte para Python, de esto estoy seguro. Por lo general uno inicia Django desde la línea de comandos, y automáticamente detecta si el código se ha modificado o no, de modo que no es necesario reiniciar el servidor de desarrollo.

¿De qué forma recomendarías que los desarrolladores web utilicen Fedora para colaborar?

Para colaborar, depende. El correo electrónico es probablemente todavía la mejor opción. En el trabajo utilizamos Git para el control de versiones, y configuramos un hook posterior al envío, que notifica a los desarrolladores de ese proyecto por correo electrónico. De modo que si existiera algún problema con algún envío determinado, podemos seguir una discusión a partir del envío de código por correo.

¿Hay algo más que te gustaría compartir con los usuarios de Fedora, ya sean actuales o potenciales?

Simplemente una advertencia bien intencionada viniendo de alguien como yo, que tiene un pésimo criterio a la hora de elegir una tarjeta gráfica: tengan cuidado cuando decidan comprarse una nueva laptop :) En lo posible, verifiquen en el comercio, o donde sea que la adquieran, con un CD vivo, o prueben el CD vivo en la laptop de algún amigo, y asegúrense de que el soporte 3D disponible sea el adecuado.

¡Gracias, Michel!

← Lea más entrevistas con usuarios de Fedora