<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	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/"
	>

<channel>
	<title>El blog de Lucas</title>
	<atom:link href="http://lucas.di-pentima.com.ar/wordpress/feed/" rel="self" type="application/rss+xml" />
	<link>http://lucas.di-pentima.com.ar/wordpress</link>
	<description>Software Libre, Aikido, y demás cosas interesantes...</description>
	<lastBuildDate>Tue, 18 May 2010 18:22:12 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.0.1</generator>
		<item>
		<title>Nuestras &#8220;modernas&#8221; computadoras lo son hace casi 20 años</title>
		<link>http://lucas.di-pentima.com.ar/wordpress/2010/05/18/nextstep-release-3-demo/</link>
		<comments>http://lucas.di-pentima.com.ar/wordpress/2010/05/18/nextstep-release-3-demo/#comments</comments>
		<pubDate>Tue, 18 May 2010 18:22:12 +0000</pubDate>
		<dc:creator>Lucas Di Pentima</dc:creator>
				<category><![CDATA[General]]></category>

		<guid isPermaLink="false">http://lucas.di-pentima.com.ar/wordpress/?p=310</guid>
		<description><![CDATA[Este video es una Demo de 35 minutos de lo que sería la versión 3 del sistema operativo NeXTSTEP, el padre lo que hoy se conoce como Mac OSX. Increíble que sea de la misma época que Windows 3.1, año 1992 aproximadamente WPvideo 1.10 Download!]]></description>
			<content:encoded><![CDATA[<p>Este video es una Demo de 35 minutos de lo que sería la versión 3 del sistema operativo NeXTSTEP, el padre lo que hoy se conoce como Mac OSX. Increíble que sea de la misma época que Windows 3.1, año 1992 aproximadamente <img src='http://lucas.di-pentima.com.ar/wordpress/wp-includes/images/smilies/icon_smile.gif' alt=':-)' class='wp-smiley' /> </p>
<div class="wpv_videoc">
<div class="wpv_self"><a href="http://www.skarcha.com/wp-plugins/wpvideo/">WPvideo 1.10</a></div>
<div class="wpv_video"><object data="http://www.youtube.com/v/j02b8Fuz73A" type="application/x-shockwave-flash" width="100%" height="100%"><param name="movie" value="http://www.youtube.com/v/j02b8Fuz73A"></param></object></div>
<div class="wpv_titleauthor"></div>
<div class="wpv_download"><a target="_blank" href="http://downthisvideo.com/?url=http://youtube.com/watch?v=j02b8Fuz73A">Download!</a></div>
</div>
]]></content:encoded>
			<wfw:commentRss>http://lucas.di-pentima.com.ar/wordpress/2010/05/18/nextstep-release-3-demo/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>¿Matrimonio? Homosexual</title>
		<link>http://lucas.di-pentima.com.ar/wordpress/2010/05/13/matrimonio-homosexual/</link>
		<comments>http://lucas.di-pentima.com.ar/wordpress/2010/05/13/matrimonio-homosexual/#comments</comments>
		<pubDate>Thu, 13 May 2010 23:40:53 +0000</pubDate>
		<dc:creator>Lucas Di Pentima</dc:creator>
				<category><![CDATA[General]]></category>

		<guid isPermaLink="false">http://lucas.di-pentima.com.ar/wordpress/?p=307</guid>
		<description><![CDATA[Un amigo me envió un email citando a una persona que opinó sobre el tema del momento: Matrimonio homosexual. Realmente no conozco la persona citada, pero lo que opina me pareció algo muy interesante y digno de compartir: José Carlos Areán, Capellán del R.C. Celta &#8211; Vigo Dos leonas no hacen pareja. Dos gatos, tampoco. [...]]]></description>
			<content:encoded><![CDATA[<p>Un amigo me envió un email citando a una persona que opinó sobre el tema del momento: Matrimonio homosexual. Realmente no conozco la persona citada, pero lo que opina me pareció algo muy interesante y digno de compartir:</p>
<blockquote>
<div id="_mcePaste"><em>José Carlos Areán, Capellán del R.C. Celta &#8211; Vigo</em></div>
<div><em><br />
</em></div>
<div id="_mcePaste">Dos leonas no hacen pareja. Dos gatos, tampoco. No pueden aparearse. Para ello tendrían que ser de distinto sexo y de la misma especie. Son cosas de la zoología. No es producto de la cultura hitita, fenicia, maya, cristiana o musulmana. Por supuesto no es un invento de la Iglesia Católica. Muchos siglos antes de que Jesús naciera en Belén, el Derecho Romano reconocía el matrimonio como la unión de un hombre y una mujer. Después ellos se divertían con efebos, que para eso estaban, para el disfrute. La esposa era para tener hijos.</div>
<div id="_mcePaste"></div>
<div>La palabra matrimonio procede de dos palabras romanas: &#8220;matris&#8221; y &#8220;munio&#8221;. La primera significa &#8220;madre&#8221;, la segunda &#8220;defensa&#8221;. El matrimonio es la defensa, el amparo, la protección de la mujer que es madre, el mayor y más sublime oficio humano.</div>
<div id="_mcePaste"></div>
<div>Cada palabra tiene su significado propio. Una compraventa gratuita no es una compraventa, sino una donación. Y una enfiteusis por cinco años no es una enfiteusis, sino un arriendo vulgar.</div>
<div id="_mcePaste"></div>
<div>Llamar matrimonio a la unión de dos personas del mismo sexo me parece como poco serio. Jurídicamente, un disparate. De carcajada. Que le llamen &#8220;homomonio&#8221;, &#8220;chulimonio&#8221;, &#8220;seximonio&#8221;, lo que quieran, todo menos matrimonio, que ya está inventado hace tiempo. Nadie llama tarta de manzana a la que está hecha de peras.</div>
<div id="_mcePaste"></div>
<div>Lo curioso es que cuando dices cosas como estas, algunos te miran como extrañados de que no reconozcas la libertad de las personas. Y por más que les dices que sí, que respeto la libertad de todos, que cada uno puede vivir con quien quiera, incluso con su perro, pero que eso no es un matrimonio, van y me llaman intolerante.</div>
<div id="_mcePaste"></div>
<div>No sé lo que harán los parlamentarios españoles a la hora de votar. Son políticos, no juristas. Votarán por razones políticas, no según Derecho. Las consecuencias son graves. Si un varón tiene derecho a casarse con otro varón y una mujer a hacerlo con otra mujer, ¿le vas a negar el derecho a un hermano a casarse con su propia hermana? ¿O a un padre a hacerlo con su hija? ¿No tienen el mismo derecho? La sociedad se quiebra. Huele a podrido. Como en Dinamarca.</div>
</blockquote>
<div></div>
<blockquote></blockquote>
]]></content:encoded>
			<wfw:commentRss>http://lucas.di-pentima.com.ar/wordpress/2010/05/13/matrimonio-homosexual/feed/</wfw:commentRss>
		<slash:comments>18</slash:comments>
		</item>
		<item>
		<title>¿Que tan rápido es Google Chrome? / How fast is Google Chrome?</title>
		<link>http://lucas.di-pentima.com.ar/wordpress/2010/05/05/google-chrome-speed-video/</link>
		<comments>http://lucas.di-pentima.com.ar/wordpress/2010/05/05/google-chrome-speed-video/#comments</comments>
		<pubDate>Wed, 05 May 2010 16:49:36 +0000</pubDate>
		<dc:creator>Lucas Di Pentima</dc:creator>
				<category><![CDATA[Internet]]></category>
		<category><![CDATA[chrome]]></category>
		<category><![CDATA[google]]></category>
		<category><![CDATA[rápido]]></category>
		<category><![CDATA[speed]]></category>
		<category><![CDATA[velocidad]]></category>

		<guid isPermaLink="false">http://lucas.di-pentima.com.ar/wordpress/?p=304</guid>
		<description><![CDATA[Yo diría que bastante! Wow!]]></description>
			<content:encoded><![CDATA[<p>Yo diría que bastante! Wow!</p>
<p><object classid="clsid:d27cdb6e-ae6d-11cf-96b8-444553540000" width="640" height="385" codebase="http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=6,0,40,0"><param name="allowFullScreen" value="true" /><param name="allowscriptaccess" value="always" /><param name="src" value="http://www.youtube.com/v/nCgQDjiotG0&amp;hl=es_ES&amp;fs=1&amp;" /><param name="allowfullscreen" value="true" /><embed type="application/x-shockwave-flash" width="640" height="385" src="http://www.youtube.com/v/nCgQDjiotG0&amp;hl=es_ES&amp;fs=1&amp;" allowscriptaccess="always" allowfullscreen="true"></embed></object></p>
]]></content:encoded>
			<wfw:commentRss>http://lucas.di-pentima.com.ar/wordpress/2010/05/05/google-chrome-speed-video/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Reporte de viaje: Madrid, Londres y París</title>
		<link>http://lucas.di-pentima.com.ar/wordpress/2009/10/11/reporte-de-viaje-madrid-londres-paris/</link>
		<comments>http://lucas.di-pentima.com.ar/wordpress/2009/10/11/reporte-de-viaje-madrid-londres-paris/#comments</comments>
		<pubDate>Sun, 11 Oct 2009 07:47:00 +0000</pubDate>
		<dc:creator>Lucas Di Pentima</dc:creator>
				<category><![CDATA[General]]></category>
		<category><![CDATA[europa]]></category>
		<category><![CDATA[londres]]></category>
		<category><![CDATA[madrid]]></category>
		<category><![CDATA[parís]]></category>
		<category><![CDATA[viaje]]></category>

		<guid isPermaLink="false">http://lucas.di-pentima.com.ar/wordpress/?p=300</guid>
		<description><![CDATA[Domingo, casi 9:00am (madrugada para mis estándares), París. Estoy aprovechando unos momentos libres (al final del post les contaré el por qué) para escribir unas líneas acerca del viaje que vamos haciendo. Empezamos por Madrid, llegamos el 2 de Octubre al aeropuerto de Barajas, donde nos esperaba mi amigazo German que ya hace unos cuantos [...]]]></description>
			<content:encoded><![CDATA[<p>Domingo, casi 9:00am (madrugada para mis estándares), París.</p>
<p>Estoy aprovechando unos momentos libres (al final del post les contaré el por qué) para escribir unas líneas acerca del viaje que vamos haciendo.</p>
<p>Empezamos por Madrid, llegamos el 2 de Octubre al aeropuerto de Barajas, donde nos esperaba mi amigazo German que ya hace unos cuantos años que vive en España. Tuvimos aproximadamente unos 40 minutos de viaje hasta el centro, donde se localiza el Hotel en el que teníamos reserva, el cual abandonamos al segundo día porque cuando reservamos 2 habitaciones dobles, se confundieron y nos guardaron 1 (chan!), así que por la noche había dos pero al día siguiente no&#8230; German nos averiguó por otro lado y listo, nos mudamos. De paso, quedamos a 150 metros de la Gran Vía!</p>
<p>La ciudad de Madrid me gustó mucho, aunque seguro nos ha quedado muchísimo por conocer ya que estuvimos 3 días solamente, creo haberme dado una idea de lo que es.</p>
<p>Me gustó la onda de la Plaza Mayor, y los parques y paseos que tiene son espectaculares, pienso que no me cansaría de caminar por ellos!</p>
<p>Una contra que tuvimos es que muchas cosas interesantes estaban &#8220;tapadas&#8221; por haber obras en marcha, muchas!</p>
<p>Las noches de tapas tampoco estuvieron nada mal! Siempre en la calle te invitan con algún trago si entrás a los bares, así que en parte hemos tomado de arriba <img src='http://lucas.di-pentima.com.ar/wordpress/wp-includes/images/smilies/icon_biggrin.gif' alt=':D' class='wp-smiley' /> </p>
<p>Para los que no han visto las fotos, <a href="http://www.facebook.com/album.php?aid=157321&amp;id=698264198&amp;l=161dea494c">he dejado un álbum en Facebook</a>.</p>
<p>El día 5 nos tomamos un vuelo hacia Londres, llegando al aeropuerto de Gatwick que queda al sur de la ciudad. La bienvenida del personal de inmigración de Londres fue un poco mas dura que la que nos dió Madrid, pero nada grave, solo unas cuantas preguntas (y hasta me tocó mostrar el cash y las tarjetas de crédito). Ahí averiguamos cómo había que hacer para llegar a Crystal Palace, la zona donde nuestro hotel residía, resultado: tren! Enganchamos el tren casi sin salir del aeropuerto, como que la terminal de tren y el aeropuerto están pegados.</p>
<p>Londres realmente redefinió el concepto de tren en mi mente, al primer viaje pasó a ser mi modo favorito de viajar. La pulcritud tanto de las estaciones como de los vagones, la puntualidad y la variedad de líneas que usar para llegar a casi cualquier lado me asombraron!</p>
<p>Llegamos a Crystal Palace ya siendo las 6 de la tarde aproximadamente y ya casi anochecía, de todos modos no hacía el frío que me imaginaba, de hecho hacía calor! La zona (o ciudad?, pueblo?) de Crystal Palace si bien está bastante retirada del centro de Londres (10 km si mal no recuerdo), tiene una uniformidad edilicia con el centro que llama la atención. Luego de acomodarnos en el hotel y darnos una buena ducha, salimos a recorrer la zona y no tardamos nada en encontrar un restaurant y bar para alimentar nuestros muy viajados cuerpos <img src='http://lucas.di-pentima.com.ar/wordpress/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> </p>
<p>Resulta que luego de las 22 hs, la gente ya no cena, con excepción de los Indios! por suerte encontramos un restaurante indio al lado de lo que terminó siendo nuestro pub favorito en Crystal Palace, el cual también cierra temprano.</p>
<p>He publicado también <a href="http://www.facebook.com/album.php?aid=158097&amp;id=698264198&amp;l=50f949c3ff">fotos de Londres en Facebook</a>, conocimos la zona del Parlamento, el Museo Británico (enoooooooorme! seguro un 10%), numerosos puentes, el Acuario, el Ojo de Londres (aunque de abajo), Picadilly Circus, el Barrio Chino, entre otras cosas.</p>
<p>Me llamó la atención la correctitud de la gente, desde los mayores a los jóvenes&#8230; no se si es sólo una correctitud en el modo de hablar o si además se extiende a la forma de tratarse entre ellos en el día a día, pero el 99% de la gente a la que le preguntamos cosas, nos trataron muy bien y siempre intentaron ayudar. Imprescindible el English, of course!</p>
<p>Otra cosa muy llamativa, la limpieza! En todos lados, hasta en las plazas había dispensers de bolsitas para que los dueños de mascotas puedan levantar los restos que los animalejos suelen dejar, impresionante!</p>
<p>Una cosa que no estuvo tan bien: la disponibilidad de Wi-Fi. Habiendo ido a Mendoza hace mas de dos años y viendo que había Internet inalámbrico GRATIS en muchos lugares, es increíble que hasta en la mayoría de los lugares donde uno consume, el acceso a Internet sea pagado (y no barato! desde 2 libras la hora).</p>
<p>El viernes 9 emprendimos la retirada, con la idea de llegar a París de un modo alternativo al avión o al trén que va por debajo del Canal. Buscando en Internet encontramos información que nos decía que teníamos que ir hasta Dover, que queda en la costa sureste de la isla, y de ahí tomarnos un ferry hasta Calais, en Francia. A partir de ahí podríamos llegar a París en tren.</p>
<p>Así fue! sólo que desde Calais tuvimos que hacer escala en Lille Flandres, y cambiarnos a un tren expreso (TGV se llama?). Llegamos antenoche a las 22 hs aprox. a la Garde du Nord, una estación al norte del centro de París.</p>
<p>Antes de salir de Londres habíamos reservado en un hotelito llamado Hotel de France, localizado a pocas cuadras de una estación de subtes importante al este del centro: Nation. Está bueno porque muchas líneas de subte te dejan cerca desde cualquier punto de la ciudad.</p>
<p>Volviendo al viaje intra-ciudad hasta nuestro hotel, primero le preguntamos a un tachero cuanto nos cobraba para llegar al hotel (unos 6 kms de distancia según el GPS de mi teléfono) y el loquito nos quería sacudir con 40 €, eso nos dió coraje para probar buscar un subte, cosa que logramos hacer y en vez de 40, terminamos pagando 6 euros por casi el mismo viaje.</p>
<p>Ayer recorrimos bastante, fuimos al Museo del Louvre (im pre sio nante!), conocimos el Siena y varios de sus puentes, pasamos por el Arco del Triunfo y la Torre Eiffel (hasta sacamos varias fotos nocturnas), ya publicaré las fotos! Cosa diferente en París al menos: los baños!!! Hay que pagar para ir al baño aún en varios bares donde uno consume, con razón son tan mugrientos los franceses, porque es verdad&#8230; el tufo que se siente cada tanto, es considerable <img src='http://lucas.di-pentima.com.ar/wordpress/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> </p>
<p>Con respecto al Wi-Fi, peor que en Londres <img src='http://lucas.di-pentima.com.ar/wordpress/wp-includes/images/smilies/icon_sad.gif' alt=':(' class='wp-smiley' />  &#8230; hola? primer mundo, donde estás? (para un geek, primer mundo equivale a wi-fi en cualquier lado, y gratis)</p>
<p>Y ahora viene la parte anecdótica de por que siendo casi las 10am de un domingo, sigo acá escribiendo en vez de estar durmiendo o levantandome para seguir paseando: el Hotel que reservamos da mucho que desear. Desde cosas como que no tiene WiFi en la habitación como prometía, que el dormitorio de mi hermano e Ivana tenía el baño sin limpiar del huésped anterior, pasando por el desayuno que si no lo pedís el día anterior, no te lo preparan&#8230; llegamos al detalle final: anoche llegando a las 24:00 aprox, ansiosos por darnos un bañito y cambiarnos de ropa, nos informan que perdieron la llave de mi habitación! y que para colmo no pudieron comunicarse con el jefe, que tiene la copia, chan!</p>
<p>En resumen: pasamos la noche en otra habitación, con la ropa del día anterior&#8230; y yo acá aún esperando que se comuniquen con el jefe, que espero que no se haya ido de viaje a algún lado por el fin de semana. ¿Cuantas patadas se aguantará la puerta?</p>
<p><strong>Update</strong>: Ayer subí <a href="http://www.facebook.com/album.php?aid=159428&amp;id=698264198&amp;l=22472b6aab">fotos de París en Facebook</a>, que las disfruten!</p>
]]></content:encoded>
			<wfw:commentRss>http://lucas.di-pentima.com.ar/wordpress/2009/10/11/reporte-de-viaje-madrid-londres-paris/feed/</wfw:commentRss>
		<slash:comments>9</slash:comments>
		</item>
		<item>
		<title>Europa: allá vamos!</title>
		<link>http://lucas.di-pentima.com.ar/wordpress/2009/09/30/europa-alla-vamos/</link>
		<comments>http://lucas.di-pentima.com.ar/wordpress/2009/09/30/europa-alla-vamos/#comments</comments>
		<pubDate>Wed, 30 Sep 2009 22:25:47 +0000</pubDate>
		<dc:creator>Lucas Di Pentima</dc:creator>
				<category><![CDATA[General]]></category>

		<guid isPermaLink="false">http://lucas.di-pentima.com.ar/wordpress/?p=297</guid>
		<description><![CDATA[Este es un rápido post para informar de mi inminente salida de vacaciones por varios lugares del viejo continente. Si todo va bien y los planetas se alinean, voy a ir publicando fotos y anécdotas durante el transcurso de la aventura]]></description>
			<content:encoded><![CDATA[<p>Este es un rápido post para informar de mi inminente salida de vacaciones por varios lugares del viejo continente.</p>
<p>Si todo va bien y los planetas se alinean, voy a ir publicando fotos y anécdotas durante el transcurso de la aventura <img src='http://lucas.di-pentima.com.ar/wordpress/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> </p>
]]></content:encoded>
			<wfw:commentRss>http://lucas.di-pentima.com.ar/wordpress/2009/09/30/europa-alla-vamos/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Sólo un SysAdmin puede entender a otro SysAdmin&#8230;</title>
		<link>http://lucas.di-pentima.com.ar/wordpress/2009/07/24/fiesta-sysadmin/</link>
		<comments>http://lucas.di-pentima.com.ar/wordpress/2009/07/24/fiesta-sysadmin/#comments</comments>
		<pubDate>Fri, 24 Jul 2009 14:51:44 +0000</pubDate>
		<dc:creator>Lucas Di Pentima</dc:creator>
				<category><![CDATA[GNU/Linux]]></category>
		<category><![CDATA[SysAdmin]]></category>
		<category><![CDATA[sysadmin day]]></category>

		<guid isPermaLink="false">http://lucas.di-pentima.com.ar/wordpress/?p=292</guid>
		<description><![CDATA[&#8230;y es por eso que en Capital Federal están organizando una fiesta especial para celebrar el día del Administrador de Sistemas! Lástima que estoy levemente lejos, pero pienso que ningún SysAdmin capitalino que se precie, debería faltar a semejante evento. Un buen SysAdmin es aquel que es invisible a sus usuarios, y eso es una [...]]]></description>
			<content:encoded><![CDATA[<p>&#8230;y es por eso que en Capital Federal están organizando una <a href="http://administradoresanonimos.org/">fiesta especial</a> para celebrar el día del Administrador de Sistemas!</p>
<p>Lástima que estoy levemente lejos, pero pienso que ningún SysAdmin capitalino que se precie, debería faltar a semejante evento.</p>
<p>Un buen SysAdmin es aquel que es invisible a sus usuarios, y eso es una maldición ya que nadie aprecia realmente el trabajo de un SysAdmin y sólo nos dedican pensamientos (de enojo) cuando las cosas van mal, es por eso que el próximo Viernes 31 de Julio, si estás leyendo esta página, al menos sentí gratitud porque lo estás haciendo gracias al buen trabajo de uno o más SysAdmins.</p>
<p>Si querés realmente demostrar tu aprecio hacia nosotros, lo que podés hacer es simple: aparecete en la fiesta y pagale unas buenas birras al SysAdmin que te parezca!</p>
<p>Dejo un video alusivo para sensibilizar a la población&#8230;</p>
<div class="wpv_videoc">
<div class="wpv_self"><a href="http://www.skarcha.com/wp-plugins/wpvideo/">WPvideo 1.10</a></div>
<div class="wpv_video"><object data="http://www.youtube.com/v/dkgvOA55JZ8" type="application/x-shockwave-flash" width="100%" height="100%"><param name="movie" value="http://www.youtube.com/v/dkgvOA55JZ8"></param></object></div>
<div class="wpv_titleauthor"></div>
<div class="wpv_download"><a target="_blank" href="http://downthisvideo.com/?url=http://www.youtube.com/watch?v=dkgvOA55JZ8">Download!</a></div>
</div>
<p><em>PD: Gracias Nelson por la noticia!</em></p>
]]></content:encoded>
			<wfw:commentRss>http://lucas.di-pentima.com.ar/wordpress/2009/07/24/fiesta-sysadmin/feed/</wfw:commentRss>
		<slash:comments>3</slash:comments>
		</item>
		<item>
		<title>Despliegue de aplicaciones web Rails con Puppet y Capistrano (parte I)</title>
		<link>http://lucas.di-pentima.com.ar/wordpress/2009/05/15/despliegue-de-aplicaciones-web-rails-con-puppet-y-capistrano-parte-i/</link>
		<comments>http://lucas.di-pentima.com.ar/wordpress/2009/05/15/despliegue-de-aplicaciones-web-rails-con-puppet-y-capistrano-parte-i/#comments</comments>
		<pubDate>Fri, 15 May 2009 19:33:43 +0000</pubDate>
		<dc:creator>Lucas Di Pentima</dc:creator>
				<category><![CDATA[GNU/Linux]]></category>
		<category><![CDATA[Internet]]></category>
		<category><![CDATA[SysAdmin]]></category>
		<category><![CDATA[capistrano]]></category>
		<category><![CDATA[puppet]]></category>
		<category><![CDATA[ruby on rails]]></category>

		<guid isPermaLink="false">http://lucas.di-pentima.com.ar/wordpress/?p=265</guid>
		<description><![CDATA[Hace algunas semanas me puse a investigar un poco sobre el despliegue de aplicaciones hechas con Ruby on Rails, ya que en mi laburo vamos a comenzar a desarrollar algunas apps en esta plataforma, y quería tener cocinado el tema de infraestructura antes que sea necesario ponerlas en producción. Leyendo variados artículos en la blogósfera, [...]]]></description>
			<content:encoded><![CDATA[<p>Hace algunas semanas me puse a investigar un poco sobre el despliegue de aplicaciones hechas con <a href="http://rubyonrails.org/">Ruby on Rails</a>, ya que en mi laburo vamos a comenzar a desarrollar algunas apps en esta plataforma, y quería tener cocinado el tema de infraestructura antes que sea necesario ponerlas en producción.</p>
<p>Leyendo variados artículos en la blogósfera, he visto que una buena dupla como software <em>&#8220;plataforma base de Rails&#8221;</em> es el uso de <a href="http://mongrel.rubyforge.org/">Mongrel</a> y <a href="http://wiki.nginx.org/Main">Nginx</a>, siendo el primero el servidor de aplicaciones y el último el frontend HTTP. Esta combinación nos permite instalar una aplicación web en un servidor de recursos no muy abundantes, y aún así servir a una buena cantidad de usuarios concurrentes. Obvio que no he hecho métricas propias, pero Internet está lleno de este tipo de análisis.</p>
<p>El problema entonces se divide en dos:</p>
<ul>
<li>Instalar el software base necesario en los servidores</li>
<li>Realizar el despliegue (deploy) de la aplicación en si</li>
</ul>
<p>En este artículo vamos a ver cómo hago yo para mantener el software base (mongrel, nginx, gemas, &#8230;) instalado y configurado en los servidores que correspondan. Esta tarea la hago con <a href="http://reductivelabs.com/products/puppet/">Puppet</a>, una herramienta que <a href="http://lucas.di-pentima.com.ar/wordpress/2007/10/11/manejando-los-hilos-de-nuestra-infraestructura-it/">en un artículo anterior he comentado</a> que me permite administrar una gran cantidad de servidores sin tener que volverme un esclavo.<span id="more-265"></span>A modo de preámbulo, les voy a contar que mis servidores son todos <a href="http://www.debian.org">Debian</a> Lenny (stable) y usamos Rails 2.3.x.</p>
<p>Como primera medida, vamos a definir en Puppet lo necesario para que Ruby y Rails estén instalados, ya que son <em>el sistema operativo</em> de nuestra aplicación web.</p>
<p>Para poder instalar Rails 2.3.x desde el instalador de gemas, tenemos primero que instalar <em>rubygems </em>y<em> rubygems1.8</em>, pero Debian Lenny no trae la versión 1.3.1 que es la necesaria, por lo tanto acá es el único lugar donde vamos a hacer un poco de trampa, y vamos a instalar el paquete que podemos bajar desde la versión experimental <a href="http://packages.debian.org/experimental/all/rubygems/download">acá</a> y <a href="http://packages.debian.org/experimental/all/rubygems1.8/download">acá</a>.</p>
<p>¿Cómo instalar un paquete que no está en la distribución actual? Mi solución seguro no fue la mejor, pero anduvo! Lo que hago es vía Puppet envío el paquete al servidor en cuestión y después le digo que lo instale usando <em>dpkg</em>, de esta manera:</p>
<pre># Instalamos rubygems 1.3.1 desde paquetes de experimental, ya que Lenny no lo tiene
# La versión 1.3.1 es necesaria para rails 2.3.x

class rubygems {
    file {
        "/usr/src/rubygems1.8_1.3.1-1_all.deb":
            source =&gt; "puppet://puppet.marketingsur.com/files/packages/rubygems1.8_1.3.1-1_all.deb",
            owner =&gt; root,
            group =&gt; root,
            mode =&gt; 0644;
        "/usr/src/rubygems_1.3.1-1_all.deb":
            source =&gt; "puppet://puppet.marketingsur.com/files/packages/rubygems_1.3.1-1_all.deb",
            owner =&gt; root,
            group =&gt; root,
            mode =&gt; 0644;
    }

    package {
        "ruby1.8":
            ensure =&gt; installed;
        "ruby1.8-dev":
            ensure =&gt; installed;
        "make":
            ensure =&gt; installed;
        "rubygems1.8_1.3.1":
            source =&gt; "/usr/src/rubygems1.8_1.3.1-1_all.deb",
            provider =&gt; dpkg,
            ensure =&gt; installed,
            require =&gt; File["/usr/src/rubygems1.8_1.3.1-1_all.deb"];
        "rubygems_1.3.1":
            source =&gt; "/usr/src/rubygems_1.3.1-1_all.deb",
            provider =&gt; dpkg,
            ensure =&gt; installed,
            require =&gt; [ Package["ruby1.8"], Package["rubygems1.8_1.3.1"],
                         File["/usr/src/rubygems_1.3.1-1_all.deb"] ];
    }
}</pre>
<p>Con esto ya puedo definir la clase que me va a mantener instalado rails desde gemas:</p>
<pre># Instalamos rails desde gems porque la versión Debian es muy vieja
class rails {

    include rubygems

    package {
        "rails":
            provider =&gt; gem,
            ensure =&gt; installed,
            require =&gt; Package["rubygems_1.3.1"];
    }
}</pre>
<p>Nótese la libertad que Puppet no provee al mantenerse independiente del sistema de paquetes, mediante la palabra clave <em>provider</em> puedo decirle que instale paquetes desde otras fuentes, permitiendonos seguir tratando a ese recurso como un paquete abstracto.</p>
<p>Hasta aquí tenemos entonces el lenguaje ruby 1.8 instalado, y rails 2.3.x listo para ser usado.</p>
<h2>Mongrel Cluster</h2>
<p>Mongrel es una biblioteca Ruby que se usa para armar servidores web, está diseñada para tener buena performance sirviendo contenido dinámico, pero no estático&#8230; es por eso que lo último se lo dejamos a Nginx, como explico más abajo.</p>
<p>Volviendo a mongrel, la distribución Debian tiene un paquete llamado mongrel-cluster que nos deja todo bastante listo para usar, con scripts de inicio y apagado de los clusters, por lo que el trabajo adicional que hay que hacer es relativamente poco.</p>
<p>Primero armamos una clase para instalar el software y mantener funcionando el servicio:</p>
<pre>class mongrel {
    include rails

    package {
        "mongrel-cluster":
            ensure =&gt; installed,
            require =&gt; Package["rails"];
    }

    service {
        "mongrel-cluster":
            ensure =&gt; running,
            enable =&gt; true,
            hasrestart =&gt; true,
            hasstatus =&gt; true,
            require =&gt; Package["mongrel-cluster"];
    }
}</pre>
<p>Luego escribimos la definición que va a permitir dar vida a varios clusters mongrel:</p>
<pre>define mongrel-cluster-app ( $ipaddr="127.0.0.1",
                             $appdir="",
                             $port=8000,
                             $servers=3) {
    $root = $appdir ? {
        "" =&gt; "/var/www/${name}",
        default =&gt; "${appdir}",
    }

    include mongrel

    file {
        "/etc/mongrel-cluster/sites-available/${name}.conf":
            owner =&gt; root,
            group =&gt; root,
            mode =&gt; 0644,
            content =&gt; template("mongrel/cluster-app.conf.erb"),
            require =&gt; Package["mongrel-cluster"],
            notify =&gt; Service["mongrel-cluster"];

        "/etc/mongrel-cluster/sites-enabled/${name}.conf":
            ensure =&gt; "/etc/mongrel-cluster/sites-available/${name}.conf",
            require =&gt; File["/etc/mongrel-cluster/sites-available/${name}.conf"],
            notify =&gt; Service["mongrel-cluster"];
    }
}</pre>
<p>Esto configura el cluster mongrel en cuestión, activándolo y escribiendo el archivo de configuración a partir del siguiente simple template:</p>
<pre>---
address: &lt;%= ipaddr %&gt;
log_file: log/mongrel.log
port: "&lt;%= port %&gt;"
cwd: &lt;%= root %&gt;/current
environment: production
pid_file: tmp/pids/mongrel.pid
servers: &lt;%= servers %&gt;</pre>
<p>Con esto, tenemos el software mongrel-cluster instalado, y el cluster específico que va a ejecutar nuestra aplicación configurado y corriendo, listo para atender los requerimientos de los usuarios cuando le lleguen a través de nginx.</p>
<h2>Nginx</h2>
<p>Primero vamos a empezar con el webserver, el que se encarga de atender a los requests de los usuarios. Éste es un proyecto Ruso que está ganando popularidad por su gran velocidad y poco consumo de memoria. Mi anterior favorito era lighttpd, pero he tenido varios problemas de uso de memoria, y por lo que vi el proyecto está bastante frenado.</p>
<p>Del lado de Puppet, primero defino una clase que mantiene instalado y corriendo el servidor nginx, nada del otro mundo:</p>
<pre>class nginx {
    package {
        "nginx":
            ensure =&gt; installed;
    }

    service {
        "nginx":
            ensure =&gt; running,
            enable =&gt; true,
            hasrestart =&gt; true,
            hasstatus =&gt; false,
            require =&gt; Package["nginx"];
    }
}</pre>
<p>Luego, tengo una definición que me permite generar varias configuraciones de sitios basados en nginx y mongrel:</p>
<pre>define nginx-railsapp ( $rootdir="",
                        $ipaddr="",
                        $port=80,
                        $mongrels=["127.0.0.1, 8000, 3"] ) {
    $root = $rootdir ? {
        "" =&gt; "/var/www/${name}",
        default =&gt; "${rootdir}",
    }
    $listen = $ipaddr ? {
        "" =&gt; "${port}",
        default =&gt; "${ipaddr}:${port}",
    }
    $upstream_name = "mongrel-${name}"

    include nginx

    file {
        "${root}":
            ensure =&gt; directory,
            owner =&gt; www-data,
            group =&gt; www-data,
            mode =&gt; 0755;
        "/etc/nginx/sites-available/${name}":
            content =&gt; template("nginx/railsapp.conf.erb"),
            owner =&gt; root,
            group =&gt; root,
            mode =&gt; 0644,
            require =&gt; Package["nginx"],
            notify =&gt; Service["nginx"];
        "/etc/nginx/sites-enabled/${name}":
            ensure =&gt; "/etc/nginx/sites-available/${name}",
            require =&gt; File["/etc/nginx/sites-available/${name}"],
            notify =&gt; Service["nginx"];
    }
}</pre>
<p>Esta definición acepta 4 parámetros: el directorio raíz donde va a estar la app, la dirección IP en la que va a atender el webserver, su puerto, y las instancias mongrel que van a darle vida a la aplicación. Noten que por defecto todos los parámetros tienen un valor configurado, por lo que son opcionales.</p>
<p>Otro detalle a tener en cuenta es el parámetro <em>mongrels</em>, se puede ver que es una lista de <em>strings</em>, esa string define una tupla de 3 valores separados por coma, el primero corresponde al IP donde los mongrels atienden, el segundo es el puerto inicial, y el tercer valor la cantidad de instancias.</p>
<p>La receta configura un par de directorios y además el archivo de configuración de la aplicación, que obtiene a partir de un template (railsapp.conf.erb) que incluyo acá abajo:</p>
<pre>###
# ATENCION: Archivo de configuración manejado por Puppet!
###

upstream &lt;%= upstream_name %&gt; {
    #fair;
&lt;% mongrels.each do |mongrel| -%&gt;
&lt;% mongrel_ip, mongrel_port, mongrel_qty = mongrel.gsub(' ', '').split(',') -%&gt;
&lt;% mongrel_qty.to_i.times do |n| -%&gt;
    server &lt;%= mongrel_ip %&gt;:&lt;%= mongrel_port.to_i + n %&gt;;
&lt;% end -%&gt;
&lt;% end -%&gt;
}

server {
    listen &lt;%= listen %&gt;;
    server_name &lt;%= name %&gt; www.&lt;%= name %&gt;;
    charset off;

    # this rewrites all the requests to the maintenance.html
    # page if it exists in the doc root. This is for capistrano’s
    # disable web task
    if (-f &lt;%= root %&gt;/system/maintenance.html) {
        rewrite ^(.*)$ /system/maintenance.html last;
        break;
    }

    location / {
        root &lt;%= root %&gt;/current;
        index index.html index.htm;
    }

    # / -&gt; first search for local index.html then go to &lt;%= upstream_name %&gt;
    location ~ ^/$ {
        if (-f /index.html) {
            rewrite (.*) /index.html last;
        }
        proxy_pass http://&lt;%= upstream_name %&gt;;
    }

    # rails caching: searching first for $action.html local pages
    location / {
        if (!-f $request_filename.html) {
            proxy_pass http://&lt;%= upstream_name %&gt;;
        }
        rewrite (.*) $1.html last;
    }

    # serve static files directly
    location ~ .html {
        root &lt;%= root %&gt;/current/public;
    }

    location ~* ^.+\.(jpg|jpeg|gif|png|ico|css|zip|tgz|gz|rar|bz2|doc|xls|exe|pdf|ppt|txt|tar|mid|midi|wav|bmp|rtf|js|mov)$ {
        root &lt;%= root %&gt;/current/public;
    }

    # resend everything else to &lt;%= upstream_name %&gt;
    location / {
        proxy_pass  http://&lt;%= upstream_name %&gt;;
        proxy_redirect     off;
        proxy_set_header   Host             $host;
        proxy_set_header   X-Real-IP        $remote_addr;
        proxy_set_header   X-Forwarded-For  $proxy_add_x_forwarded_for;
    }
}</pre>
<p>Éste es un archivo de configuración que encontré <em>por ahi</em> y que lo adapté al formato de templates de ERB. Básicamente lo que hace es servir todo lo que sea contenido estático, y para lo dinámico (la aplicación web en si) hace de proxy ruteando los requests a el o los clusters mongrel que hayamos definido. Esto nos permitiría tener varios servidores atendiendo a la aplicación web, para repartir la carga.</p>
<h2>El toque final</h2>
<p>Luego de definir todos estos recursos, no nos queda más que usarlos. Ésto lo podemos hacer con una clase que defina la aplicación en cuestión, de la siguiente manera:</p>
<pre># midominio.com Web App (proxy balancer + backend)
class midominio-webapp {
    include rails
    include mongrel

    $mongrel_ipaddr = "127.0.0.1"
    $mongrel_port = 8000
    $mongrel_servers = 5

    $needed_gems = ["gema1", "gema2", "gema3"]

    nginx-railsapp {
        "midominio.com":
            ipaddr =&gt; "1.2.3.4",
            mongrels =&gt; ["${mongrel_ipaddr}, ${mongrel_port}, ${mongrel_servers}"];
    }
    mongrel-cluster-app {
        "midominio.com":
            ipaddr =&gt; "${mongrel_ipaddr}",
            port =&gt; "${mongrel_port}",
            servers =&gt; "${mongrel_servers}";
    }

    package {
        $needed_gems:
            provider =&gt; gem,
            ensure =&gt; installed,
            require =&gt; Package["rails"];
    }
}</pre>
<p>Luego esta clase la incluímos en el nodo que corresponda, y listo&#8230; al rato tenemos instalada la infraestructura para hostear nuestra aplicación web.</p>
<p>Espero se animen a usar Puppet si aún no lo han hecho. Su sintaxis no es de lo mas hermoso que puede existir, pero los beneficios que trae hacen ese tema algo insignificante.</p>
<p>En la segunda parte vamos a hablar de cómo automatizar la instalación de la aplicación en los servidores, usando <a href="http://www.capify.org/">Capistrano</a>.</p>
]]></content:encoded>
			<wfw:commentRss>http://lucas.di-pentima.com.ar/wordpress/2009/05/15/despliegue-de-aplicaciones-web-rails-con-puppet-y-capistrano-parte-i/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>Cómo usar Amarok 1.4 en Ubuntu 9.04 Jaunty</title>
		<link>http://lucas.di-pentima.com.ar/wordpress/2009/05/14/amarok-14-en-ubuntu-904-jaunty/</link>
		<comments>http://lucas.di-pentima.com.ar/wordpress/2009/05/14/amarok-14-en-ubuntu-904-jaunty/#comments</comments>
		<pubDate>Thu, 14 May 2009 13:46:14 +0000</pubDate>
		<dc:creator>Lucas Di Pentima</dc:creator>
				<category><![CDATA[GNU/Linux]]></category>
		<category><![CDATA[Software Libre]]></category>

		<guid isPermaLink="false">http://lucas.di-pentima.com.ar/wordpress/?p=260</guid>
		<description><![CDATA[Una de las grandes decepciones que he tenido en los últimos tiempos, es ver cómo Amarok: el mejor software de gestión de música de todos los tiempos, ha pasado a la mediocridad cuando llegó la versión 2.x. Si bien hoy en día uso como notebook personal una Macbook con su sistema operativo y gestor de [...]]]></description>
			<content:encoded><![CDATA[<p><img class="aligncenter size-full wp-image-261" title="amarok" src="http://lucas.di-pentima.com.ar/wordpress/wp-content/uploads/2009/05/amarok.jpg" alt="amarok" width="420" height="273" /></p>
<p>Una de las grandes decepciones que he tenido en los últimos tiempos, es ver cómo <a href="http://amarok.kde.org">Amarok</a>: el mejor software de gestión de música de todos los tiempos, ha pasado a la mediocridad cuando llegó la versión 2.x.</p>
<p>Si bien hoy en día uso como notebook personal una Macbook con su sistema operativo y gestor de música de fábrica, el Amarok 1.4 sigue siendo el mejor gestor que he usado y la segunda decepción que tuve fue cuando vi que Ubuntu 9.04 Jaunty trae la versión de Amarok 2.x, nombre clave: <em>bonito, barato&#8230;pero malo</em>.</p>
<p>Me ha tocado hacer un orgulloso <em>downgrade</em> a la versión 1.4, y lo pude hacer gracias a la <a href="http://phyx.wordpress.com/2009/04/30/amarok-14-en-ubuntu-904-jaunty-ppa/">inteligencia colectiva que promueve la blogósfera</a>, así que paso a describir las simples instrucciones para que todo aquel que esté sufriendo el Amarok 2.x, <em>pare de sufrir!</em></p>
<p>Primero agregamos una fuente de paquetes al apt, ejecutar estos comandos desde un Terminal en el entorno gráfico:</p>
<blockquote><p><code>gksu gedit /etc/apt/sources.list.d/amarok.list</code></p></blockquote>
<p>&#8230;agregando la siguiente línea:</p>
<blockquote><p><code>deb http://ppa.launchpad.net/bogdanb/ppa/ubuntu jaunty main</code></p></blockquote>
<p>Luego, agregamos la clave del paquete a nuestro anillo:</p>
<blockquote><p><code>sudo apt-key adv --recv-keys --keyserver keyserver.ubuntu.com \<br />
0x1d7e9dd033e89ba781e32a24b9f1c432ae74ae63</code></p></blockquote>
<p>Y por último, desinstalamos amarok 2.x para darle la bienvenida al 1.4:</p>
<blockquote><p><code>sudo apt-get update<br />
sudo apt-get remove amarok<br />
sudo apt-get install amarok14</code></p></blockquote>
<p>Eso es todo. Más simple, imposible.</p>
<p>Realmente, el amarok 2.x parece un insulto a los usuarios de Amarok, quizás deberían dejarlo para comenzar la release 3.x, nombre clave: <em>la anterior era una joda!</em></p>
]]></content:encoded>
			<wfw:commentRss>http://lucas.di-pentima.com.ar/wordpress/2009/05/14/amarok-14-en-ubuntu-904-jaunty/feed/</wfw:commentRss>
		<slash:comments>7</slash:comments>
		</item>
		<item>
		<title>Cerrando la puerta a los crackers</title>
		<link>http://lucas.di-pentima.com.ar/wordpress/2009/05/13/cerrando-la-puerta-a-los-crackers/</link>
		<comments>http://lucas.di-pentima.com.ar/wordpress/2009/05/13/cerrando-la-puerta-a-los-crackers/#comments</comments>
		<pubDate>Wed, 13 May 2009 20:24:44 +0000</pubDate>
		<dc:creator>Lucas Di Pentima</dc:creator>
				<category><![CDATA[GNU/Linux]]></category>
		<category><![CDATA[Internet]]></category>
		<category><![CDATA[SysAdmin]]></category>
		<category><![CDATA[bot]]></category>
		<category><![CDATA[fail2ban]]></category>
		<category><![CDATA[iptables]]></category>
		<category><![CDATA[ssh]]></category>

		<guid isPermaLink="false">http://lucas.di-pentima.com.ar/wordpress/?p=255</guid>
		<description><![CDATA[No es noticia nueva que tener una computadora conectada a Internet la deja expuesta a una serie de riesgos de seguridad, y es por eso que los administradores de sistemas, normalmente tomamos una serie de medidas básicas preventivas para evitar un disgusto posterior. Si bien mis servidores normalmente tienen un nivel de seguridad más que [...]]]></description>
			<content:encoded><![CDATA[<p><img class="aligncenter size-full wp-image-256" title="cyber-criminal" src="http://lucas.di-pentima.com.ar/wordpress/wp-content/uploads/2009/05/cyber-criminal.jpg" alt="cyber-criminal" width="600" height="400" /></p>
<p>No es noticia nueva que tener una computadora conectada a Internet la deja expuesta a una serie de riesgos de seguridad, y es por eso que los administradores de sistemas, normalmente tomamos una serie de medidas básicas preventivas para evitar un disgusto posterior.</p>
<p>Si bien mis servidores normalmente tienen un nivel de seguridad más que aceptable, los molestos <em>bots</em> de estas personas no dejan de intentar adivinar las claves de mis cuentas para poder acceder con privilegios de administrador a los servidores. Esto me causa un problema, pero no de seguridad, sino que me ocupan los recursos que tengo para otras cosas y a veces hasta producen enlentecimientos notables en los servidores virtuales mas pequeños.</p>
<p>Es por esto que me puse manos a la obra, a averiguar alguna manera de mantener a raya a estos muchachos, y lo que me encontré fue con un software pensado justamente para esto: <a href="http://www.fail2ban.org/">fail2ban</a>.</p>
<p>Este programa está ya listo para ser instalado y usado en mi <a href="http://www.debian.org">distribución favorita (Debian GNU/Linux)</a>, y al instalarse comienza a chequear los accesos fallidos de conexión por SSH, dejando 6 intentos y prohibiendo el acceso por IP por 10 minutos. Para prohibir el acceso utiliza reglas de iptables, y su funcionamiento es en modo <em>daemon</em>, un pequeño programa queda corriendo (muy chiquito, sirve hasta en VPS de 256 MB de RAM) revisando los distintos archivos de registros de sistema.</p>
<p>Lo interesante además es que trae una serie de plantillas para poder chequear otros tipos de servicios como FTP, SMTP, Web, etc. todo esto mediante reglas de análisis y acciones acordes, que se pueden personalizar para un uso específico.</p>
<p>En resumen, una muy simpática herramienta para los administradores de sistemas GNU/Linux, fácil de instalar y poner a funcionar, y el beneficio es enorme.</p>
<p>¡Que la disfruten!</p>
]]></content:encoded>
			<wfw:commentRss>http://lucas.di-pentima.com.ar/wordpress/2009/05/13/cerrando-la-puerta-a-los-crackers/feed/</wfw:commentRss>
		<slash:comments>3</slash:comments>
		</item>
		<item>
		<title>Pasando la barrera de los 100</title>
		<link>http://lucas.di-pentima.com.ar/wordpress/2009/05/12/pasando-la-barrera-de-los-100/</link>
		<comments>http://lucas.di-pentima.com.ar/wordpress/2009/05/12/pasando-la-barrera-de-los-100/#comments</comments>
		<pubDate>Wed, 13 May 2009 00:54:15 +0000</pubDate>
		<dc:creator>Lucas Di Pentima</dc:creator>
				<category><![CDATA[General]]></category>

		<guid isPermaLink="false">http://lucas.di-pentima.com.ar/wordpress/?p=251</guid>
		<description><![CDATA[Hoy, dispuesto a escribir un nuevo post (que ya verán en un futuro cercano) me doy cuenta mirando el Tablero de WordPress, que he llegado sin darme cuenta, al artículo número 100 desde aquel primer mensaje de bienvenida hace casi 5 años en este blog. Al darme cuenta de semejante evento, he dejado de lado [...]]]></description>
			<content:encoded><![CDATA[<p><img class="aligncenter size-full wp-image-252" title="100-articulos" src="http://lucas.di-pentima.com.ar/wordpress/wp-content/uploads/2009/05/100-articulos.png" alt="100-articulos" width="725" height="340" /></p>
<p>Hoy, dispuesto a escribir un nuevo post (que ya verán en un futuro cercano) me doy cuenta mirando el Tablero de WordPress, que he llegado sin darme cuenta, al artículo número 100 desde aquel <a href="http://lucas.di-pentima.com.ar/wordpress/2004/08/09/bienvenidos/">primer mensaje de bienvenida</a> hace casi 5 años en este blog.</p>
<p>Al darme cuenta de semejante evento, he dejado de lado el post original para hacer un breve (e inútil, seguramente) análisis de la vida de este pobre blog.</p>
<ul>
<li>Google Analytics dice que desde mayo del 2007 (fecha que empecé a usar Analytics) hasta la fecha, aproximadamente 25000 personas han perdido en promedio 1 minuto con 5 segundos de sus vidas leyendo mi sitio.</li>
<li>Bueno, en realidad tan sólo el 79% de esos 25000 visitantes han llegado a mi sitio, vomitado, y seguido con sus vidas <img src='http://lucas.di-pentima.com.ar/wordpress/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> </li>
<li>El promedio de artículos <strong>por mes</strong> que tengo es de 1,75 artículos, o lo que es lo mismo decir 1 artículo cada 17 días&#8230; estoy completamente seguro que estos últimos años este promedio viene bajando de lo lindo <img src='http://lucas.di-pentima.com.ar/wordpress/wp-includes/images/smilies/icon_biggrin.gif' alt=':D' class='wp-smiley' /> </li>
<li>Si bien la mayoría de mis artículos caen en la categoría <em>GNU/Linux</em>, <em>Internet</em>, <em>Software Libre</em> y <em>Programación</em>, la keyword campeona, la más popular por la que mucha gente llega a mi sitio es: <strong>lucas</strong> (¿¡!?) con casi el 12%, siendo además la 4ta búsqueda más popular: <strong>lucas di pentima</strong>.</li>
<li>Otro dato curioso, yo que pensaba que mi blog sería interesante para gente geek o al menos pre-geek (eso existe?), pero el casi 50% de mis visitantes usan Internet Explorer, y el 80% usan Windows (o al menos visitan mi blog desde Windows)</li>
<li>59 visitantes me han visitado entre 51 y 100 veces, que es un número bastante cercano a la cantidad actual de suscriptores (71) por RSS que tengo, tendrá algo que ver? Perdón a esos 22 mil personas que han malgastado su tiempo visitandome una sola vez, no fue mi intención.</li>
<li>Siguiendo con las estadísticas de Google con respecto a esta pobre gente que me visitó y no hizo mas que huir de mi sitio, en sumatoria he desperdiciado unas 28 horas de vida si tomamos en cuenta la media de cada uno de los 20130 visitantes que estuvieron en mi sitio entre 1 y 10 segundos.</li>
<li>&#8230;por otro lado, tengo 75 visitantes que han estado paseando por mi blog mas de 30 minutos! ESO es tiempo libre&#8230;</li>
<li>Con respecto a las fuentes de tráfico, Google me trae el 70% de las visitas, siendo la búsqueda técnica más popular (número 2 en el ranking) el término: <strong>bacula</strong>.</li>
<li>Coincidentemente, el artículo más popular, aparte de la página principal, es <a href="http://lucas.di-pentima.com.ar/wordpress/2006/01/01/bacula-el-servidor-de-backups-libre/">el de Bacula</a>, con unas 1711 visitas.</li>
</ul>
<p>Bueno, es todo por ahora&#8230; a partir de este post me he dado cuenta que no conozco mi blog, ni mis visitantes, que lo que escribo poco importa, y que seguramente si quiero hacer plata con mi sitio, lo que debería hacer es escribir algún artículo sobre la naturaleza y orígenes del nombre Lucas, y quizás por que no una autobiografía <img src='http://lucas.di-pentima.com.ar/wordpress/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> </p>
]]></content:encoded>
			<wfw:commentRss>http://lucas.di-pentima.com.ar/wordpress/2009/05/12/pasando-la-barrera-de-los-100/feed/</wfw:commentRss>
		<slash:comments>3</slash:comments>
		</item>
	</channel>
</rss>
