Archive

Archive for the ‘Uncategorized’ Category

Volumen de alertas de Skype en Ubuntu

Si tiene el mismo problema que yo con el audio de Skype que no se escucha bajo Ubuntu, la respuesta está aquí: http://ubuntuforums.org/showthread.php?p=12440872#post12440872

El problema es que Skype usa Pulse Audio por defecto y que este no se configura por el gestor de volumen normal de Ubuntu. En realidad, si pone su audio a lo máximo, escuchará que sí suena, pero muy muy *muy* bajo.

Para arreglar, basta con instalar un gestor de volumen de Pulse Audio y cambiar el volumen:

sudo apt-get install pavucontrol

pavucontrol

y ahí verá que la prima barra deslizable de volumen se llama “Sonidos del sistema”. Póngala a 100%. Ya está, ahora Skype suena normal (puede probarlo llendo en las opciones de Skype > Alertas > Reproducir el audio de “Llamada entrante”, por ejemplo).

Bueno, queda claro que no debería usar skype en un primer lugar porque no es software libre, pero si tiene que comunicarse con alguien lejos que no tiene un buen teléfono IP con su central para mejorar software libre… queda siendo una alternativa interesante.

Advertisements

Ref: Minimum RSA public key lengths

September 18, 2012 Leave a comment

Just a reference to an interesting article on SSL and guidelines for the length of public keys in RSA before and after December 2013:

http://news.netcraft.com/archives/2012/09/10/minimum-rsa-public-key-lengths-guidelines-or-rules.html

Categories: English, Uncategorized Tags: ,

Munin 2.0 on Debian

June 25, 2012 3 comments

Munin 2.0 has been released and packaged for Debian, and even backported to Squeeze (from backports.debian.org).

Even though there are still some quirks in this version (or just the Debian packaging), it is far better (more scalable, more powerful and prettier) than version 1.4.

Basically, the following article should cover it all: http://munin-monitoring.org/wiki/CgiHowto2, but doesn’t quite achieve it, so far.

Let’s see together how to install it successfully on Debian Squeeze. I will however not cover the agent (Munin Node), as there is no significant difference between basic installation of its 1.4 and 2.0 versions.

As a first significant performance improvement, Munin is now able to use RRDcached (it fairly reduces the disk I/O pressure on RRD files), and it is fairly easy to setup. Just install package rrdcached (who would have guessed?), then add the following options to OPTS in /etc/default/rrdcached:

OPTS="-s munin -l unix:/var/run/rrdcached.sock -b /var/lib/munin/ -B -j /var/lib/munin/journal/ -F"

This will override its defaults. And of course, restart then the daemon.

Adapt /etc/munin/apache.conf to your likings, in this case, we are going to uncomment all cgi and fastcgi-related blocks.

Install packages libapache2-mod-fcgid and spawn-fcgi, then download the following script and install it as an initscript on your system (e.g. as /etc/init.d/spaw-fcgi-munin-graph and running insserv):

http://files.julienschmidt.com/public/cfg/munin/spawn-fcgi-munin-graph (though this version is still buggy and quite fragile, contact me for a slightly improved version)

apt-get install libapache2-mod-fcgid spawn-fcgi

Add user munin and www-data to group adm, and allow group adm to write to /var/log/munin/munin*-cgi-*.log:

adduser munin adm
adduser www-data adm
chmod g+w /var/log/munin/munin*-cgi-*.log

Add user www-data to group munin and the opposite:

adduser www-data munin; adduser munin www-data

Start the spawn-fcgi-munin-graph service and check it is indeed running.

Enable the fcgid and rewrite Apache modules and restart the Apache2 service.

Customize /etc/munin/munin.conf to your likings, enabling the (Fast)CGI parts.

Whenever monitoring more than a single host, I recommend moving (i.e. commenting and copying) the localhost definition to some new /etc/munin/munin-conf.d/ file per domain (e.g. beeznest.conf), and add your hosts there, with a meaningful domain name.

HOWTO Use gThumb to rename pictures in Ubuntu 10.10 (Maverick)

March 22, 2011 1 comment

I’m used to gThumb to rename lots of pictures from camera’s filename to something including the date, hour taken and a sequence number, like this one: 2011-02-27–16.24.51_007.JPG.

Basically, simply select pictures you want to rename and press F2 (or Edit->Rename).

Previous to version 2.11, gThumb was using a vastly simpler syntax expression for renaming (they name it Template in the Rename dialog). With 2.11 and up, to get the same, I now have to use the following expression:

%D{%Y-%m-%d–%H.%M.%S}_###%E

Please also note that when changing the Rename dialog, they also made it far slower for fair number of pictures (it might take minutes before the Rename dialog appears). For those who know me, I reported the bug in Launchpad as Pictures renaming slower.

Categories: English, Uncategorized

Vacantes abiertas para diseñadores y desarrolladores php

February 13, 2011 Leave a comment

Empresa que toma a cargo proyectos importantes de elaboración de aplicaciones web empresariales (Bajo Drupal) y educativos (Bajo Chamilo) , necesita: “Integrador CSS3 y HTML4/5 con mucha energía para integrarse en equipo” y “Desarrollador  PHP5

Detalle:

1. “Integrador CSS3 y HTML4/5 con mucha energía para integrarse en equipo”

Requisitos:

  • experiencia mínima de 2 años (NO PRACTICANTES)
  • conocimiento avanzado de CSS2 y CSS3
  • conocimiento avanzado de comportamientos de navegadores IE6,7,8,9,Chrome y Firefox 3
  • conocimiento avanzado (detallista) de HTML4, XHTML y conocimiento básico e interés en HTML5
  • experiencia previa de maquetación Drupal es un bonus importante
  • el uso eficiente de herramientas de trabajo de software libre como GIMP, Inkscape es un plus pero no es necesario (menor importancia: Blender, Cinelerra, Kdenlive). La voluntad de aprender con estas herramientas es necesaria.

Tiempo de empleo y salario a tratar en la entrevista. Modalidad flexible (A distancia o Presencial). Enviar CV por correo electrónico en formato .pdf (SOBRETODO adjuntar enlaces de diseños web o proyectos realizados anteriormente).  Interesados enviar CV en formato .pdf al E-mail : mmosquera@beeznest.com

2. Desarrollador  PHP5 para trabajar sobre proyectos de software libre (Drupal / Chamilo).

Perfil profesional:

  • EXPERIENCIA MÍNIMA de 3 AÑOS de trabajo en desarrollo PHP5, programación OO, manipulación de bases de datos MySQL
  • Conocimiento avanzado de inglés, herramientas de desarrollo web no-gráficas (clientes FTP/SFTP, SSH, Eclipse, CVS/SVN, …), Linux.

Tiempo de empleo y salario a tratar en la entrevista. Modalidad flexible (A distancia o Presencial). Enviar CV por correo electrónico en formato .pdf (SOBRETODO adjuntar de proyectos realizados anteriormente).  Interesados enviar CV en formato .pdf al E-mail : mmosquera@beeznest.com

Categories: Spanish, Uncategorized

Leer imagen desde un campo OLE Object de Access con PHP

December 16, 2010 4 comments

Parece una tarea sencilla. Es tan fácil como hacer un query y tomar el dato, pero las cosas siempre se complican cuando se trabaja con formatos cerrados.

La pruebas que he realizado han sido con un archivo Access 2007 con una tabla y un campo del tipo “OLE Object”. Luego agregamos una imagen de prueba de la siguiente manera:

Click en Insert Object

Seleccionamos un archivo y hacemos click en Ok

Con esto ya tenemos nuestra BD access lista para ser consultada.

Ahora, para conectarnos a la  BD Access con PHP usamos AdoDb usand DSN-less de la siguiente manera:

require ‘adodb.inc.php’;

$db =&ADONewConnection(“access”);

$path = ‘/tmp/mydb.mdb’;

$dsn=”Driver={Microsoft Access Driver {*.mdb}};Dbq=$path”;

$db->connect($dsn);

if ($db)  {

$sql = “SELECT image from table”;

$result = $db->Execute($sql);

while (!$rs->EOF) {

$image_data = $rs->fields[0];

}

}

El valor de $image_data contiene el OLE Package que a su vez contiene la imagen agregada, pero el problema aquí es de leer este formato OLE package. Buscando en google encontré algunas  fuentes que dicen poder hacerlo, pero usando aspx, aunque no lo he probado, pues no quiero comprar una licencia de Visual Studio de $800, al parecer hay que buscar dentro del OLE Package unos bytes que definen un archivo de imagen en este caso buscaría los siguientes strings dependiendo el formato del archivo…

 

const string BITMAP_ID_BLOCK = “BM”;
const string JPG_ID_BLOCK = “\u00FF\u00D8\u00FF”;
const string PNG_ID_BLOCK = “\u0089PNG\r\n\u001a\n”;

const string GIF_ID_BLOCK = “GIF8”;
const string TIFF_ID_BLOCK = “II*\u0000”;

 

Pero para leer este stream según esta fuente hay que convertir esta data en utf7 y luego buscar el id de JPG. Como todo esto parece raro lo que hice fue ver el código hex de algunos archivos jpeg usando un programa llamado ghex  (sudo apt-get install ghex). Al abrir diferentes imágenes veremos que se repite estos famosos bytes FFD8FFE0

 

Ahora que tenemos la “llave” solamente tenemos que convertir $image_data a hex usando la función pack y luego hacer lo inverso con unpack:

 

$result     = unpack(‘H*’,$image_data);

$image_to_hex = $result[1];

$jpg_id = ‘ffd8ffe0’;

$pos = strrpos($image_to_hex, $jpg_id);

if ($pos === false) {

echo ‘No es posible generar archivo’;}

else {

$image_to_hex = substr($image_to_hex, $pos,strlen($image_to_hex));

header(‘Content-Type: image/jpeg’);

echo $result_image = (pack(‘H*’,$image_to_hex));

}

Podemos guardar el resultado de $result_image en un archivo usando file_put_contents y eso es todo!

Evolución de la 1.8.6 a la 1.8.7

Hola, soy Carlos Vargas, contribuidor de Chamilo y miembro activo de la comunidad en latinoamérica.

Me he animado a escribir este artículo en respuesta a las dudas de algunos usuarios que aun no saben si les conviene migrar sus plataformas a Chamilo. Pues bien, antes quiero contarles lo siguiente:  El equipo de desarrolladores de latinoamérica empezó a trabajar desde la versión 1.8.5 y dejamos Dokeos en la 1.8.6.1, como sabrán Chamilo empezó en la 1.8.6.2 siendo un fork de Dokeos. Al estar próximos al lanzamiento de la 1.8.7, se puede hacer una comparación entre las versiones. Nosotros mejor que nadie, conocemos las diferencias, mejoras, ventajas y novedades que existen entre ambas plataformas y sus respectivas versiones, pues somos los autores del código y tenemos la mayor participación en las contribuciones.

A continuación menciono, las nuevas herramientas y la versión en la que aparecen.

Dokeos 1.8.6  Svalvard – Chamilo 1.8.6.2  – Salto

Nuevas herramientas: Glosario, Notas personales, Evaluaciones, Red social, Mensajes, Sesiones, sub-idiomas.

Restructuración de: Red social.

Nuevas funcionalidades: Interacción del glosario con documentos, ejercicios y lecciones, promediar los puntajes obtenidos en los ejercicios, tareas, lecciones y foros en la herramienta de evaluaciones

Chamilo 1.8.7

Nuevas herramientas: Asistencias, Avance temático, Panel de control.

Restructuración de:  Evaluaciones, Sesiones.

Nuevas funcionalidades: Contador de tiempo en los ejercicios, gestión de la herramienta de tareas, prerrequisitos entre lecciones, gestión de zonas horarias, asignacion de cursos, sesiones y alumnos al director de recursos humanos, administrador de sesiones y al adminstrador de la plataforma para seguir los informes en el panel de control.

En realidad para el adminstrador de la plataforma, Chamilo puede ser muy amplio y quisas es necesario buscar instrucción por expertos para conocer las novedades y funcionalidades que ofrece en esta última versión que yo considero la mas completa y útil para llevar acabo una educación virtual de calidad y reforsar la eduación precencial de la mejor manera.

A continuación voy a explicar brevemente, algunas de las nuevas funcionalidades que ofrece Chamilo 1.8.7, de las cuales cabe resaltar la contribución de la Universidad Tecnológica del Perú UTP, por haber propuesto y financiado el desarrollo de estas nuevas funcionalidades, además de ser la primera universidad en el mundo en contar con la versión de Chamilo 1.8.7  Pro.

Asistencias

Una labor cotidiana en las escuelas y universidades es tomar asistencia a los alumnos, pues el profesor debe informar a la oficina de asuntos académicos quienes han asistido a su clase y asi reportar las faltas, pues bien esto en realidad requiere de un papel impreso con todos los nombres de todos los alumnos y las fechas que habra clase, y cuidar bien ese papel durante todo el periodo. Ahora, ¿Qué tal si todo esto esta en el software?. Es muy fácil y divertido, lo explico a continuación. Como en la herramienta de usuarios tengo a todos mis alumnos, solo debo crear un lista de asistencia, puedo crear varias, por ejemplo asistencias a teoría, prácticas, laboratorios, etc. A cada lista de asistencia le debo agregar fechas y horas, que serán los días que haya clases, deacuerdo al porcentaje de asitencias de cada alumno, se obtendrá un puntaje, y este mismo puede ser incluido en la herramienta de evaluaciones y promediarla con las demás calificaciones y asignarle su respectiva ponderación.

Panel de control

Ahora bien, en Chamilo, se ha perfeccionado un rol que no era muy utilizado antes, me refiero al Responsable de Recursos Humanos, antes a cada alumno se le podía asignar uno, este usuario, tenia su propia cuenta y password, y tenia acceso a los informes de los usuarios a los cuales había sido asignado. Pues bien, en esta versión la asignación es al revés a un Responsable de Recursos Humanos se le asignan varios usuarios, o solo uno, hago esta aclaración, pues si lo vemos de otra forma, al asignarle solo uno, este responsable puede ser el padre de familia del alumno, y podría acceder a los informes para revisar la participación de su hijo en la plataforma, sin embargo, en esta versión se ha creado una herramienta mas, el DashBoard o panel de control, al cual se le da acceso a un informe rapido, no solo de lo que vemos en informes, sino tambien en las evaluaciones y en las “Asistencias”, es decir ahora gracias a Chamilo, el padre de familia podrá saber si su hijo está asistiendo a la escuela y podrá ver sus calificaciones, esta, ya es una gran ayuda para el control de los estudiantes, ahora abriéndonos uno poco más, a este Responsable de Recursos Humanos, podremos asignarle curos, sesiones y alumnos, para cumplir el caso de un director de carrea o de escuela, el cual podrá acceder a los informes no solo de los alumnos, sino tambien de los cursos, y revisar los avances de temáticos (que es otra nueva herramienta), revisar la frecuencia con la cual los profesores entran al campus, y otras cosas mas. A este simple rol le hemos dado mas responsabilidades para ayudar en la auditoría de la eduación virtual desde esta nueva herramienta del Panel de control.

Avance temático

Esta herramienta surgió por una cualidad muy particular de la UTP y del instituto IDAT, que es la controlar y saber que están haciendo los profesores en sus clases, esta herramienta es muy amplia, pero a la vez muy concisa, tiene similtud con la herrmamienta de descripción del curso, pues se vale de algunos elementos similares, para decribir completamente el contenido del curso, aqui se plasmará todo el sylabus registrando las secciones, planes y avances temáticos, asi en esta clasificiación. Un avance temático es un registro de lo que se hizo en la clase un día en particular o de lo que se hará en la siguiente, se puede valer de la herramienta de asistencias, para seleccionar un fecha y particular, y decir en tal fecha se realizó dicho avance, de esta manera interactúan ambas herramientas, pero a la vez el ya mecionado Responsable de Recursos Humanos, si le esta permitido, puede acceder al avance temático del curso, para ver en que actividad capítulo o secuencia del curso se encuentra actualmente.

Estas tres herramientas son la novedad principal de la 1.8.7, sin embargo hay muchas cosas que han sido añadidas para beneficio de los usuarios, algo muy importante es la gestión de las zonas horarias, esta funcionalidad fue implementada por Guillaume Viguier-Just, de nacionalidad francesa, quién trabaja para BeezNest desde este año, y a quien gracias, hemos aprendido muchas cosas, por su gran experiencia como desarrollador en software libre. Pues bién la gestión de zonas horarias soluciona un problema muy grave que exisitía antes, sobre todo en el campus libre, pues éste se encontraba físicamente en un servidor en algún lugar del mundo, y los usuarios están en distintos países, cada uno con su hora. Entonces si yo creaba un ejericio o tarea y le ponía fechas límites, estas obedecerían a la fecha del servidor, lo cual no cumplía con la hora del país del usuario en la GMT. Eso ya no es un problema pues ahora, el sistema puede escoger una zona horaria base, y cada usuario en su perfil puede escoger la zona horaria a la que pertenece, asi al crear un ejercicio o tarea con fecha límite, esta respetará la hora del país al cual el usuario pertenece.

Por esta misma razón fue que el contador de tiempo en los ejercicios, no funcionó bién en la versión 1.8.6.2, ya con esta configuracíon en la 1.8.7 funcionará sin problemas.

Agradeceré sus comentarios sobre este artículo, y les recomiendo usar Chamilo, la mejor plataforma de e-learning y colaboración.

%d bloggers like this: