<?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>José Marin de la Fuente</title>
	<atom:link href="http://www.marindelafuente.com.ar/feed/" rel="self" type="application/rss+xml" />
	<link>http://www.marindelafuente.com.ar</link>
	<description>WebDesign, Marketing Web &#38; Solutions - Looking for better ways to manage your Business</description>
	<lastBuildDate>Wed, 16 May 2012 13:10:26 +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>1er capa de Layar Vision en Tucumán &#8211; FRT UTN</title>
		<link>http://www.marindelafuente.com.ar/1er-capa-de-layar-vision-en-tucuman/</link>
		<comments>http://www.marindelafuente.com.ar/1er-capa-de-layar-vision-en-tucuman/#comments</comments>
		<pubDate>Wed, 16 May 2012 12:55:16 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[WebDesigners, WebMasters & Developers]]></category>

		<guid isPermaLink="false">http://www.marindelafuente.com.ar/?p=423</guid>
		<description><![CDATA[Con motivo de la Semana de la Ingeniería en la Universidad Tecnológica Nacional – Facultad Regional Tucumán estuve preparando una capa de Layar Vision en su Version 6.0. La finalidad es agregarle información complementaria (realidad aumentada) a los carteles y afiches que están pegados en la universidad. Estoy haciendo el relevamiento de la información y [...]]]></description>
			<content:encoded><![CDATA[<p><a href="http://www.marindelafuente.com.ar/wp-content/uploads/2012/05/layar.jpg"><img class="alignleft size-full wp-image-428" style="margin-left: 10px; margin-right: 10px;" title="layar" src="http://www.marindelafuente.com.ar/wp-content/uploads/2012/05/layar.jpg" alt="" width="124" height="124" /></a>Con motivo de la Semana de la Ingeniería en la Universidad Tecnológica Nacional – Facultad Regional Tucumán estuve preparando una capa de Layar Vision en su Version 6.0.<span id="more-423"></span></p>
<p>La finalidad es agregarle información complementaria (realidad aumentada) a los carteles y afiches que están pegados en la universidad.</p>
<p>Estoy haciendo el relevamiento de la información y agregando los carteles pegados en las paredes de la universidad por partes. Para hacer más fácil el proceso de recolección del material saco una foto a cada uno de los carteles y luego con photoshop lo retoco hasta dejarlo en condiciones para ser usado por Layar como imagen de referencia.</p>
<p>Con respecto a las imágenes de referencia que usa LAYAR hay especificaciones con respecto a la calidad por lo que es necesario pasarlas primero por photoshop, claro que tener el archivo digital de cada uno de los carteles sería lo ideal pero representa todo un problema el tener que ir rastreando los autores de cada cartel para solicitarles el archivo digital.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.marindelafuente.com.ar/1er-capa-de-layar-vision-en-tucuman/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>PHP: calcular edad a partir de fecha de nacimiento</title>
		<link>http://www.marindelafuente.com.ar/php-calcular-edad-a-partir-de-fecha-de-nacimiento/</link>
		<comments>http://www.marindelafuente.com.ar/php-calcular-edad-a-partir-de-fecha-de-nacimiento/#comments</comments>
		<pubDate>Mon, 07 May 2012 14:55:55 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[WebDesigners, WebMasters & Developers]]></category>

		<guid isPermaLink="false">http://www.marindelafuente.com.ar/?p=416</guid>
		<description><![CDATA[A continuación una función php para calcular la edad a partir de la fecha de nacimiento. function calcular_edad($fecha){ $dias = explode(&#8220;-&#8221;, $fecha, 3); $dias = mktime(0,0,0,$dias[1],$dias[0],$dias[2]); $edad = (int)((time()-$dias)/31556926 ); return $edad; } // Formato: dd-mm-yy echo calcular_edad(&#8220;01-10-1989&#8243;); // Resultado: 21]]></description>
			<content:encoded><![CDATA[<p><a href="http://www.marindelafuente.com.ar/wp-content/uploads/2012/04/php.jpg"><img class="alignleft size-full wp-image-390" style="margin-left: 10px; margin-right: 10px;" title="php" src="http://www.marindelafuente.com.ar/wp-content/uploads/2012/04/php.jpg" alt="" width="124" height="124" /></a>A continuación una función php para calcular la edad a partir de la fecha de nacimiento.<span id="more-416"></span></p>
<div></div>
<div></div>
<div></div>
<div></div>
<div></div>
<div>
<blockquote>
<div>function calcular_edad($fecha){<br />
$dias = explode(&#8220;-&#8221;, $fecha, 3);<br />
$dias = mktime(0,0,0,$dias[1],$dias[0],$dias[2]);<br />
$edad = (int)((time()-$dias)/31556926 );<br />
return $edad;<br />
}<br />
// Formato: dd-mm-yy<br />
echo calcular_edad(&#8220;01-10-1989&#8243;); // Resultado: 21</div>
</blockquote>
</div>
]]></content:encoded>
			<wfw:commentRss>http://www.marindelafuente.com.ar/php-calcular-edad-a-partir-de-fecha-de-nacimiento/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Detectar móvil con php</title>
		<link>http://www.marindelafuente.com.ar/detectar-movil-con-php/</link>
		<comments>http://www.marindelafuente.com.ar/detectar-movil-con-php/#comments</comments>
		<pubDate>Mon, 07 May 2012 14:40:20 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[WebDesigners, WebMasters & Developers]]></category>

		<guid isPermaLink="false">http://www.marindelafuente.com.ar/?p=412</guid>
		<description><![CDATA[Código php para detectar si el usuario entra en nuestra web lo hace a través de un dispositivo móvil u otro dispositivo. Para detectar el navegador usamos la variable de php HTTP_USER_AGENT: &#60;?php // Si el NAVEGADOR WEB del cliente es un MÓVIL $useragent=$_SERVER['HTTP_USER_AGENT']; if(preg_match(&#8216;/android.+mobile&#124;avantgo&#124;bada\/&#124;blackberry&#124;blazer&#124;compal&#124;elaine&#124;fennec&#124;hiptop&#124;iemobile&#124;ip(hone&#124;od)&#124;iris&#124;kindle&#124;lge &#124;maemo&#124;midp&#124;mmp&#124;opera m(ob&#124;in)i&#124;palm( os)?&#124;phone&#124;p(ixi&#124;re)\/&#124;plucker&#124;pocket&#124;psp&#124;symbian&#124;treo&#124;up\.(browser&#124;link)&#124;vodafone&#124;wap&#124;windows (ce&#124;phone)&#124;xda&#124;xiino/i&#8217;,$useragent)&#124;&#124;preg_match(&#8216;/1207&#124;6310&#124;6590&#124;3gso&#124;4thp&#124;50[1-6]i&#124;770s&#124;802s&#124;a wa&#124;abac&#124;ac(er&#124;oo&#124;s\-)&#124;ai(ko&#124;rn)&#124;al(av&#124;ca&#124;co)&#124;amoi&#124;an(ex&#124;ny&#124;yw)&#124;aptu&#124;ar(ch&#124;go)&#124;as(te&#124;us)&#124;attw&#124;au(di&#124;\-m&#124;r &#124;s )&#124;avan&#124;be(ck&#124;ll&#124;nq)&#124;bi(lb&#124;rd)&#124;bl(ac&#124;az)&#124;br(e&#124;v)w&#124;bumb&#124;bw\-(n&#124;u)&#124;c55\/&#124;capi&#124;ccwa&#124;cdm\-&#124;cell&#124;chtm&#124;cldc&#124;cmd\-&#124;co(mp&#124;nd)&#124;craw&#124;da(it&#124;ll&#124;ng)&#124;dbte&#124;dc\-s&#124;devi&#124;dica&#124;dmob&#124;do(c&#124;p)o&#124;ds(12&#124;\-d)&#124;el(49&#124;ai)&#124;em(l2&#124;ul)&#124;er(ic&#124;k0)&#124;esl8&#124;ez([4-7]0&#124;os&#124;wa&#124;ze)&#124;fetc&#124;fly(\-&#124;_)&#124;g1 u&#124;g560&#124;gene&#124;gf\-5&#124;g\-mo&#124;go(\.w&#124;od)&#124;gr(ad&#124;un)&#124;haie&#124;hcit&#124;hd\-(m&#124;p&#124;t)&#124;hei\-&#124;hi(pt&#124;ta)&#124;hp( i&#124;ip)&#124;hs\-c&#124;ht(c(\-&#124; &#124;_&#124;a&#124;g&#124;p&#124;s&#124;t)&#124;tp)&#124;hu(aw&#124;tc)&#124;i\-(20&#124;go&#124;ma)&#124;i230&#124;iac( [...]]]></description>
			<content:encoded><![CDATA[<p><a href="http://www.marindelafuente.com.ar/wp-content/uploads/2012/04/php.jpg"><img class="alignleft size-full wp-image-390" style="margin-left: 10px; margin-right: 10px;" title="php" src="http://www.marindelafuente.com.ar/wp-content/uploads/2012/04/php.jpg" alt="" width="124" height="124" /></a>Código php para detectar si el usuario entra en nuestra web lo hace a través de un dispositivo móvil u otro dispositivo.<span id="more-412"></span></p>
<p>Para detectar el navegador usamos la variable de php <strong>HTTP_USER_AGENT</strong>:</p>
<div>
<blockquote>
<div>&lt;?php<br />
// Si el NAVEGADOR WEB del cliente es un MÓVIL<br />
$useragent=$_SERVER['HTTP_USER_AGENT'];<br />
if(<a href="http://www.php.net/preg_match">preg_match</a>(&#8216;/android.+mobile|avantgo|bada\/|blackberry|blazer|compal|elaine|fennec|hiptop|iemobile|ip(hone|od)|iris|kindle|lge |maemo|midp|mmp|opera m(ob|in)i|palm( os)?|phone|p(ixi|re)\/|plucker|pocket|psp|symbian|treo|up\.(browser|link)|vodafone|wap|windows (ce|phone)|xda|xiino/i&#8217;,$useragent)||<a href="http://www.php.net/preg_match">preg_match</a>(&#8216;/1207|6310|6590|3gso|4thp|50[1-6]i|770s|802s|a wa|abac|ac(er|oo|s\-)|ai(ko|rn)|al(av|ca|co)|amoi|an(ex|ny|yw)|aptu|ar(ch|go)|as(te|us)|attw|au(di|\-m|r |s )|avan|be(ck|ll|nq)|bi(lb|rd)|bl(ac|az)|br(e|v)w|bumb|bw\-(n|u)|c55\/|capi|ccwa|cdm\-|cell|chtm|cldc|cmd\-|co(mp|nd)|craw|da(it|ll|ng)|dbte|dc\-s|devi|dica|dmob|do(c|p)o|ds(12|\-d)|el(49|ai)|em(l2|ul)|er(ic|k0)|esl8|ez([4-7]0|os|wa|ze)|fetc|fly(\-|_)|g1 u|g560|gene|gf\-5|g\-mo|go(\.w|od)|gr(ad|un)|haie|hcit|hd\-(m|p|t)|hei\-|hi(pt|ta)|hp( i|ip)|hs\-c|ht(c(\-| |_|a|g|p|s|t)|tp)|hu(aw|tc)|i\-(20|go|ma)|i230|iac( |\-|\/)|ibro|idea|ig01|ikom|im1k|inno|ipaq|iris|ja(t|v)a|jbro|jemu|jigs|kddi|keji|kgt( |\/)|klon|kpt |kwc\-|kyo(c|k)|le(no|xi)|lg( g|\/(k|l|u)|50|54|e\-|e\/|\-[a-w])|libw|lynx|m1\-w|m3ga|m50\/|ma(te|ui|xo)|mc(01|21|ca)|m\-cr|me(di|rc|ri)|mi(o8|oa|ts)|mmef|mo(01|02|bi|de|do|t(\-| |o|v)|zz)|mt(50|p1|v )|mwbp|mywa|n10[0-2]|n20[2-3]|n30(0|2)|n50(0|2|5)|n7(0(0|1)|10)|ne((c|m)\-|on|tf|wf|wg|wt)|nok(6|i)|nzph|o2im|op(ti|wv)|oran|owg1|p800|pan(a|d|t)|pdxg|pg(13|\-([1-8]|c))|phil|pire|pl(ay|uc)|pn\-2|po(ck|rt|se)|prox|psio|pt\-g|qa\-a|qc(07|12|21|32|60|\-[2-7]|i\-)|qtek|r380|r600|raks|rim9|ro(ve|zo)|s55\/|sa(ge|ma|mm|ms|ny|va)|sc(01|h\-|oo|p\-)|sdk\/|se(c(\-|0|1)|47|mc|nd|ri)|sgh\-|shar|sie(\-|m)|sk\-0|sl(45|id)|sm(al|ar|b3|it|t5)|so(ft|ny)|sp(01|h\-|v\-|v )|sy(01|mb)|t2(18|50)|t6(00|10|18)|ta(gt|lk)|tcl\-|tdg\-|tel(i|m)|tim\-|t\-mo|to(pl|sh)|ts(70|m\-|m3|m5)|tx\-9|up(\.b|g1|si)|utst|v400|v750|veri|vi(rg|te)|vk(40|5[0-3]|\-v)|vm40|voda|vulc|vx(52|53|60|61|70|80|81|83|85|98)|w3c(\-| )|webc|whit|wi(g |nc|nw)|wmlb|wonu|x700|xda(\-|2|g)|yas\-|your|zeto|zte\-/i&#8217;,<a href="http://www.php.net/substr">substr</a>($useragent,0,4))){<br />
?&gt;<br />
HOLA, ENTRAS DESDE UN MÓVIL&#8230;<br />
&lt;?php<br />
}else{<br />
?&gt;<br />
HOLA, ENTRAS DESDE OTRO DISPOSITIVO&#8230;<br />
&lt;?php<br />
}<br />
?&gt;</div>
</blockquote>
</div>
<p>&nbsp;</p>
<p>&nbsp;</p>
]]></content:encoded>
			<wfw:commentRss>http://www.marindelafuente.com.ar/detectar-movil-con-php/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Responsive Design</title>
		<link>http://www.marindelafuente.com.ar/responsive-design/</link>
		<comments>http://www.marindelafuente.com.ar/responsive-design/#comments</comments>
		<pubDate>Mon, 07 May 2012 14:31:49 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[WebDesigners, WebMasters & Developers]]></category>

		<guid isPermaLink="false">http://www.marindelafuente.com.ar/?p=405</guid>
		<description><![CDATA[En español sería algo así como: “diseño web adaptable” o “diseño web flexible“. Esta actualmente muy de moda en la web, y consiste en adaptar fácilmente el diseño de una web a los diferentes dispositivos que usamos para visitarla, como un ipad, iphone, smartphone, notebook, etc… utilizando los media queries de CSS3. A continuación los [...]]]></description>
			<content:encoded><![CDATA[<p><a href="http://www.marindelafuente.com.ar/wp-content/uploads/2012/05/www.jpg"><img class="alignleft size-full wp-image-409" style="margin-left: 10px; margin-right: 10px;" title="www" src="http://www.marindelafuente.com.ar/wp-content/uploads/2012/05/www.jpg" alt="" width="124" height="124" /></a>En español sería algo así como: <strong>“diseño web adaptable</strong>” o “<strong>diseño web flexible</strong>“.</p>
<p>Esta actualmente muy de moda en la web, y <strong>consiste en adaptar fácilmente el diseño de una web a los diferentes dispositivos</strong> que usamos para visitarla, como un ipad, iphone, smartphone, notebook, etc… utilizando los media queries de CSS3.<span id="more-405"></span></p>
<p>A continuación los pasos necesarios para adaptar nuestra web a un diseño flexible:</p>
<h3>1. Meta tag</h3>
<p>Usaremos el meta tag “viewport” para adaptar nuestra web a las diferentes resoluciones de los dispositivos móviles (Android, IOS, Blackberry OS…). De esta manera le decimos al navegador, que fuerze el ancho de la web al ancho de la pantalla:</p>
<div>
<blockquote>
<div>&lt;meta name=&#8221;viewport&#8221; content=&#8221;width=device-width, initial-scale=1.0&#8243;&gt;</div>
</blockquote>
</div>
<h3>2. Compatibilidad con IE</h3>
<p>Internet Explorer 8 y inferiores no es compatible con los media queries de CSS3, pero podemos utilizar alguno de los framework <em>media-queries.js</em> or <em>respond.js</em> para que si lo soporten. En este ejemplo voy a utilizar media-queries.js y ya será compatible con las versiones inferiores de IE 9:</p>
<div>
<blockquote>
<div>&lt;!&#8211;[if lt IE 9]&gt;<br />
&lt;script src=&#8221;http://css3-mediaqueries-js.googlecode.com/svn/trunk/css3-mediaqueries.js&#8221;&gt;&lt;/script&gt;<br />
&lt;![endif]&#8211;&gt;</div>
</blockquote>
</div>
<h3>3. Media Queries</h3>
<p>Un ejemplo “básico” de estructura css de una web sería por ejemplo este:</p>
<div>
<blockquote>
<div>#contenedor {<br />
width: 980px;<br />
margin: 0 auto;<br />
}<br />
#cabecera {<br />
height: 150px;<br />
}<br />
#contenido {<br />
width: 600px;<br />
float: left;<br />
}<br />
#lateral {<br />
width: 300px;<br />
float: right;<br />
}<br />
#pie {<br />
clear: both;<br />
height: 150px;<br />
}</div>
</blockquote>
</div>
<p>Bien, ahora 2 sencillos ejemplos de media queries utilizando <strong>@media screen</strong> de css3:</p>
<p>a) Para resoluciones inferiores a 980px:</p>
<div>
<blockquote>
<div>@media screen and (max-width: 980px) {#contenedor { width: 100%; }<br />
#contenido { width: 70%; }<br />
#lateral {width: 30%; }<br />
}</div>
</blockquote>
</div>
<p>b) Para resoluciones inferiores a 700px:</p>
<div>
<blockquote>
<div>@media screen and (max-width: 700px) {#contenido, #lateral {<br />
width: auto;<br />
float: none;<br />
}}</div>
</blockquote>
</div>
<p>Todo esto es muy personalizable…, pero os servirá de base si estais empezando.</p>
<p>En el primer ejemplo adaptamos nuestro diseño a resoluciones inferiores de 980 pixeles, donde nuestros div principales se ajustan basados en porcentajes de ancho.<br />
Y en el segundo ejemplo es para resoluciones inferiores a 700 pixeles, y lo que hacemos es quitar el flotamiento entre divs para que se coloquen uno encima del otro.</p>
<p>Fuente: http://www.bufa.es/responsive-design/</p>
<p>&nbsp;</p>
<p>&nbsp;</p>
<p>&nbsp;</p>
<p>&nbsp;</p>
<p>&nbsp;</p>
]]></content:encoded>
			<wfw:commentRss>http://www.marindelafuente.com.ar/responsive-design/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Modernizr, HTML5 y CSS3</title>
		<link>http://www.marindelafuente.com.ar/modernizr-html5-y-css3/</link>
		<comments>http://www.marindelafuente.com.ar/modernizr-html5-y-css3/#comments</comments>
		<pubDate>Wed, 02 May 2012 12:49:16 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[WebDesigners, WebMasters & Developers]]></category>

		<guid isPermaLink="false">http://www.marindelafuente.com.ar/?p=396</guid>
		<description><![CDATA[Modernizr es una librería javascript que sirve para detectar el soporte de ciertas funcionalidades de HTML5 y CSS3 en los navegadores. No tiene sentido detectar si un navegador es capaz de servir páginas en HTML5. Lo que se hace es detectar si el navegador tiene implementadas ciertas funcionalidades de forma separada como: canvas, video, geolocalización, [...]]]></description>
			<content:encoded><![CDATA[<p><a href="http://www.marindelafuente.com.ar/wp-content/uploads/2012/05/modernizr.jpg"><img class="alignleft size-full wp-image-401" style="margin-left: 10px; margin-right: 10px;" title="modernizr" src="http://www.marindelafuente.com.ar/wp-content/uploads/2012/05/modernizr.jpg" alt="" width="124" height="124" /></a><a href="http://www.modernizr.com/">Modernizr</a> es una librería javascript que sirve para detectar el soporte de ciertas funcionalidades de HTML5 y CSS3 en los navegadores. No tiene sentido detectar si un navegador es capaz de servir páginas en HTML5. Lo que se hace es detectar si el navegador tiene implementadas ciertas funcionalidades de forma separada como: canvas, video, geolocalización, bordes redondeados, etc.<span id="more-396"></span>Actualmente van por la <strong>versión 1.6</strong> de Modernizr y ocupa menos de 10Kb (la versión descomprimida son 33Kb). Su uso es muy simple. Vamos a poner un ejemplo sencillo para presentarlo.</p>
<p>Imaginemos que queremos detectar si el navegador del usuario que nos está visitando soporta la nueva etiqueta <strong>canvas</strong> (elemento de HTML5 que hace las veces de contenedor o “pizarra” y que permite la generación de gráficos dinámicamente). Si no la soporta, no queremos siquiera que se muestre (esto lo haremos con CSS, también apoyándonos en Modernizr), pero si la soporta, dibujaremos dentro del canvas un cuadrado de lado 100px de un color aleatorio.</p>
<p>Nuestro HTML será así. Se ha usado la sintaxis de HTML5, por eso tanto la etiqueta DOCTYPE como el meta charset son tan escuetas:</p>
<blockquote>
<pre>&lt;!DOCTYPE html&gt;
&lt;html&gt;
	&lt;head&gt;
		&lt;meta charset="utf-8"/&gt;
		&lt;title&gt;Modernizr: HTML5 y CSS3&lt;/title&gt;
		&lt;style type="text/css"&gt;
			.no-canvas #myCanvas {
				display: none;
			}
		&lt;/style&gt;
		&lt;script src="modernizr-1.6.min.js"&gt;&lt;/script&gt;
		&lt;script src="canvas.js"&gt;&lt;/script&gt;
	&lt;/head&gt;
	&lt;body onload="paintCanvas()"&gt;
		&lt;canvas id="myCanvas" width="320" height="240"/&gt;&lt;/canvas&gt;
	&lt;/body&gt;
&lt;/html&gt;</pre>
</blockquote>
<p>Como podemos ver, se crea una etiqueta canvas de 320x240px y se le da un identificador muy original “myCanvas”. Se incluyen dos ficheros javascript: el de modernizr y uno nuestro llamado canvas.js (cuyo contenido se muestra un poco más abajo).</p>
<p>Lo interesante aquí es tanto la parte del CSS incrustado donde se le dice que si no tiene soporte para canvas, directamente no muestre el elemento:</p>
<blockquote>
<pre>&lt;style type="text/css"&gt;
	.no-canvas #myCanvas {
		display: none;
	}
&lt;/style&gt;</pre>
</blockquote>
<p>La “magia” hace que si no hay soporte para canvas, no se muestre el elemento canvas. Es decir, se aplica el estilo no-canvas. Si existe, no ponemos ningún estilo en particular (podríamos haber escrito <code>.canvas #myCanvas</code>).</p>
<p>Y nuestro javascript canvas.js será como sigue:</p>
<blockquote>
<pre>function paintCanvas() {
	if (Modernizr.canvas) {
		// Tu navegador soporta Canvas
		var myCanvas = document.getElementById("myCanvas");
		var context = myCanvas.getContext("2d");
		context.fillStyle = "rgb(" + Math.round(255 * Math.random())
+ "," + Math.round(255 * Math.random()) + "," + Math.round(255 * Math.random()) + ")";
		context.fillRect(100, 50, 100, 100);
	} else {
		alert('Tu navegador no soporta Canvas... Aún.');
	}
}</pre>
</blockquote>
<p>La parte importante de detección es <code>Modernizr.canvas</code>. Modernizr crea un objeto global que tiene un conjunto de atributos de tipo Boolean, correspondientes a las diferentes funcionalidades detectadas. Su valor será “true” si se ha detectado que el navegador soporta aquello por lo que estamos preguntando, es este caso, canvas.</p>
<p>Al cargarse la página, se llamará a la función paintCanvas, cuya misión es dibujar dicho cuadrado dentro del canvas “myCanvas”, si se puede. Si no se puede, nos mostrará un mensaje de alerta. Bastante sencillo ¿verdad?</p>
<p><a href="http://www.nekotek.es/blog/wp-content/uploads/2011/01/canvas_example.zip">Descargar ejemplo de Canvas</a></p>
<p>fuente:</p>
<p>http://www.nekotek.es/blog/2011/01/modernizr-html5-y-css3/</p>
<p>&nbsp;</p>
]]></content:encoded>
			<wfw:commentRss>http://www.marindelafuente.com.ar/modernizr-html5-y-css3/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Variable variables, como crear variables dinamicas en PHP</title>
		<link>http://www.marindelafuente.com.ar/variable-variables-como-crear-variables-dinamicas-en-php/</link>
		<comments>http://www.marindelafuente.com.ar/variable-variables-como-crear-variables-dinamicas-en-php/#comments</comments>
		<pubDate>Fri, 27 Apr 2012 15:40:11 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[WebDesigners, WebMasters & Developers]]></category>

		<guid isPermaLink="false">http://www.marindelafuente.com.ar/?p=385</guid>
		<description><![CDATA[Vamos aprender acerca de las Variable variables. Algunas personas me preguntan, ¿por qué escribir sobre esto?. Simple razón. Yo había leído sobre este tema antes, y nunca presté toda mi atención en lo útil que esto podría ser. Eso fue hasta que tuve que tomar un examen de PHP, y vi para mi sorpresa, una [...]]]></description>
			<content:encoded><![CDATA[<p><a href="http://www.marindelafuente.com.ar/wp-content/uploads/2012/04/php.jpg"><img class="alignleft size-full wp-image-390" style="margin-left: 10px; margin-right: 10px;" title="php" src="http://www.marindelafuente.com.ar/wp-content/uploads/2012/04/php.jpg" alt="" width="124" height="124" /></a>Vamos aprender acerca de las Variable variables. Algunas personas me preguntan, ¿por qué escribir sobre esto?. Simple razón. Yo había leído sobre este tema antes, y nunca presté toda mi atención en lo útil que esto podría ser. <span id="more-385"></span>Eso fue hasta que tuve que tomar un examen de PHP, y vi para mi sorpresa, una pregunta que lee como sigue, ¿Qué es esto, $$var? Realmente no podía recordar el término correcto, pero yo tenía la idea. Después de esta prueba, rápidamente me fui a mi libro de texto, y busqué por todos lados, hasta por fin encontrar, las Variable variables! Nunca más, esta pregunta será un dolor de cabeza para mí. De hecho, he decidido que esta pregunta no sea un dolor para cualquiera de ustedes los lectores. Vamos a echar un vistazo rápido sobre cómo definir estos tipos de variables. Recapitulemos sobre la definición de una variable llamada quantity, con un valor numerico de 5.</p>
<blockquote>
<div><strong><code>&lt;?php </code><code>$quantity</code> <code>= 5; ?&gt;</code></strong></div>
</blockquote>
<div></div>
<div>Para declarar una ‘Variable variable’, se haría de la siguiente forma:</div>
<div>
<div>
<blockquote>
<div><strong><code>&lt;?php</code></strong></div>
<div><strong><code>     </code><code>$field</code> <code>= </code><code>'quantity'</code><code>;</code></strong></div>
<div><strong><code>     </code><code>$</code><code>$field</code> <code>= 5;</code></strong></div>
<div><strong><code>?&gt;</code></strong></div>
</blockquote>
</div>
</div>
<div>ó</div>
<div>
<div>
<blockquote>
<div><strong><code>&lt;?php</code></strong></div>
<div><strong><code>     </code><code>$field</code> <code>= </code><code>'quantity'</code><code>;</code></strong></div>
<div><strong><code>     </code><code>${</code><code>$field</code><code>} = 5;<br />
?&gt;</code></strong></div>
</blockquote>
</div>
</div>
<div></div>
<div>*Nota rápida: En mi opinión, la segunda manera de hacer esto es mi forma preferida de hacerlo. La razón es simple, se ve un poco más organizada, y cuando se trata de buscar el código y mantenerlo, usted es capaz de detectar con más facilidad, las variable variables, de las variables regulares .</div>
<div></div>
<div>
<p>Este ejemplo anterior es exactamente lo mismo que nuestro primer ejemplo. ¿Qué dijo? Sí, es la misma cosa. Así que ¿por qué molestarse haciendo que el camino más largo? No, en realidad es una manera corta, permítanme explicar.</p>
<p>En un formulario web normal, cuando se le pide al usuario algunos datos personales, es probable que pida: nombre, apellido, fecha de nacimiento, dirección, ¿qué ciudad y / o estado en que vive?, tal vez incluso su número de teléfono. No podemos olvidar el correo electrónico, como puede ser que desee ponerse en contacto con este usuario en particular de una manera rápida. Vamos a suponer que ya tenemos un formulario, con todos estos campos, y que va a ser procesada por nuestro proceso de PHP, llamado process.php, y normalmente tendría este método usual:</p>
<div>
<blockquote>
<div><code>&lt;?php</code></div>
<div><code>     </code><code>$fname</code> <code>= </code><code>$_POST</code><code>[</code><code>'fname'</code><code>];  </code><code>//Variable nombre</code></div>
<div><code>     </code><code>$lname</code> <code>= </code><code>$_POST</code><code>[</code><code>'lname'</code><code>];  </code><code>//Variable apellido</code></div>
<div><code>     </code><code>$dob</code>   <code>= </code><code>$_POST</code><code>[</code><code>'dob'</code><code>];    </code><code>//Variable fecha de nacimiendo</code></div>
<div><code>     </code><code>$add1</code>  <code>= </code><code>$_POST</code><code>[</code><code>'add1'</code><code>];   </code><code>//Variable direccion</code></div>
<div><code>     </code><code>$add2</code>  <code>= </code><code>$_POST</code><code>[</code><code>'add2'</code><code>];   </code><code>//Variable direccion 2</code></div>
<div><code>     </code><code>$city</code>  <code>= </code><code>$_POST</code><code>[</code><code>'city'</code><code>];   </code><code>//Variable ciudad</code></div>
<div><code>     </code><code>$state</code> <code>= </code><code>$_POST</code><code>[</code><code>'state'</code><code>];  </code><code>//Variable estado</code></div>
<div><code>     </code><code>$phone</code> <code>= </code><code>$_POST</code><code>[</code><code>'phone'</code><code>];  </code><code>//Variable numero de telefono</code></div>
<div><code>     </code><code>$email</code> <code>= </code><code>$_POST</code><code>[</code><code>'email'</code><code>];  </code><code>//Variable correo electronico<br />
?&gt;</code></div>
</blockquote>
</div>
</div>
<div></div>
<div>No estoy diciendo que esta es una mala idea, pero en el caso que tengamos más de 20 campos que necesitamos para procesar? Nos limitaremos a añadir 20 líneas más de código, para lograr nuestro objetivo. Ahora bien, echemos un vistazo a la magia “Variable variables”. El código anterior se podría reducir un poco a nuestra conveniencia. Echemos un vistazo:</div>
<div></div>
<div>
<div>
<blockquote>
<div><code>&lt;?php</code></div>
<div><code>     </code><code>// Todos los campos a ser procesados</code></div>
<div><code>     </code><code>$fields</code> <code>= </code><code>array</code><code>(</code><code>'fname'</code><code>,</code><code>'lname'</code><code>,</code><code>'dob'</code><code>,</code><code>'add1'</code><code>,</code></div>
<div><code>                      </code><code>'add2'</code><code>,</code><code>'city'</code><code>,</code><code>'state'</code><code>,</code><code>'phone'</code><code>,</code><code>'email'</code><code>);</code></div>
<div><code>     </code><code>// Tienes una iteración para crear todos los campos</code></div>
<div><code>     </code><code>foreach</code><code>(</code><code>$fields</code> <code>as</code> <code>$field</code><code>)</code></div>
<div><code>     </code><code>{</code></div>
<div><code>          </code><code>${</code><code>$field</code><code>} = </code><code>$_POST</code><code>[</code><code>$field</code><code>];</code></div>
<div><code>     </code><code>}<br />
?&gt;</code></div>
</blockquote>
</div>
</div>
<div></div>
<div>
<p>Como puede ver, todas estas variables que necesitamos, se crean dentro de un bucle “loop”. Si tuviéramos que agregar unos cuantos campos más a nuestra forma, todo lo que tendría que hacer es añadir los nombres de los campos en nuestro array $fields.</p>
<p>Variable variables puede ser divertido de usar, especialmente cuando se tiene una fecha de entrega por venir. Estas realmente pueden ayudarle a acelerar su codificación con facilidad.</p>
<p>Me gustaría saber qué otras maneras puedes utilizar las “Variable variables” para mejorar su código.</p>
<p><a href="http://www.jotorres.com/es/2011/10/variable-variables-how-to-create-dynamic-variables-in-php/">Fuente: www.jotorres.com</a></p>
</div>
<div></div>
<div></div>
]]></content:encoded>
			<wfw:commentRss>http://www.marindelafuente.com.ar/variable-variables-como-crear-variables-dinamicas-en-php/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Google recuerda a Gideon Sundback</title>
		<link>http://www.marindelafuente.com.ar/google-recuerda-a-gideon-sundback/</link>
		<comments>http://www.marindelafuente.com.ar/google-recuerda-a-gideon-sundback/#comments</comments>
		<pubDate>Tue, 24 Apr 2012 15:51:16 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[Blog Personal]]></category>

		<guid isPermaLink="false">http://www.marindelafuente.com.ar/?p=378</guid>
		<description><![CDATA[MOUNTAIN VIEW, Estados Unidos.- El inventor sueco Gideon Sundback fue quien terminó de darle forma a la idea original de Elias Howe, Max Wolff y Whitcomb Judson, y con ello se ganó un lugar importante en la historia de la moda. Aquellos tres ingenieros habían elaborado el primer prototipo de cremallera, utilizado originalmente en botas [...]]]></description>
			<content:encoded><![CDATA[<p><a href="http://www.marindelafuente.com.ar/wp-content/uploads/2012/04/GideonSundback.jpg"><img class="alignleft size-full wp-image-382" style="margin-left: 10px; margin-right: 10px;" title="GideonSundback" src="http://www.marindelafuente.com.ar/wp-content/uploads/2012/04/GideonSundback.jpg" alt="" width="130" height="130" /></a>MOUNTAIN VIEW, Estados Unidos.- El inventor sueco Gideon Sundback fue quien terminó de darle forma a la idea original de Elias Howe, Max Wolff y Whitcomb Judson, y con ello se ganó un lugar importante en la historia de la moda. Aquellos tres ingenieros habían elaborado el primer prototipo de cremallera, utilizado originalmente en botas y bolsas de tabaco.<span id="more-378"></span></p>
<p>Dos décadas después, fue Sundback quien le encontró otras formas y funciones en diversas prendas, y quien logró revolucionar las vestimentas de la época gracias a su inventiva.</p>
<p>Nacido en Suecia, estudió en Alemania, se mudó a Estados Unidos por motivos laborales y, luego de concretar su invento, instaló en Canadá la primera fábrica de cremalleras del mundo. En este sentido es importante destacar que además de haber inventado el cierre tal como lo conocemos en la actualidad, creó la primera máquina capaz de fabricar estos elementos en serie.</p>
<p>La ubicación de su empresa generó algunas controversias sobre su origen, e incluso hay muchos que aseguran que era canadiense. Sin embargo, su residencia estaba en Pennsylvania, desde donde controlaba y veía crecer su negocio. En esa ciudad y producto de un problema cardíaco, falleció a los 74 años de edad, en 1954.</p>
<p>Hoy Google lo recuerda con uno de sus más originales doodles: una cremallera gigante que se abre al hacer click sobre ella.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.marindelafuente.com.ar/google-recuerda-a-gideon-sundback/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Mostrar acentos en Adobe Flash</title>
		<link>http://www.marindelafuente.com.ar/mostrar-acentos-en-adobe-flash/</link>
		<comments>http://www.marindelafuente.com.ar/mostrar-acentos-en-adobe-flash/#comments</comments>
		<pubDate>Fri, 06 Apr 2012 15:16:26 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[WebDesigners, WebMasters & Developers]]></category>

		<guid isPermaLink="false">http://www.marindelafuente.com.ar/?p=373</guid>
		<description><![CDATA[¿Tu flash no muestra acentos? A mí me ha ocurrido que un flash que obtenía datos de un XML y los mostraba en un texto dinámico no mostraba los acentos de los textos. La solución fue editar las propiedades del texto dinámico e incorporar caracteres de Latín I (latín estándar seguía sin mostrármelos). Espero que [...]]]></description>
			<content:encoded><![CDATA[<p><a href="http://www.marindelafuente.com.ar/wp-content/uploads/2012/04/flash.jpg"><img class="alignleft size-full wp-image-393" style="margin-left: 10px; margin-right: 10px;" title="flash" src="http://www.marindelafuente.com.ar/wp-content/uploads/2012/04/flash.jpg" alt="" width="124" height="124" /></a>¿Tu flash no muestra acentos? A mí me ha ocurrido que un flash que obtenía datos de un XML y los mostraba en un texto dinámico no mostraba los acentos de los textos.<br />
La solución fue editar las propiedades del texto dinámico e incorporar caracteres de Latín I (latín estándar seguía sin mostrármelos).<span id="more-373"></span><br />
Espero que os sirva de algo esto. El Flash estaba hecho con Flash CS3 + Actionscript 3</p>
<p style="text-align: center;"><a href="http://www.marindelafuente.com.ar/wp-content/uploads/2012/04/acentosflashhf6.jpg"><img class="wp-image-374" title="acentosflashhf6" src="http://www.marindelafuente.com.ar/wp-content/uploads/2012/04/acentosflashhf6.jpg" alt="" width="430" height="414" /></a></p>
<p style="text-align: left;">Fuente: http://janmi.com/mostrar-acentos-en-flash/</p>
]]></content:encoded>
			<wfw:commentRss>http://www.marindelafuente.com.ar/mostrar-acentos-en-adobe-flash/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Excluir algunas categorias en las busqueda de WordPress</title>
		<link>http://www.marindelafuente.com.ar/buscar-solo-en-ciertas-categorias-de-wordpress/</link>
		<comments>http://www.marindelafuente.com.ar/buscar-solo-en-ciertas-categorias-de-wordpress/#comments</comments>
		<pubDate>Tue, 13 Mar 2012 15:40:21 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[WebDesigners, WebMasters & Developers]]></category>

		<guid isPermaLink="false">http://www.marindelafuente.com.ar/?p=363</guid>
		<description><![CDATA[Si alguna vez has buscado la manera de eliminar cierta categoría de las búsquedas de wordpress. Este código viene de maravilla. Este código, excluye a las categorías 1,2,3 si quieres agregar mas solo pon las con un signo menos, -n; &#60;?php if( is_search() )  : $paged = (get_query_var('paged')) ? get_query_var('paged') : 1; query_posts("s=$s&#38;paged=$paged&#38;cat=-1,-2,-3"); endif; ?&#62; Aquí pones el código del loop]]></description>
			<content:encoded><![CDATA[<p><a><img class="alignleft size-full wp-image-299" style="margin-left: 10px; margin-right: 10px;" title="wordpress" src="http://www.marindelafuente.com.ar/wp-content/uploads/2012/01/wordpress.jpg" alt="" width="124" height="124" /></a> Si alguna vez has buscado la manera de eliminar cierta categoría de las búsquedas de wordpress. Este código viene de maravilla.<span id="more-363"></span></p>
<p>Este código, excluye a las categorías 1,2,3 si quieres agregar mas solo pon las con un signo menos, -n;</p>
<p><code><code><strong>&lt;?php if( is_search() )  : </strong><br />
<strong>$paged = (get_query_var('paged')) ? get_query_var('paged') : 1; </strong><br />
<strong>query_posts("s=$s&amp;paged=$paged&amp;cat=-1,-2,-3"); </strong><br />
<strong>endif; ?&gt;</strong></code></code></p>
<p>Aquí pones el código del loop</p>
]]></content:encoded>
			<wfw:commentRss>http://www.marindelafuente.com.ar/buscar-solo-en-ciertas-categorias-de-wordpress/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Los Estados Mentales y el estado ALPHA</title>
		<link>http://www.marindelafuente.com.ar/los-estados-mentales-y-el-estado-alpha/</link>
		<comments>http://www.marindelafuente.com.ar/los-estados-mentales-y-el-estado-alpha/#comments</comments>
		<pubDate>Wed, 29 Feb 2012 00:55:04 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[Blog Personal]]></category>

		<guid isPermaLink="false">http://www.marindelafuente.com.ar/?p=360</guid>
		<description><![CDATA[En las técnicas de meditación es muy importante alcanzar el estado mental idoneo para poder relajarse, estos estados tienen una explicación fisiologica que vamos a pasar a revisar aquí. Nuestro cerebro esta compuesto por células de las cuales las más importantes son las neuronas, también están las células gliales. Las neuronas tienen una conexión con [...]]]></description>
			<content:encoded><![CDATA[<p>En las técnicas de meditación es muy importante alcanzar el estado mental idoneo para poder relajarse, estos estados tienen una explicación fisiologica que vamos a pasar a revisar aquí.<span id="more-360"></span></p>
<p>Nuestro cerebro esta compuesto por células de las cuales las más importantes son las neuronas, también están las células gliales.<br />
Las neuronas tienen una conexión con otras a través de axones pero esta conexión tiene un componente químico y otro eléctrico, es este último el que se puede medir a través de un electroencefalograma. Este aparato puede medir las ondas cerebrales, estas dependiendo del estado en que estemos se clasifican en ondas beta cuando el cerebro esta en estado conciente ósea de 14 ciclos por segundo hacia arriba.<br />
Después tenemos el estado Alpha que va de 7 a 14 ciclos por segundo, es en este estado en el que nuestro cerebro trabaja mucho más creativo e intuitivo.</p>
<p>También esta el estado delta de 4 a 7, y el estado Theta(Zeta) de 3 hacia abajo.<br />
En estado de sueño pasamos por todas estas fases, pero cuando estamos despiertos estamos más bien en una sola en beta.<br />
El estado de ensoñación es el conocido como estado Alpha, es decir cuando estamos soñando despiertos, este también es el que se logra a voluntad cuando se practican técnicas de meditación y concentración.</p>
<p>En la ex unión soviética se gasto mucho dinero en la investigación en parapsicología, mucha de esa información se ha mantenido en secreto, otras con el tiempo se han ido descubriendo, una de las cosas que se supo fue que las personas que tenían habilidades telekineticas, es decir de mover objetos, como es el famoso caso de Nina Kulagina entraban en estado Alpha e incluso en estado Delta, y lo hacían concientemente, a voluntad.</p>
<p>el manejar estos estados nos permite mejorar nuestra concentración, nuestra creatividad y por supuesto nuestra capacidad para relajarnos, la meditación es una de las formas más antiguas y efectivas de poder manejar estos estado mentales, también la hipnosis y auto hipnosis permite manejar y aprovechar estos estados.</p>
<div>Si quieres saber más sobre esto ingresa tu mail y nombre en el formulario que esta arriba a la derecha.</div>
<h4>Incoming search terms for the article:</h4>
<ul>
<li>estado alpha</li>
<li>estado alfa</li>
<li>estados mentales</li>
<li>estado mental alfa</li>
<li>tecnicas mentales</li>
<li>meditacion estado alfa</li>
<li>meditacion en estado alfa</li>
<li>estado mental</li>
<li>estado mental delta</li>
<li>estado alfa mental</li>
</ul>
]]></content:encoded>
			<wfw:commentRss>http://www.marindelafuente.com.ar/los-estados-mentales-y-el-estado-alpha/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>

