<?xml version="1.0" encoding="UTF-8"?>
<?xml-stylesheet type="text/xsl" media="screen" href="/~d/styles/rss2full.xsl"?><?xml-stylesheet type="text/css" media="screen" href="http://feeds.feedburner.com/~d/styles/itemcontent.css"?><rss xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:wfw="http://wellformedweb.org/CommentAPI/" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:sy="http://purl.org/rss/1.0/modules/syndication/" xmlns:slash="http://purl.org/rss/1.0/modules/slash/" version="2.0">

<channel>
	<title>Andrés Smerkin</title>
	
	<link>http://www.andressmerkin.com.ar</link>
	<description>Tecnología, desarrollo web, software libre y algo más</description>
	<lastBuildDate>Sat, 28 May 2011 04:11:12 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.0.4</generator>
		<atom10:link xmlns:atom10="http://www.w3.org/2005/Atom" rel="self" type="application/rss+xml" href="http://feeds.feedburner.com/AndrsSmerkin" /><feedburner:info xmlns:feedburner="http://rssnamespace.org/feedburner/ext/1.0" uri="andrssmerkin" /><atom10:link xmlns:atom10="http://www.w3.org/2005/Atom" rel="hub" href="http://pubsubhubbub.appspot.com/" /><feedburner:emailServiceId xmlns:feedburner="http://rssnamespace.org/feedburner/ext/1.0">AndrsSmerkin</feedburner:emailServiceId><feedburner:feedburnerHostname xmlns:feedburner="http://rssnamespace.org/feedburner/ext/1.0">http://feedburner.google.com</feedburner:feedburnerHostname><item>
		<title>Un Plugin de Foursquare para CakePHP</title>
		<link>http://www.andressmerkin.com.ar/2011/05/un-plugin-de-foursquare-para-cakephp/</link>
		<comments>http://www.andressmerkin.com.ar/2011/05/un-plugin-de-foursquare-para-cakephp/#comments</comments>
		<pubDate>Sat, 28 May 2011 04:10:34 +0000</pubDate>
		<dc:creator>Andrés</dc:creator>
				<category><![CDATA[Herramientas y Recursos]]></category>

		<guid isPermaLink="false">http://www.andressmerkin.com.ar/?p=222</guid>
		<description><![CDATA[CakePHP es un framework enorme con un montón de cosas fantásticas, y como sabrás, la mejor manera de aprender los conceptos de la herramienta es sumergirse en ella. Recientemente he estado aprendiendo sobre las APIs de las redes sociales y &#8230;<p class="read-more"><a href="http://www.andressmerkin.com.ar/2011/05/un-plugin-de-foursquare-para-cakephp/">Read more &#187;</a></p>]]></description>
			<content:encoded><![CDATA[<p><a href="http://www.andressmerkin.com.ar/wp-content/uploads/2011/05/FourSquare-Logo-Image.png"><img class="alignright size-full wp-image-220" title="Foursquare Logo" src="http://www.andressmerkin.com.ar/wp-content/uploads/2011/05/FourSquare-Logo-Image.png" alt="Foursquare Logo" width="200" height="200" /></a>CakePHP es un framework enorme con un montón de cosas fantásticas, y como sabrás, la mejor manera de aprender los conceptos de la herramienta es sumergirse en ella.</p>
<p>Recientemente he estado aprendiendo sobre las APIs de las redes sociales y como manejan los sistemas de autenticación de usuarios. La mayoría de ellas utiliza el nuevo <a title="Sitio Web del Estandar OAuth" rel="nofollow" href="http://oauth.net/">Estandar OAuth</a>, el cual permite a los sitios publicar a través de sus APIs información de los usuarios con un alto nivel de seguridad y protección.</p>
<p>Por otro lado, he estado jugando un poco con los DataSources de CakePHP para obtener la información desde las APIs y hacer un montón de cosas divertidas. Es increíble lo que uno puede aprender cuando enfrenta un desafío en el cual no se conoce nada sobre una tecnología y debe investigarse desde el principio.</p>
<p>Si juntamos las APIs y los datasources, el desafío es crear un plugin que permita conectar a alguna red social e interactuar con ella. La red social elegida es Foursquare, debido a que cumple con todos los requisitos y no pude encontrar ningún buen plugin para ella (Hay algunos datasources que interactuan con la vieja API).</p>
<p>Como último punto, también estoy aprendiendo a usar GIT, así que alojé el plugin en Github. Tal vez quieras descargarlo y probarlo. Cualquier tipo de ayuda es bienvenida.</p>
<p>URL del Plugin: <a href="https://github.com/asmerkin/CakePHP-Foursquare-Plugin">https://github.com/asmerkin/CakePHP-Foursquare-Plugin</a></p>
]]></content:encoded>
			<wfw:commentRss>http://www.andressmerkin.com.ar/2011/05/un-plugin-de-foursquare-para-cakephp/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Rebinding con JQuery – Arreglando nuestro javascript luego de llamadas en AJAX</title>
		<link>http://www.andressmerkin.com.ar/2011/05/rebinding-con-jquery-arreglando-nuestro-js-luego-de-llamadas-en-ajax/</link>
		<comments>http://www.andressmerkin.com.ar/2011/05/rebinding-con-jquery-arreglando-nuestro-js-luego-de-llamadas-en-ajax/#comments</comments>
		<pubDate>Fri, 06 May 2011 03:19:11 +0000</pubDate>
		<dc:creator>Andrés</dc:creator>
				<category><![CDATA[Desarrollo Web]]></category>
		<category><![CDATA[Herramientas y Recursos]]></category>

		<guid isPermaLink="false">http://www.andressmerkin.com.ar/?p=212</guid>
		<description><![CDATA[El Problema A veces puede surgirnos el problema de que luego de una llamada a AJAX con JQuery, mediante funciones como $.ajax o $.load, algunos de nuestros eventos dejen de funcionar. También puede suceder que a veces mediante Ajax o &#8230;<p class="read-more"><a href="http://www.andressmerkin.com.ar/2011/05/rebinding-con-jquery-arreglando-nuestro-js-luego-de-llamadas-en-ajax/">Read more &#187;</a></p>]]></description>
			<content:encoded><![CDATA[<h2>El Problema</h2>
<p>A veces puede surgirnos el problema de que luego de una llamada a AJAX con JQuery, mediante funciones como $.ajax o $.load, algunos de nuestros eventos dejen de funcionar. También puede suceder que a veces mediante Ajax o javascript generemos elementos del DOM a los que queremos asignarles un evento en particular. Pués posiblemente los eventos para estos elementos nuevos no funcionen.</p>
<h3>¿Por qué ocurre esto?</h3>
<p>Cuando realizamos la llamada a $(&#8216;document&#8217;).ready(fn) esta se encarga de inicializar todos nuestros binds para que estén disponibles en nuestras páginas. Entiendase un bind como la funcion .bind(&#8216;event&#8217;, fn), la cual tiene shortcuts como .click, .mouseover, etc.</p>
<p>Cuando realizamos una llamada a AJAX, nuestro DOM sufre modificaciones, haciendo que los binds anteriores queden obsoletos. Lo que tenemos que hacer es volver a ejecutar esos binds de los elementos para que vuelvan a estar disponibles después de la llamada AJAX.</p>
<p>Para ser un poco más claros, cuando JQuery carga su método ready(), a los elementos del DOM seleccionados les aplica algo similar a lo que muestra el siguiente ejemplo:</p>

<div class="wp_codebox_msgheader"><span class="right"><sup><a href="http://www.ericbess.com/ericblog/2008/03/03/wp-codebox/#examples" target="_blank" title="WP-CodeBox HowTo?"><span style="color: #99cc00">?</span></a></sup></span><span class="left"><a href="javascript:;" onclick="javascript:showCodeTxt('p212code3'); return false;">Ver código</a> HTML</span><div class="codebox_clear"></div></div><div class="wp_codebox"><table><tr id="p2123"><td class="code" id="p212code3"><pre class="html" style="font-family:monospace;">&lt;li onmouseenter=&quot;function()...&quot; onmouseleave=&quot;...&quot;&gt;...&lt;/li&gt;</pre></td></tr></table></div>

<p>Cuando ocurren las llamadas AJAX esas modificaciones se pierden. Lo que nosotros tenemos que hacer es lograr que JQuery vuelva a cargar los eventos asignados a los elementos del DOM.</p>
<h2>Solución</h2>
<p>Vamos a ver un pequeño segmento de código:</p>

<div class="wp_codebox_msgheader"><span class="right"><sup><a href="http://www.ericbess.com/ericblog/2008/03/03/wp-codebox/#examples" target="_blank" title="WP-CodeBox HowTo?"><span style="color: #99cc00">?</span></a></sup></span><span class="left"><a href="javascript:;" onclick="javascript:showCodeTxt('p212code4'); return false;">Ver código</a> JAVASCRIPT</span><div class="codebox_clear"></div></div><div class="wp_codebox"><table><tr id="p2124"><td class="code" id="p212code4"><pre class="javascript" style="font-family:monospace;">$<span style="color: #009900;">&#40;</span><span style="color: #3366CC;">'document'</span><span style="color: #009900;">&#41;</span>.<span style="color: #660066;">ready</span><span style="color: #009900;">&#40;</span><span style="color: #003366; font-weight: bold;">function</span><span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span> <span style="color: #009900;">&#123;</span>
    iniciarBinds<span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
&nbsp;
    $.<span style="color: #660066;">ajax</span><span style="color: #009900;">&#40;</span><span style="color: #009900;">&#123;</span>
          url<span style="color: #339933;">:</span> <span style="color: #3366CC;">&quot;test.html&quot;</span><span style="color: #339933;">,</span>
          context<span style="color: #339933;">:</span> document.<span style="color: #660066;">body</span><span style="color: #339933;">,</span>
          success<span style="color: #339933;">:</span> <span style="color: #003366; font-weight: bold;">function</span><span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span><span style="color: #009900;">&#123;</span>
               $<span style="color: #009900;">&#40;</span><span style="color: #000066; font-weight: bold;">this</span><span style="color: #009900;">&#41;</span>.<span style="color: #660066;">addClass</span><span style="color: #009900;">&#40;</span><span style="color: #3366CC;">&quot;done&quot;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
               iniciarBinds<span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
          <span style="color: #009900;">&#125;</span>
    <span style="color: #009900;">&#125;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
&nbsp;
    <span style="color: #003366; font-weight: bold;">function</span> iniciarBinds<span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span> <span style="color: #009900;">&#123;</span>
        $<span style="color: #009900;">&#40;</span><span style="color: #3366CC;">'#target'</span><span style="color: #009900;">&#41;</span>.<span style="color: #660066;">click</span><span style="color: #009900;">&#40;</span><span style="color: #003366; font-weight: bold;">function</span><span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span> <span style="color: #009900;">&#123;</span>
               <span style="color: #000066;">alert</span><span style="color: #009900;">&#40;</span><span style="color: #3366CC;">'Handler for .click() called.'</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
        <span style="color: #009900;">&#125;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
&nbsp;
    <span style="color: #009900;">&#125;</span>
&nbsp;
<span style="color: #009900;">&#125;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span></pre></td></tr></table></div>

<p>En el ejemplo anterior vemos como realizar el rebind mencionado. En la función iniciarBinds() colocamos todos aquellos binds que puedan llegar a sufrir debido a la llamada AJAX. Luego, al principio de la llamada a $(document).ready() llamamos a la funcion iniciarBinds(). El rebinding surge después de la llamada en AJAX, en el caso de &#8220;success&#8221;. Como podemos ver, nuevamente estamos llamando a la funcion iniciarBinds(). Si no hicieramos esto, los binds creados se perderían a causa de modificaciones de la estructura del DOM, pero con el rebinding los eventos se refrescan para todos los elementos, incluyendo las modificaciones.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.andressmerkin.com.ar/2011/05/rebinding-con-jquery-arreglando-nuestro-js-luego-de-llamadas-en-ajax/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Aprendiendo con software libre – Invirtiendo a mediano plazo</title>
		<link>http://www.andressmerkin.com.ar/2011/03/aprendiendo-con-software-libre-invirtiendo-a-mediano-plazo/</link>
		<comments>http://www.andressmerkin.com.ar/2011/03/aprendiendo-con-software-libre-invirtiendo-a-mediano-plazo/#comments</comments>
		<pubDate>Sun, 06 Mar 2011 03:39:31 +0000</pubDate>
		<dc:creator>Andrés</dc:creator>
				<category><![CDATA[Sin categoría]]></category>

		<guid isPermaLink="false">http://www.andressmerkin.com.ar/?p=203</guid>
		<description><![CDATA[Después de ver y revisar muchas veces los fundamentos del software libre, su filosofía, y como la gente trata de convencer a otros para que comiencen a utilizar software libre, es que he llegado a la siguiente conclusión. &#8220;Aprender y &#8230;<p class="read-more"><a href="http://www.andressmerkin.com.ar/2011/03/aprendiendo-con-software-libre-invirtiendo-a-mediano-plazo/">Read more &#187;</a></p>]]></description>
			<content:encoded><![CDATA[<p>Después de ver y revisar muchas veces los fundamentos del software libre, su filosofía, y como la gente trata de convencer a otros para que comiencen a utilizar software libre, es que he llegado a la siguiente conclusión. &#8220;Aprender y utilizar herramientas libres es una inversión de mediano plazo&#8221;. Paso a explicar el por qué.</p>
<p>Si conoces la comunidad libre, habrás leido varias veces las cuatro libertades fundamentales que mueven al software libre:</p>
<blockquote><p>
0 &#8211; la libertad de usar el programa, con cualquier propósito.<br />
1 &#8211; la libertad de estudiar cómo funciona el programa y modificarlo, adaptándolo a tus necesidades.<br />
2 &#8211; la libertad de distribuir copias del programa, con lo cual puedes ayudar a tu prójimo.<br />
3 &#8211; la libertad de mejorar el programa y hacer públicas esas mejoras a los demás, de modo que toda la comunidad se beneficie.</p></blockquote>
<p>Ahora, es realmente poca la gente que entiende la esencia de dichas libertades. Esto se debe a que los nuevos usuarios (y algunos avanzados) no toman conciencia de la maduración que se requiere para poder finalmente comprender las libertades y comenzar a aprovecharlas.</p>
<h3>Etapas en el uso de herramientas libres</h3>
<p>Cuando uno comienza a utilizar herramientas libres, generalmente pasa por las siguientes etapas</p>
<h4>1 &#8211; Luchar contra el Software</h4>
<p>Generalmente ocurre con la primera instalación de alguna distribución de Linux. Algún periferico que no anda, algún driver que no se comporta como debería, etc. Ante la falta de conocimiento sobre el asunto, se debe luchar para lograr que el sistema funcione como debe. En este punto mucha gente se frustra y vuelve hacia atrás (a seguir usando lo que usaba antes). Esta etapa es la linea de fuego (un colador) que filtra a los curiosos que realmente quieren aprender de todos aquellos a los que no les interesa.</p>
<h4>2 &#8211; Utilizar activamente el software libre</h4>
<p>Una vez que se entiende la esencia y el funcionamiento básico, se está preparado para adoptar software libre en el uso diario. En esta etapa es donde realmente uno se asienta en el ámbito de la comunidad libre y comienza a entender la filosofía de compartir y aprender colaborativamente. Podriamos decir que se entienden las libertades 0 y 2.</p>
<p>En esta etapa el usuario ha adquirido un nivel importante de curiosidad y suficiente destreza como para evacuar sus dudas mediante la búsqueda e interpretación de la información disponible en la red. <strong>En este punto se ha alcanzado un espíritu de investigación muy rico que permite aprender y progresar rápidamente.</strong></p>
<h4>3- Aportar a la comunidad</h4>
<p>La tercer etapa es aquella en la que el usuario ya no solo utiliza software libre y se siente parte de la comunidad, sino que de alguna forma comienza a realizar aportes. Esto se debe a que se alcanza un nivel de comodidad, capacidad de investigación y de transmisión del conocimiento que facilita la realización de aportes. No todos llegan a este nivel, pero aquellos que lo hacen se sienten muy cómodos con la utilización de herramientas libres y a veces hasta se complica el uso de herramientas privativas debido justamente a la falta de las libertades fundamentales. En este punto se entienden y dominan las 4 libertades.</p>
<h3>Conclusión</h3>
<p>Para que un usuario realmente llegue a captar la esencia de las libertades, debe haber tenido suficiente tiempo de pasar por las etapas mencionadas anteriormente. Para que esto ocurra, pueden llegar a pasar años.</p>
<p>Es muy complicado transmitir las cuatro libertades a un nuevo usuario o a un no usuario y pretender que las entienda rápidamente. Para poder comprender su significado, un usuario debe previamente entender y utilizar herramientas libres, integrarse a la comunidad libre y poder realizar algún aporte (aunque sea comentar algún artículo) a la comunidad.</p>
<p>Un usuario que se encuentra en la tercer etapa ha explotado su curiosidad, su capacidad de investigación y análisis de tal forma que ha adquirido una gran destreza autodidacta para adquirir nuevos conocimientos. Esto es un recurso invaluable y deseable en todos los individuos, y especialmente en aquellos que deban mantenerse actualizados en disciplinas con crecimientos tan marcados y rápidos como lo son las carreras informáticas.</p>
<p><em>Debido al tiempo que se requiere para dominar las libertades y las capacidades que necesitan educarse para poder realizar lo mencionado anteriormente, es que podemos concluir que la utilización de software libre es una inversión de mediano (y si se quiere de largo) plazo. </em></p>
]]></content:encoded>
			<wfw:commentRss>http://www.andressmerkin.com.ar/2011/03/aprendiendo-con-software-libre-invirtiendo-a-mediano-plazo/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Conocimiento-libre.org – En marcha!!</title>
		<link>http://www.andressmerkin.com.ar/2011/02/conocimiento-libre-org-en-marcha/</link>
		<comments>http://www.andressmerkin.com.ar/2011/02/conocimiento-libre-org-en-marcha/#comments</comments>
		<pubDate>Thu, 10 Feb 2011 02:30:36 +0000</pubDate>
		<dc:creator>Andrés</dc:creator>
				<category><![CDATA[Software Libre y Open Source]]></category>

		<guid isPermaLink="false">http://www.andressmerkin.com.ar/?p=198</guid>
		<description><![CDATA[Es un honor poder comunicar que por fín la comunidad tiene sitio oficial y definitivo. Ahora solo faltan los contenidos. Hemos arrancado el año con muchos proyectos, entre los que se encuentran: La formación de una ONG. La difusión del &#8230;<p class="read-more"><a href="http://www.andressmerkin.com.ar/2011/02/conocimiento-libre-org-en-marcha/">Read more &#187;</a></p>]]></description>
			<content:encoded><![CDATA[<p><a href="http://www.andressmerkin.com.ar/wp-content/uploads/2011/02/logo-facebook.png"><img class="alignright size-medium wp-image-200" title="logo-facebook" src="http://www.andressmerkin.com.ar/wp-content/uploads/2011/02/logo-facebook-300x198.png" alt="" width="300" height="198" /></a>Es un honor poder comunicar que por fín la comunidad tiene sitio oficial y definitivo. Ahora solo faltan los contenidos.</p>
<p>Hemos arrancado el año con muchos proyectos, entre los que se encuentran:</p>
<ul>
<li>La formación de una ONG.</li>
<li>La difusión del Software Libre dentro y fuera de la UTN</li>
<li>El contacto y la creación de una red con otras universidades</li>
<li>La creación de proyectos para realizar actividades fuera de la universidad.</li>
<li>Publicación de artículos y revistas, tanto propios como de terceros.</li>
<li>Desarrollo de diversas aplicaciones</li>
</ul>
<p>La comunidad se encuentra abierta a todo el público y cualquiera puede comenzar un grupo nuevo. Lo unico que hace falta tener es una idea y ganas de participar.</p>
<p><strong>Enlace</strong>: <a href="http://conocimiento-libre.org" target="_blank">http://conocimiento-libre.org</a></p>
]]></content:encoded>
			<wfw:commentRss>http://www.andressmerkin.com.ar/2011/02/conocimiento-libre-org-en-marcha/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Modernizr y Selectivizr – Dos librerías Javascript para potenciar nuestros desarrollos web</title>
		<link>http://www.andressmerkin.com.ar/2011/02/modernizr-y-selectivizr-dos-librerias-javascript-para-potenciar-nuestros-desarrollos-web/</link>
		<comments>http://www.andressmerkin.com.ar/2011/02/modernizr-y-selectivizr-dos-librerias-javascript-para-potenciar-nuestros-desarrollos-web/#comments</comments>
		<pubDate>Thu, 10 Feb 2011 02:07:20 +0000</pubDate>
		<dc:creator>Andrés</dc:creator>
				<category><![CDATA[Herramientas y Recursos]]></category>

		<guid isPermaLink="false">http://www.andressmerkin.com.ar/?p=178</guid>
		<description><![CDATA[Buscando algunas herramientas Javascript y leyendo algunos libros, como Hardboiled Web Design, de Andy Clarke, me he cruzado con estas dos excelentes herramientas para poder potenciar nuestros diseños y desarrollos web y utilizar las últimas tecnologías disponibles, pudiendo controlar mejor &#8230;<p class="read-more"><a href="http://www.andressmerkin.com.ar/2011/02/modernizr-y-selectivizr-dos-librerias-javascript-para-potenciar-nuestros-desarrollos-web/">Read more &#187;</a></p>]]></description>
			<content:encoded><![CDATA[<p>Buscando algunas herramientas Javascript y leyendo algunos libros, como <a title="Hardboiled Web Design" href="http://www.andressmerkin.com.ar/2011/01/hardboiled-web-design-por-andy-clarke/" target="_self">Hardboiled Web Design</a>, de Andy Clarke, me he cruzado con estas dos excelentes herramientas para poder potenciar nuestros diseños y desarrollos web y utilizar las últimas tecnologías disponibles, pudiendo controlar mejor el renderizado de nuestros sitios web en navegadores que no soporten dichas tecnologías.</p>
<h3>Modernizr</h3>
<p><a href="http://www.andressmerkin.com.ar/wp-content/uploads/2011/02/modernizr.png"><img class="alignright size-medium wp-image-179" title="modernizr" src="http://www.andressmerkin.com.ar/wp-content/uploads/2011/02/modernizr-300x124.png" alt="" width="300" height="124" /></a>Modernizr es una librería Javascript que nos permite tener un mayor control sobre la aplicación de CSS3 y HTML5. Esta librería detecta las capacidades el navegador web del usuario y en base a eso añade clases al tag &lt;html&gt; de nuestros documentos web. De esta forma, podemos referenciar cualquier elemento interno del documento y alterarlo mediante estilos para que se muestre correctamente en navegadores que no tengan soporte para dichas nuevas tecnologías</p>
<p>Por ejemplo, al momento de escribir este artículo, el navegador que estoy utilizando es Firefox 3.6.13. Gracias a Modernizr, la etiqueta &lt;html&gt; queda de la siguiente forma:</p>

<div class="wp_codebox_msgheader"><span class="right"><sup><a href="http://www.ericbess.com/ericblog/2008/03/03/wp-codebox/#examples" target="_blank" title="WP-CodeBox HowTo?"><span style="color: #99cc00">?</span></a></sup></span><span class="left"><a href="javascript:;" onclick="javascript:showCodeTxt('p178code7'); return false;">Ver código</a> HTML</span><div class="codebox_clear"></div></div><div class="wp_codebox"><table><tr id="p1787"><td class="code" id="p178code7"><pre class="html" style="font-family:monospace;">&nbsp;
&lt;html lang=&quot;en&quot; dir=&quot;ltr&quot; id=&quot;modernizr-com&quot; class=&quot; js flexbox canvas canvastext 
no-webgl no-touch geolocation postmessage no-websqldatabase no-indexeddb 
hashchange no-history draganddrop no-websockets rgba hsla multiplebgs 
backgroundsize borderimage borderradius boxshadow textshadow opacity 
no-cssanimations csscolumns cssgradients no-cssreflections csstransforms 
no-csstransforms3d no-csstransitions fontface video audio localstorage 
sessionstorage webworkers applicationcache svg no-inlinesvg no-smil svgclippaths&quot;&gt;</pre></td></tr></table></div>

<p>De esta forma, podremos referenciar mediante estilos CSS, cualquier elemento del documento que no soporte alguna tecnología específica. En mi caso particular, podemos ver que Firefox 3.6.13 soporta columnas CSS3 (csscolums), pero no soporta reflexiones (no-cssreflections). </p>
<p>Entonces, supongamos que diseñamos un sitio con gradientes CSS, pero queremos que para el caso en que el navegador no soporte gradientes CSS3 se muestre un color específico, podríamos utilizar el siguiente código:</p>

<div class="wp_codebox_msgheader"><span class="right"><sup><a href="http://www.ericbess.com/ericblog/2008/03/03/wp-codebox/#examples" target="_blank" title="WP-CodeBox HowTo?"><span style="color: #99cc00">?</span></a></sup></span><span class="left"><a href="javascript:;" onclick="javascript:showCodeTxt('p178code8'); return false;">Ver código</a> CSS</span><div class="codebox_clear"></div></div><div class="wp_codebox"><table><tr id="p1788"><td class="code" id="p178code8"><pre class="css" style="font-family:monospace;">&nbsp;
<span style="color: #6666ff;">.no-cssgradients</span> <span style="color: #cc00cc;">#elemento</span> <span style="color: #00AA00;">&#123;</span>
     <span style="color: #000000; font-weight: bold;">background-color</span><span style="color: #00AA00;">:</span> <span style="color: #000000; font-weight: bold;">color</span><span style="color: #00AA00;">;</span>
<span style="color: #00AA00;">&#125;</span></pre></td></tr></table></div>

<p>De esta forma, si el navegador no soporta gradientes CSS, Modernizr añadirá la clase .no-cssgradients al tag <html> y el selector se validará, aplicando el color de fondo definido. </p>
<p><strong>Sitio oficial</strong>: <a title="Modernizr" href="http://www.modernizr.com/" target="_blank">http://www.modernizr.org</a></p>
<h3>Selectivizr</h3>
<p><a href="http://www.andressmerkin.com.ar/wp-content/uploads/2011/02/selectivizr.png"><img class="alignright size-medium wp-image-180" title="selectivizr" src="http://www.andressmerkin.com.ar/wp-content/uploads/2011/02/selectivizr-300x124.png" alt="" width="300" height="124" /></a>Algunos navegadores, como Internet Explorer, en sus versiones 6 &#8211; 8, no tienen un soporte completo de selectores CSS, pero gracias a esta librería podremos aplicar dichos selectores sin problemas.</p>
<p>De esta forma podemos dar estilos a nuestros sitios web aprovechando toda la potencia que nos brindan todos los selectores y pseudoselectores disponibles.</p>
<p>Selectivizr aprovecha los frameworks de Javascript disponibles, como Jquery, Mootools o Prototype para brindar el soporte extendido de selectores. Dependiendo del framework del que dispongamos será la cantidad de selectores admitidos por Selectivizr. En su sitio web podemos encontrar una tabla comparativa al respecto.</p>
<p><strong>Sitio oficial</strong>: <a title="Selectivizr" href="http://selectivizr.com/" target="_blank">http://selectivizr.com/</a></p>
]]></content:encoded>
			<wfw:commentRss>http://www.andressmerkin.com.ar/2011/02/modernizr-y-selectivizr-dos-librerias-javascript-para-potenciar-nuestros-desarrollos-web/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Un poco de DJing – Consola Hercules MK4</title>
		<link>http://www.andressmerkin.com.ar/2011/02/un-poco-de-djing-consola-hercules-mk4/</link>
		<comments>http://www.andressmerkin.com.ar/2011/02/un-poco-de-djing-consola-hercules-mk4/#comments</comments>
		<pubDate>Fri, 04 Feb 2011 18:00:02 +0000</pubDate>
		<dc:creator>Andrés</dc:creator>
				<category><![CDATA[DJing]]></category>

		<guid isPermaLink="false">http://www.andressmerkin.com.ar/?p=174</guid>
		<description><![CDATA[Desde hace un tiempo que le tenía ganas, y en uno de esos ataques de locura que nos agarra a algunas personas tomé la decisión de comprarme una pequeña consola de DJ para conectar a la computadora y utilizar con &#8230;<p class="read-more"><a href="http://www.andressmerkin.com.ar/2011/02/un-poco-de-djing-consola-hercules-mk4/">Read more &#187;</a></p>]]></description>
			<content:encoded><![CDATA[<div id="attachment_175" class="wp-caption alignright" style="width: 310px"><a href="http://www.andressmerkin.com.ar/wp-content/uploads/2011/01/hercules_dj_console_mk4.jpg"><img class="size-medium wp-image-175" title="hercules_dj_console_mk4" src="http://www.andressmerkin.com.ar/wp-content/uploads/2011/01/hercules_dj_console_mk4-300x209.jpg" alt="Hercules Mk4" width="300" height="209" /></a><p class="wp-caption-text">Hercules Mk4</p></div>
<p>Desde hace un tiempo que le tenía ganas, y en uno de esos ataques de locura que nos agarra a algunas personas tomé la decisión de comprarme una pequeña consola de DJ para conectar a la computadora y utilizar con algún software.</p>
<p>Lo que compré fue una <a title="Hercules Mk4" href="http://www.hercules.com/es/DJ-Musica/bdd/p/125/dj-console-mk4/" target="_blank">Hercules MK4</a>. Es una pequeña consola que se conecta por USB a la computadora, y mediante algún software como VirtualDJ, Traktor, o Mixxx (si hablamos de software libre) podemos hacer nuestras mezclas con resultados de gran calidad.</p>
<p>Además, la consola viene con una placa de sonido integrada, con 2 canales de entrada y dos de salida. De esta forma podemos utilizar un canal de salida para hacer preescucha con auriculares y otro para enviar la mezcla a algún equipo de sonido. Las entradas sirven para conectar dispositivos externos, tales como bandejas, ipods, etc y hacerlos participar de nuestras mezclas.</p>
<p>La consola pesa 1.15kg, tiene el tamaño aproximado de una Notebook de 13&#8221; y está hecha de un plástico muy resistente. Todo esto permite que la máquina sea muy portable. En la caja del aparato viene una bandolera para engancharsela y llevarla, pero yo prefiero meterla en la mochila junto con la computadora. También viene con un plástico cobertor muy resistente.</p>
<p>La máquina ya está, ahora falta el DJ, así que no se extrañen si empiezan a ver artículos relacionados en este blog. Hasta quien sabe, en algún futuro puedo llegar a subirles algunos de mis resultados!!, pero eso no será hasta dentro de un tiempo, cuando empiece a hacer mezclas decentes.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.andressmerkin.com.ar/2011/02/un-poco-de-djing-consola-hercules-mk4/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Hardboiled Web Design – Por Andy Clarke</title>
		<link>http://www.andressmerkin.com.ar/2011/01/hardboiled-web-design-por-andy-clarke/</link>
		<comments>http://www.andressmerkin.com.ar/2011/01/hardboiled-web-design-por-andy-clarke/#comments</comments>
		<pubDate>Tue, 01 Feb 2011 01:50:50 +0000</pubDate>
		<dc:creator>Andrés</dc:creator>
				<category><![CDATA[Desarrollo Web]]></category>
		<category><![CDATA[Estándares]]></category>
		<category><![CDATA[Libros]]></category>

		<guid isPermaLink="false">http://www.andressmerkin.com.ar/?p=167</guid>
		<description><![CDATA[Si sos desarrollador o diseñador web, este es un libro que no podés dejar de leer. Hardboiled Web Design explica como traer las últimas tecnologías de la W3c (HTML5 y CSS3) a tus sitios web sin tener que preocuparte por &#8230;<p class="read-more"><a href="http://www.andressmerkin.com.ar/2011/01/hardboiled-web-design-por-andy-clarke/">Read more &#187;</a></p>]]></description>
			<content:encoded><![CDATA[<p><a href="http://www.andressmerkin.com.ar/wp-content/uploads/2011/01/hardboiled-452x594.jpg"><img class="alignleft size-medium wp-image-168" title="hardboiled-452x594" src="http://www.andressmerkin.com.ar/wp-content/uploads/2011/01/hardboiled-452x594-228x300.jpg" alt="" width="228" height="300" /></a>Si sos desarrollador o diseñador web, este es un libro que no podés dejar de leer. <a title="Hardboiled Web Design" rel="nofollow" href="http://hardboiledwebdesign.com/" target="_blank">Hardboiled Web Design</a> explica como traer las últimas tecnologías de la W3c (HTML5 y CSS3) a tus sitios web sin tener que preocuparte por los navegadores anteriores.</p>
<p>Generalmente se aplica el concepto de &#8220;lograr que se vea igual en todos los navegadores&#8221;. Por otro lado, Andy Clarke presenta la idea de &#8220;dar más beneficios a aquella gente que tenga navegadores que puedan soportarlos&#8221;. Dichos beneficios se refieren tanto al aspecto visual como a la usabilidad y a la accesibilidad. Esto significa que aquellas personas que utilicen navegadores como Google Chrome, Opera 11, Safari 5, Firefox 3.+ o IE9 podrán gozar de las últimas tecnologías en lo que se refiere al desarrollo de interfaces web, mientras que los que utilicen navegadores más antiguos podrán seguir disfrutando de un sitio funcional, que muestre correctamente (pero no igual) el contenido.</p>
<p>Esto permite que apliquemos todo el poder de las nuevas tecnologías a partir de este momento, que es cuando son novedad, en vez de esperar a que se estandaricen, lo que puede suceder dentro de varios años.</p>
<p>El autor ha explicado perfectamente la utilización de HTML5 y CSS3, mediante ejemplos prácticos de fácil entendimiento. Además, nos provee de enlaces a herramientas de código abierto que nos facilitan la aplicación de los últimos borradores de la W3C  y aún así mantener sitios usables y accesibles para navegadores que no los soportan.</p>
<p>El libro está en inglés y no se si pueda haber una traducción al español, pero si tenés la posibilidad, te recomiendo que lo leas de principio a fin.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.andressmerkin.com.ar/2011/01/hardboiled-web-design-por-andy-clarke/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>La comunidad de software libre en marcha …</title>
		<link>http://www.andressmerkin.com.ar/2010/10/la-comunidad-de-software-libre-en-marcha/</link>
		<comments>http://www.andressmerkin.com.ar/2010/10/la-comunidad-de-software-libre-en-marcha/#comments</comments>
		<pubDate>Sat, 30 Oct 2010 18:47:42 +0000</pubDate>
		<dc:creator>Andrés</dc:creator>
				<category><![CDATA[Software Libre y Open Source]]></category>

		<guid isPermaLink="false">http://www.andressmerkin.com.ar/?p=143</guid>
		<description><![CDATA[Por fin se puede decir que la comunidad de software libre está en marcha. Realmente estoy muy contento de que esto se pueda llevar a cabo. Es verdad que todavía falta gente y muchas cosas por hacer, pero en este &#8230;<p class="read-more"><a href="http://www.andressmerkin.com.ar/2010/10/la-comunidad-de-software-libre-en-marcha/">Read more &#187;</a></p>]]></description>
			<content:encoded><![CDATA[<p>Por fin se puede decir que la comunidad de software libre está en marcha.</p>
<p>Realmente estoy muy contento de que esto se pueda llevar a cabo. Es verdad que todavía falta gente y muchas cosas por hacer, pero en este momento le damos inicio a la comunidad.</p>
<p>Un post cortito. Es más que nada una invitación para que se sumen a <a href="http://comunidadlibre-utn.co.cc" target="_blank">http://comunidadlibre-utn.co.cc</a> .</p>
]]></content:encoded>
			<wfw:commentRss>http://www.andressmerkin.com.ar/2010/10/la-comunidad-de-software-libre-en-marcha/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Aplicaciones para sincronizar tu vida digital</title>
		<link>http://www.andressmerkin.com.ar/2010/09/aplicaciones-para-sincronizar-tu-vida-digital/</link>
		<comments>http://www.andressmerkin.com.ar/2010/09/aplicaciones-para-sincronizar-tu-vida-digital/#comments</comments>
		<pubDate>Wed, 22 Sep 2010 00:40:30 +0000</pubDate>
		<dc:creator>Andrés</dc:creator>
				<category><![CDATA[Sin categoría]]></category>

		<guid isPermaLink="false">http://www.andressmerkin.com.ar/?p=128</guid>
		<description><![CDATA[No es raro que hoy en día uno utlice más de una computadora y teléfonos móviles, y tenga toda su información repartida en los almacenamientos de los distintos dispositivos. Esto para muchos resulta un problema, pero gracias a algunas aplicaciones &#8230;<p class="read-more"><a href="http://www.andressmerkin.com.ar/2010/09/aplicaciones-para-sincronizar-tu-vida-digital/">Read more &#187;</a></p>]]></description>
			<content:encoded><![CDATA[<p>No es raro que hoy en día uno utlice más de una computadora y teléfonos móviles, y tenga toda su información repartida en los almacenamientos de los distintos dispositivos. Esto para muchos resulta un problema, pero gracias a algunas aplicaciones gratuitas podemos sincronizar todos los aparatos y tener toda la info disponible desde cualquiera de ellos. Existen varias alternativas para lograr el cometido, pero paso a comentarles sobre dos que particularmente me han dado buenos resultados: Dropbox y Mozilla Sync</p>
<h2>Dropbox</h2>
<p><a href="http://www.andressmerkin.com.ar/wp-content/uploads/2010/09/dropbox_logo.png"><img class="alignleft size-full wp-image-133" title="dropbox_logo" src="http://www.andressmerkin.com.ar/wp-content/uploads/2010/09/dropbox_logo.png" alt="Dropbox" width="128" height="128" /></a>Este servicio nos brinda la posibilidad de tener un directorio compartido entre todas las máquinas, teléfonos móviles u otros dispositivos que utilicemos. Nos brindan 2GB de espacio (en su versión gratuita) para que sincronicemos la información y tengamos un backup en la nube. Cabe destacar que también brindan una interfaz web para poder navegar los archivos si estamos utilizando una computadora pública o algún dispositivo que no permite la instalación de la aplicación.</p>
<p>Además, Dropbox nos permite compartir directorios entre varios usuarios, de forma de que lo que agrega uno puede ser leido por el resto. Una excelente alternativa cuando pensamos en trabajo colaborativo.</p>
<p>Si bien el servicio gratis es de tan solo 2gb podemos estirarlo hasta 8gb. Por cada referido que sumemos nos acreditaran 250mb de espacio adicional a nuestra cuenta.</p>
<p>Para poder realizar la sincronización se necesita instalar en cada dispositivo a utilizar una pequeña aplicación gratuita que se encuentra disponible para Windows, Linux, Mac, IPhone, Ipad, Blackberry y teléfonos que dispongan de una instalación de Android.</p>
<p>Link: <a title="Dropbox" href="http://www.dropbox.com/referrals/NTEwMzIzMTExOQ" target="_blank">Dropbox.com</a></p>
<h2>Mozilla Sync</h2>
<p><a href="http://www.andressmerkin.com.ar/wp-content/uploads/2010/09/sync-header.png"><img class="alignright size-full wp-image-130" title="sync-header" src="http://www.andressmerkin.com.ar/wp-content/uploads/2010/09/sync-header.png" alt="" width="150" height="150" /></a>Esta aplicación es especial para los usuarios de Mozilla Firefox. Mozilla Sync es un complemento que se instala en el navegador permitiendo la sincronización de marcadores, historial de navegación y contraseñas guardadas entre otras cosas. Cuando descargamos el agregado y lo instalamos, debemos crear una nueva cuenta en los servidores de Mozilla para que la sincronización funcione adecuadamente.</p>
<p>El sistema permite mezclar la información de las diferentes máquinas o dejar que una solo reciba información de otra. Esto hace que la sincronización sea lo suficientemente flexible como para adaptarse a las diferentes necesidades.</p>
<p>Link: <a title="Mozilla Sync" href="https://mozillalabs.com/sync/" target="_blank">https://mozillalabs.com/sync/</a></p>
]]></content:encoded>
			<wfw:commentRss>http://www.andressmerkin.com.ar/2010/09/aplicaciones-para-sincronizar-tu-vida-digital/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Comunidad de usuarios de Software Libre en la UTN</title>
		<link>http://www.andressmerkin.com.ar/2010/09/comunidad-de-usuarios-de-software-libre-en-la-utn/</link>
		<comments>http://www.andressmerkin.com.ar/2010/09/comunidad-de-usuarios-de-software-libre-en-la-utn/#comments</comments>
		<pubDate>Wed, 08 Sep 2010 11:23:23 +0000</pubDate>
		<dc:creator>Andrés</dc:creator>
				<category><![CDATA[Software Libre y Open Source]]></category>

		<guid isPermaLink="false">http://www.andressmerkin.com.ar/?p=109</guid>
		<description><![CDATA[Lo que leerán a continuación es un post que hice para el foro de Los Pibes de la UTN: Hola, que tal: Escribo aquí porque estoy comenzando una comunidad o grupo de usuarios de software libre dentro de la facultad, &#8230;<p class="read-more"><a href="http://www.andressmerkin.com.ar/2010/09/comunidad-de-usuarios-de-software-libre-en-la-utn/">Read more &#187;</a></p>]]></description>
			<content:encoded><![CDATA[<p>Lo que leerán a continuación es un post que hice para el foro de <a title="Los Pibes de la UTN" href="http://www.lospibesdelautn.com/" target="_blank" rel="nofollow">Los Pibes de la UTN</a>:</p>
<blockquote><p>Hola, que tal:</p>
<p>Escribo aquí porque estoy comenzando una comunidad  o grupo de usuarios de software libre dentro de la facultad, para poder  compartir conocimientos e información al respecto.</p>
<p>Mi idea es  crear un grupo independiente de todos los existentes en la facultad  (CETEM, agrupaciones políticas, grupos de investigación, etc) que  persiga la idea de compartir el conocimiento e información para  enriquecer a todos los participantes. Esto se lograría a través de una  plataforma web dedicada a la comunicación, reuniones presenciales en la  facultad, etc. También tengo como idea en un futuro brindar charlas,  talleres, etc, de forma abierta a quien se interese.</p>
<p>Creo  firmemente que el Software Libre y de Código abierto ha tenido una  evolución enorme en este último tiempo, facilitandole el uso a nuevos  usuarios sin tanta experiencia en el ámbito de la informática. También  estoy convencido, como usuario de software libre, que es una opción muy  viable como herramienta de aprendizaje, no solo en lo que respecta a la  informática, sino también a la vida.</p>
<p>Por otro lado, creo que la  UTN FRM tiene un problema serio al no tener un grupo de gente que se  dedique de lleno a la promoción de este tipo de tecnologías porque al  haber un crecimiento tan grande, la brecha tecnológica que se está  produciendo cada vez es mayor. No estoy en contra de las herramientas  que se utilizan actualmente, pero me parece que cada vez más rápido  aparecen mejores opciones y la universidad va muy lento como para  adoptarlas. Nosotros como comunidad debemos ayudar a que este proceso se  acelere.</p>
<p>Como último punto, veo que en la facultad hay muchos  alumnos que van y cursan y se quedan con lo que les dan en clases. Me  parece que eso es impropio de la mentalidad de un ingeniero, porque si  bien la UTN tiene por misión crear en nosotros los cimientos para un  ingeniero, es nuestra misión lograr que ese ingeniero sea realmente  bueno. Si podemos fomentar el espíritu proactivo en los estudiantes creo  que estaríamos dando un gran paso. Podemos lograr esto utilizando  herramientas libres porque no solo que nos &#8220;obligan&#8221; a que despertemos  ese espíritu proactivo, sino que además nos brindan la posibilidad de  CREAR cosas nuevas a partir de ellas.</p>
<p>Bueno, dicho todo esto,  les comento que he creado un grupo en google[1] para que puedan  registrarse y comencemos un debate entre todos sobre como será este  grupo. Este grupo será temporal (o tal vez no) y cuando tengamos una  base más sólida podremos armar el resto de la comunidad y hacerla  funcionar.</p>
<p>Cuento con ustedes!</p>
<p>[1] <a href="http://groups.google.com/group/comunidad-libre-utn-frm" target="_blank">http://groups.google.com/group/comunidad-libre-utn-frm</a></p></blockquote>
]]></content:encoded>
			<wfw:commentRss>http://www.andressmerkin.com.ar/2010/09/comunidad-de-usuarios-de-software-libre-en-la-utn/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>

