Category Archives: Tecnología

Convertir fichero gnucash a hoja de cálculo (Gnumeric, OpenOffice.org, Excel)

GnuCash es una aplicación que nos permite llevar la contabilidad financiera personal o incluso para pequeños negocios. Quizás el único inconveniente es que para utilizarla correctamente se deben saber algunos conceptos contables básicos, sin embargo aprender a usarlo nos puede permitir gestionar mejor nuestros gastos/ingresos y nuestro patrimonio (por pequeño que este sea ;-)). Personalmente me resulta muy útil.

Mi interés últimamente era en ver si era posible extraer todos los datos que tengo introducidos en GnuCash hacia una hoja de cálculo, y lo he conseguido gracias al documento XLST de XSLFactory que permite transformar el fichero XML de GnuCash a un fichero XML de Gnumeric.

Los pasos han sido los siguientes:
Continue reading Convertir fichero gnucash a hoja de cálculo (Gnumeric, OpenOffice.org, Excel)

Valoración de riesgos tecnológicos

Metodología de evaluación del riesgo para facilitar la asignación de prioridades a los aspectos detectados. Se considerará que un riesgo esta compuesto por la probabilidad de que ocurra y el impacto que este genera (Riesgo = Probabilidad * Impacto).

Artículo relacionado: Detección de riesgos y vulnerabilidades tecnológicas

Basado en la guía de pruebas de OWASP (Open Web Application Security Project).

Continue reading Valoración de riesgos tecnológicos

Jerarquia de programadores / Sentimiento de superioridad

Es absolutamente curioso como los programadores, en función de los lenguajes que conocemos/utilizamos, nos podemos llegar a sentir “superiores” que otros programadores que utilizan lenguajes considerados “inferiores”. Me refiero a los típicos enfrentamientos de si C es mejor que C++, Ruby mejor que Python, etc…

Más curioso es aún que alguien dedique tiempo a diseñar una jerarquía según el lenguaje de programación, para definir que colectivos de programadores se sienten superiores respecto a que otros grupos:
Continue reading Jerarquia de programadores / Sentimiento de superioridad

Editar página web desde Firefox

Me ha llamado mucho la atención un truco (vía DiarioLinux) para editar la página que estamos visualizando con Firefox. Basta con visitar la web que queremos modificar y a continuación substituir la URL por:

javascript:document.body.contentEditable='true'; document.designMode='on'; void 0

A continuación es posible editar la página visualizada, borrar banners por si queremos hacer un screenshot sin publicidad, etc… Lo que no he conseguido es volver a ponerla en modo normal una vez ya editada, ¿podría explotarse este truco para intentar engañar a algún compañero (una especie de pseudophishing)?

Iniciar vmware con Windows XP desde la pantalla de login de Ubuntu

Si no tenemos un ordenador con muchos recursos y queremos utilizar vmware o vmplayer con una imagen de Windows XP para trabajar durante un buen rato (e.g. tenemos acabar unos informes del trabajo en casa y necesitamos Word, Excel, Access y compañia), una buena solución es hacer que se inicie vmware directamente sin cargar GNOME.

Para conseguir esto, crearemos una sesión nueva que podremos elegir desde la pantalla de login (GDM), para ello creamos el fichero “/usr/share/xsessions/windows-xp.desktop”:

[Desktop Entry]
Encoding=UTF-8
Name=Windows-XP
Exec=/usr/local/bin/startwindowsxp.sh
Icon=
Type=Application

Esta sesión ejecutará el fichero “/usr/local/bin/startwindowsxp.sh” que también tendremos que crear con el contenido:

#!/bin/bash
cd /mnt/extra/Windows_XP_Professional/
vmplayer --fullscreen /mnt/extra/Windows_XP_Professional/Windows_XP_Professional.vmx

En este fichero debemos modificar el path donde tenemos guardado nuestra imagen de Windows XP. Finalmente damos permisos de ejecución:

sudo chmod 755 /usr/local/bin/startwindowsxp.sh
sudo chmod 755 /usr/share/xsessions/windows-xp.desktop

Ahora ya podemos salir de nuestra sesión de usuario y desde GDM elegir la sesión “Windows-XP”, si nos pregunta si queremos hacer de esa la sesión predeterminada indicaremos que no, dado que solo la usaremos de forma puntual. Una vez iniciada la máquina, podemos ponerla en modo pantalla completa haciendo click sobre el menu de vmware y pulsando F11.

Dado que no se ha iniciado GNOME ni ningún gestor de ventanas, solo tenemos acceso a la máquina virtual vmware (cuando esta se cierre también se cerrará la sesión y volveremos a la pantalla de login). Como contrapartida, tendremos más RAM disponible para la máquina virtual y por tanto podremos trabajar más cómodamente.

Compartir conexión a Internet con firestarter

Si queremos compartir una conexión a Internet podemos utilizar Firestarter:

sudo aptitude install firestarter

* En otros posts ya he comentado cómo (en caso de ser necesario) combinar Firestarter con Network Manager

Para que la configuración del resto de ordenadores sea sencilla, lo mejor será tener activado un servidor DHCP, para ello necesitamos instalar también (necesitamos crear un enlace simbólico al script de inicio para evitar un pequeño bug de firestarter):

sudo aptitude install dhcp3-server
cd /etc/init.d
sudo ln -s dhcp3-server dhcpd
update-rc.d -f dhcp3-server remove

A continuación, podemos iniciar Firestarter en “Sistemas – Administración – Firestarter”. Si es la primera vez, nos saldrá un asistente que podremos seguir paso a paso, de lo contrario vamos a “Editar – Preferencias – Configuración de red” y activamos:

  • Activar la compartición a Internet
  • Activar DHCP para red local

Expandimos “Detalles del servidor DHCP” e indicamos unos rangos de IP que coincidan con la IP que hayamos asignado a la interfaz de red local (si aun no le hemos asignado una IP podemos hacerlo en “Sistema – Administración – Red”).

A partir de este momento, cuando se activa Firestarter también lo hará la compartición y el servidor DHCP.

Bazaar-NG (bzr), sistema de control de versiones distribuido

Bazaar-ng es un sistema de control de versiones distribuido que, al igual que CVS o Subversion, nos permite guardar progresivamente los cambios que vayamos realizando sobre un conjunto de archivos de texto (habitualmente código fuente), recuperar versiones anteriores, mostrar diferencias, integrar el trabajo de diversos programadores, etc…

Sin embargo, a diferencia de CVS o Subversion, Bazaar-ng nos permite trabajar de formas mucho más flexibles… desde el típico esquema cliente-servidor hasta la descentralización de los repositorios, tal y como veremos más adelante en el apartado de flujos de trabajo.

Para instalarlo en Ubuntu:

aptitude install bzr 

Veamos como podemos trabajar con Bazaar…
Continue reading Bazaar-NG (bzr), sistema de control de versiones distribuido

Visor ficheros chm para GNU/Linux

Si necesitamos visualizar el típico fichero de ayuda en formato ‘chm’ bajo GNU/Linux, podemos utilizar gnochm:

aptitude install gnochm

Lo he probado con la documentación de CakePHP y funciona de maravilla 🙂

Actualización Tal y como nos comenta David en un comentario, también tenemos xchm que también es una aplicación que se integra en GNOME y tiene alguna característica extra que lo puede hacer más interesante (índice de palabras, búsqueda en la página que visualizamos, etc…). Me quedo con xchm 😉