<?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/"
	xmlns:georss="http://www.georss.org/georss" xmlns:geo="http://www.w3.org/2003/01/geo/wgs84_pos#" xmlns:media="http://search.yahoo.com/mrss/"
	>

<channel>
	<title>AOWS</title>
	<atom:link href="http://aows.wordpress.com/feed/" rel="self" type="application/rss+xml" />
	<link>http://aows.wordpress.com</link>
	<description>Just another adrian's weblog</description>
	<lastBuildDate>Fri, 27 Jan 2012 11:55:59 +0000</lastBuildDate>
	<language>es</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.com/</generator>
<cloud domain='aows.wordpress.com' port='80' path='/?rsscloud=notify' registerProcedure='' protocol='http-post' />
<image>
		<url>http://s2.wp.com/i/buttonw-com.png</url>
		<title>AOWS</title>
		<link>http://aows.wordpress.com</link>
	</image>
	<atom:link rel="search" type="application/opensearchdescription+xml" href="http://aows.wordpress.com/osd.xml" title="AOWS" />
	<atom:link rel='hub' href='http://aows.wordpress.com/?pushpress=hub'/>
		<item>
		<title>Navegar por una revisión concreta de un repositorio Subversion</title>
		<link>http://aows.wordpress.com/2010/03/18/navegar-revision-concreta-repositorio-subversion/</link>
		<comments>http://aows.wordpress.com/2010/03/18/navegar-revision-concreta-repositorio-subversion/#comments</comments>
		<pubDate>Thu, 18 Mar 2010 09:38:48 +0000</pubDate>
		<dc:creator>adrian</dc:creator>
				<category><![CDATA[Uncategorized]]></category>
		<category><![CDATA[svn]]></category>

		<guid isPermaLink="false">http://aows.wordpress.com/?p=697</guid>
		<description><![CDATA[Subversion incluye de serie una interfaz web para navegar por los repositorios, aunque es muy limitada en funciones y sobre todo en usabilidad. Por defecto la web muestra la última revisión, pero&#8230; ¿cómo hacemos para navegar por una anterior? Pues &#8220;muy fácil&#8221;, añadiendo el parámetro !svn/bc/XXX/ a la url, siendo XXX el número de revisión. [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=aows.wordpress.com&amp;blog=6402793&amp;post=697&amp;subd=aows&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p><strong><a href="http://subversion.tigris.org">Subversion</a></strong> incluye de serie una interfaz web para navegar por los repositorios, aunque es muy limitada en funciones y sobre todo en usabilidad. </p>
<p>Por defecto la web muestra la última revisión, pero&#8230; ¿cómo hacemos para navegar por una anterior? Pues &#8220;muy fácil&#8221;, añadiendo el parámetro <code>!svn/bc/XXX/</code> a la url, siendo <code>XXX</code> el número de revisión.</p>
<p>Es decir, si por ejemplo el repositorio está en <code>http://svn.local/mi_proyecto/</code> y queremos ver la revisión 123, la dirección sería <code>http://svn.local/mi_proyecto/!svn/bc/123/</code>.</p>
<p>De todas formas si vas a hacer uso intensivo de esta herramienta quizá te interese utilizar otras aplicaciones como <a href="http://www.websvn.info/">WebSVN</a>, que incluyen muchas más opciones.</p>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/aows.wordpress.com/697/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/aows.wordpress.com/697/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/aows.wordpress.com/697/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/aows.wordpress.com/697/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/aows.wordpress.com/697/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/aows.wordpress.com/697/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/aows.wordpress.com/697/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/aows.wordpress.com/697/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/aows.wordpress.com/697/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/aows.wordpress.com/697/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/aows.wordpress.com/697/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/aows.wordpress.com/697/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/aows.wordpress.com/697/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/aows.wordpress.com/697/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=aows.wordpress.com&amp;blog=6402793&amp;post=697&amp;subd=aows&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://aows.wordpress.com/2010/03/18/navegar-revision-concreta-repositorio-subversion/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://0.gravatar.com/avatar/48f0e446a5ea1e500b04e0f01ca8be2b?s=96&#38;d=http%3A%2F%2F0.gravatar.com%2Favatar%2Fad516503a11cd5ca435acc9bb6523536%3Fs%3D96" medium="image">
			<media:title type="html">adrian</media:title>
		</media:content>
	</item>
		<item>
		<title>Efecto botón en un enlace con a:active</title>
		<link>http://aows.wordpress.com/2010/02/14/efecto-boton-enlace-con-css-a-active/</link>
		<comments>http://aows.wordpress.com/2010/02/14/efecto-boton-enlace-con-css-a-active/#comments</comments>
		<pubDate>Sun, 14 Feb 2010 01:24:47 +0000</pubDate>
		<dc:creator>adrian</dc:creator>
				<category><![CDATA[Uncategorized]]></category>
		<category><![CDATA[css]]></category>

		<guid isPermaLink="false">http://aows.wordpress.com/?p=686</guid>
		<description><![CDATA[Las pseudo-clases se aplican a ciertos selectores CSS para añadirles algunos efectos. Un buen ejemplo lo tenemos en los enlaces, a los que le podemos aplicar reglas según el estado en el que se encuentren: a:link un enlace no visitado a:visited un enlace ya visitado a:hover el ratón está sobre el enlace a:active el usuario [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=aows.wordpress.com&amp;blog=6402793&amp;post=686&amp;subd=aows&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>Las <a href="http://www.w3schools.com/CSS/css_pseudo_classes.asp">pseudo-clases</a> se aplican a ciertos selectores CSS para añadirles algunos efectos. Un buen ejemplo lo tenemos en los enlaces, a los que le podemos aplicar reglas según el <em>estado</em> en el que se encuentren:</p>
<ul>
<li><strong><code>a:link</code></strong> un enlace no visitado</li>
<li><strong><code>a:visited</code></strong> un enlace ya visitado</li>
<li><strong><code>a:hover</code></strong> el ratón está sobre el enlace</li>
<li><strong><code>a:active</code></strong> el usuario hace click sobre el enlace</li>
</ul>
<p>En este ejemplo vamos a usar <code>a:active</code> para darle un <em>efecto botón</em> a un enlace. Para ello tendremos que añadir las siguientes reglas a nuestro CSS, así <strong>cuando un usuario haga click en el enlace éste se desplazará ligeramente hacia abajo dando la impresión de que se ha presionado un botón</strong> (lo cual puede ser una interesante ayuda visual).</p>
<p><pre class="brush: css;">
a:active {
  position: relative;
  top: 2px;
}
</pre></p>
<p>Como wordpress.com no deja insertar estilos propios en los posts, no me queda más remedio que dejar el ejemplo en mi dominio: <a href="http://adrian.otero.ws/demos/201002/links_active_css/">ejemplo de efecto botón con <code>a:active</code></a>.</p>
<p>Visto en &#8220;<a href="http://www.smashingmagazine.com/2010/02/13/the-definitive-guide-to-styling-web-links/">The definitive guide to styling web links</a>&#8220;.</p>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/aows.wordpress.com/686/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/aows.wordpress.com/686/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/aows.wordpress.com/686/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/aows.wordpress.com/686/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/aows.wordpress.com/686/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/aows.wordpress.com/686/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/aows.wordpress.com/686/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/aows.wordpress.com/686/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/aows.wordpress.com/686/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/aows.wordpress.com/686/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/aows.wordpress.com/686/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/aows.wordpress.com/686/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/aows.wordpress.com/686/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/aows.wordpress.com/686/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=aows.wordpress.com&amp;blog=6402793&amp;post=686&amp;subd=aows&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://aows.wordpress.com/2010/02/14/efecto-boton-enlace-con-css-a-active/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://0.gravatar.com/avatar/48f0e446a5ea1e500b04e0f01ca8be2b?s=96&#38;d=http%3A%2F%2F0.gravatar.com%2Favatar%2Fad516503a11cd5ca435acc9bb6523536%3Fs%3D96" medium="image">
			<media:title type="html">adrian</media:title>
		</media:content>
	</item>
		<item>
		<title>La web se decanta por Unicode</title>
		<link>http://aows.wordpress.com/2010/02/13/web-se-decanta-por-unicode/</link>
		<comments>http://aows.wordpress.com/2010/02/13/web-se-decanta-por-unicode/#comments</comments>
		<pubDate>Sat, 13 Feb 2010 00:46:33 +0000</pubDate>
		<dc:creator>adrian</dc:creator>
				<category><![CDATA[Uncategorized]]></category>
		<category><![CDATA[encoding]]></category>
		<category><![CDATA[unicode]]></category>
		<category><![CDATA[utf]]></category>

		<guid isPermaLink="false">http://aows.wordpress.com/?p=675</guid>
		<description><![CDATA[El problema con los encodings está presente en los programas informáticos desde hace muchos años; el rápido crecimiento de Unicode en la web, cerca ya del 50% de las webs usan alguna variante de esta codificación (el gráfico proviene de estadísticas internas de Google basadas en las páginas indexadas por el buscador), nos permite ver [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=aows.wordpress.com&amp;blog=6402793&amp;post=675&amp;subd=aows&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<div id="attachment_676" class="wp-caption aligncenter" style="width: 310px"><a href="http://aows.files.wordpress.com/2010/02/unicode.png"><img src="http://aows.files.wordpress.com/2010/02/unicode.png?w=300&#038;h=225" alt="Casi el 50% de la red usa Unicode" title="unicode" width="300" height="225" class="size-medium wp-image-676" /></a><p class="wp-caption-text">Casi el 50% de la red usa Unicode</p></div>
<p>El problema con los encodings está presente en los programas informáticos desde hace muchos años; el rápido crecimiento de <strong>Unicode</strong> en la web, cerca ya del 50% de las webs usan alguna variante de esta codificación (el gráfico proviene de <a href="http://googleblog.blogspot.com/2010/01/unicode-nearing-50-of-web.html">estadísticas internas de Google</a> basadas en las páginas indexadas por el buscador), nos permite ver algo de luz para aquellos cuyo idioma principal no sea el inglés. Puede que algún día dejemos de ver caracteres como <code>Ã«rnÃ´n</code>.</p>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/aows.wordpress.com/675/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/aows.wordpress.com/675/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/aows.wordpress.com/675/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/aows.wordpress.com/675/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/aows.wordpress.com/675/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/aows.wordpress.com/675/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/aows.wordpress.com/675/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/aows.wordpress.com/675/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/aows.wordpress.com/675/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/aows.wordpress.com/675/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/aows.wordpress.com/675/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/aows.wordpress.com/675/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/aows.wordpress.com/675/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/aows.wordpress.com/675/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=aows.wordpress.com&amp;blog=6402793&amp;post=675&amp;subd=aows&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://aows.wordpress.com/2010/02/13/web-se-decanta-por-unicode/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://0.gravatar.com/avatar/48f0e446a5ea1e500b04e0f01ca8be2b?s=96&#38;d=http%3A%2F%2F0.gravatar.com%2Favatar%2Fad516503a11cd5ca435acc9bb6523536%3Fs%3D96" medium="image">
			<media:title type="html">adrian</media:title>
		</media:content>

		<media:content url="http://aows.files.wordpress.com/2010/02/unicode.png?w=300" medium="image">
			<media:title type="html">unicode</media:title>
		</media:content>
	</item>
		<item>
		<title>Logging con SLF4J</title>
		<link>http://aows.wordpress.com/2010/02/13/logging-con-slf4j/</link>
		<comments>http://aows.wordpress.com/2010/02/13/logging-con-slf4j/#comments</comments>
		<pubDate>Sat, 13 Feb 2010 00:16:40 +0000</pubDate>
		<dc:creator>adrian</dc:creator>
				<category><![CDATA[Uncategorized]]></category>
		<category><![CDATA[java]]></category>
		<category><![CDATA[log4j]]></category>
		<category><![CDATA[slf4j]]></category>

		<guid isPermaLink="false">http://aows.wordpress.com/?p=662</guid>
		<description><![CDATA[SLF4J (Simple Logging Facade for Java) proporciona una capa de abstracción sobre otros APIs de logging como log4j o LogBack. Esta librería permite cambiar la implementación de forma transparente, de un modo similar a Commons Logging. Sin embargo, ésta última elige el API en tiempo de ejecución (lo cual puede provocar algún que otro problema), [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=aows.wordpress.com&amp;blog=6402793&amp;post=662&amp;subd=aows&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p><img src="http://aows.files.wordpress.com/2010/02/slf4j-logo.jpg?w=150&#038;h=63" alt="SLF4J" title="slf4j-logo" width="150" height="63" class="alignright size-thumbnail wp-image-670" /><a href="http://www.slf4j.org/"><strong>SLF4J</strong></a> (<em>Simple Logging Facade for Java</em>) proporciona una capa de abstracción sobre otros APIs de logging como <a href="http://logging.apache.org/log4j/">log4j</a> o <a href="http://logback.qos.ch/">LogBack</a>. Esta librería permite cambiar la implementación de forma transparente, de un modo similar a <a href="http://commons.apache.org/logging/">Commons Logging</a>. Sin embargo, ésta última elige el API en tiempo de ejecución (lo cual puede provocar algún que otro problema), mientras que SFL4J lo hace al desplegar la aplicación usando un JAR <em>puente</em>.</p>
<p>Una de las grandes ventajas de SLF4J es que no necesitamos inundar nuestro código con comprobaciones del nivel de log. Si usamos log4j, por ejemplo, podemos tener algo como:</p>
<p><pre class="brush: java;">
log.debug(&quot;Esto es un &quot; + texto + &quot; muy largo, con &quot; + variables[i] + &quot; que se van añadiendo a una &quot; + object.getCadena());
</pre></p>
<p>Por mucho que el compilador optimice este código (reemplazando las concatenaciones de cadenas usando <a href="http://aows.wordpress.com/2008/02/11/trabajando-cadenas-java-string-stringbuffer-stringbuilder/">StringBuilder</a>), si se ejecuta muchas veces repetidamente sin necesidad (porque la aplicación está desplegada en producción y el nivel de log está por encima de debug, por ejemplo) podría llegar a afectar al rendimiento. Por lo que no es extraño ver código Java tal como este:</p>
<p><pre class="brush: java;">
if (log.isDebugEnabled()) {
  log.debug(&quot;Esto es un &quot; + texto + &quot; muy largo, con &quot; + variables[i] + &quot; que se van añadiendo a una &quot; + object.getCadena());
}
</pre></p>
<p>SLF4J nos permite parametrizar el log al estilo <em>printf</em> de C:</p>
<p><pre class="brush: java;">
log.debug(&quot;Esto es un {} muy largo, con {} que se van añadiendo a una {}&quot;, texto, variables[i], object.getCadena());
</pre></p>
<p>Esto evita problemas de rendimiento al tratar con cadenas, pero evidentemente si los parámetros como <code>object.getCadena()</code> son costosos nada nos librará de tener que usar los dichosos <code>if</code>.</p>
<p>SLF4J tiene más ventajas, para conocerlas nada mejor que <a href="http://baptiste-wicht.developpez.com/tutorials/java/slf4j/">este artículo</a> o el <a href="http://www.slf4j.org/manual.html">manual oficial</a>.</p>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/aows.wordpress.com/662/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/aows.wordpress.com/662/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/aows.wordpress.com/662/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/aows.wordpress.com/662/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/aows.wordpress.com/662/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/aows.wordpress.com/662/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/aows.wordpress.com/662/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/aows.wordpress.com/662/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/aows.wordpress.com/662/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/aows.wordpress.com/662/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/aows.wordpress.com/662/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/aows.wordpress.com/662/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/aows.wordpress.com/662/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/aows.wordpress.com/662/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=aows.wordpress.com&amp;blog=6402793&amp;post=662&amp;subd=aows&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://aows.wordpress.com/2010/02/13/logging-con-slf4j/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
	
		<media:content url="http://0.gravatar.com/avatar/48f0e446a5ea1e500b04e0f01ca8be2b?s=96&#38;d=http%3A%2F%2F0.gravatar.com%2Favatar%2Fad516503a11cd5ca435acc9bb6523536%3Fs%3D96" medium="image">
			<media:title type="html">adrian</media:title>
		</media:content>

		<media:content url="http://aows.files.wordpress.com/2010/02/slf4j-logo.jpg?w=150" medium="image">
			<media:title type="html">slf4j-logo</media:title>
		</media:content>
	</item>
		<item>
		<title>Stand vertical casero para el MacBook</title>
		<link>http://aows.wordpress.com/2010/02/11/stand-vertical-casero-macbook/</link>
		<comments>http://aows.wordpress.com/2010/02/11/stand-vertical-casero-macbook/#comments</comments>
		<pubDate>Thu, 11 Feb 2010 22:07:49 +0000</pubDate>
		<dc:creator>adrian</dc:creator>
				<category><![CDATA[Uncategorized]]></category>
		<category><![CDATA[diy]]></category>
		<category><![CDATA[macbook]]></category>

		<guid isPermaLink="false">http://aows.wordpress.com/?p=658</guid>
		<description><![CDATA[Me encontraba a un solo click de comprar este soporte vertical, cuando se me ocurrió la idea del servilletero. Cutre, pero barato y completamente funcional. Ahora bien, he de buscar uno un poco más acorde con el ordenador y que no cante tanto<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=aows.wordpress.com&amp;blog=6402793&amp;post=658&amp;subd=aows&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p><img alt="Stand vertical para el MacBook" src="http://farm5.static.flickr.com/4022/4348832879_1bcdeb97d7_o.jpg" title="stand-macbook" class="aligncenter" width="480" height="640" /></p>
<p>Me encontraba a un solo click de comprar <a href="http://deskstandz.com/product_info.php?cPath=21&amp;products_id=29">este soporte vertical</a>, cuando se me ocurrió la idea del <strong>servilletero</strong>. Cutre, pero barato y completamente funcional. Ahora bien, he de buscar uno un poco más acorde con el ordenador y que no cante tanto <img src='http://s0.wp.com/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> </p>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/aows.wordpress.com/658/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/aows.wordpress.com/658/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/aows.wordpress.com/658/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/aows.wordpress.com/658/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/aows.wordpress.com/658/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/aows.wordpress.com/658/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/aows.wordpress.com/658/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/aows.wordpress.com/658/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/aows.wordpress.com/658/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/aows.wordpress.com/658/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/aows.wordpress.com/658/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/aows.wordpress.com/658/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/aows.wordpress.com/658/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/aows.wordpress.com/658/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=aows.wordpress.com&amp;blog=6402793&amp;post=658&amp;subd=aows&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://aows.wordpress.com/2010/02/11/stand-vertical-casero-macbook/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
	
		<media:content url="http://0.gravatar.com/avatar/48f0e446a5ea1e500b04e0f01ca8be2b?s=96&#38;d=http%3A%2F%2F0.gravatar.com%2Favatar%2Fad516503a11cd5ca435acc9bb6523536%3Fs%3D96" medium="image">
			<media:title type="html">adrian</media:title>
		</media:content>

		<media:content url="http://farm5.static.flickr.com/4022/4348832879_1bcdeb97d7_o.jpg" medium="image">
			<media:title type="html">stand-macbook</media:title>
		</media:content>
	</item>
		<item>
		<title>Desplegando Twitter en producción usando BitTorrent</title>
		<link>http://aows.wordpress.com/2010/02/10/desplegando-twitter-produccion-usando-bittorrent/</link>
		<comments>http://aows.wordpress.com/2010/02/10/desplegando-twitter-produccion-usando-bittorrent/#comments</comments>
		<pubDate>Wed, 10 Feb 2010 21:50:49 +0000</pubDate>
		<dc:creator>adrian</dc:creator>
				<category><![CDATA[Uncategorized]]></category>
		<category><![CDATA[bittorrent]]></category>
		<category><![CDATA[twitter]]></category>

		<guid isPermaLink="false">http://aows.wordpress.com/?p=648</guid>
		<description><![CDATA[Los problemas de mantenimiento que conllevan aplicaciones tan grandes como Twitter pueden pasar desapercibidos para los que no estamos acostumbrados a una escala de centenares (e incluso miles) de máquinas en producción. Y no se puede negar el que la solución adoptada no sea original: desplegar utilizando BitTorrent. Se necesita una máquina que haga las [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=aows.wordpress.com&amp;blog=6402793&amp;post=648&amp;subd=aows&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p><img src="http://aows.files.wordpress.com/2010/02/twitter-social-icons.jpg?w=150&#038;h=148" alt="" title="Twitter" width="150" height="148" class="alignright size-thumbnail wp-image-649" />Los problemas de mantenimiento que conllevan aplicaciones tan grandes como Twitter pueden pasar desapercibidos para los que no estamos acostumbrados a una escala de centenares (e incluso miles) de máquinas en producción. Y no se puede negar el que la solución adoptada no sea original: <strong>desplegar utilizando BitTorrent</strong>.</p>
<p>Se necesita una máquina que haga las veces de <em>tracker</em> y otra que sirva como <em>seeder</em>. Una vez creado el torrent, el resto de servidores comenzarán a descargar los archivos y a compartirlos entre sí; el despliegue es (obviamente) mucho más rápido que si subimos la aplicación servidor a servidor.</p>
<p>El proyecto, llamado <em><strong>Murder</strong></em>, está basado en BitTornado y está <a href="http://github.com/lg/murder">disponible en GitHub</a> bajo la licencia Apache. Como ejemplo de despliegue dejan esta secuencia de comandos que usan Capistrano:</p>
<p><pre class="brush: bash;">
cap murder:distribute_files
cap murder:start_tracker
cap murder:create_torrent tag=&quot;Deploy20100101&quot; files_path=&quot;/usr/local/twitter/production/current&quot;
cap murder:start_seeding tag=&quot;Deploy20100101&quot;
cap murder:peer tag=&quot;Deploy20100101&quot; destination_path=&quot;/usr/local/twitter/releases&quot;
</pre></p>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/aows.wordpress.com/648/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/aows.wordpress.com/648/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/aows.wordpress.com/648/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/aows.wordpress.com/648/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/aows.wordpress.com/648/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/aows.wordpress.com/648/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/aows.wordpress.com/648/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/aows.wordpress.com/648/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/aows.wordpress.com/648/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/aows.wordpress.com/648/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/aows.wordpress.com/648/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/aows.wordpress.com/648/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/aows.wordpress.com/648/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/aows.wordpress.com/648/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=aows.wordpress.com&amp;blog=6402793&amp;post=648&amp;subd=aows&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://aows.wordpress.com/2010/02/10/desplegando-twitter-produccion-usando-bittorrent/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://0.gravatar.com/avatar/48f0e446a5ea1e500b04e0f01ca8be2b?s=96&#38;d=http%3A%2F%2F0.gravatar.com%2Favatar%2Fad516503a11cd5ca435acc9bb6523536%3Fs%3D96" medium="image">
			<media:title type="html">adrian</media:title>
		</media:content>

		<media:content url="http://aows.files.wordpress.com/2010/02/twitter-social-icons.jpg?w=150" medium="image">
			<media:title type="html">Twitter</media:title>
		</media:content>
	</item>
		<item>
		<title>&#8220;null&#8221;, o una de las maldiciones de Java</title>
		<link>http://aows.wordpress.com/2010/02/04/null-maldicion-java/</link>
		<comments>http://aows.wordpress.com/2010/02/04/null-maldicion-java/#comments</comments>
		<pubDate>Thu, 04 Feb 2010 21:47:52 +0000</pubDate>
		<dc:creator>adrian</dc:creator>
				<category><![CDATA[Uncategorized]]></category>
		<category><![CDATA[java]]></category>
		<category><![CDATA[null]]></category>

		<guid isPermaLink="false">http://aows.wordpress.com/?p=625</guid>
		<description><![CDATA[Tratar con valores nulos es, desde siempre, un dolor de muelas muy importante en el mundo de Java. En este artículo de Redcode nos lo recuerdan y proponen algunas de las pocas opciones que hay: Confiar en que nuestras referencias nunca serán nulas y no realizar ninguna comprobación. Como es obvio, un tanto peligroso, sobre [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=aows.wordpress.com&amp;blog=6402793&amp;post=625&amp;subd=aows&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>Tratar con valores nulos es, desde siempre, un <em>dolor de muelas</em> muy importante en el mundo de Java. En <a href="http://www.redcode.nl/blog/2010/02/handling-null-in-java/">este artículo</a> de <strong>Redcode</strong> nos lo recuerdan y proponen algunas de las pocas opciones que hay:</p>
<ul>
<li>Confiar en que nuestras referencias nunca serán nulas y no realizar ninguna comprobación. Como es obvio, un <em>tanto</em> peligroso, sobre todo cuando utilizamos librerías de terceros cuyos resultados no conocemos con seguridad.
<p><pre class="brush: java;">
List&lt;Person&gt; people = getPeople();
for (Person person : people) {
  House house = person.getHouse();
  System.out.println(&quot;House price: &quot; + house.getPrice());
}
</pre>
</li>
<li>Inundar el código con condicionales anidados, uno detrás de otro según el número de objetos que tengamos.
<p><pre class="brush: java;">
List&lt;Person&gt; people = getPeople();
if (people != null) {
  for (Person person : people) {
    if (person != null) {
      House house = person.getHouse();
      if (house != null) {
        System.out.println(&quot;House price: &quot; + house.getPrice());
      }
    }
  }
}
</pre>
</li>
<li>Utilizar anotaciones (<code>@Nullable</code> y <code>@NotNull</code>) que nuestro IDE usará para advertirnos de posibles riesgos de obtener un <em>NullPointerException</em>. No nos evitará el tener que hacer comprobaciones, pero podemos fiarnos si no hay <em>warnings</em>.
<p><pre class="brush: java;">
@Nullable
private List&lt;Person&gt; getPeople() {
  // ...
}

// ... 

List&lt;Person&gt; people = getPeople();
// recibiremos un warning, y es que &quot;people&quot; puede ser nulo
for (Person person : people) {
  House house = person.getHouse();
  System.out.println(&quot;House price: &quot; + house.getPrice());
}
</pre>
</li>
<li>Utilizar algún patrón como <a href="http://en.wikipedia.org/wiki/Null_Object_pattern">Null Object pattern</a> o una <a href="http://martinfowler.com/eaaCatalog/specialCase.html">versión más general (<strong>Special Case</strong>)</a> propuesta por Martin Fowler. El problema es que esto no soluciona las interacciones con librerías externas (que pueden seguir devolviendo nulos) y complica el proyecto con un montón de objetos nuevos.</li>
</ul>
<p>Por desgracia, <strong>la nueva versión de Java no incluirá ningún operador específico</strong> para solucionar esta situación. Estuvo en los planes incluir algo similar al <em><del datetime="2010-02-05T07:28:57+00:00">operador Elvis</del> <a href="http://groovy.codehaus.org/Operators#Operators-SafeNavigationOperator%28%3F.%29">safe navigation operator</a></em> de Groovy:</p>
<p><pre class="brush: groovy;">
List&lt;Person&gt; people = getPeople()
println people?.get(0)?.getHouse()?.getPrice()
</pre></p>
<p>pero finalmente todo seguirá igual. Una pena porque esto <strong>mejoraría enormemente la legibilidad del código</strong>; lo pondría incluso por delante de nuevas características como las <em>closures</em> (que llegan tarde, esperemos que no mal y arrastro).</p>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/aows.wordpress.com/625/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/aows.wordpress.com/625/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/aows.wordpress.com/625/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/aows.wordpress.com/625/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/aows.wordpress.com/625/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/aows.wordpress.com/625/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/aows.wordpress.com/625/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/aows.wordpress.com/625/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/aows.wordpress.com/625/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/aows.wordpress.com/625/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/aows.wordpress.com/625/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/aows.wordpress.com/625/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/aows.wordpress.com/625/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/aows.wordpress.com/625/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=aows.wordpress.com&amp;blog=6402793&amp;post=625&amp;subd=aows&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://aows.wordpress.com/2010/02/04/null-maldicion-java/feed/</wfw:commentRss>
		<slash:comments>5</slash:comments>
	
		<media:content url="http://0.gravatar.com/avatar/48f0e446a5ea1e500b04e0f01ca8be2b?s=96&#38;d=http%3A%2F%2F0.gravatar.com%2Favatar%2Fad516503a11cd5ca435acc9bb6523536%3Fs%3D96" medium="image">
			<media:title type="html">adrian</media:title>
		</media:content>
	</item>
		<item>
		<title>Facebook lleva a PHP al límite con HipHop</title>
		<link>http://aows.wordpress.com/2010/02/03/facebook-lleva-php-limite-con-hiphop/</link>
		<comments>http://aows.wordpress.com/2010/02/03/facebook-lleva-php-limite-con-hiphop/#comments</comments>
		<pubDate>Tue, 02 Feb 2010 23:03:55 +0000</pubDate>
		<dc:creator>adrian</dc:creator>
				<category><![CDATA[Uncategorized]]></category>
		<category><![CDATA[facebook]]></category>
		<category><![CDATA[hiphop]]></category>
		<category><![CDATA[php]]></category>

		<guid isPermaLink="false">http://aows.wordpress.com/?p=615</guid>
		<description><![CDATA[Que PHP tiene problemas de rendimiento es un hecho que muchos desarrolladores han sufrido en sus propias carnes. Para muchos es despreciable, pero cuando tu producto es una web que por momentos supera en visitas a Google, lo que tienes es un problemón. Según comentan en el blog de desarrolladores, PHP proporciona muchas ventajas a [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=aows.wordpress.com&amp;blog=6402793&amp;post=615&amp;subd=aows&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p><img src="http://aows.files.wordpress.com/2010/02/hiphop.jpg?w=700" alt="HipHop for PHP" title="hiphop"   class="alignright size-full wp-image-616" />Que <a href="http://php.net">PHP</a> tiene problemas de rendimiento es un hecho que muchos desarrolladores han sufrido en sus propias carnes. Para muchos es despreciable, pero cuando tu producto es una web que <a href="http://www.facebook.com/note.php?note_id=226824417962">por momentos supera en visitas a Google</a>, lo que tienes es un problemón.</p>
<p>Según <a href="http://developers.facebook.com/news.php?blog=1&amp;story=358">comentan</a> en el blog de desarrolladores, PHP proporciona muchas ventajas a Facebook: es más rápido de aprender que otros lenguajes, más simple a la hora de programar, y mucho más sencillo encontrar trabajadores en esta tecnología. Salvo en lo último, en el resto no estoy de acuerdo; pero este no es el tema.</p>
<p>El caso es que en Facebook estaban decididos a mejorar PHP, y parece que lo han conseguido con <strong>HipHop for PHP</strong>. <strong>Hoy mismo lo harán open source</strong> y estará disponible <a>en GitHub</a> para que cualquiera que quiera lo instale en su servidor. </p>
<p>Básicamente, lo que hace HipHop es <strong>transformar el código fuente PHP en código C++</strong>, para luego compilarlo con g++; en dicha transformación trata de <strong>hacer al lenguaje lo menos dinámico posible</strong>, traduciendo después las sentencias directamente por su equivalente en C++ (no parece hacer ningún tipo de optimización adicional).</p>
<p>Con la implantación de HipHop for PHP desde Facebook indican que <strong>el rendimiento aumenta de media un 50%</strong>; actualmente el 90% de las peticiones a Facebook ya son servidas por HipHop, por lo que su fiabilidad debería estar más que probada.</p>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/aows.wordpress.com/615/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/aows.wordpress.com/615/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/aows.wordpress.com/615/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/aows.wordpress.com/615/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/aows.wordpress.com/615/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/aows.wordpress.com/615/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/aows.wordpress.com/615/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/aows.wordpress.com/615/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/aows.wordpress.com/615/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/aows.wordpress.com/615/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/aows.wordpress.com/615/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/aows.wordpress.com/615/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/aows.wordpress.com/615/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/aows.wordpress.com/615/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=aows.wordpress.com&amp;blog=6402793&amp;post=615&amp;subd=aows&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://aows.wordpress.com/2010/02/03/facebook-lleva-php-limite-con-hiphop/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
	
		<media:content url="http://0.gravatar.com/avatar/48f0e446a5ea1e500b04e0f01ca8be2b?s=96&#38;d=http%3A%2F%2F0.gravatar.com%2Favatar%2Fad516503a11cd5ca435acc9bb6523536%3Fs%3D96" medium="image">
			<media:title type="html">adrian</media:title>
		</media:content>

		<media:content url="http://aows.files.wordpress.com/2010/02/hiphop.jpg" medium="image">
			<media:title type="html">hiphop</media:title>
		</media:content>
	</item>
		<item>
		<title>¡Vuelve Lost!</title>
		<link>http://aows.wordpress.com/2010/02/02/vuelve-lost-sexta-temporada/</link>
		<comments>http://aows.wordpress.com/2010/02/02/vuelve-lost-sexta-temporada/#comments</comments>
		<pubDate>Tue, 02 Feb 2010 21:30:29 +0000</pubDate>
		<dc:creator>adrian</dc:creator>
				<category><![CDATA[Uncategorized]]></category>
		<category><![CDATA[lost]]></category>
		<category><![CDATA[tv]]></category>

		<guid isPermaLink="false">http://aows.wordpress.com/?p=608</guid>
		<description><![CDATA[Esta noche comienza la sexta y última temporada de la serie que más ha dado que hablar en la década pasada. Después de 103 capítulos emitidos, el primero de ellos el 22 de septiembre del 2004, el argumento está en su momento álgido y en su punto para que alguien dé una buena explicación de [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=aows.wordpress.com&amp;blog=6402793&amp;post=608&amp;subd=aows&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p><div id="attachment_613" class="wp-caption alignright" style="width: 160px"><img src="http://aows.files.wordpress.com/2010/02/lost1.png?w=700" alt="" title="lost"   class="size-full wp-image-613" /><p class="wp-caption-text">Y también vuelve Kate, por supuesto</p></div>Esta noche comienza la <strong>sexta y última temporada</strong> de la serie que más ha dado que hablar en la década pasada. Después de <strong>103</strong> capítulos emitidos, el primero de ellos el 22 de septiembre del 2004, el argumento está en su momento álgido y en su punto para que alguien dé una buena explicación de lo que ocurre en esa isla.</p>
<p>Tras su estreno en la cadena americana ABC, mañana los usuarios de Digital+ podrán disfrutarla en versión original subtitulada en castellano (¿se bajarán los subtítulos de <a href="http://lostzilla.net">lostzilla.net</a>?), aunque eso sí, previo pago. Para el resto de los mortales, Cuatro emitirá la serie con una semana de retraso pero en perfecto castellano.</p>
<p>Yo, para continuar con la tradición, ya le estoy sacando brillo al <a href="http://www.transmissionbt.com/">Transmission</a>; ya no está Mininova, pero por suerte <a href="http://torrentz.com/">hay alternativas</a>.</p>
<p>Para el que tenga problemas de memoria y necesite un refresco de lo que ha ocurrido hasta ahora, nada mejor que hacerse con el <a href="http://www.monova.org/details/3488319/LOST%20S06E00%20HDTV%20XVID-NOTV%20[EZTV].html">capítulo 6&#215;00</a>.</p>
<p><strong>Vuelven los números <em>chungos</em></strong>. ¿A que ya no los recordáis?</p>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/aows.wordpress.com/608/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/aows.wordpress.com/608/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/aows.wordpress.com/608/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/aows.wordpress.com/608/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/aows.wordpress.com/608/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/aows.wordpress.com/608/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/aows.wordpress.com/608/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/aows.wordpress.com/608/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/aows.wordpress.com/608/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/aows.wordpress.com/608/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/aows.wordpress.com/608/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/aows.wordpress.com/608/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/aows.wordpress.com/608/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/aows.wordpress.com/608/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=aows.wordpress.com&amp;blog=6402793&amp;post=608&amp;subd=aows&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://aows.wordpress.com/2010/02/02/vuelve-lost-sexta-temporada/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://0.gravatar.com/avatar/48f0e446a5ea1e500b04e0f01ca8be2b?s=96&#38;d=http%3A%2F%2F0.gravatar.com%2Favatar%2Fad516503a11cd5ca435acc9bb6523536%3Fs%3D96" medium="image">
			<media:title type="html">adrian</media:title>
		</media:content>

		<media:content url="http://aows.files.wordpress.com/2010/02/lost1.png" medium="image">
			<media:title type="html">lost</media:title>
		</media:content>
	</item>
		<item>
		<title>¿El principio del fin para Flash?</title>
		<link>http://aows.wordpress.com/2010/01/31/principio-del-fin-adobe-flash/</link>
		<comments>http://aows.wordpress.com/2010/01/31/principio-del-fin-adobe-flash/#comments</comments>
		<pubDate>Sun, 31 Jan 2010 15:38:54 +0000</pubDate>
		<dc:creator>adrian</dc:creator>
				<category><![CDATA[Uncategorized]]></category>
		<category><![CDATA[adobe]]></category>
		<category><![CDATA[apple]]></category>
		<category><![CDATA[flash]]></category>
		<category><![CDATA[google]]></category>
		<category><![CDATA[html5]]></category>

		<guid isPermaLink="false">http://aows.wordpress.com/?p=599</guid>
		<description><![CDATA[La negativa de Apple a incluir Flash en sus dispositivos móviles está trayendo mucha cola. A la empresa californiana no le gusta la tecnología de Adobe, y así lo confirman los rumores sobre unas declaraciones de Steve Jobs: Apple no soporta Flash porque está lleno de bugs. Siempre que un mac se cuelga, muy probablemente [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=aows.wordpress.com&amp;blog=6402793&amp;post=599&amp;subd=aows&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p><img src="http://aows.files.wordpress.com/2010/01/flash_lego.png?w=700" alt="El iPad no soportará Flash" title="flash_lego"   class="aligncenter size-full wp-image-602" /></p>
<p>La negativa de Apple a incluir Flash en sus dispositivos móviles está trayendo mucha cola. A la empresa californiana no le gusta la tecnología de Adobe, y así lo confirman los rumores sobre unas <a href="http://www.applesfera.com/apple/declaraciones-de-steve-jobs-en-una-reunion-con-los-empleados-de-apple">declaraciones de Steve Jobs</a>:</p>
<blockquote><p>
Apple no soporta Flash porque está lleno de bugs. Siempre que un mac se cuelga, muy probablemente la causa es Flash. Nadie va a usar Flash, el mundo se está moviendo al HTML5.
</p></blockquote>
<p>Es una apuesta arriesgada por parte de Apple, pero <a href="http://scobleizer.com/2010/01/30/can-flash-be-saved/">como muchos ya están señalando</a>, esto puede haber ocurrido ya en el pasado a menor escala con la salida de Firefox. Cuando Mozilla lanzó el navegador del zorro rojo (o <a href="http://www.soylopeor.com/weblog/archivo/firefox-no-es-un-zorro.xhtml">un panda</a>, me es lo mismo), éste no renderizaba bien muchas páginas importantes como bancos o tiendas online, y sin embargo <strong>la respuesta de los usuarios obligó al mercado a adaptarse a los estándares</strong> y a día de hoy es raro encontrar una web que no funcione correctamente en Firefox (aunque hay excepciones, está claro). Apple tiene ahora mismo más de <strong>70 millones de dispositivos móviles por todo el mundo</strong> (entre iPhones e iPod Touchs) <strong>que no soportan Flash</strong>, una cantidad que empieza a ser importante.</p>
<p>Los movimientos de los grandes protagonistas en Internet juegan a favor de HTML5 (aunque <a href="http://aows.wordpress.com/2010/01/25/video-html5-tan-cerca-tan-lejos/">la polémica de los codecs</a> puede ir para largo), aunque <strong>el soporte de Flash en Android puede darle algo de vida a Adobe</strong>.</p>
<p>¿Es Flash una tecnología con futuro o simplemente fue un parche para dotar de capacidad multimedia a un lenguaje (HTML) que no lo soportaba de serie?</p>
<p>Es tiempo para que Adobe juegue sus cartas; el próximo mes presentará en el Mobile World Congress la versión 10.1 de Flash para móviles y su estrategia para estos dispositivos. Y porqué no decirlo, <strong>puede que el porno, como ya lo ha sido otras veces, sea clave en esta guerra no declarada</strong>.</p>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/aows.wordpress.com/599/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/aows.wordpress.com/599/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/aows.wordpress.com/599/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/aows.wordpress.com/599/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/aows.wordpress.com/599/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/aows.wordpress.com/599/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/aows.wordpress.com/599/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/aows.wordpress.com/599/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/aows.wordpress.com/599/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/aows.wordpress.com/599/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/aows.wordpress.com/599/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/aows.wordpress.com/599/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/aows.wordpress.com/599/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/aows.wordpress.com/599/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=aows.wordpress.com&amp;blog=6402793&amp;post=599&amp;subd=aows&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://aows.wordpress.com/2010/01/31/principio-del-fin-adobe-flash/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
	
		<media:content url="http://0.gravatar.com/avatar/48f0e446a5ea1e500b04e0f01ca8be2b?s=96&#38;d=http%3A%2F%2F0.gravatar.com%2Favatar%2Fad516503a11cd5ca435acc9bb6523536%3Fs%3D96" medium="image">
			<media:title type="html">adrian</media:title>
		</media:content>

		<media:content url="http://aows.files.wordpress.com/2010/01/flash_lego.png" medium="image">
			<media:title type="html">flash_lego</media:title>
		</media:content>
	</item>
	</channel>
</rss>
