<?xml version="1.0" encoding="UTF-8"?>
<?xml-stylesheet type="text/xsl" media="screen" href="/~d/styles/rss2spanishfull.xsl"?><?xml-stylesheet type="text/css" media="screen" href="http://feeds.feedburner.com/~d/styles/itemcontent.css"?><rss xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:wfw="http://wellformedweb.org/CommentAPI/" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:sy="http://purl.org/rss/1.0/modules/syndication/" xmlns:slash="http://purl.org/rss/1.0/modules/slash/" xmlns:feedburner="http://rssnamespace.org/feedburner/ext/1.0" version="2.0">

<channel>
	<title>JorgeTome.info</title>
	
	<link>http://www.jorgetome.info</link>
	<description>Un diario web de Jorge Tomé Hernando</description>
	<lastBuildDate>Fri, 03 Feb 2012 08:27:37 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.3.2</generator>
		<feedburner:info uri="jorgetome" /><atom10:link xmlns:atom10="http://www.w3.org/2005/Atom" rel="hub" href="http://pubsubhubbub.appspot.com/" /><atom10:link xmlns:atom10="http://www.w3.org/2005/Atom" rel="self" type="application/rss+xml" href="http://www.jorgetome.info/feed" /><feedburner:feedFlare href="http://www.newsgator.com/ngs/subscriber/subext.aspx?url=http%3A%2F%2Fwww.jorgetome.info%2Ffeed" src="http://www.newsgator.com/images/ngsub1.gif">Subscribe with NewsGator</feedburner:feedFlare><feedburner:feedFlare href="http://www.bloglines.com/sub/http://www.jorgetome.info/feed" src="http://www.bloglines.com/images/sub_modern11.gif">Subscribe with Bloglines</feedburner:feedFlare><feedburner:feedFlare href="http://www.netvibes.com/subscribe.php?url=http%3A%2F%2Fwww.jorgetome.info%2Ffeed" src="http://www.netvibes.com/img/add2netvibes.gif">Subscribe with Netvibes</feedburner:feedFlare><feedburner:feedFlare href="http://fusion.google.com/add?feedurl=http%3A%2F%2Fwww.jorgetome.info%2Ffeed" src="http://buttons.googlesyndication.com/fusion/add.gif">Subscribe with Google</feedburner:feedFlare><feedburner:feedFlare href="http://www.pageflakes.com/subscribe.aspx?url=http%3A%2F%2Fwww.jorgetome.info%2Ffeed" src="http://www.pageflakes.com/ImageFile.ashx?instanceId=Static_4&amp;fileName=ATP_blu_91x17.gif">Subscribe with Pageflakes</feedburner:feedFlare><feedburner:feedFlare href="http://add.my.yahoo.com/content?lg=es&amp;url=http%3A%2F%2Fwww.jorgetome.info%2Ffeed" src="http://eur.i1.yimg.com/eur.yimg.com/i/es/my/addto1.gif">Subscribe with My Yahoo!</feedburner:feedFlare><feedburner:feedFlare href="http://www.feedness.com/alta/http://www.jorgetome.info/feed" src="http://www.feedness.com/ayuda/wp-content/square_b_sh_feed.gif">Subscribe with Feedness</feedburner:feedFlare><item>
		<title>Como usar svnsync para sincronizar dos repositorios Subversion</title>
		<link>http://feedproxy.google.com/~r/jorgetome/~3/36g6uRfIg2o/como-usar-svnsync-para-sincronizar-dos-repositorios-subversion.html</link>
		<comments>http://www.jorgetome.info/como-usar-svnsync-para-sincronizar-dos-repositorios-subversion.html#comments</comments>
		<pubDate>Tue, 15 Nov 2011 10:46:36 +0000</pubDate>
		<dc:creator>Jorge</dc:creator>
				<category><![CDATA[Otros]]></category>
		<category><![CDATA[Howto]]></category>
		<category><![CDATA[subversion]]></category>
		<category><![CDATA[svn]]></category>
		<category><![CDATA[svnsync]]></category>
		<category><![CDATA[tips]]></category>

		<guid isPermaLink="false">http://www.jorgetome.info/?p=311</guid>
		<description><![CDATA[El objetivo es crear un &#8220;mirror&#8221; local de un repositorio Subversion remoto. El repositorio original, del que queremos hacer la réplica, es svnsource y está ubicado en la URL remota http://server1.ejemplo.com/svn/svnsource. El nuevo repositorio que queremos que sea una réplica de svnsource lo vamos a denominar svntarget y estará ubicado en el servidor sobre el [...]]]></description>
			<content:encoded><![CDATA[<p>El objetivo es crear un &#8220;mirror&#8221; local de un repositorio Subversion remoto.</p>
<p>El repositorio original, del que queremos hacer la réplica, es <strong>svnsource</strong> y está ubicado en la URL remota <em>http://server1.ejemplo.com/svn/svnsource</em>.</p>
<p>El nuevo repositorio que queremos que sea una réplica de <strong>svnsource</strong> lo vamos a denominar <strong>svntarget</strong> y estará ubicado en el servidor sobre el que estamos trabajando en el directorio<em> /srv/svn/svntarget</em>.</p>
<h3>Paso 1. Creación del repositorio <strong>svntarget</strong>.</h3>
<p>El repositorio destino no puede existir previamente (si existe debemos borrarlo) así que el primer paso es crear un nuevo repositorio vacío.</p>
<pre class="brush:shell">sqcman@sqclab:~$ svnadmin create --fs-type fsfs /srv/svn/svntarget</pre>
<h3>Paso 2. Ajustar los permisos del repositorio <strong>svntarget</strong>.</h3>
<p>El programa <em>svnsync</em> debe poder modificar todas las propiedades del repositorio destino. Para ello deberemos crear un <em>hook</em> previo a modificaciones en las propiedades del repositorio (<em>pre-revprop-change</em>) que no ponga ninguna limitación.</p>
<pre class="brush:shell">sqcman@sqclab:~$ echo '#!/bin/sh' &gt; /srv/svn/ecs/hooks/pre-revprop-change
sqcman@sqclab:~$ chmod 755 /srv/svn/ecs/hooks/pre-revprop-change</pre>
<h3>Paso 3. Inicializar el repositorio <strong>svntarget</strong>.</h3>
<p>El siguiente paso es utilizar el programa <em>svnsync</em> para inicializar el repositorio destino, <strong>svntarget</strong>, indicando desde qué repositorio remoto se debe replicar (en nuestro ejemplo <em>http://server1.ejemplo.com/svn/svnsource</em>).</p>
<pre class="brush:shell">sqcman@sqclab:~$ svnsync init file:///srv/svn/svntarget http://server1.ejemplo.com/svn/svnsource
Copied properties for revision 0.</pre>
<p>Cuando ejecutemos este comando nos solicitará, si no tenemos las credenciales ya cacheadas, el usuario y contraseña con el que conectarnos al repositorio remoto.</p>
<h3>Paso 4. Ejecutar la primera sincronización.</h3>
<p>Ya lo tenemos todo listo para ejecutar por primera vez el proceso de sincronización. Para ello utilizamos de nuevo el programa <em>svnsync</em> con el subcomando <em>sync</em> indicándole el repositorio destino (en nuestro ejemplo <em>file:///srv/svn/svntarget</em>).</p>
<pre class="brush:shell">sqcman@sqclab:~$ svnsync --non-interactive sync file:///srv/svn/svntarget</pre>
<p>Después de la ejecución de este comando dispondremos en local de una copia completa del repositorio origen.</p>
<h3>Paso 5. Automatizar la sincronización.</h3>
<p>Para asegurar que el repositorio destino se mantenga sincronizado con el repositorio origen es necesario que ejecutemos el proceso de sincronización de forma periódica. Hay distintas alternativas, la más inmediata sería introducir un <em>post-commit</em> en el repositorio origen que dispare el proceso de sincronización en el servidor destino. La otra sería ejecutar periódicamente de forma automática el proceso de sincronización en el servidor destino. Este segundo acercamiento es el que vamos a configurar en este ejemplo utilizando una tarea <em>cron</em>.</p>
<p>Debemos analizar y ajustar convenientemente los permisos del repositorio Subversion destino para asegurarnos de que el usuario que va a ejecutar el proceso de sincronización tenga todos los permisos necesarios sobre el repositorio Subversion destino. En mi caso es el usuario <em>www-data</em> quien va a ejecutar el <em>cron</em> para sincronizar el repositorio.</p>
<pre class="brush:shell">sqcman@sqclab:~$ sudo chmod -R www-data:www-data /srv/svn/svntarget
sqcman@sqclab:~$ sudo crontab -u www-data -l
...
...
# m h  dom mon dow   command
*/5 * * * * /usr/bin/svnsync --non-interactive sync file:///srv/svn/ecs</pre>
<p>Por último podemos hacer un seguimiento y control de la ejecución del <em>cron</em> revisando los logs del sistema.</p>
<pre class="brush:shell">sqcman@sqclab:~$ grep svnsync /var/log/syslog
Nov 15 11:40:01 sqclab CRON[5920]: (www-data) CMD (/usr/bin/svnsync --non-interactive sync file:///srv/svn/svntarget)</pre>
<p>Referencias</p>
<ul>
<li><a href="http://svnbook.red-bean.com/en/1.4/svn.ref.svnsync.html">http://svnbook.red-bean.com/en/1.4/svn.ref.svnsync.html</a></li>
<li><a href="http://journal.paul.querna.org/articles/2006/09/14/using-svnsync/">http://journal.paul.querna.org/articles/2006/09/14/using-svnsync/</a></li>
<li><a href="http://es.wikipedia.org/wiki/Cron_%28Unix%29#Formato_del_fichero_crontab">http://es.wikipedia.org/wiki/Cron_%28Unix%29#Formato_del_fichero_crontab</a></li>
</ul>
<img src="http://feeds.feedburner.com/~r/jorgetome/~4/36g6uRfIg2o" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://www.jorgetome.info/como-usar-svnsync-para-sincronizar-dos-repositorios-subversion.html/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		<feedburner:origLink>http://www.jorgetome.info/como-usar-svnsync-para-sincronizar-dos-repositorios-subversion.html</feedburner:origLink></item>
		<item>
		<title>Mi nueva tarjeta de visita</title>
		<link>http://feedproxy.google.com/~r/jorgetome/~3/otSSkQZKVxQ/mi-nueva-tarjeta-de-visita.html</link>
		<comments>http://www.jorgetome.info/mi-nueva-tarjeta-de-visita.html#comments</comments>
		<pubDate>Wed, 02 Nov 2011 16:42:13 +0000</pubDate>
		<dc:creator>Jorge</dc:creator>
				<category><![CDATA[Otros]]></category>

		<guid isPermaLink="false">http://www.jorgetome.info/?p=309</guid>
		<description><![CDATA[Mi nueva tarjeta de visita. Ha tardado en llegar (me incorporé en agosto) pero ya está aquí. Una más para la colección]]></description>
			<content:encoded><![CDATA[<p><a title="PRISA Digital. Tarjeta de visita por Jorge Tomé, en Flickr" href="http://www.flickr.com/photos/jtome/6306486832/"><img src="http://farm7.static.flickr.com/6238/6306486832_a529f68b65_m.jpg" alt="PRISA Digital. Tarjeta de visita" width="240" height="143" align="left" /></a>Mi nueva tarjeta de visita. Ha tardado en llegar (me incorporé en agosto) pero ya está aquí. Una más para la colección <img src='http://www.jorgetome.info/wp-includes/images/smilies/icon_smile.gif' alt=':-)' class='wp-smiley' /> </p>
<img src="http://feeds.feedburner.com/~r/jorgetome/~4/otSSkQZKVxQ" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://www.jorgetome.info/mi-nueva-tarjeta-de-visita.html/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		<feedburner:origLink>http://www.jorgetome.info/mi-nueva-tarjeta-de-visita.html</feedburner:origLink></item>
		<item>
		<title>How to expand online a LVM partition in Ubuntu</title>
		<link>http://feedproxy.google.com/~r/jorgetome/~3/zfyNhfmRwg4/how-to-expand-online-a-lvm-partition-in-ubuntu.html</link>
		<comments>http://www.jorgetome.info/how-to-expand-online-a-lvm-partition-in-ubuntu.html#comments</comments>
		<pubDate>Mon, 10 Oct 2011 16:15:01 +0000</pubDate>
		<dc:creator>Jorge</dc:creator>
				<category><![CDATA[Otros]]></category>

		<guid isPermaLink="false">http://www.jorgetome.info/?p=305</guid>
		<description><![CDATA[This is something that I have to do several times in the last months. It is a really simple procedure but I always have to look for it in Google because I never remember the exact steps. Context An Ubuntu 11.04 server with LVM installed and configured. A new hard disk added to the server [...]]]></description>
			<content:encoded><![CDATA[<p>This is something that I have to do several times in the last months. It is a really simple procedure but I always have to look for it in Google because I never remember the exact steps.</p>
<p><strong>Context</strong></p>
<ul>
<li>An Ubuntu 11.04 server with LVM installed and configured.</li>
<li>A new hard disk added to the server (usually it is a virtual server and a virtual hard disk). For this tip I am going to assume that the new disk is /dev/sdb</li>
<li>I want to expand the root partition adding the space in the new disk.</li>
</ul>
<p><strong>Procedure</strong></p>
<p>Create a new Physical Volume using the recently added disk&#8230;</p>
<p><code>root@server:~# pvcreate /dev/sdb</code></p>
<p>It is not necessary to create a partition table in the new disk.</p>
<p>Now we have to add to the Volume Group the new Physical Volume&#8230;</p>
<p><code>root@server:~# vgdisplay<br />
--- Volume group ---<br />
VG Name vg01<br />
System ID<br />
Format lvm2<br />
Metadata Areas 2<br />
Metadata Sequence No 5<br />
VG Access read/write<br />
VG Status resizable<br />
MAX LV 0<br />
Cur LV 2<br />
Open LV 2<br />
Max PV 0<br />
Cur PV 2<br />
Act PV 2<br />
VG Size 17.75 GiB<br />
PE Size 4.00 MiB<br />
Total PE 4545<br />
Alloc PE / Size 4545 / 17.75 GiB<br />
Free PE / Size 0 / 0<br />
VG UUID D9jl8R-zqxe-7wwn-3Co2-dUhu-Dnwr-aNbKpv<br />
root@server:~# vgextend vg01 /dev/sdb</code></p>
<p>Next step is expand the Logical Volume</p>
<p><code>root@server:~# lvextend -l+2567 /dev/vg01/root</code></p>
<p>We could use the <code>lvdisplay</code> command to find the exact name of the Logical Volume and the total number of free Physical Extends (PE).</p>
<p>Last step is to resize the file system in the disk to use all the space. We could do this online without need to unmount the file system.</p>
<p><code>root@server:~# resize2fs /dev/vg01/root</code></p>
<p>You can find this procedure in multiples places in Internet, the last one I have used is <a title="Resize LVM root volume" href="http://blog.campodoro.org/?p=36">this</a>.</p>
<img src="http://feeds.feedburner.com/~r/jorgetome/~4/zfyNhfmRwg4" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://www.jorgetome.info/how-to-expand-online-a-lvm-partition-in-ubuntu.html/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		<feedburner:origLink>http://www.jorgetome.info/how-to-expand-online-a-lvm-partition-in-ubuntu.html</feedburner:origLink></item>
		<item>
		<title>Bash script to create a full software development environment</title>
		<link>http://feedproxy.google.com/~r/jorgetome/~3/Rj6coOTaUrw/bash-script-to-create-a-full-software-development-environment.html</link>
		<comments>http://www.jorgetome.info/bash-script-to-create-a-full-software-development-environment.html#comments</comments>
		<pubDate>Wed, 17 Aug 2011 18:02:56 +0000</pubDate>
		<dc:creator>Jorge</dc:creator>
				<category><![CDATA[Linux]]></category>
		<category><![CDATA[apache2]]></category>
		<category><![CDATA[bash]]></category>
		<category><![CDATA[programming]]></category>
		<category><![CDATA[script]]></category>
		<category><![CDATA[subversion]]></category>
		<category><![CDATA[svn]]></category>
		<category><![CDATA[trac]]></category>

		<guid isPermaLink="false">http://www.jorgetome.info/?p=275</guid>
		<description><![CDATA[I have create this (first version) script to automatize the creation of all the services related with a new software development project. The script creates&#8230; A new Subversion repository to host the source code of the project. A new MySQL database to store the data of the Trac instance. A new instance of Trac, linked [...]]]></description>
			<content:encoded><![CDATA[<p>I have create this (first version) script to automatize the creation of all the services related with a new software development project.</p>
<p>The script creates&#8230;</p>
<ul>
<li>A new Subversion repository to host the source code of the project.</li>
<li>A new MySQL database to store the data of the Trac instance.</li>
<li>A new instance of Trac, linked to the just created Subversion repository, to be used like the project’s portal.</li>
<li>A configuration file for Apache2 in order to made accesible the Trac repository.</li>
</ul>
<p>The structure of the new Subversion repository is as follows:</p>
<pre>-&gt; branches
-&gt; tags
-&gt; trunk
   -&gt; docs
   -&gt; src</pre>
<p>The environment used was the following</p>
<ul>
<li>Ubuntu Server 11.04 64 bits</li>
<li>Apache/2.2.17 (installed from the Ubuntu repositories)</li>
<li>MySQL Server 5.1.541ub (installed from the Ubuntu repositories)</li>
<li>Subversion 1.6.12 (installed from the Ubuntu repositories)</li>
<li>Python 2.7.1+ (installed from the Ubuntu repositories)</li>
<li>Trac 0.12</li>
</ul>
<p><strong>TODO</strong></p>
<ul>
<li>Implement checking to ensure that the different elements do not exists before trying to create them (for example the Subversion repository, or the MySQL database).</li>
<li>Implement the installation of the Subversion hooks that ensure that the Trac instance keeps in sync with the Subversion repository</li>
</ul>
<pre class="brush:shell">#!/bin/bash

# Author: Jorge Tomé Hernando &lt;jorge@jorgetome.info&gt;
# Date: August 2011
# Version: 1.0
#
# Description
# -----------
# This scripts creates all the environment needed to support
# a new software development project.
#
# It creates a new Subversion repository, a new Trac instance
# (and the associated MySQL database) and a configuration file
# for the Apache2 web server.
#
# It also restart the Apache2 server in order to apply the new
# configuration.
#
# It has been developed and tested in an Ubuntu 11.04 environment.

usage()
{
    cat&lt;&lt;EOF
usage:$0 options

This script creates a new support environment for a software
development project including: Subversion repository and
Trac instance.

Options:
-h Shows this message
-p Name of the project
-u User name of the project's administrator
EOF
}

if [[ $EUID -ne 0 ]]; then
    echo "This script must be run as root" 1&gt;&amp;2
    exit 1
fi

PROJECT_NAME=
PROJECT_ADMIN=

while getopts ":hp:u:" opt; do
    case $opt in
        h)
            usage
            exit 1
            ;;
        p)
            PROJECT_NAME=$OPTARG
            ;;
        u)
            PROJECT_ADMIN=$OPTARG
            ;;
        ?)
            usage
            exit
        ;;
    esac
done

if [ -z $PROJECT_NAME ] || [ -z $PROJECT_ADMIN ]
then
    usage
    exit 1
fi

# Configuration variables
SVN_HOME=/srv/svn
TRAC_HOME=/srv/trac
DB_PREFIX=trac_
DB_USR=MyUserForTrac
DB_PWD=MyPasswordForTheUserForTrac
DB_HOST=localhost
DB_PORT=3306
APACHE_USR=www-data
APACHE_CONF_DIR=/etc/apache2/projects.d

# Utility variables
PROJECT_DIR=`echo ${PROJECT_NAME,,}`
DB_NAME=${DB_PREFIX}${PROJECT_DIR}
SVN_DIR=${SVN_HOME}/${PROJECT_DIR}
TRAC_DIR=${TRAC_HOME}/${PROJECT_DIR}

# First we create the Subversion repository
svnadmin create --fs-type fsfs ${SVN_DIR}
svn mkdir -m "Initialization of the repository" \
--parents \
file://${SVN_DIR}/trunk/docs \
file://${SVN_DIR}/trunk/src \
file://${SVN_DIR}/branches \
file://${SVN_DIR}/tags

# Second we have to create the MySQL database to support Trac
mysql -u root -p &lt;&lt;QUERY_INPUT
CREATE DATABASE ${DB_NAME};
GRANT ALL PRIVILEGES ON ${DB_NAME}.* TO ${DB_USR}@${DB_HOST} IDENTIFIED BY '${DB_PWD}';
QUERY_INPUT

# Third we have to create the Trac instance
trac-admin ${TRAC_DIR} initenv ${PROJECT_NAME} mysql://${DB_USR}:${DB_PWD}@${DB_HOST}:${DB_PORT}/${DB_NAME}
trac-admin ${TRAC_DIR} repository add ${PROJECT_DIR} ${SVN_DIR} svn
trac-admin ${TRAC_DIR} repository resync ${PROJECT_DIR}
trac-admin ${TRAC_DIR} permission add ${PROJECT_ADMIN} TRAC_ADMIN
trac-admin ${TRAC_DIR} deploy ${TRAC_DIR}/deploy

# Fourth we have to create the Apache2 configuration file
cat &gt; ${APACHE_CONF_DIR}/${PROJECT_DIR}.conf &lt;&lt;EOF
WSGIScriptAlias /trac/${PROJECT_DIR} ${TRAC_DIR}/deploy/cgi-bin/trac.wsgi

&lt;Directory ${TRAC_DIR}/deploy/cgi-bin&gt;
    WSGIApplicationGroup %{GLOBAL}
    Order deny,allow
    Allow from all
&lt;/Directory&gt;http://www.jorgetome.info/bash-script-to-create-a-full-software-development-environment.html  

&lt;Location "/trac/${PROJECT_DIR}/login"&gt;
    AuthType Basic
    AuthName "Trac"
    AuthUserFile /srv/trac/.htpasswd
    Require valid-user
&lt;/Location&gt;
EOF

# Last we have to adjust the permissions on the directories and
# restart the web server
chown -R ${APACHE_USR}:${APACHE_USR} ${SVN_DIR} ${TRAC_DIR}
apache2ctl restart</pre>
<img src="http://feeds.feedburner.com/~r/jorgetome/~4/Rj6coOTaUrw" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://www.jorgetome.info/bash-script-to-create-a-full-software-development-environment.html/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		<feedburner:origLink>http://www.jorgetome.info/bash-script-to-create-a-full-software-development-environment.html</feedburner:origLink></item>
		<item>
		<title>Cambio de rumbo</title>
		<link>http://feedproxy.google.com/~r/jorgetome/~3/LrvzP-bpa0E/cambio-de-rumbo.html</link>
		<comments>http://www.jorgetome.info/cambio-de-rumbo.html#comments</comments>
		<pubDate>Tue, 19 Jul 2011 16:17:03 +0000</pubDate>
		<dc:creator>Jorge</dc:creator>
				<category><![CDATA[Personal]]></category>

		<guid isPermaLink="false">http://www.jorgetome.info/cambio-de-rumbo.html</guid>
		<description><![CDATA[Hacía meses que no escribía en el blog y no por falta de ganas sino por ser incapaz de encontrar los momentos. Como casi todos los que jugamos en este mundo de Internet el blog se ha ido viendo desplazado por otros canales: Twitter, Facebook, Buzz y últimamente Google +. Para ser sincero este post [...]]]></description>
			<content:encoded><![CDATA[<p>Hacía meses que no escribía en el blog y no por falta de ganas sino por ser incapaz de encontrar los momentos.</p>
<p>Como casi todos los que jugamos en este mundo de Internet el blog se ha ido viendo desplazado por otros canales: Twitter, Facebook, Buzz y últimamente Google +.</p>
<p>Para ser sincero este post no es más que una prueba con la aplicación de WordPress para Android y una declaración de mi intención de volver a dar algo de tiempo a este blog.</p>
<p>Al fin y al cabo tengo muchas novedades sobre las que escribir y tendré muchas más.</p>
<img src="http://feeds.feedburner.com/~r/jorgetome/~4/LrvzP-bpa0E" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://www.jorgetome.info/cambio-de-rumbo.html/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		<feedburner:origLink>http://www.jorgetome.info/cambio-de-rumbo.html</feedburner:origLink></item>
		<item>
		<title>Resumiendo los principios de diseño de la construcción de software</title>
		<link>http://feedproxy.google.com/~r/jorgetome/~3/rBopKhEwuJk/resumiendo-principios.html</link>
		<comments>http://www.jorgetome.info/resumiendo-principios.html#comments</comments>
		<pubDate>Mon, 10 Jan 2011 11:20:36 +0000</pubDate>
		<dc:creator>Jorge</dc:creator>
				<category><![CDATA[Arquitectura SI]]></category>
		<category><![CDATA[Opinión]]></category>
		<category><![CDATA[Programación]]></category>

		<guid isPermaLink="false">http://www.jorgetome.info/?p=261</guid>
		<description><![CDATA[Hoy he tenido que hacer el ejercicio de resumir los principios de diseño que yo creo que deben dirigir un proceso de construcción de software. Después de bastante reflexión me he quedado sólo con cuatro. Los siguientes: KISS (Keep it simple, stupid). Creo que nunca valoraremos lo suficiente el valor de simplificar todo lo posible [...]]]></description>
			<content:encoded><![CDATA[<p>Hoy he tenido que hacer el ejercicio de resumir los principios de diseño que <strong>yo</strong> creo que deben dirigir un proceso de construcción de software. Después de bastante reflexión me he quedado sólo con cuatro. Los siguientes:</p>
<ol>
<li>KISS (<em>Keep it simple, stupid</em>). Creo que nunca valoraremos lo suficiente el valor de simplificar todo lo posible los sistemas que construimos.</li>
<li>No construyas si puedes usar algo que ya existe.</li>
<li>Entrega (parte de) el producto cuanto antes a sus usuarios, sigue construyéndolo apoyándote en los comentarios de los usuarios.</li>
<li>La interfase del usuario debe ser web, siempre.</li>
<li>La interfase del usuario es un animal totalmente distinto. Debe diseñarla y construirla un equipo de especialistas en interfases de usuario y debe estar totalmente desacoplada de la lógica de la aplicación.</li>
</ol>
<p>¿Qué opináis?.</p>
<img src="http://feeds.feedburner.com/~r/jorgetome/~4/rBopKhEwuJk" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://www.jorgetome.info/resumiendo-principios.html/feed</wfw:commentRss>
		<slash:comments>5</slash:comments>
		<feedburner:origLink>http://www.jorgetome.info/resumiendo-principios.html</feedburner:origLink></item>
		<item>
		<title>Mi cubiculo los últimos meses</title>
		<link>http://feedproxy.google.com/~r/jorgetome/~3/LWZFAEIkbgA/mi-cubiculo-los-ultimos-meses.html</link>
		<comments>http://www.jorgetome.info/mi-cubiculo-los-ultimos-meses.html#comments</comments>
		<pubDate>Wed, 05 Jan 2011 21:52:25 +0000</pubDate>
		<dc:creator>Jorge</dc:creator>
				<category><![CDATA[Otros]]></category>
		<category><![CDATA[Matchmind]]></category>
		<category><![CDATA[Telvent]]></category>

		<guid isPermaLink="false">http://www.jorgetome.info/mi-cubiculo-los-ultimos-meses.html</guid>
		<description><![CDATA[Este ha sido mi espacio de trabajo durante los últimos meses, desde que abandonamos nuestra oficina en la calle Ombú y nos mudamos al edificio de Telvent en Alcobendas. Es chulo, me gusta mucho y, si finalmente me cambian a otro, hay muchas probabilidades de que lo eche de menos.]]></description>
			<content:encoded><![CDATA[<p><!-- .flickr-photo { } .flickr-frame {	float: right; text-align: center; margin-left: 15px; margin-bottom: 15px; } .flickr-caption { font-size: 0.8em; margin-top: 0px; } --></p>
<div class="flickr-frame"><a title="photo sharing" href="http://www.flickr.com/photos/jtome/5328424464/"><img class="flickr-photo" src="http://farm6.static.flickr.com/5010/5328424464_20b3923761_m.jpg" alt="Mi cubiculo los últimos meses" align="left" /></a><br />
Este ha sido mi espacio de trabajo durante los últimos meses, desde que abandonamos nuestra oficina en la calle Ombú y nos mudamos al edificio de Telvent en Alcobendas. Es chulo, me gusta mucho y, si finalmente me cambian a otro, hay muchas probabilidades de que lo eche de menos.</p>
</div>
<img src="http://feeds.feedburner.com/~r/jorgetome/~4/LWZFAEIkbgA" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://www.jorgetome.info/mi-cubiculo-los-ultimos-meses.html/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		<feedburner:origLink>http://www.jorgetome.info/mi-cubiculo-los-ultimos-meses.html</feedburner:origLink></item>
		<item>
		<title>Siete casas en Francia. Bernardo Atxaga</title>
		<link>http://feedproxy.google.com/~r/jorgetome/~3/aqXECZuh6bs/siete-casas-en-francia-bernardo-atxaga.html</link>
		<comments>http://www.jorgetome.info/siete-casas-en-francia-bernardo-atxaga.html#comments</comments>
		<pubDate>Wed, 14 Jul 2010 19:40:06 +0000</pubDate>
		<dc:creator>Jorge</dc:creator>
				<category><![CDATA[Otros]]></category>
		<category><![CDATA[Libros]]></category>
		<category><![CDATA[Literatura]]></category>

		<guid isPermaLink="false">http://www.jorgetome.info/?p=249</guid>
		<description><![CDATA[Hace ya unos días que terminé la lectura de Siete casas en Francia, de Bernardo Atxaga. ¡¡Estoy lanzado!! Este libro ha sido mi segunda adquisición en Circulo de Lectores y como os comentaba la elección también ha estado basada exclusivamente en el autor del libro. Buscaba prosa de calidad y una historia sólida, esperaba que [...]]]></description>
			<content:encoded><![CDATA[<p><a href="http://www.jorgetome.info/wp-content/uploads/2010/07/SieteCasasEnFrancia.jpg"><img class="alignleft size-full wp-image-250" title="Siete casas en Francia" src="http://www.jorgetome.info/wp-content/uploads/2010/07/SieteCasasEnFrancia.jpg" alt="Siete casas en Francia. Bernardo Atxaga" width="97" height="170" align="left" /></a>Hace ya unos días que terminé la lectura de <strong>Siete casas en Francia</strong>, de <strong>Bernardo Atxaga</strong>. ¡¡Estoy lanzado!! <img src='http://www.jorgetome.info/wp-includes/images/smilies/icon_biggrin.gif' alt=':-D' class='wp-smiley' /> </p>
<p>Este libro ha sido mi segunda adquisición en <a href="http://www.circulo.es">Circulo de Lectores</a> y como os <a href="/el-vencedor-esta-solo-paulo-coelho.html">comentaba</a> la elección también ha estado basada exclusivamente en el autor del libro. Buscaba prosa de calidad y una historia sólida, esperaba que Bernardo Atxaga me las proporcionase. Las dudas se sostenían en el hecho de que éste es el primer libro en el que Bernardo Atxaga abandona Obaba, el país imaginario en el que se ambientaban sus anteriores obras y exploraba nuevas tierras y tiempos.</p>
<p>La historia se ambienta en una estación militar en el Congo Belga a principios del siglo XX y se construye alrededor, fundamentalmente, de Africa y de los oficiales que habitan la estación. Rivalidades, competencia, corrupción, violencia, explotación.</p>
<p>Me ha gustado. Es una novela sólida, bien escrita, bien hilada. Los personajes son de cuerpo entero, sin fisuras, muy reales. Una lectura realmente entretenida.</p>
<p>Puestos a buscarle las cosquillas opino que la trama podría haber dado mucho más de sí. Contiene algunos puntos de apoyo muy interesantes que hubieran dado para un desarrollo mucho más extenso, me ha sabido a poco al final.</p>
<p>Como nota al margen comentar que empecé a leer el libro en papel y lo terminé en mi recién adquirido Kindle (ya os hablaré de este tema en otro <em>post</em>).</p>
<p>Por cierto, el siguiente libro en mi cola de lectura es <a href="http://www.facebook.com/pages/Todo-va-a-cambiar/323149937259"><strong>Todo va a cambiar</strong></a>, de <a href="http://www.enriquedans.com"><strong>Enrique Dans</strong></a>, doy un pequeño salto desde la novela a la divulgación. Ya os contaré.</p>
<img src="http://feeds.feedburner.com/~r/jorgetome/~4/aqXECZuh6bs" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://www.jorgetome.info/siete-casas-en-francia-bernardo-atxaga.html/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		<feedburner:origLink>http://www.jorgetome.info/siete-casas-en-francia-bernardo-atxaga.html</feedburner:origLink></item>
		<item>
		<title>VMware Converter 4, pesadillas.</title>
		<link>http://feedproxy.google.com/~r/jorgetome/~3/8-Zl7BCvlSE/vmware-converter-4-pesadillas.html</link>
		<comments>http://www.jorgetome.info/vmware-converter-4-pesadillas.html#comments</comments>
		<pubDate>Wed, 14 Jul 2010 10:03:52 +0000</pubDate>
		<dc:creator>Jorge</dc:creator>
				<category><![CDATA[Tecnología]]></category>
		<category><![CDATA[Virtualización]]></category>
		<category><![CDATA[VMware]]></category>
		<category><![CDATA[VMware Converter]]></category>

		<guid isPermaLink="false">http://www.jorgetome.info/?p=247</guid>
		<description><![CDATA[Solo una nota rápida acerca de VMware Converter 4. VMware Converter es una herramienta gratuita de VMware que nos permite convertir máquinas virtuales de unos formatos a otros. Es muy útil en entornos mixtos en los que tienes máquinas en distintos formatos: VMware Server 1.x, VMware Server 2.x, VMware ESX, etc.. Yo ya lo había [...]]]></description>
			<content:encoded><![CDATA[<p>Solo una nota rápida acerca de VMware Converter 4.</p>
<p>VMware Converter es una herramienta gratuita de VMware que nos permite convertir máquinas virtuales de unos formatos a otros. Es muy útil en entornos mixtos en los que tienes máquinas en distintos formatos: VMware Server 1.x, VMware Server 2.x, VMware ESX, etc..</p>
<p>Yo ya lo había utilizado en alguna ocasión y había funcionado sin problemas, ahora viene la pesadilla&#8230;</p>
<p>Hace unas semanas recibí un disco duro externo que contenía unas máquinas virtuales en formato <a href="http://www.vmware.com/appliances/getting-started/learn/ovf.html">OVF</a>, después de descubrir qué era el dichoso formato me bajé la última versión del VMware Converter, la 4.0.1, para convertir las máquinas en cuestión a formato VMware Server 1.x, que es el  que utilizamos en nuestros servidores.</p>
<p>Las máquinas eran grandes (relativamente), desde los 40 GB a los 150 GB. No disponía de dicho espacio libre en ninguno de mis ordenadores así que pensé convertir las máquinas desde el disco duro externo en las que las tenía (de 2 TB de tamaño) hacia el mismo disco duro externo ya que tenía más de 1 TB de espacio disponible, vamos, que por espacio no será <img src='http://www.jorgetome.info/wp-includes/images/smilies/icon_smile.gif' alt=':-)' class='wp-smiley' /> </p>
<p>Bueno, pues el amigo VMware Converter se empeñaba en decirme que no disponía de espacio suficiente para realizar la conversión. Probé todo lo que se me ocurrió, incluso a cambiar el punto de montaje del disco duro externo ya que contenía un espacio en el nombre y pensé que sería la típica situación en la que el software no &#8220;digiere&#8221; correctamente ubicaciones con espacios en el nombre. No funcionó.</p>
<p>Lo probé en distintos ordenadores, en distintos sistemas operativos (MS Windows XP Profesional, Ubuntu), con distintas combinaciones de discos (por si acaso al VMware Converter no le gustaba que el origen y el destino estuviesen en un disco externo). No funcionó nada.</p>
<p>En una de las muchas búsquedas  que hice en Google al respecto llegué al blog de <a href="http://wildermuth.com">Shan Wildermuth</a> en el que hay un <a href="http://wildermuth.com/2007/11/08/VMWare_Converter_Annoyances">artículo</a> comentando distintos problemas que él también ha sufrido con VMware Converter y uno de  ellos el mismo que estaba sufriendo yo. ¡¡Aleluya!!, ¡¡también explicaba el motivo y la solución!!</p>
<p>Bueno, pues en un alarde de calidad en la programación, resulta que el VMware Converter utiliza como directorio temporal para las tareas de conversión, no el directorio temporal que todos los sistemas operativos asignan a los usuarios, sino el <strong>directorio desde el que arrancas el puñetero VMware Converter</strong>.</p>
<p>Claro, en todas mis pruebas había lanzado el VMware Converter desde el menú, es decir, desde el directorio en el que está instalado el programa, que, para más INRI, en todos los equipos en los que había hecho pruebas no disponía del espacio suficiente (más de 30 GB) para que el VMware Converter pudiera realizar la conversión.</p>
<p>Solución, abrir una consola de comandos, situarse en un disco/directorio en el que haya suficiente espacio libre (yo me ubiqué en el disco duro externo) y desde ahí lanzar el programa. Problema resuelto.</p>
<p>Si a alguno le pilla cerca el programador responsable de tal desaguisado que le de un cate de mi parte <img src='http://www.jorgetome.info/wp-includes/images/smilies/icon_smile.gif' alt=':-)' class='wp-smiley' /> </p>
<p>O a su superior que no le dio el tiempo suficiente para probar en condiciones el programa <img src='http://www.jorgetome.info/wp-includes/images/smilies/icon_wink.gif' alt=';-)' class='wp-smiley' /> </p>
<img src="http://feeds.feedburner.com/~r/jorgetome/~4/8-Zl7BCvlSE" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://www.jorgetome.info/vmware-converter-4-pesadillas.html/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		<feedburner:origLink>http://www.jorgetome.info/vmware-converter-4-pesadillas.html</feedburner:origLink></item>
		<item>
		<title>El vencedor está solo. Paulo Coelho</title>
		<link>http://feedproxy.google.com/~r/jorgetome/~3/C0obT6DwFVk/el-vencedor-esta-solo-paulo-coelho.html</link>
		<comments>http://www.jorgetome.info/el-vencedor-esta-solo-paulo-coelho.html#comments</comments>
		<pubDate>Mon, 12 Jul 2010 19:55:13 +0000</pubDate>
		<dc:creator>Jorge</dc:creator>
				<category><![CDATA[Otros]]></category>
		<category><![CDATA[Personal]]></category>
		<category><![CDATA[Libros]]></category>
		<category><![CDATA[Literatura]]></category>
		<category><![CDATA[Novela]]></category>

		<guid isPermaLink="false">http://www.jorgetome.info/?p=241</guid>
		<description><![CDATA[Como os contaba, &#8220;El vencedor está solo&#8220;, de Paulo Coelho es el libro que escogí como mi primera compra en Circulo de Lectores. No tenía referencias del libro, pero de entre la corta selección que el agente de Circulo de Lectores me ofrecía era el que más me apetecía; he de reconocer que única y [...]]]></description>
			<content:encoded><![CDATA[<p><a href="http://www.jorgetome.info/wp-content/uploads/2010/07/elvencedorestasolo.jpg"><img class="alignright size-full wp-image-242" title="El vencedor está solo" src="http://www.jorgetome.info/wp-content/uploads/2010/07/elvencedorestasolo.jpg" alt="El vencedor está solo" width="115" height="166" align="right" /></a>Como os <a href="/la-gran-bruma-juan-pedro-aparicio.html">contaba</a>, &#8220;<a title="El vencedor está solo" href="http://www.elvencedorestasolo.com/">El vencedor está solo</a>&#8220;, de Paulo Coelho es el libro que escogí como mi primera compra en Circulo de Lectores. No tenía referencias del libro, pero de entre la corta selección que el agente de<a title="Círculo de Lectores" href="http://www.circulo.es/"> Circulo de Lectores</a> me ofrecía era el que más me apetecía; he de reconocer que única y exclusivamente por el nombre del autor.</p>
<p>Se trata de una novela de intriga ambientada en Cannes durante la celebración del festival de cine. Igor, un millonario ruso, con un turbio pasado militar en Afganistan, viaja a la ciudad con el objetivo de recuperar a su ex mujer que le abandonó para iniciar una relación con un famoso modisto árabe.</p>
<p>La novela está bien escrita, Paulo Coelho, efectivamente domina el lenguaje. La calidad de su prosa es buena, no preciosista, pero si buena; pero la trama no me atrapó. El reclamo de ambientar la novela en el exclusivo ambiente de Cannes durante la celebración del festival de cine, pues que queréis que os diga, no me dice nada. Paulo lo utiliza para sostener el concepto de &#8220;Superclase&#8221; refiriéndose a la fauna típica de estos eventos: productores de cine, modistos, diseñadores, modelos, aspirantes a modelos, actrices, aspirantes a actrices; y el resto de variaciones sobre el mismo tema. Esa Superclase es la tela sobre la que Paulo pretende &#8220;bordar&#8221; su trama de intriga, pero las puntadas no le han quedado finas y, al menos yo, he percibido una falta de sintonía entre el ambiente y la trama que me ha hecho sentir a veces que el ambiente no aportaba, o que la trama no era consistente.</p>
<p>Al terminar el libro me he quedado con una cierta sensación de desencanto, no, no me ha gustado. No es un mal libro, pero no ha sabido atraparme.</p>
<p>La parte positiva es que lo he leído, un libro más, mi objetivo de retomar el hábito de la lectura (de literatura) sigue avanzando y éste es  un paso más. Esa sensación de desencanto con la que me ha dejado este libro refuerza las ganas que ya tengo de coger el siguiente buscando resarcirme. Y el siguiente es &#8220;Siete casas en Francia&#8221; de Bernardo Atxaga. Mi segunda adquisición de Circulo de Lectores. También es una elección basada en el autor. Ya os contaré.</p>
<img src="http://feeds.feedburner.com/~r/jorgetome/~4/C0obT6DwFVk" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://www.jorgetome.info/el-vencedor-esta-solo-paulo-coelho.html/feed</wfw:commentRss>
		<slash:comments>1</slash:comments>
		<feedburner:origLink>http://www.jorgetome.info/el-vencedor-esta-solo-paulo-coelho.html</feedburner:origLink></item>
	</channel>
</rss><!-- Dynamic page generated in 0.865 seconds. --><!-- Cached page generated by WP-Super-Cache on 2012-05-15 10:40:26 -->

