<?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>webschema &#187; Programación</title>
	<atom:link href="http://webschema.hakel.net/category/programacion/feed/" rel="self" type="application/rss+xml" />
	<link>http://webschema.hakel.net</link>
	<description>: Planifica, diseña, crea la web</description>
	<lastBuildDate>Tue, 20 Dec 2011 20:45:19 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
		<item>
		<title>Humans.txt</title>
		<link>http://webschema.hakel.net/humans-txt/</link>
		<comments>http://webschema.hakel.net/humans-txt/#comments</comments>
		<pubDate>Tue, 26 Jul 2011 23:30:23 +0000</pubDate>
		<dc:creator>Hakel</dc:creator>
				<category><![CDATA[Google]]></category>
		<category><![CDATA[Posicionamiento web]]></category>
		<category><![CDATA[Programación]]></category>
		<category><![CDATA[humans.txt]]></category>
		<category><![CDATA[seo]]></category>
		<category><![CDATA[somos humanos no maquinas]]></category>
		<guid isPermaLink="false">http://webschema.hakel.net/humans-txt/</guid>
		<description><![CDATA[La mayoría de quienes nos dedicamos al desarrollo web, conocemos la existencia y utilidad del archivo robots.txt, el cual se coloca en la raíz de un sitio web y tiene como finalidad dar instrucciones a los bots de los buscadores para que indexen el sitio. Pues bien, haciendo un homenaje a este archivo, se ha…]]></description>
			<content:encoded><![CDATA[<p><a href="http://webschema.hakel.net/wp-content/uploads//64_humans_txt.png"><img style="background-image: none; padding-left: 0px; padding-right: 0px; display: inline; padding-top: 0px; border: 0px;" title="64_humans_txt" src="http://webschema.hakel.net/wp-content/uploads//64_humans_txt_thumb.png" alt="64_humans_txt" width="244" height="71" border="0" /></a></p>
<p>La mayoría de quienes nos dedicamos al desarrollo web, conocemos la existencia y utilidad del archivo robots.txt, el cual se coloca en la raíz de un sitio web y tiene como finalidad dar instrucciones a los bots de los buscadores para que indexen el sitio.</p>
<p>Pues bien, haciendo un homenaje a este archivo, se ha lanzado en enero de este año (2011) la propuesta de crear un archivo humans.txt, con el propósito de conocer a las personas que están detrás de un sitio web (creadores, diseñadores, programadores, SEO’s, etc.).</p>
<p>¿Por qué un txt? Como bien lo explica en la <a href="http://humanstxt.org/ES" target="_blank">página de la propuesta</a>, porque es fácil, rápido y no es intrusivo en el código. Yo le añadiría, que se forma un estándar.</p>
<p>¿Significa esto que hay que dejar de lado los metas? NO, por dos razones:</p>
<p>1. humans.txt es un complemento de información de los autores</p>
<p>2. Los meta tags orientan sobre el contenido de tu sitio, humans.txt no.</p>
<p>Por último, <strong>Abel Cabans</strong> definió los campos básicos que debe llevar el archivo humans.txt, mismo que puedes consultar <a href="http://humanstxt.org/humans.txt" target="_blank">aquí</a>.</p>
<p>&nbsp;</p>
<p>Algunos sitios que han implementado humans.txt:</p>
<p>Google.com, muy a su manera <a title="http://www.google.com/humans.txt" href="http://www.google.com/humans.txt">http://www.google.com/humans.txt</a></p>
<p>Microsiervos: <a title="http://www.microsiervos.com/humans.txt" href="http://www.microsiervos.com/humans.txt">http://www.microsiervos.com/humans.txt</a></p>
<p>&nbsp;</p>
<p>Más información : <a href="http://humanstxt.org/ES/Standard.html" target="_blank">Humans.txt</a></p>
]]></content:encoded>
			<wfw:commentRss>http://webschema.hakel.net/humans-txt/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>5 beneficios del c&#243;digo basado en est&#225;ndares</title>
		<link>http://webschema.hakel.net/5-beneficios-del-cdigo-basado-en-estndares/</link>
		<comments>http://webschema.hakel.net/5-beneficios-del-cdigo-basado-en-estndares/#comments</comments>
		<pubDate>Fri, 23 Jul 2010 17:55:50 +0000</pubDate>
		<dc:creator>Hakel</dc:creator>
				<category><![CDATA[CSS]]></category>
		<category><![CDATA[DISEÑO WEB]]></category>
		<category><![CDATA[Programación]]></category>
		<guid isPermaLink="false">http://webschema.hakel.net/5-beneficios-del-cdigo-basado-en-estndares/</guid>
		<description><![CDATA[Aquí hay 5 grandes razones para adoptar prácticas de codificación basada en estándares: 1. Despliegue en múltiples plataformas de usuario: El mismo código puede mostrarse en una gran cantidad de plataformas de usuario, es decir, en todos aquellos dispositivos que puedan leer XHTML , como buscadores, smartphones, celulares con navegadores, y lectores de pantalla para…]]></description>
			<content:encoded><![CDATA[<p><a href="http://webschema.hakel.net/wp-content/uploads/beneficiosdelosestandaresweb.jpg"><img style="border-bottom: 0px; border-left: 0px; display: inline; border-top: 0px; border-right: 0px" title="beneficios-de-los-estandares-web" border="0" alt="beneficios-de-los-estandares-web" src="http://webschema.hakel.net/wp-content/uploads/beneficiosdelosestandaresweb_thumb.jpg" width="244" height="187" /></a> Aquí hay 5 grandes razones para adoptar prácticas de codificación basada en estándares:</p>
<p><strong>1. Despliegue en múltiples plataformas de usuario:</strong> El mismo código puede mostrarse en una gran cantidad de plataformas de usuario, es decir, en todos aquellos dispositivos que puedan leer XHTML , como buscadores, smartphones, celulares con navegadores, y lectores de pantalla para personas con debilidad visual.</p>
<p><strong>2. Mejora del rendimiento:</strong> Las páginas se vuelven mucho más ligeras (en cuanto a tamaño del archivo) por lo que la descarga es mucho más rápida, esto debido a que el contenido ahora necesita un mínimo de formación en la estructura, ya que toda la presentación del sitio se guarda en un único archivo (css), por lo que el navegador tiene que descargarlo una única vez.</p>
<p> <span id="more-308"></span>
</p>
<p><strong>3. Funciona en la mayoría de los navegadores:</strong> Con un poco de esfuerzo, puedes hacer que tu página se vean correctamente en versiones anteriores, de esta manera, los usuarios obtienen la mejor experiencia con la tecnología que tienen disponible.</p>
<p><strong>4. Separación del contenido y la presentación:</strong> Puedes cambiar o modificar por completo el contenido o el diseño sin afectar al otro</p>
<p><strong>5. Confirmación de que tu código es</strong> <strong>correcto:</strong> los servicios de validación de XHTML y CSS, puedes usarlos durante el desarrollo, éstos informan al instante los errores en tu codificación, por lo tanto, el proceso de depuración es mucho más rápido, y tendrás la garantía de que la página se mostrará siempre completa tanto en los navegadores, como en la validación.</p>
]]></content:encoded>
			<wfw:commentRss>http://webschema.hakel.net/5-beneficios-del-cdigo-basado-en-estndares/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Expresiones Regulares &#250;tiles</title>
		<link>http://webschema.hakel.net/expresiones-regulares-tiles/</link>
		<comments>http://webschema.hakel.net/expresiones-regulares-tiles/#comments</comments>
		<pubDate>Fri, 04 Jun 2010 19:06:20 +0000</pubDate>
		<dc:creator>Hakel</dc:creator>
				<category><![CDATA[Javascript]]></category>
		<category><![CDATA[Programación]]></category>
		<category><![CDATA[definicion]]></category>
		<category><![CDATA[expresiones comunes]]></category>
		<category><![CDATA[Expresiones regulares]]></category>
		<category><![CDATA[expresiones regulares utiles]]></category>
		<category><![CDATA[lista de regex]]></category>
		<category><![CDATA[regex]]></category>
		<category><![CDATA[regexp]]></category>
		<category><![CDATA[validar formularios]]></category>
		<guid isPermaLink="false">http://webschema.hakel.net/expresiones-regulares-tiles/</guid>
		<description><![CDATA[Todos hemos oído hablar o incluso usado alguna vez las expresiones regulares. Si no lo has hecho aún (si no es que ya lo hiciste, y ni por enterado te habías dado), seguro lo harás en algún momento como desarrollador web. Y es que las expresiones regulares constituyen un mecanismo bastante potente para realizar manipulaciones…]]></description>
			<content:encoded><![CDATA[<p><a href="http://webschema.hakel.net/wp-content/uploads/regular.gif"><img style="display: inline; border: 0px;" title="regular" src="http://webschema.hakel.net/wp-content/uploads/regular_thumb.gif" border="0" alt="regular" width="206" height="200" /></a> Todos hemos oído hablar o incluso usado alguna vez las expresiones regulares. Si no lo has hecho aún (si no es que ya lo hiciste, y ni por enterado te habías dado), seguro lo harás en algún momento como desarrollador web.</p>
<p>Y es que las expresiones regulares constituyen un mecanismo bastante potente para realizar manipulaciones de cadenas de texto, pero hay que manejarlas con mucho cuidado.</p>
<p><strong>¿Qué son?</strong></p>
<p>Las expresiones regulares son modelos que describen las combinaciones de caracteres en el texto. Se podrían definir como una serie de caracteres que forman un patrón, que representan a otro grupo de caracteres mayor, de tal forma que podemos comparar el patrón con otros conjuntos de caracteres para ver las coincidencias.</p>
<p>A continuación te dejo una lista de expresiones regulares que comúnmente requieres para validar algunos formularios, espero que te sean útiles.</p>
<p><span id="more-214"></span></p>
<table border="1" cellspacing="0" cellpadding="0">
<tbody>
<tr>
<td width="140" valign="top"><strong><span style="font-size: x-small;">Entero</span></strong></td>
<td width="340" valign="top"><span style="font-size: x-small;">^(?:\+|-)?\d+$</span></td>
</tr>
<tr>
<td width="140" valign="top"><strong><span style="font-size: x-small;">Letras, números y guiones</span></strong></td>
<td width="340" valign="top"><code><span style="font-family: Arial; font-size: x-small;">([A-Za-z0-9-]+)</span></code></td>
</tr>
<tr>
<td width="140" valign="top"><strong><span style="font-size: x-small;">Un solo dígito</span></strong></td>
<td width="340" valign="top"><span style="font-size: x-small;">^[0-9]{1}$</span></td>
</tr>
<tr>
<td width="140" valign="top"><strong><span style="font-size: x-small;">Cadena vacía</span></strong></td>
<td width="340" valign="top"><span style="font-size: x-small;">^\s*$</span></td>
</tr>
<tr>
<td width="140" valign="top"><strong><span style="font-size: x-small;">Cadena alfanumérica</span></strong></td>
<td width="340" valign="top"><span style="font-size: x-small;">^([a-zA-Z]|[0-9])+$</span></td>
</tr>
<tr>
<td width="140" valign="top"><strong><span style="font-size: x-small;">Cadena sin caracteres acentuados</span></strong></td>
<td width="340" valign="top"><span style="font-size: x-small;">^[^áéíóú]*$</span></td>
</tr>
<tr>
<td width="140" valign="top"><strong><span style="font-size: x-small;">Correo electrónico</span></strong></td>
<td width="340" valign="top"><span style="font-size: x-small;">^[^0-9][a-zA-Z0-9_]+([.][a-zA-Z0-9_]+)*[@][a-zA-Z0-9_]+([.][a-zA-Z0-9_]+)*[.][a-zA-Z]{2,4}$</span></td>
</tr>
<tr>
<td width="140" valign="top"><strong><span style="font-size: x-small;">URL</span></strong></td>
<td width="340" valign="top"><span style="font-size: x-small;">^(ht|f)tp(s?)\:\/\/[0-9a-zA-Z]([-.\w]*[0-9a-zA-Z])*(:(0-9)*)*(\/?)( [a-zA-Z0-9\-\.\?\,\'\/\\\+&amp;%\$#_]*)?$</span></td>
</tr>
<tr>
<td width="140" valign="top"><span style="font-size: x-small;"><strong>Usuario</strong> (letras, digitos y subrayado)</span></td>
<td width="340" valign="top"><span style="font-size: x-small;">^[a-zA-Z0-9_]{3,16}$</span></td>
</tr>
<tr>
<td width="140" valign="top"><span style="font-size: x-small;"><strong>Contraseña segura</strong> </span></p>
<p><span style="font-size: x-small;">(Entre 8 y 10 caracteres, por lo menos un dígito, y sin caracteres especiales)</span></td>
<td width="340" valign="top"><span style="font-size: x-small;">(?!^[0-9]*$)(?!^[a-zA-Z]*$)^([a-zA-Z0-9]{8,10})$</span></td>
</tr>
<tr>
<td width="140" valign="top"><strong><span style="font-size: x-small;">Contraseña segura</span></strong></p>
<p><span style="font-size: x-small;">(Al menos una mayúscula, una minúscula y un dígito)</span></td>
<td width="340" valign="top"><span style="font-size: x-small;">((?=.*\d)(?=.*[a-z])(?=.*[A-Z]).{8,15})</span></td>
</tr>
<tr>
<td width="140" valign="top"><span style="font-size: x-small;"><strong>Fecha</strong> (dd/mm/aaaa)</span></td>
<td width="340" valign="top"><span style="font-size: x-small;">^\d{1,2}\/\d{1,2}\/\d{2,4}$</span></td>
</tr>
<tr>
<td width="140" valign="top"><span style="font-size: x-small;"><strong>Hora</strong> (hh:mm:ss)</span></td>
<td width="340" valign="top"><span style="font-size: x-small;">^(0[1-9]|1\d|2[0-3]):([0-5]\d):([0-5]\d)$</span></td>
</tr>
<tr>
<td width="140" valign="top"><strong><span style="font-size: x-small;">Número de Tarjeta de Crédito</span></strong></td>
<td width="340" valign="top"><span style="font-size: x-small;">^((67\d{2})|(4\d{3})|(5[1-5]\d{2})|(6011))(-?\s?\d{4}){3}|(3[4,7])\ d{2}-?\s?\d{6}-?\s?\d{5}$</span></td>
</tr>
<tr>
<td width="140" valign="top"><strong><span style="font-size: x-small;">Números de Teléfono (EEUU, Canadá y México)</span></strong></p>
<p><span style="font-size: x-small;">(###) ###-#### </span></p>
<p><span style="font-size: x-small;">##-###-####</span></td>
<td width="340" valign="top"><span style="font-size: x-small;">^((?[0-9]{3,3})?|[0-9]{3,3}[-. ]?)[ ][0-9]{3,3}[-. ]?[0-9]{4,4}$</span></td>
</tr>
<tr>
<td width="140" valign="top"><strong><span style="font-size: x-small;">Códigos postales</span></strong></p>
<p><span style="font-size: x-small;">#####</span></p>
<p><span style="font-size: x-small;">#####-####</span></td>
<td width="340" valign="top"><code><span style="font-family: Arial; font-size: x-small;">^[0-9]{5,5}([- ]?[0-9]{4,4})?$</span></code></td>
</tr>
<tr>
<td width="140" valign="top"><strong><span style="font-size: x-small;">Direcciones IP</span></strong></td>
<td width="340" valign="top"><code><span style="font-family: Arial; font-size: x-small;">^(?:25[0-5]|2[0-4]d|1dd|[1-9]d|d)(?:[.](?:25[0-5]|2[0-4]d|1dd|[1-9]d|d)){3}$</span></code></td>
</tr>
</tbody>
</table>
]]></content:encoded>
			<wfw:commentRss>http://webschema.hakel.net/expresiones-regulares-tiles/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
	</channel>
</rss>

