<?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>Viva el Pixel &#187; Firefox</title>
	<atom:link href="http://www.vivaelpixel.com/firefox/feed/" rel="self" type="application/rss+xml" />
	<link>http://www.vivaelpixel.com</link>
	<description>el blog de Andy Kaiser</description>
	<lastBuildDate>Thu, 08 Dec 2011 23:12:22 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.3.1</generator>
		<item>
		<title>Optimización pageload en Apache2</title>
		<link>http://www.vivaelpixel.com/2010/01/optimizacion-pageload-en-apache2/</link>
		<comments>http://www.vivaelpixel.com/2010/01/optimizacion-pageload-en-apache2/#comments</comments>
		<pubDate>Fri, 01 Jan 2010 19:23:49 +0000</pubDate>
		<dc:creator>Andy Kaiser</dc:creator>
				<category><![CDATA[Desarrollo web]]></category>
		<category><![CDATA[Open Source]]></category>
		<category><![CDATA[SEO/SEM/SMO]]></category>
		<category><![CDATA[Apache2]]></category>
		<category><![CDATA[Debian]]></category>
		<category><![CDATA[ETags]]></category>
		<category><![CDATA[Firebug]]></category>
		<category><![CDATA[Firefox]]></category>
		<category><![CDATA[Google]]></category>
		<category><![CDATA[Optimización]]></category>
		<category><![CDATA[SEO]]></category>
		<category><![CDATA[Servidores]]></category>
		<category><![CDATA[Yahoo!]]></category>
		<category><![CDATA[Yslow]]></category>

		<guid isPermaLink="false">http://www.vivaelpixel.com/?p=189</guid>
		<description><![CDATA[Como optimizar los tiempos de carga de una página en Apache2, con mod_deflate, mod_headers, mod_expires y Etag para mejorar el SEO y la experiencia de los usuarios.]]></description>
			<content:encoded><![CDATA[<p>Como comentamos en <a href="http://www.vivaelpixel.com/2009/12/promocion-online-y-seo-en-el-2010/" title="Promoción online y SEO en el 2010" target="_self" class="liinternal">un post anterior</a>, en el 2010 un factor importante en los resultados del nuevo algoritmo de búsqueda de Google (Caffeine) será la velocidad de carga de una página. Por lo tanto en nuestros sitios, es imprescindible analizar y optimizar varios factores relacionados. Además al optimizar el tiempo de carga de nuestro sitio también reduciremos el ancho de banda y, dependiendo del caso, los costes del alojamiento y mejoramos la experiencia de los usuarios.</p>
<h3>Análisis</h3>
<p>Para analizar fácilmente la velocidad de carga de nuestro sitio disponemos básicamente de dos extensiones para <a href="https://addons.mozilla.org/es-ES/firefox/addon/1843" target="_blank" class="liexternal">Firefox/Firebug</a>:</p>
<ol>
<li><a href="http://developer.yahoo.com/yslow/" target="_blank" class="liexternal">Yslow</a>, creada por Yahoo!</li>
<li><a href="http://code.google.com/intl/es-ES/speed/page-speed/" target="_blank" class="liexternal">Pagespeed</a>, creada por Google</li>
</ol>
<p>Estos complementos analizan múltiples factores y nos dan sugerencias para optimizar la página analizada. Las dos extensiones son muy parecidas tanto en las pruebas que ejecutan y las sugerencias que indican, pero en Yslow destaca la integración de <a href="http://developer.yahoo.com/yslow/smushit/" target="_blank" class="liexternal">Smush.it™</a>, un optimizador de imágenes. En cambio en Pagespeed, es muy destacable la opción de disponer, en caso de sugerencia, de las alternativas <em>minified</em> u optimizadas de las css y los js, como también analizar e indicar los selectores css poco eficientes.</p>
<h3>Optimización</h3>
<p>Dependiendo de cada servidor y aplicaciones instaladas tendremos que optimizar diferentes factores, pero a modo de ejemplo, en el servidor de este blog era necesario optimizar los <em>Cache-Control Header</em> y la compresión <em>gzip</em>. Tras buscar en Google y leer varios post realice los siguientes pasos para optimizar el servidor:</p>
<h4>1. Compresión gzip con mod_deflate</h4>
<p>Primero hay que activar <em>mod_deflate</em> desde la linea de comando</p>

<div class="wp_syntax"><div class="code"><pre class="bash" style="font-family:monospace;">a2enmod deflate</pre></div></div>

<p>Luego editar el archivo <em>deflate.conf</em> que se encuentra en <em>/etc/apache2/mods-available/deflate.conf</em></p>

<div class="wp_syntax"><div class="code"><pre class="apache" style="font-family:monospace;">        <span style="color: #00007f;">AddOutputFilterByType</span> DEFLATE text/plain
        <span style="color: #00007f;">AddOutputFilterByType</span> DEFLATE text/html
        <span style="color: #00007f;">AddOutputFilterByType</span> DEFLATE text/xml
        <span style="color: #00007f;">AddOutputFilterByType</span> DEFLATE text/css
        <span style="color: #00007f;">AddOutputFilterByType</span> DEFLATE text/javascript
        <span style="color: #00007f;">AddOutputFilterByType</span> DEFLATE image/svg+xml
        <span style="color: #00007f;">AddOutputFilterByType</span> DEFLATE image/x-icon
        <span style="color: #00007f;">AddOutputFilterByType</span> DEFLATE application/xml
        <span style="color: #00007f;">AddOutputFilterByType</span> DEFLATE application/xhtml+xml
        <span style="color: #00007f;">AddOutputFilterByType</span> DEFLATE application/rss+xml
        <span style="color: #00007f;">AddOutputFilterByType</span> DEFLATE application/javascript
        <span style="color: #00007f;">AddOutputFilterByType</span> DEFLATE application/x-javascript
&nbsp;
        <span style="color: #00007f;">AddOutputFilterByType</span> DEFLATE application/x-httpd-php
        <span style="color: #00007f;">AddOutputFilterByType</span> DEFLATE application/x-httpd-fastphp
        <span style="color: #00007f;">AddOutputFilterByType</span> DEFLATE application/x-httpd-eruby
&nbsp;
        <span style="color: #00007f;">DeflateCompressionLevel</span> <span style="color: #ff0000;">9</span>
&nbsp;
<span style="color: #adadad; font-style: italic;"># Netscape 4.X tiene ciertas limitaciones</span>
        <span style="color: #00007f;">BrowserMatch</span> ^Mozilla/<span style="color: #ff0000;">4</span> gzip-only-text/html
&nbsp;
<span style="color: #adadad; font-style: italic;"># Netscape 4.06-4.08 tiene limitaciones</span>
        <span style="color: #00007f;">BrowserMatch</span> ^Mozilla/<span style="color: #ff0000;">4</span>\.0[<span style="color: #ff0000;">678</span>] no-gzip
&nbsp;
<span style="color: #adadad; font-style: italic;"># MSIE enmascarado como Netscape</span>
        <span style="color: #00007f;">BrowserMatch</span> \bMSIE !no-gzip !gzip-only-text/html
&nbsp;
<span style="color: #adadad; font-style: italic;"># Las siguientes lineas sirven para probar que la configuración funciona, en producción hay que comentarlas</span>
 <span style="color: #00007f;">DeflateFilterNote</span> Input instream
 <span style="color: #00007f;">DeflateFilterNote</span> Output outstream
 <span style="color: #00007f;">DeflateFilterNote</span> Ratio ratio
 <span style="color: #00007f;">LogFormat</span> <span style="color: #7f007f;">'&quot;%r&quot; %{outstream}n/%{instream}n (%{ratio}n%%)'</span> deflate
 <span style="color: #00007f;">CustomLog</span> /var/log/apache2/deflate_log deflate</pre></div></div>

<h4>2. Expires headers mediante mod_expires</h4>
<p>Primero activamos el modulo</p>

<div class="wp_syntax"><div class="code"><pre class="bash" style="font-family:monospace;">a2enmod expires</pre></div></div>

<p>Luego editamos o creamos el archivo <em>expires.conf</em> en el directorio <em>/etc/apache2/mods-available/expires.conf</em></p>

<div class="wp_syntax"><div class="code"><pre class="apache" style="font-family:monospace;"><span style="color: #adadad; font-style: italic;">#        ExpiresDefault &quot;access plus 2 months&quot;</span>
&nbsp;
        <span style="color: #00007f;">ExpiresByType</span> image/x-icon <span style="color: #7f007f;">&quot;access plus 1 month&quot;</span>
        <span style="color: #00007f;">ExpiresByType</span> image/png <span style="color: #7f007f;">&quot;access plus 1 month&quot;</span>
        <span style="color: #00007f;">ExpiresByType</span> image/jpg <span style="color: #7f007f;">&quot;access plus 1 month&quot;</span>
        <span style="color: #00007f;">ExpiresByType</span> image/gif <span style="color: #7f007f;">&quot;access plus 1 month&quot;</span>
        <span style="color: #00007f;">ExpiresByType</span> image/jpeg <span style="color: #7f007f;">&quot;access plus 1 month&quot;</span>
        <span style="color: #00007f;">ExpiresByType</span> application/pdf <span style="color: #7f007f;">&quot;access plus 1 month&quot;</span>
        <span style="color: #00007f;">ExpiresByType</span> audio/x-wav <span style="color: #7f007f;">&quot;access plus 1 month&quot;</span>
        <span style="color: #00007f;">ExpiresByType</span> audio/mpeg <span style="color: #7f007f;">&quot;access plus 1 month&quot;</span>
        <span style="color: #00007f;">ExpiresByType</span> video/mpeg <span style="color: #7f007f;">&quot;access plus 1 month&quot;</span>
        <span style="color: #00007f;">ExpiresByType</span> video/mp4 <span style="color: #7f007f;">&quot;access plus 1 month&quot;</span>
        <span style="color: #00007f;">ExpiresByType</span> video/quicktime <span style="color: #7f007f;">&quot;access plus 1 month&quot;</span>
        <span style="color: #00007f;">ExpiresByType</span> video/x-ms-wmv <span style="color: #7f007f;">&quot;access plus 1 month&quot;</span>
        <span style="color: #00007f;">ExpiresByType</span> application/x-shockwave-flash <span style="color: #7f007f;">&quot;access 1 month&quot;</span>
&nbsp;
        <span style="color: #00007f;">ExpiresByType</span> text/css <span style="color: #7f007f;">&quot;access plus 1 hour&quot;</span>
        <span style="color: #00007f;">ExpiresByType</span> text/javascript <span style="color: #7f007f;">&quot;access plus 1 hour&quot;</span></pre></div></div>

<h4>3. Desactivar ETags</h4>
<p>Añadir las siguientes lienas al archivo <em>/etc/apache2/apache2.conf</em></p>

<div class="wp_syntax"><div class="code"><pre class="apache" style="font-family:monospace;"><span style="color: #00007f;">Header</span> unset ETag
<span style="color: #00007f;">FileETag</span> <span style="color: #0000ff;">None</span></pre></div></div>

<h4>4. Reiniciar Apache para activar los cambios</h4>

<div class="wp_syntax"><div class="code"><pre class="bash" style="font-family:monospace;"><span style="color: #000000; font-weight: bold;">/</span>etc<span style="color: #000000; font-weight: bold;">/</span>init.d<span style="color: #000000; font-weight: bold;">/</span>apache2 restart</pre></div></div>

<p>Ya solo queda volver a comprobar la página con las extensiones de Firebug y comparar los resultados.</p>
<h4>Enlaces de interes</h4>
<ul>
<li><a href="http://code.google.com/intl/es-ES/speed/page-speed/docs/rules_intro.html" target="_blank" class="liexternal">Recomendaciones sobre rendimiento web de Google</a></li>
<li><a href="http://developer.yahoo.com/performance/rules.html" target="_blank" class="liexternal">Recomendaciones de Yahoo!</a></li>
<li><a href="http://www.realityloop.com/blog/2009/08/19/optimizing-page-load-times-using-moddeflate-modexpires-etag-apache2" target="_blank" class="liexternal">Tutorial sobre Apache2, mod_deflate, mod_expires y ETag</a></li>
<li><a href="http://www.askapache.com/htaccess/apache-speed-etags.html" target="_blank" class="liexternal">Tutorial sobre ETag</a> (Esta web tiene otros posts relacionados con optimización de Apache)</li>
</ul>
]]></content:encoded>
			<wfw:commentRss>http://www.vivaelpixel.com/2010/01/optimizacion-pageload-en-apache2/feed/</wfw:commentRss>
		<slash:comments>4</slash:comments>
		</item>
		<item>
		<title>Creación de wireframes</title>
		<link>http://www.vivaelpixel.com/2009/12/creacion-de-wireframes/</link>
		<comments>http://www.vivaelpixel.com/2009/12/creacion-de-wireframes/#comments</comments>
		<pubDate>Sat, 26 Dec 2009 13:56:24 +0000</pubDate>
		<dc:creator>Andy Kaiser</dc:creator>
				<category><![CDATA[Diseño]]></category>
		<category><![CDATA[Open Source]]></category>
		<category><![CDATA[Usabilidad]]></category>
		<category><![CDATA[Firefox]]></category>
		<category><![CDATA[Wireframes]]></category>

		<guid isPermaLink="false">http://www.vivaelpixel.com/?p=79</guid>
		<description><![CDATA[En los procesos de creación de una página web la primera fase debería ser siempre la creación del website wireframe, incluso antes del diseño gráfico de la página web . Básicamente, un wireframe es una guía visual, que se suele utilizar en el diseño de interfaces, que sugiere la estructura de un sitio web y [...]]]></description>
			<content:encoded><![CDATA[<p>En los procesos de creación de una página web la primera fase debería ser siempre la creación del <em>website wireframe,</em> incluso antes del diseño gráfico de la página web . Básicamente, un <em>wireframe </em>es <span id="result_box"><span style="background-color: #ffffff;" title="A website wireframe (also &quot;web wire frame&quot;, &quot;web wireframe&quot;, &quot;web wireframing&quot;) is a basic visual guide used in interface design to suggest the structure of a website and relationships between its pages." onmouseover="this.style.backgroundColor='#ebeff9'" onmouseout="this.style.backgroundColor='#fff'">una guía visual, que se suele utilizar en el diseño de interfaces, que sugiere la estructura de un sitio web y las relaciones entre sus páginas. </span><span style="background-color: #ffffff;" title="A webpage wireframe is a similar illustration of the layout of fundamental elements in the interface." onmouseover="this.style.backgroundColor='#ebeff9'" onmouseout="this.style.backgroundColor='#fff'">Es un ejemplo de la disposición de los elementos fundamentales en la interfaz/página web.</span></span></p>
<p>Aunque estas practicas no están extendidas lo que deberían, existen múltiples herramientas que permiten crear <em>wireframes </em>de una manera rápida e intuitiva (tanto versiones <em>Cloud Computing &amp; Saas</em>. como programas para diferentes plataformas):</p>
<h3><a href="http://gomockingbird.com/" target="_blank" class="liexternal">1. Mockingbird (Online/Saas)</a></h3>
<p>Es una herramienta online de creación de <em>wireframes </em>(Wireframing-Tool). Al estar programada sobre el Framework &#8220;Cappuccino&#8221; la interacción es como en un programa de escritorio. Los wireframes se crean de una manera sencilla mediante Drag &amp; Drop de elementos comunes en el diseño de páginas web. El resultado puede descargarse o enviarse por email.</p>
<p style="text-align: center;"><img class="aligncenter size-full wp-image-85" title="mockingbird" src="http://www.vivaelpixel.com/wp-content/uploads/2009/12/mockingbird.gif" alt="mockingbird" width="430" height="235" /></p>
<h3><a href="http://www.evolus.vn/Pencil/" target="_self" class="liexternal">2. Firefox Pencil (Mac/Windows)</a></h3>
<p style="text-align: center;">Esta herramienta está basada en el <a href="http://es.wikipedia.org/wiki/Gecko_%28motor_de_renderizado%29" target="_blank" rel="nofollow" class="liwikipedia"><em>Geckoengine</em></a> del navegador Firefox, y se instala como un complemento (plugin). Por lo tanto es una buena solución para esquemas rapidos e independientes de la plataforma. Los wireframes se pueden exportar en formato png. En su contra, el uso es, a veces, un poco más lento debido a que no dispone de atajos de teclado. Pero su escaso tamaño (&lt; 450 KB) y ser una herramienta gratuita la hacen una muy buena elección.<br />
<img class="aligncenter size-full wp-image-88" title="pencil" src="http://www.vivaelpixel.com/wp-content/uploads/2009/12/pencil.jpg" alt="pencil" width="430" height="301" /></p>
<h3><a href="http://www.evolus.vn/Pencil/" target="_self" class="liexternal">3. Iplotz (Online/Saas)</a></h3>
<p>Es una herramienta online que permite crear <em>wireframes</em> clickables. Además incluye funcionalidades básicas de gestión de proyectos, como por ejemplo asignar tareas, por lo que es posible colaborar con otros usuarios en la creación de los <em>wireframes</em>. Aunque sea un servicio Saas, existe una versión descargable programada en AIR. Finalmente, hay múltiples planes que se adaptan a diversos usuarios, desde una versión gratuita (1 proyecto limitado a 5 pantallas) a versiones corporativas (múltiples usuarios y proyectos ilimitados)</p>
<p><img class="aligncenter size-full wp-image-130" title="iplotz" src="http://www.vivaelpixel.com/wp-content/uploads/2009/12/iplotz.png" alt="iplotz" width="430" height="229" /></p>
<h3><a href="http://www.balsamiq.com/" target="_blank" class="liexternal">4. Balsamiq (Mac/Windows)</a></h3>
<p>Balsamiq es una herramienta programada en Flex y la creación de <em>wireframes</em> es muy intuitiva y permite crearlos de una manera rápida. Las plantillas, con un estilo pintado a mano, facilitan que al presentar los prototipos no se malinterpreten con versiones finales. En la web de balsamiq se puede probar la herramienta de manera gratuita y exportar los <em>wireframes</em> a png (con marca de agua). Y en el caso de utilizar la herramienta habitualmente existe una versión de pago, además de una versión onlines/saas en el futuro. Por ultimo al basarse en archivos xml, es posible integrar la herramienta con otros programas como por ejemplo gestores de proyectos.</p>
<p><img class="aligncenter size-full wp-image-132" title="balsamiq" src="http://www.vivaelpixel.com/wp-content/uploads/2009/12/balsamiq.jpg" alt="balsamiq" width="430" height="228" /></p>
<h3><a href="http://www.omnigroup.com/applications/omnigraffle/" target="_blank" class="liexternal">5. Omnigraffle Pro (Mac)</a></h3>
<p>Esta herramienta permite crear rápidamente <em>wireframes</em>, diagramas de proceso y <em>sitemaps</em>. Las características más interesantes de <a href="http://www.omnigroup.com/applications/omnigraffle/" target="_blank" class="liexternal">Omnigraffle</a> es que permite crear capas como en Photoshop y usar plantillas predefinidas, que pueden descargarse de internet &#8211; por ejemplo de <a href="http://graffletopia.com" target="_blank" class="liexternal">Graffletopia</a>. Estas plantillas permite crear fácilmente <em>wireframes</em> de aplicaciones de Facebook y Iphone, Elementos Ajax, Formatos publicitarios o elementos de Social Media Webs. También es posible crear prototipos clickables al poder definir zonas interactivas que al exportarse a pdf clickables dan cierta interacción (aunque no pueden sustituir a prototipos en html)</p>
<p><img class="aligncenter size-full wp-image-134" title="omnigraffle" src="http://www.vivaelpixel.com/wp-content/uploads/2009/12/omnigraffle.png" alt="omnigraffle" width="430" height="263" /></p>
<h3><a href="http://www.axure.com/" target="_blank" class="liexternal">6. Axure (Windows)</a></h3>
<p>En comparación con otras herramientas Axure permite crear prototipos interactivos en html/javascript. La creación de prototipos interactivos es muy util tanto para presentaciones como para pruebas de usuarios y poder hacerse una idea de la futura web. Otra funcionalidad interesante es la posibilidad de crear comentarios en los documentos que luego pueden exportarse a formato Word, para crear la documentación conceptual de un proyecto. Como en otras herramientas es posible cargar plantillas para agilizar la creación de los <em>wireframes</em>.</p>
<p><img class="aligncenter size-full wp-image-135" title="axure" src="http://www.vivaelpixel.com/wp-content/uploads/2009/12/axure.jpg" alt="axure" width="430" height="251" /></p>
<h3><a href="http://www.axure.com/" target="_blank" class="liexternal">7. Adobe FlashCatalyst (Mac/Windows)</a></h3>
<p>Este programa desarrollado por Adobe aun se encuentra en su fase de desarrollo. Aunque solo este disponible una versión beta, la herramienta es muy solida. Al ser un producto Adobe permite cargar archivos de otras herramientas Adobe como por ejemplo Photoshop o Illustrator. Lo más destacable de FlashCatalyst es que permite añadir interacción a los elementos de diseño hasta el punto de crear animaciones avanzadas como por ejemplo scroll, fundidos, etc. Por ello FlashCatalyst es, seguramente, la herramienta ideal para la creación de prototipos con animaciones complejas, ya que es algo limitada para wireframes estáticos.</p>
<p><img class="aligncenter size-full wp-image-137" title="adobe flash catalyst" src="http://www.vivaelpixel.com/wp-content/uploads/2009/12/adobe-flash-catalyst.jpg" alt="adobe flash catalyst" width="430" height="262" /></p>
<h3>Otras referencias</h3>
<p>En resumen, actualmente existen múltiples herramientas para crear <em>wireframes</em> estáticos y prototipos clickables. Puedes encontrar una amplia tabla resumen en en este <a href="http://www.adaptivepath.com/blog/2009/09/16/rapid-prototyping-tools-revisited/" target="_blank" class="liexternal">articulo de Dan Harrelson</a>.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.vivaelpixel.com/2009/12/creacion-de-wireframes/feed/</wfw:commentRss>
		<slash:comments>4</slash:comments>
		</item>
	</channel>
</rss>

<!-- Served from: www.vivaelpixel.com @ 2012-02-05 14:30:28 by W3 Total Cache -->
