Panel de XFCE4 desapareció

September 30, 2011

Un día ingreso a Debian 6.0.2 en mi notebook y me doy con la novedad que el panel desapareció. Googleando llegué al wiki del proyecto XFCE4 y ahí sale en inglés:

Help, my panel/task bar/desktop/window borders has disappeared

Resulta que el panel, la barra de tareas, el escritorio y el administrador de ventanas son procesos independientes.

Entonces para volver a iniciar el panel voy a la consola y ejecuto xfce-panel y ahí aparece de vuelta el panel. Después cuando apague la máquina clickeo en la opción ‘Guardar sesiones para futuros ingresos’, para que aparezca como de costumbre.

Mi primer bug reportado a Debian

August 15, 2011

Si bien hace un par de años que vengo usando Debian, y en una oportunidad quise reportar un bug, no lo pude hacer. Hoy me encuentro con que la computadora del trabajo en la cual instalé Debian Squeeze el viernes, funciona mal la zona horaria. El paquete que a mí entender no funciona es tzdata, ya que la hora para Argentina se encuentra adelantada tres horas, lo reconfiguré al paquete pero siguió con el mismo error. Así que me puse a leer como reportar un bug. Hay que instalar reportbug, pero ya venía instalado. Lo ejecuté y seguí las instrucciones en la cual te pide que escribas tú nombre, el correo al cual desea recibir el número de bug,si posees algún servidor SMTP instalado. Como yo no poseeo ninguno utilicé el de gmail: smtp.gmail.com:587, de ahí te pide el usuario de correo (tunombre@gmail.com). Posteriormente solicita el paquete a reportar y te muestra todos los bugs que han sido reportados recientemente respecto a ese paquete. En caso de no encontrarse, te pide que describas el error. Una vez realizado, te muestra el reporte para editarlo. De ahí se lo envía al reporte mediante el servidor de correo electrónico que hayas configurado. Si el proceso fué realizado exitosamente, te llega un correo a tú casilla con el reporte.

Parámetros y argumentos en programación

August 5, 2011

Y como por ahí se me confunden los términos los dejo como ayudamemoria:
“Las palabras argumento y parámetro son tomadas como sinónimos; en realidad hay diferencia: los parámetros son los establecidos en tiempo de definición y los argumentos en tiempo de ejecución”.

Configurar Vim para Python

January 21, 2011

Siempre que vuelvo a instalar Debian no me acuerdo como configurar de vuelta a Vim para poder escribir código de Python así que ahí va el archivo .vimrc:

syntax on
set tabstop=8
set shiftwidth=4
set expandtab
set softtabstop=4
set autoindent

autocmd BufRead *.py set smartindent cinwords=if,elif,else,for,while,try,except,finally,def,class

Como verificar la integridad de imágenes .iso en gnu/linux

August 23, 2010

Actualizado: 24-1-11

Para verificar una imagen descargada, se puede utilizar también otro comando en GNU/Linux:

sha1sum -c SHA1SUMS debian-507-i386-CD-1.iso

Donde

sha1sum es el comando

la opción -c hace que lea suma de verificación del archivo SHA1SUMS y luego verifique con las imágenes, en este caso debian-507-i386-CD1.iso

Al ejecutar el comando:

user@pc:~/isos$ sha1sum -c SHA1SUMS debian-507-i386-CD-1.iso
debian-507-i386-CD-1.iso: La suma coincide

Actualizado: 23-8-10

Cuando una persona baja una imagen(iso) generalmente de un proyecto libre, en el mismo repositorio se encuentran 2 archivos de texto plano que hacen referencia a SHA(256, o 128) y MD5. Estos nombres se refieren a algoritmos de hash y lo que se encuentra adentro de cada archivo es el fingerprint o huella de cada archivo al que se le ha aplicado el algoritmo(SHA o MD5).

SHA

Para el caso de SHA de 256(que utilizan por ejemplo  en las isos de OpenBSD) utilizamos el siguiente comando:

shasum -a 256 install47.iso | grep ” ac3a7879b31db889d4cd3626b267cd30d115fe305d77c1fc4c538f0ea304c37b”

Donde shasum es el programa para calcular la huella para algoritmos SHA en este caso de 256 bit, install47.iso archivo al que se le aplica el algoritmo y luego utilicé una tubería para redirigir la salida a grep que tiene la huella del archivo(en este caso de una iso). Al aplicarlo si todo sale bien es que efectivamente la integridad del archivo está garantizada por lo que se bajó sin errores para poder grabarlo en cd/dvd.

MD5

Tomando de ejemplo una imagen de FreeBSD, bajamos el archivo CHECKSUM.MD5 que contiene las huellas de todos las imágenes que se encuentran en ese directorio de FreeBSD para la respectiva arquitectura(i386).

md5sum -c CHECKSUM.MD5

md5sum: 8.0-RELEASE-i386-bootonly.iso: No existe el fichero o el directorio
8.0-RELEASE-i386-bootonly.iso: FALLO al abrir o leer
8.0-RELEASE-i386-disc1.iso: La suma coincide
md5sum: 8.0-RELEASE-i386-dvd1.iso: No existe el fichero o el directorio
8.0-RELEASE-i386-dvd1.iso: FALLO al abrir o leer
md5sum: 8.0-RELEASE-i386-livefs.iso: No existe el fichero o el directorio
8.0-RELEASE-i386-livefs.iso: FALLO al abrir o leer
md5sum: 8.0-RELEASE-i386-memstick.img: No existe el fichero o el directorio
8.0-RELEASE-i386-memstick.img: FALLO al abrir o leer
md5sum: WARNING: 4 of 5 listed files could not be read

En este caso yo había descargado la imagen 8.0-RELEASE-i386-disc1.iso y el resultado de la suma coincide.

¿Cómo tener un servidor web simple en 2 líneas? ¿y en una?

May 24, 2010

Viendo una página encontré esto(script en python):

import SimpleHTTPServer
SimpleHTTPServer.test()

Te comparte el directorio actual de trabajo por el puerto 8000, por lo que si entramos con un navegador web veremos el índice con todos los archivos del directorio.

Ahora en una línea:

python -m SimpleHTTPServer

Fuente:

http://www.shell-fu.org/lister.php?id=54

Como convertir archivos de audio .wma a .mp3 en gnu/linux

May 20, 2010

Para poder convertir archivos de sonido con extensión .wma (windows media audio), que es un formato privativo de microsoft en gnu/linux instalamos ffmpeg que es un conjunto de librerías para manipular audio/sonido.
Para instalarlo en Debian Lenny:

apt-get install ffmpeg

Una vez instalado utilizando la línea de comando ejecutamos la siguiente sentencia:

usuario@pc:~$ ffmpeg -i nombre_de_archivo.wma nombre_de_archivo.mp3

Fundamentos sobre porque se debe utilizar software libre en la educación

March 4, 2010

Este fué un ensayo que elaboré hace 3 años(2007) para un concurso. Lo enfoqué para la situación particular de mi país, la Argentina, pero creo que se puede extender el análisis a cualquier país.

La elección del software libre como base para el futuro de la educación pública argentina.

Como estudiante de una carrera relacionada a las tecnologías de la información, no puedo dejar de pensar en el efecto que produce en la sociedad el deterioro de la educación pública. Dada la situación socio-económica actual, la educación estatal carece de suficientes fondos para garantizar la enseñanza adecuada de las tecnologías de la información. Teniendo en cuenta que obviar esta parte de la educación constituye una desventaja significativa respecto otros países, ya que nos encontramos en la era de la revolución digital.Y así como antes no se podía concebir la ausencia de física o matemática en la currícula básica; ahora no puede faltar en la enseñanza del alumno, la utilización de la herramienta más poderosa
diseñada para ayudar al ser humano: la computadora. La utilización de herramientas que se encuentran al alcance de
cualquiera; pero que no son aprovechadas por falta de capacitación o desconocimiento de su existencia constituyen una pérdida importante para el mejoramiento de la educación.

Una computadora se encuentra compuesta por hardware (componentesfísicos) y software (componentes lógicos). El software a su vez se divide en dos tipos: base (sistema operativo como GNU/Linux o Windows Vista) y de aplicación (como Mozilla Firefox o  MS-Office). Existen actualmente dos modelos de desarrollo de software: libre o privativo.

Software Libre es aquel que una vez obtenido garantiza que pueda ser usado, estudiado, copiado, modificado y redistribuido libremente; no significa necesariamente que sea gratuito. Software privativo tiene restricciones en algunas libertades anteriormente mencionadas.

Habiendo utilizado los 2 tipos de software existentes, tanto propietario como libre (entendiendo también por gratuito), quisiera enumerar los puntos por los cuales estoy a favor de la difusión y enseñanza con software libre en las escuelas:

1-      La mayoria del software libre existente es gratuito, en consecuencia no se tiene que realizar una erogación monetaria para su adquisición. Ahorrándose de ésta forma varios miles de pesos para el Estado Argentino, pudiéndose destinar esos fondos al mejoramiento de las escuelas(reparaciones edilicias, compra de equipamiento, mejoras salariales).

2-      El estado actual del software libre permite reemplazar cualquier herramienta propietaria por una libre. Con lo que se garantiza la disponibilidad de todas las herramientas necesarias para la educación del alumno en las tecnologías de la información. Evitando la dependencia por ejemplo en caso de que por X motivo la empresa proveedora de software decida terminar con la producción de un determinado programa o vaya a la quiebra, etc. Con software libre siempre hay una opción que se ajuste a nuestros deseos y requerimientos.
3-       El sofware libre posee toda la documentación necesaria para la comprensión y posterior mejoramiento de las herramientas desarrolladas. Por lo que facilita la absorción del conocimiento por parte del alumno, a partir del entendimiento de cómo lo desarrollaron otras personas. Es como si cuando se comprara un auto, le entregaran
todos los manuales detallados de su construcción y funcionamiento. Y se encuentran en Internet listos para ser descargados en múltiples idiomas.
4-      El software libre favorece al entendimiento entre las personas, fomenta el espíritu de equipo, el modelo colaborativo. Miles de personas alrededor del mundo sin conocerse contribuyen a mejorar los diversos programas, dedicando horas para mejorar el código, la documentación, revisando errores, para beneficio de todos. Este es un punto muy importante, dado el cambio cultural de nuestra sociedad donde subliminalmente se fomenta el individualismo como clave para el éxito por el sobre el bien de todos. Es un ejemplo que se puede comprobar fácilmente y que para algunas personas no es comprensible,
dado que ¿cómo puede ser que tanta gente en el mundo trabaje ad-honorem,  sin recibir nada a cambio?
5-      El software libre se puede distribuir tantas veces como necesitemos o deseemos. No hace falta abonar una licencia adicional, favoreciendo la difusión del conocimiento.

Con esto no quiero decir que no esté a favor de la utilización de software pago, dado que varias escuelas privadas cuentan con los suficientes fondos para pagar las correspondientes licencias de uso, podiendo aprender de los 2 modelos de software existentes. Pero como futuro profesional, cuyo deber es devolver a la sociedad con creces lo que la sociedad nos brindó, cada aporte que puedo realizar para difundir y concientizar a la población; lo realizo para disminuir la brecha digital entre las personas que disponen de los medios suficientes para completar su enseñanza formal y los que carecen de los mismos.

Para ello con un grupo de compañeros de la Universidad Nacional de La Rioja, desde el año 2007 empezamos a organizar los Encuentros Informáticos Estudiantiles. Cuyo objetivo de concepción es el de promover y difundir a la población en general y especialmente a la universitaria, dado el ámbito de su desarrollo, de las tecnologías de la información. Al mostrar sobre las diferentes opciones existentes sobre software a las personas que en un futuro serán los futuros
educadores creo que estamos contribuyendo a la adopción del software libre en la enseñanza. Siendo una tendencia que de a poco va incrementándose en el mundo como por ejemplo sucedió en Rusia; donde un profesor de una escuela pública fué acusado penalmente por tener un sistema operativo instalado sin su correspondiente licencia.Implementando Rusia a partir de ese momento un plan para migrar todaslas computadoras de sus escuelas a GNU/Linux.

Creo que falta en nuestro país un plan a largo plazo, para digitalizar las escuelas públicas, adoptando el uso de software libre. La coordinación entre el gobierno nacional, gobiernos provinciales y municipales es fundamental; ya que varias leyes se han dictado pero en la practica no se implementaron. Se encuentra vigente una campaña a través de Internet llamada “Campaña contra el software privativo en la educación argentina”, promovida por las diferentes organizaciones que utilizan software libre en nuestro país.

Resumiendo, pienso que en nuestro país se encuentran dadas las condiciones para diseñar un plan tendiente a la inclusión del software libre como herramienta para el desarrollo de la educación estatal. Falta un largo camino por recorrer, quizás con muchas trabas, pero juntos promoviendo su adopción se va a poder lograr el objetivo para beneficio de todos.
Bibliografía
Encuentro Informático Riojano www.eielarioja.com.ar

Comunicado de prensa- Distribución GNU/Linux Musix http://www.musix.org.ar/wiki/index.php/Comunicado_de_prensa

Cuánto cuesta mi software privativo-http://www.tuxinga.com.ar/2007/12/20/cuanto-cuesta-mi-software-privativo/

Respuesta de Richard Stallman al Ministerio de Educación http://www.solar.org.ar/spip.php?article148

Entrevista a Javier Castrillo- http://www.mastermagazine.info/articulo/12654.php

Campaña contra el software privativo en argentina. http://www.mastermagazine.info/articulo/12831.php

Sofware Libre versus Software Propietario-http://www.smaldone.com.ar/opinion/docs/slvssp.html

Software Libre en la enseñanza de laInformática-http://www.smaldone.com.ar/opinion/docs/sl_informatica.html

El Estado y el Software http://www.smaldone.com.ar/opinion/docs/el_estado_y_el_software.html

Software y libertad http://www.smaldone.com.ar/opinion/docs/softwareylibertad.html

Educando para la Era de la Información http://www.smaldone.com.ar/opinion/docs/era_informacion.html

Razones para usar software libre en educación http://wiki.gleducar.org.ar/wiki/Razones_para_usar_software_libre_en_educaci%C3%B3n

Tutoriales de Ruby on Rails

January 29, 2010

Empecé a estudiar Ruby y obviamente Ruby on Rails. Les dejo una serie de enlaces a tutoriales que me parecieron muy buenos para aprender:

1- Ruby on Rails on Oracle: A simple tutorial

Tutorial introductorio a RoR de Oracle, y realiza una breve app de comics.

http://www.oracle.com/technology/pub/articles/haefel-oracle-ruby.html

2- Using Ruby on Rails for web development on Mac OS X

Tutorial de Apple sobre un sistema de seguimiento de gastos de acuerdo a cada cuenta y el crédito de la misma. Explica relaciones entre diferentes modelos, aplicación de reglas de negocios; utilización y validación de formularios. Es más completo y largo que el tutorial de oracle.

http://developer.apple.com/tools/rubyonrails.html

3- Absolute moron’s guide to forms in Rails

Tutorial de Softie on rails sobre formularios, dividido en 5 partes, te explica muy detalladamente como funcionan las vistas con los controladores para la generación de formularios. El autor escribió el libro Rails Space.

http://www.softiesonrails.com/search?q=forms+in+rails

4- Rails on Edge

Excelente página sobre RoR. Tiene dos tutoriales una sobre AJAX y otro sobre un foro dividido en 3 partes incluso con autenticación, es bastante completo. Los recomiendo a los dos.

http://railsonedge.blogspot.com/

Instalando JDK de Sun en Debian Lenny 5.0.3

October 15, 2009

Quiero instalar eclipse en mi debian lenny con kde. Para ello ejecute:

apt-get install eclipse

y se instaló todo perfecto. Ahora cuando lo ejecuto se tilda.

Me fijo que versión de java tengo instalada por la línea de comandos:

java -version

gcj (GNU Compiler JAVA)

software libre

que es el compilador GNU para el lenguaje de programación java y me sale la implementación libre, que todavía no está muy pulida.

Así que instalo la jdk de Sun:

apt-get install sun-java6-jdk

que instala varios para paquetes más.

Bien ahora quiero que utilice la jdk debian, para ello utilizo el siguiente comando como root:

dell:/etc/apt# update-alternatives –config java

Hay 3 alternativas que proveen `java’.

Selección     Alternativa
———————————————–
1    /usr/bin/gij-4.3
*+        2    /usr/lib/jvm/java-gcj/jre/bin/java
3    /usr/lib/jvm/java-6-sun/jre/bin/java

Pulse <Intro> para mantener el valor por omisión [*] o pulse un número de selección: 3
Utilizando `/usr/lib/jvm/java-6-sun/jre/bin/java’ para proveer `java’.

Pruebo de vuelta:

dell:/etc/apt# java -version
java version “1.6.0_12”
Java(TM) SE Runtime Environment (build 1.6.0_12-b04)
Java HotSpot(TM) Server VM (build 11.2-b01, mixed mode)

Y ahí está listo.