Quien les escribe:

Mi nombre es César Ballardini y soy un programador con alma inquieta..

Mira el perfil de César Ballardini en LinkedIn
del.icio.us del.icio.us
twitter twitter

Donaciones

Haga su donación:

USD $

Búsquedas



Blogroll

Sitios de interés:

wifi en Linux

By cesar | Agosto 14, 2008

Como todo administrador de sistemas GNU/Linux, habrás sentido el miedo al instalar una placa de Wi-Fi. Como decían las famosas palabras de Yoda:

«Fear is the path to the dark side… fear leads to anger… anger leads to hate.. hate leads to suffering.»

Antes que el miedo se transforme en cólera, cuesta abajo hacia el Lado Oscuro, es mejor prevenirlo buscando en la base de datos de placas y dispositivos Wi-Fi soportados en Linux. Busca en Linux wireless LAN support que puedes encontrar en http://linux-wless.passys.nl/ y no te olvides: cuando todo falle, use the Source, Luke!

Temas: Uncategorized | No hay comentarios »

posters Wi-Fi

By cesar | Agosto 13, 2008

Hoy me ha tocado lidiar con una tarjeta Wi-Fi y sus drivers. Mientras buscaba información útil, me encontré con http://www.xirrus.com/ y el Xirrus Wi-Fi Monitor que permite vigilar el estado de la conexión inalámbrica desde una aplicación en el escritorio.

Paseando por el sitio de Xirrus encontré una oferta de posters Wi-Fi y podcasts para quien desee registrar sus datos de filiación. Como soy un tanto alérgico a dejar mis datos en cualquier lado, busqué en Google «wifi poster xirrus» y como en muchas grandes empresas sucede, es posible que los desarrolladores de la web de Xirrus sean un poquitín descuidados, porque dos enlaces aparecen interesantes:

http://xirrus.gcsmarket.com/posters/pdfs.asp que tiene una serie de archivos PDF del «Wi-Fi Reference Poster Program» y

http://xirrus.gcsmarket.com/posters/processed.asp donde pueden bajarse los posters en tres formatos diferentes y además hay guías en PDF y podcasts en MP3

Los formatos de los posters son:

El nombre del archivo processed.asp que aparece al final de uno de los URLs es muy sugestivo de un procesamiento de sesión que no se está realizando. ¡Gracias desarrolladores de gcsmarket! :)

Temas: Uncategorized | No hay comentarios »

Xerox Phaser 8400: tinta sólida

By cesar | Agosto 6, 2008

En el trabajo matutino la gente de Xerox trajo una impresora Xerox Phaser 8400 para que probemos, en modo demo.

Los sistemas GNU/Linux que tengo instalados allí usan CUPS para gestionar la impresión, y esta impresora no está soportada aún en forma nativa, pero el fabricante tiene los drivers para descargar en http://www.xerox.com.ar/.

La página de la impresora de marras es http://www.office.xerox.com/printers/color-printers/phaser-8400/esar.html. Anda muy bonita, la impresión es extremadamente rápida: una vez compuesta la hoja, sale en una exhalación.
La página del fabricante informa que no se comercializa más como equipo nuevo, con lo cual dudo de la utilidad de la demo de este modelo en particular, pero estoy muy satisfecho con el sistema de tinta sólida en general.

Para instalarlo en CUPS lo que debes hacer es descargar el archivo LinuxCupsPrinterPkg.tar.gz de la página de Soporte y Drivers, donde podremos buscar dos cosas: en Controladores y descargas por un lado y Documentación por otro. Ingresando por modelo (Phaser 8400 en nuestro caso) y por idioma (no hay castellano, usen inglés) podemos obtener el mencionado .tar.gz y el pdf del manual de la impresora que sí está en castellano.

Descomprime los controladores y en Debian copialos en un directorio /usr/share/ppd/Xerox creado al efecto. Ahora cuando nos conectamos a la interfaz web de administración de CUPS, tendremos la opción de elegir dentro de la impresoras Xerox a la 8400N (sin doble faz) y la 8400DN (con doble faz).

Misión cumplida.

Ahora no dejes de pasar por http://www.thinkgeek.com/ y te imprimes unos cuantos de los posters desmotivadores :)

Nos leemos…

Temas: Uncategorized | No hay comentarios »

Un curso gratuito de Ruby en línea

By cesar | Julio 12, 2008

Hace ya unos años que soy fanático de Ruby. En 2001 me topé con este lenguaje y me llamó la atención positivamente. Todo es un objeto. Capacidad de reflexión y metaprogramación. Casi como un Smalltalk pero con una sintaxis más prosaica. En esos momentos, estaba trabajando como administrador de sistemas freelance y un nuevo lenguaje no era algo que estaba necesitando precisamente, así que quedó para revisar más tarde. Cuando aparece Ruby on Rails en el panorama tengo la excusa perfecta para aprender Ruby :-).

Ya ha pasado un tiempo, he leido un par de libros, posts de blogs, he escrito unos cuantos programas cortos en Ruby, y es hora aprender cómo organizar un curso de Ruby. Es posible que en semanas esté dictando un curso de Ruby así que me anoté en el «Free Online Ruby Programming Course» de Satish Talim, que puedes consultar en http://rubylearning.org/class/.

Si quieres aprender Ruby, este curso en línea puede ser la solución a tu problema.

El temario del curso está en http://rubylearning.org/class/mod/resource/view.php?id=474, aunque debes estar registrado para ingresar alli :).

Temas: lenguajes, programación, ruby | No hay comentarios »

Me uní a twitter

By cesar | Julio 12, 2008

Twitter es un servicio para mantenerse conectado con familia, amigos y compañeros de trabajo. Sirve para responder la pregunta de todos los tiempos: ¿en qué andás? ¿qué estás haciendo?.

Ahora pueden saber en qué ando si ingresan a http://twitter.com/CesarBallardini

El plugin TwitterFox parece una buena alternativa para mantenerse actualizado  sobre el estado de quienes sigo y para actualizar mi estado.  Puedes descargarlo e instalarlo en tu Firefox desde http://www.naan.net/trac/wiki/TwitterFox.

Nos leemos…

Temas: social | No hay comentarios »

mapchan: acentos en terminales sin acentos

By cesar | Junio 29, 2008

En el Text-Terminal-HOWTO (http://tldp.org/HOWTO/Text-Terminal-HOWTO-15.html#ss15.10) se nombra un programa para transformar secuencias de caracteres y caracteres a la entrada y salida de terminales alfanuméricas. Basado en la idea de mapchan de los sistemas SCO Unix, aunque funcionando en espacio de usuario, en lugar de espacio de kernel (à-la SCO), Yury Kalinichenko <yuk@iceb.vinnitsa.com>, un veterano desarrollador ucraniano (http://www.iceb.vinnitsa.com/resume-yuk.html) nos ofrece una versión de este programa escrito en C.

Hace unos años encontré la versión 1.5 de ese programa, y la modifiqué para agregarle varias tablas de «dead keys». La versión original solamente permitía una tabla. Una tecla dead es una que no emite carácter hacia la aplicación, sino que espera la siguiente para componerse y generar entonces el carácter buscado. Por ejemplo, si configuramos al apóstrofo «» como una tecla muerta, entonces nos resultará interesante que si la tecla que se oprime a continuación es una «a», lo que la aplicación reciba sea una «á»; de esta manera, usando un teclado inglés podemos generar todas las teclas acentuadas que necesitamos en castellano. De forma análoga procederemos con la comilla doble «» para poner diéresis en las «u» y «U», y con la «~» para conseguir eñes. Con un poco de imaginación, podremos idear mapeos para «¡» y «¿», y otros caracteres que no estén disponibles en nuestra terminal.

La versión 2.0 está disponible en http://www.iceb.vc.ukrtel.net/download.html. Debo reconocer que no le he echado el ojo aún.

Acabo de enviarle un mail a Yury para ponerlo al tanto de mis modificaciones (tal vez le resulten interesantes) pero su dirección de correo al parecer tiene algún inconveniente. Así que en lugar de esperar para que mis cambios se incorporen aguas arriba, los pongo a disposición aquí para quienes puedan resultar útiles.

El sitio de descarga de mi versión modificada es: http://ballardini.com.ar/software/mapchan-1.5-es.tar.bz2

¡Happy ASCIIing!

Referencias SCO

Las referencias aquí suministradas no representan un recomendación para el software SCO, ni mucho menos para la empresa, la cual es conocida por su perversa maniobra para apoderarse del núcleo Linux.

Configuración del mapeo de dispositivos tty:

Cómo crear una tabla ed mapeo:

Tablas de teclas de acentuación/composición:

Temas: c, programación | No hay comentarios »

Radio en el shell

By cesar | Junio 29, 2008

Hoy charlando con un gran amigo, Javier Bértoli (no blog today) me pasó un dato interesante: shell-fm, un programa para escuchar radios desde el shell.

Instalación

En un sistema Debian no puede ser más sencillo:

apt-get install shell-fm

Necesitamos una cuenta de usuario

Crear una cuenta en http://lastfm.es y registrarla en nuestro perfil ~/.shell-fm/shell-fm.rc

username=el_nombre_de_usuario
password=la_contraseña

A escuchar las radios

Para escuchar música clásica instrumental:

shell-fm lastfm://globaltags/classical+instrumental

Los tags se pueden ver en: http://www.lastfm.es/music/+tags/

¡Que lo disfrutes!

Temas: radio | No hay comentarios »

Getting Things Done I

By cesar | Junio 29, 2008

Cosas interesantes

Uno de los inconvenientes de ocuparse de cosas interesantes es que hay demasiadas de ellas. ¿Te ha pasado que tenés en la cabeza un montón de cabos sueltos?

Por ejemplo, tomado de mi caso hace unas semanas: llevar a arreglar el candado, verificar la fecha e entrega de las aberturas para mi casa en construcción, coordinar con el gasista y el inspector para la inspección previa de las cañerías, sacar fotocopias autenticadas de los DNI de mis hijos para la escuela, del mío para un contrato, solicitar un certificado de buena conducta (y no olvidar recogerlo al día siguiente y entregarlo a su destino), preparar un temario de exámen parcial de IA, corregir los trabajos prácticos de IA, migrar los cinco sitios web y correo de un cliente a nuestro servidor, revisar la política e backup de otros cuatro clientes, crear un escritorio GNU/Linux patrón para instalar una docena en otro cliente diferente, jugar más tiempo con mis hijos, analizar y tomar o descartar una oferta de trabajo como docente, actualizar mis conocimientos de qmail, preparar la siguiente clase de un curso de introducción a la administración de sistemas GNU/Linux que estoy dictando, pagar la matrícula de ingeniero y la cuota mensual de la jubilación y al menos una docena de temas adicionales.

Mi preparación técnica no cubre la administración de una centena de cuestiones como estas, todas pululando a lo largo de todo el día en mi mente, interfiriendo con el trabajo actual que estoy tratando de terminar. A cada momento, una vocecita surge en medio de una instalación de un firewall: «acordate de llevar el candado a arreglar» ¡Qué importa el candado en este momento! Pero mi subconciente no tiene idea de prioridades o importancias, solamente sabe que el tema del candado es un cabo suelto, y su deber es recordármelo a la primera de cambio.

Las interrupciones, la procrastinación y el multiplexado de proyectos son la raíz de la ineficiencia y las demoras en las entregas finales.

¿Cómo se puede tener una mente clara y afilada, disponible para la tarea, y disfrutar de un sentido de control sobre nuestras actividades?

Getting Things Done

El gurú de la productividad David Allen escribió un best seller Getting Things Done, que me permitiré la labor de reseñar y comentar cómo funcionó en mi caso. Desde ya te animo a conseguir tu propio ejemplar y ponerlo en práctica. Voy a narrar las explicaciones en primera persona, para enfatizar cómo el método me ha servido.

El método que se presenta se basa en dos objetivos clave:

  1. capturar todas las cosas que se deben hacer (ahora, más tarde, algún día, grandes. pequeñas, todas) en un sistema lógico y confiable fuera de mi cabeza
  2. disciplinarme para tomar decisiones iniciales o frontales, para cada una de las vías de entrada a mi vida, de tal manera de consegiur un plan de «próximas acciones» que se pueda implementar o renegociar en cualquier momento.

Las «cosas que se deben hacer» es toda clase de trabajo en el sentido general del término: laboral, personal, profesional, familiar, todo aspecto de nuestra vida que requiera de acciones de nuestra parte.

Hasta ahora mi forma de organización consistía básicamente en un calendario pequeño donde anotar los compromisos con fecha (cumpleaños, entregas de software o instalaciones, reuniones con clientes, etc.) y varias listas de «cosas» por hacer, agrupadas por tema (tal universidad, tal otra, la empresa, tal cliente, tal curso, etc.). El problema de este enfoque fue que las listas amarilleaban en el papel porque si bien algunas de las tareas eran resueltas, otras seguían formando parte de la lista, a veces por meses. Muchas veces la lista de temas familiares era la que menos se movía hacia adelante. Una situación claramente menos que óptima.

Uno de los problemas que enfrentaba era tomar la decisión de cuál actividad realizar a continuación. No siempre mi nivel de concentración, mi energía, y el tiempo disponible eran los necesarios para hacer lo más importante de mis listas; debía entonces buscar las listas, repasarlas ítem por ítem para ver cuál realizar ahora, una tarea que demandaba pensar para cada cosa, qué es lo que había que hacer.

Por ejemplo: si una cosa era «migrar sitios web de Pedro Picapiedras a nuestro server», en realidad eso no es una tarea; crear el virtual hosting en nuestro server es una tarea, copiar el sitio desde su sede antigua a la nueva es otra tarea, comprobar el funcionamiento, y avisar a Pedro que haga sus pruebas, también. Mis listas estaban compuestas de «cosas», y no de «acciones». En particular esta cosa estuvo un par de meses demorada en mis listas porque no tenía las claves de autenticación para acceder al sitio viejo. Si en lugar de anotar «migrar sitios web de Pedro Picapiedras a nuestro server» hubiera en la lista «Hablar por teléfono a Pedro y pedirle URL, usuario y contraseña para ingresar al sitio viejo», no hubiera perdido tanto tiempo.

Claro, dirás: «¡Pero eso es elemental!». Es cierto, pero con una cincuentena de cosas sueltas, no queda claro cuál es el siguiente paso en cada una de ellas, a menos que lo hagas explícito.

En mi caso, esas tareas de instalación y migración de datos las hago desde mi casa en general en horario nocturno, cuando las distracciones son menores. Tomo la lista de cosas para hacer y veo la migración: ¡perfecto! eso es algo que puedo hacer ahora. Pero me faltan los datos de conexión, así que no puedo avanzar; es de noche y tampoco puedo hablar para pedirlos por teléfono. sigo con otro item de la lista, ya que no puedo completar este.

Este proceso sucede así hasta que un día, en horarios de oficina con un teléfono cerca, recuerdo que debo hablar para conseguir la info de conexión, y además encuentro a Pedro del otro lado del teléfono. Casi un alineamiento de planetas :) No es de extrañar que un ítem como ése esté mucho tiempo en mi lista de «cosas». Lo único que saca un ítem cosificado de mi lista de manera inmediata es un «incendio»: cuando un tema explota, recibe toda la atención hasta que es resuelto, desalojando a los demás de mi atención. La labor de «bombero» es estresante, cargada de efectos emocionales negativos, aún cuando la completemos exitosamente. Las cosas explotan cuando se pasan de sus tiempos de entrega, o cuando desastres previsibles al fin ocurren sin que las medidas de prevención o mitigación hayan sido puestas en su lugar con anterioridad.

La solución es eliminar la «cosificación» de nuestras tareas, mediante la transformación en «acciones», y luego agrupar esas acciones por contexto de realización.

De cosas a acciones

Si está dando vueltas en tu mente, entonces tu mente no está clara. Es necesario capturarlo en un sistema confiable con existencia fuera de la mente. Uno debe tener un tonel donde arrojar cada cosa que se pone en nuestra mente. Además debemos confiar en que nuestro método nos obliga a revisar el tonel y procesarlo, de tal manera que efectivamente no nos preocupemos por el tonel, hasta el momento de procesarlo.

Cuando analizamos el contenido de ese tonel, debemos transformar las cosas en acciones físicas, actividades que podamos realizar y concluir. Una cosa del tonel puede requerir de varias acciones para terminarse, en cuyo caso la denominaremos «proyecto». Las cosas que se pueden transformar en una acción pueden terminarse al llevar a cabo dicha acción. Las cosas que son proyectos tienen una acción que es la «siguiente acción», la única que nos preocupa en este momento (aunque puede haber varias «próxima acción» a realizar en paralelo).

Por último, una vez que determinamos las siguientes acciones, es necesario que implantemos en nuestro sistema de gestión los recordatorios apropiados para realizar esas acciones en el momento adecuado.

Las listas de «cosas» no son malas en sí mismas. La vida nos arroja cosas a la cara para que las resolvamos. El problema es que las cosas no tienen indicación explícita para su resolución. Tomemos «pasar más tiempo con la familia»; ¿cómo puedo determinar si lo estoy haciendo o no? ¿cualquier tiempo? ¿tiempo en casa o de vacaciones?. Las cosas son amorfas. Hace falta pensar cómo pasar de las cosas a la meta concreta y real, por ejemplo: «ir al cine a ver “El príncipe Caspián”», y de allí a «averiguar el horario de la siesta de la película», y «¿cuál es el teléfono del cine?» y «hablar por teléfono para confirmar horario de la película». Hasta que no pasamos de la cosa a la acción específica («hablar por teléfono para confirmar horario de la película») no hemos adelantado en la consecución de nuestra meta.

Solamente podemos realizar acciones cuando las acciones están definidas. El proceso de definición de las acciones obliga a considerar la meta desde una perspectiva práctica, y eso nos pone en contacto con el problema a resolver.

Una vez que tenemos definidas las acciones, solamente hace falta la oportunidad de trabajo para realizarlas. No tenemos que enfrentarnos a una lista de cosas, y ver, en un momento, cuál sería la acción oportuna en cada caso, analizando si el contexto actual me permite realizarla: esto es una sobrecarga mental tan grande que cuando nos enfrentamos a nuestra lista de cosas, es más probable que hagamos cualquier cosa simple, antes de ponernos a evaluar por enésima vez cada cosa a ver si la podemos adelantar.

Las listas de cosas tienen pocas acciones que podemos realizar. Son enormes montañas de indecisión y de indeterminación. Generan estrés. Generan ansiedad por la cantidad de compromisos que tenemos tomados con nosotros mismos y con los demás, y que vemos que no avanzan con el pasar de los días. Generan frustración, y falta de confianza en nuestras propias habilidades de lidiar con nuestro mundo.

Cuando tenemos acciones definidas, la mente se tranquiliza. Hay un sistema que nos recuerda las acciones que podemos y debemos hacer, y no nos molesta con las que hemos decidido abandonar, delegar o demorar en el tiempo. Las decisiones están tomadas, estamos al control de nuestro mundo, hasta donde depende de nuestra voluntad y capacidad. Esto da una disposición relajada para enfrentar la acción inmediata, sin perturbaciones de cabos sueltos que batallan por nuestra atención a cada momento. Una mente tranquila y clara permite realizar con más eficacia y creatividad las acciones que nos hemos propuesto, y se evitan demoras innecesarias y la procrastinación del trabajo.

En otros artículos desarrollaré el método propuesto por GTD.

Temas: gestión, gtd | No hay comentarios »

Scribd: una forma de leer de camino

By cesar | Abril 14, 2008

Scribd dispone de una plataforma cerrada de entrega mediante streammng de contenido de libros. Los usuarios registrados suben libros en diversos formatos (Adobe PDF, diferentes formatos de oficina, etc.) y allí son convertidos a iPaper, el forma cerrado de Scribd.

En la FAQ de Scribd encuentro que no está soportado Wordpress, ya que el mencionado blog mastica de forma tal el javascript que la simple inserción de código HTML en el post no sirve pra empotrar un libro. En http://www.beardygeek.com/ipaper-plugin/ encontré un plugin para resolver el problema, pero cual no sería mi sorpresa: el plugin no me funcionó, y el uso del código de Scribd anda perfectamente. No creas todo lo que está escrito en Internet.

Temas: blog | No hay comentarios »

Instalación de CMS made simple para una congregación (1)

By cesar | Abril 3, 2008

Vivo en la ciudad de Santa Fe de la Vera Cruz, en la República Argentina. Mi barrio es Santa Fe Oeste, y gracias al esfuerzo combinado de mucha gente creyente de antes, y la fe de los nuevas hermanas y hermanos en Cristo, la Iglesia Adventista del Séptimo Día ha inaugurado una nueva congregación aquí.

Si bien nuestro barrio es humilde, las necesidades de comunicación son las mismas que en cualquier otro lugar. Con una ventaja: estamos en la época de computadoras, internet y teléfonos móviles.

Así que en este post compartiré con ustedes mis peripecias al instalar un CMS para la flamante congregación. Lea el resto de esta entrada »

Temas: cms | No hay comentarios »

« Entradas anteriores