<?xml version="1.0" encoding="utf-8"?><rss version="2.0">
<!-- Generado by OboLog XML-O-Matic Script -->
<channel>
	<title><![CDATA[Develovers]]></title>
	<link>http://www.develovers.net/</link>
	<description><![CDATA[Códigos, ejemplos, enlaces sobre programación]]></description>
	<language>es-es</language>
	<pubDate>Thu, 23 May 2013 21:02:58 +0100</pubDate>
	<lastBuildDate>Thu, 23 May 2013 21:02:58 +0100</lastBuildDate>
	<docs>http://blogs.law.harvard.edu/tech/rss</docs>
	<generator>OboLog XML-O-Matic Script</generator>
	<managingEditor>webmaster@obolog.com</managingEditor>
	<webMaster>webmaster@obolog.com</webMaster>
	<image>
		<url>http://s.obolog.net/img/obolog-blog-gratis.png</url>
		<title><![CDATA[Develovers]]></title>
		<link>http://www.develovers.net/</link>
	</image>
	<item>
		<title><![CDATA[Scrapy web crawling con python]]></title>
		<link>http://www.develovers.net/scrapy-web-crawling-python-267873</link>
		<description><![CDATA[
			<p>Hoy os voy a comentar sobre <a href="http://scrapy.org/">scrapy</a>&nbsp;&nbsp; un framework en python como no! que estoy investigando muy potente, basicamente sirve para leer contenido web y extraer la informaci&oacute;n que queramos...</p>
<p class="code">class MininovaSpider(CrawlSpider):<br />&nbsp;&nbsp; domain_name = 'mininova.org'     <br />&nbsp; start_urls = ['http://www.mininova.org/today'] <br />&nbsp; rules = [Rule(SgmlLinkExtractor(allow=['/tor/\d+']), 'parse_torrent')]      <br /><br />&nbsp; def parse_torrent(self, response):         <br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; x = HtmlXPathSelector(response)          <br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; torrent = ScrapedItem()         <br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; torrent.url = response.url         <br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; torrent.name = x.x("//h1/text()").extract()         <br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; torrent.description = x.x("//div[@id='description']").extract()         <br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; torrent.size = x.x("//div[@id='info-left']/p[2]/text()[2]").extract()         <br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; return [torrent]</p>
<p class="code">En este ejemplo podeis ver como facilmente extraemos el titulo, la descripci&oacute;n,&nbsp; el enlace y el tama&ntilde;o, os dejo a vuestra imaginaci&oacute;n lo podemos llegar a hacer</p>
			
			<p>
							Leer <strong><a href="http://www.develovers.net/scrapy-web-crawling-python-267873" title="Blog Sobre Desarrollo y Programación">Blog Sobre Desarrollo y Programación</a></strong> en <a href="http://www.develovers.net/" title="Blog Sobre Desarrollo y Programación">Develovers</a>
            </p>
			 ]]></description>
		<author>tomcask</author>
		<category><![CDATA[python]]></category>
		<category><![CDATA[web]]></category>
		<comments>http://www.develovers.net/scrapy-web-crawling-python-267873#formulario</comments>
		<guid>http://www.develovers.net/scrapy-web-crawling-python-267873</guid>
		<pubDate>Fri, 29 May 2009 07:49:00 +0100</pubDate>
	</item>
	<item>
		<title><![CDATA[Ejecutar aplicaciones a distancia. Parte 1.]]></title>
		<link>http://www.develovers.net/ejecutar-aplicaciones-distancia-parte-1-248473</link>
		<description><![CDATA[
			<p>Recientemente he descubierto una interacci&oacute;n muy interesante entre dos aplicaciones: <a href="http://www.utorrent.com/" target="_blank">utorrent</a> (descarga de torrents) y <a href="http://www.getdropbox.com/" target="_blank">dropbox</a> (permite actualizar ficheros entre dos ordenadores o en la "<a title="En la nube" href="http://es.wikipedia.org/wiki/Computaci%C3%B3n_en_nube" target="_blank">nube</a>")<br />Resulta que Utorrent tiene la opci&oacute;n de especificar una carpeta de lectura de torrents, es decir, leer los ficheros .torrent de una carpeta en cuanto aparezcan y empezar a descargar autom&aacute;ticamente. <br />Es un proceso muy &uacute;til cuando no queremos tener un acceso remoto hacia nuetro pc pero sin embargo si que queremos que se vayan descargando los ficheros, no se si me he explicado bien as&iacute; que os pongo un ejemplo pr&aacute;ctico.<br />En mi casa dejo la aplicaci&oacute;n utorrent a la espera (o descargando) y la aplicaci&oacute;n dropbox activa (en espera de cualquier actualizaci&oacute;n).<br />Desde el trabajo decido bajarme un fichero .torrent, pero no puedo o quiero descargar el contenido desde ese sitio, as&iacute; que decido subirlo al servidor de dropbox para que se actualice en mi casa.<br />En cuanto est&eacute; descargado desde el pc de casa, la aplicaci&oacute;n Utorrent reconocer&aacute; un nuevo fichero, lo mover&aacute; de carpeta y empezar&aacute; a descargarlo autom&aacute;ticamente...<br />Pero &iquest;donde quieres ir a parar?<br />Muy sencillo, &iquest;Por qu&eacute; no aprovechar esta gran utilidad?</p>
			<p>Me he propuesto crear una aplicaci&oacute;n (seguramente en C# .Net) que lea los ficheros de una carpeta y ejecute a modo de Shell los comandos que est&eacute;n dentro de estos ficheros.<br />Ojo! Esto puede ser muy peligroso con depende qu&eacute; comandos!! Pero cada uno que asuma su riesgo...<br />Requisitos que debe tener de la aplicaci&oacute;n:<br />Leer los ficheros de una carpeta.<br />Los ficheros deben de tener una nomenclatura del tipo: In.txt<br />El contenido puede ser cualquier comando con par&aacute;metros, o nombres de instrucciones.<br />La aplicaci&oacute;n s&oacute;lo esperar&aacute; ese fichero de esa carpeta y debe reconocer las acciones para ejecutarlas seg&uacute;n convenga.<br />Una vez le&iacute;do el fichero debe pasar el fichero a otra carpeta y renombrarlo como: Out_fechadia_hora.txt<br />Debe generar un log de actuaci&oacute;n con los pasos que ha hecho en la carpeta de lectura llamado : OutLog.txt</p>
<p>Los ejemplos pr&aacute;cticos pueden ser: desde copiar ficheros del pc de casa a la carpeta dropbox, generar un listado con los ficheros de casa, activar el antivirus, desfragmentar el disco....</p>
<p>Haremos un paso a paso y al final podremos disponer del c&oacute;digo fuente y el ejecutable funcionando.</p>
<p>Seguiremos informando.</p>
<p>&nbsp;</p>
<p>&nbsp;</p>
			<p>
							Leer <strong><a href="http://www.develovers.net/ejecutar-aplicaciones-distancia-parte-1-248473" title="Blog Sobre Desarrollo y Programación">Blog Sobre Desarrollo y Programación</a></strong> en <a href="http://www.develovers.net/" title="Blog Sobre Desarrollo y Programación">Develovers</a>
            </p>
			 ]]></description>
		<author>Robfeb</author>
		<category><![CDATA[aplicaciones]]></category>
		<category><![CDATA[ideas]]></category>
		<category><![CDATA[utilidades]]></category>
		<comments>http://www.develovers.net/ejecutar-aplicaciones-distancia-parte-1-248473#formulario</comments>
		<guid>http://www.develovers.net/ejecutar-aplicaciones-distancia-parte-1-248473</guid>
		<pubDate>Fri, 08 May 2009 07:58:00 +0100</pubDate>
	</item>
	<item>
		<title><![CDATA[48 hours vs five develovers]]></title>
		<link>http://www.develovers.net/48-hours-vs-five-develovers-237334</link>
		<description><![CDATA[
			<p>Que &eacute;s develovers?,<strong> pues eso amantes del desarrollo</strong> (traducci&oacute;n tipo "y me quedo tan pancho"), vamos a hacer honor a nuestro nombre y os voy hablar de 5 programadores web que se enfrentan al tiempo, un proyecto en 48 horas.</p>
<p>Estos amantes del desarrollo son los chicos de <a href="http://www.thecodefarm.com/">thecodefarm</a> que han desarrollado un <a href="http://blog.thecodefarm.com/48-hour-challenge/">proyecto en 48horas</a> estos chicos de Vizcaya son la leche, realizan proyectos muy interesantes el de <a href="http://www.dkpboard.com/">dkpboard</a> merece la pena echarle un ojo con calma, going todo que todavia no han publicado, pero todos ellos con un dise&ntilde;o cuidadisimo, adem&aacute;s de estar desarrollados en Django.</p>
<p>Felicidades chic@s, seguir as&iacute;, sois los <strong>develovers del mes</strong>.</p>
			
			<p>
							Leer <strong><a href="http://www.develovers.net/48-hours-vs-five-develovers-237334" title="Blog Sobre Desarrollo y Programación">Blog Sobre Desarrollo y Programación</a></strong> en <a href="http://www.develovers.net/" title="Blog Sobre Desarrollo y Programación">Develovers</a>
            </p>
			 ]]></description>
		<author>tomcask</author>
		<category><![CDATA[develovers]]></category>
		<comments>http://www.develovers.net/48-hours-vs-five-develovers-237334#formulario</comments>
		<guid>http://www.develovers.net/48-hours-vs-five-develovers-237334</guid>
		<pubDate>Tue, 21 Apr 2009 18:12:00 +0100</pubDate>
	</item>
	<item>
		<title><![CDATA[Validar un DNI/NIF con Javascript]]></title>
		<link>http://www.develovers.net/validar-dninif-javascript-230259</link>
		<description><![CDATA[
			<p>Funci&oacute;n para validar un DNI o NIF con Javascript, para detectar que es un identificador v&aacute;lido.</p>
<p>&nbsp;</p>
<p>Funci&oacute;n que recoje dos par&aacute;metros el numero y la letra.</p>
<p>Se puede invocar de esta forma:&nbsp; <br />Suponiendo que iNif sea el texto que contiene el DNI.</p>
<p>if (/^[0123456789]/.test(iNif)){</p>
<p>// usando expresiones regulares detectamos si empieza<br />//por numero&nbsp; entonces es un NIF</p>
<p>&nbsp;&nbsp;&nbsp; return ValidarNIF(iNif.substr(0,8),iNif.substr(8,9).toUpperCase());//Le pasamos la letra en may&uacute;sculas.<br /> }<br /><br />Y la funci&oacute;n queda asi:</p>
			<p><br />function ValidarNIF(num,letra2){ 		<br />var ASC; 		<br />var letra=""; 		<br />var digitos="0123456789"; 		<br />var chequeo=num; 		<br />var correcto=true; 		<br />for (i=0; i<br />ch=chequeo.charAt(i); 			<br />for (j=0; j<br />if (ch==digitos.charAt(j)) 					<br />break; 			<br />if (j==digitos.length){ 				<br />return (false); 			<br />} 		<br />} 		<br />ASC= num % 23; 		<br />if (ASC==0)	letra="T"; 		<br />if ( ASC == 1) letra="R"; 		<br />if ( ASC == 2) letra="W"; 		<br />if ( ASC == 3) letra="A"; 		<br />if ( ASC == 4) letra="G"; 		<br />if ( ASC == 5) letra="M"; 		<br />if ( ASC == 6) letra="Y"; 		<br />if ( ASC == 7) letra="F"; 		<br />if ( ASC == 8) letra="P"; 		<br />if ( ASC == 9) letra="D"; 		<br />if ( ASC == 10) letra="X"; 		<br />if ( ASC == 11) letra="B"; 		<br />if ( ASC == 12) letra="N"; 		<br />if ( ASC == 13) letra="J"; 		<br />if ( ASC == 14) letra="Z"; 		<br />if ( ASC == 15) letra="S"; 		<br />if ( ASC == 16) letra="Q"; 		<br />if ( ASC == 17) letra="V"; 		<br />if ( ASC == 18) letra="H"; 		<br />if ( ASC == 19) letra="L"; 		<br />if ( ASC == 20) letra="C"; 		<br />if ( ASC == 21) letra="K"; 		<br />if ( ASC == 22) letra="E"; 		<br />if ( ASC == 23) letra="T"; 		<br />if (letra==letra2) return true; 		<br />else return false; 	<br />}</p>
			<p>
							Leer <strong><a href="http://www.develovers.net/validar-dninif-javascript-230259" title="Blog Sobre Desarrollo y Programación">Blog Sobre Desarrollo y Programación</a></strong> en <a href="http://www.develovers.net/" title="Blog Sobre Desarrollo y Programación">Develovers</a>
            </p>
			 ]]></description>
		<author>Robfeb</author>
		<category><![CDATA[javascript]]></category>
		<category><![CDATA[utilidades]]></category>
		<comments>http://www.develovers.net/validar-dninif-javascript-230259#formulario</comments>
		<guid>http://www.develovers.net/validar-dninif-javascript-230259</guid>
		<pubDate>Mon, 06 Apr 2009 13:39:00 +0100</pubDate>
	</item>
	<item>
		<title><![CDATA[Envia mails a traves de gmail con python]]></title>
		<link>http://www.develovers.net/envia-mails-traves-gmail-python-220499</link>
		<description><![CDATA[
			<p>Taller practico que explicaremos como enviar el mismo mail a varios correos como si solo se lo hubieramos enviado a ellos.</p>
<p>Vamos a utilizar Python y la libreria de smtplib es muy facil pero para empezar no esta mal, lo primero que hacemos es importarnos los modulos necesarios para el envio, y el tipo de mensaje.</p>
<div class="code"><strong><em>import smtplib <br />import mimetypes</em></strong></div>
<p>&nbsp;</p>
			<p>Realizamos las importaciones tambi&eacute;n de los m&oacute;dulos que nos permiten modificar el tipo de mensaje</p>
<div class="code"><strong><em>from email.MIMEText import MIMEText<br /> from email.Encoders import encode_base64</em></strong></div>
<p>Creamos un array con las direcciones a enviar</p>
<p><strong><em>lista=['correo1@dominio','correo2@dominio','correo3@dominio','correoN@dominio']</em></strong></p>
<p>Creamos el mensaje que vamos a enviar</p>
<p><em><strong>mensaje = MIMEText("""Este es el mensaje de las narices""")<br />mensaje['From']="tucuenta@gmail.com"<br />mensaje['Subject']="Test"</strong></em></p>
<p>Realizamos la conexi&oacute;n con el servidor SMTP de gmail</p>
<p><em><strong>mailServer = smtplib.SMTP('smtp.gmail.com',587)<br />mailServer.ehlo()<br />mailServer.starttls()<br />mailServer.ehlo()</strong></em></p>
<p>Nos logamos en el servidor</p>
<p><strong><em>mailServer.login("tucuenta@gmail.com","tupassword")</em></strong></p>
<p><strong><em>for adr in lista:<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; mensaje['To']= adr<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;	# Enviamos el mensaje<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; mailServer.sendmail("tucuenta@gmail.com", adr, mensaje.as_string())</em></strong></p>
<p><br />Y para acabar cerramos la conexi&oacute;n</p>
<p><em><strong>mailServer.close()</strong></em></p>
<p>&nbsp;</p>
<p>Tachan!!!! se acabo, ha sido f&aacute;cil verdad?, <strong>Hasta la proxima amigos</strong>!!!</p>
<p>&nbsp;</p>
			<p>
							Leer <strong><a href="http://www.develovers.net/envia-mails-traves-gmail-python-220499" title="Blog Sobre Desarrollo y Programación">Blog Sobre Desarrollo y Programación</a></strong> en <a href="http://www.develovers.net/" title="Blog Sobre Desarrollo y Programación">Develovers</a>
            </p>
			 ]]></description>
		<author>tomcask</author>
		<category><![CDATA[python]]></category>
		<comments>http://www.develovers.net/envia-mails-traves-gmail-python-220499#formulario</comments>
		<guid>http://www.develovers.net/envia-mails-traves-gmail-python-220499</guid>
		<pubDate>Thu, 26 Mar 2009 08:00:00 +0100</pubDate>
	</item>
	<item>
		<title><![CDATA[Validar una cuenta corriente con javascript]]></title>
		<link>http://www.develovers.net/validar-cuenta-corriente-javascript-224163</link>
		<description><![CDATA[
			<p>Funcion que nos permite saber si es correcta o no una cuenta bancaria.</p>
<p>La cuenta&nbsp; ha de contar con cuatro bloques :</p>
<ul>
<li>Entidad&nbsp;  (4 d&iacute;gitos)</li>
<li>Oficina (4 d&iacute;gitos)</li>
<li>Control (2 d&iacute;gitos)</li>
<li>Cuenta (10 d&iacute;gitos)</li>
</ul>
<p>Devuelve verdadero o false (true/false)</p>
<p>&nbsp;</p>
<p>&nbsp;</p>
<p>&nbsp;</p>
			<p><code></code></p>
<p>function validaLibreta(i_entidad,i_oficina,i_digito,i_cuenta){<br /> // VALIDACI&Oacute;N DE CUALQUIER LIBRETA DE CUALQUIER ENTIDAD BANCARIA.<br /> // Funcion recibe como par&aacute;metro la entidad, la oficina, <br /> // el digito (concatenaci&oacute;n del de control entidad-oficina y del de control entidad)<br /> // y la cuenta. Espera los valores con 0's a la izquierda.<br /> // Devuelve true o false.<br /> // NOTAS:<br /> //			Formato deseado de los par&aacute;metros:<br /> //			- i_entidad (4)<br /> //			- i_oficina (4)<br /> //			- i_digito (2)<br /> //			- i_cuenta (10)<br /> var wtotal,wcociente, wresto;<br /> if (i_entidad.length != 4){<br /> return false;<br /> }<br /> if (i_oficina.length != 4){<br /> return false;<br /> }<br /> if (i_digito.length  != 2){<br /> return false;<br /> }<br /> if (i_cuenta.length  != 10){<br /> return false;<br /> }<br /> wtotal =  i_entidad.charAt(0) * 4;<br /> wtotal += i_entidad.charAt(1) * 8;<br /> wtotal += i_entidad.charAt(2) * 5;<br /> wtotal += i_entidad.charAt(3) * 10;<br /> wtotal += i_oficina.charAt(0) * 9;<br /> wtotal += i_oficina.charAt(1) * 7;<br /> wtotal += i_oficina.charAt(2) * 3;<br /> wtotal += i_oficina.charAt(3) * 6;<br /> // busco el resto de dividir wtotal entre 11<br /> wcociente = Math.floor(wtotal / 11);<br /> wresto = wtotal - (wcociente * 11);<br /> //<br /> wtotal = 11 - wresto;<br /> if (wtotal == 11){<br /> wtotal=0;<br /> }<br /> if (wtotal == 10){<br /> wtotal=1;<br /> }<br /> if (wtotal != i_digito.charAt(0)){<br /> return false;<br /> }<br /> //hemos validado la entidad y oficina<br /> //-----------------------------------<br /> wtotal =  i_cuenta.charAt(0) * 1;<br /> wtotal += i_cuenta.charAt(1) * 2;<br /> wtotal += i_cuenta.charAt(2) * 4;<br /> wtotal += i_cuenta.charAt(3) * 8;<br /> wtotal += i_cuenta.charAt(4) * 5;<br /> wtotal += i_cuenta.charAt(5) * 10;<br /> wtotal += i_cuenta.charAt(6) * 9;<br /> wtotal += i_cuenta.charAt(7) * 7;<br /> wtotal += i_cuenta.charAt(8) * 3;<br /> wtotal += i_cuenta.charAt(9) * 6;<br /> <br /> // busco el resto de dividir wtotal entre 11<br /> wcociente = Math.floor(wtotal / 11);<br /> wresto = wtotal - (wcociente * 11);<br /> //<br /> wtotal = 11 - wresto;<br /> if (wtotal == 11){wtotal=0;}<br /> if (wtotal == 10){wtotal=1;}<br /> <br /> if (wtotal != i_digito.charAt(1)){<br /> //alert(wtotal+' y no '+i_digito.charAt(1));<br /> return false;<br /> }<br /> // hemos validado la cuenta corriente</p>
<p>return true;<br />}</p>
			<p>
							Leer <strong><a href="http://www.develovers.net/validar-cuenta-corriente-javascript-224163" title="Blog Sobre Desarrollo y Programación">Blog Sobre Desarrollo y Programación</a></strong> en <a href="http://www.develovers.net/" title="Blog Sobre Desarrollo y Programación">Develovers</a>
            </p>
			 ]]></description>
		<author>Robfeb</author>
		<category><![CDATA[javascript]]></category>
		<category><![CDATA[utilidades]]></category>
		<comments>http://www.develovers.net/validar-cuenta-corriente-javascript-224163#formulario</comments>
		<guid>http://www.develovers.net/validar-cuenta-corriente-javascript-224163</guid>
		<pubDate>Tue, 24 Mar 2009 14:38:00 +0100</pubDate>
	</item>
	<item>
		<title><![CDATA[Publicada la version online de djangobook 1.0]]></title>
		<link>http://www.develovers.net/publicada-version-online-djangobook-10-220544</link>
		<description><![CDATA[
			<p>Hace un rato, que <a href="http://www.holovaty.com/">Adrian Holovaty</a> ha comentado <a href="http://twitter.com/adrianholovaty/status/1340339077">via twitter</a>&nbsp; que ya estan publicados hasta el capitulo 20 del libro de <a href="http://www.djangobook.com/en/2.0/">djangoBook</a>.</p>
<p>Que os aproveche...</p>
			
			<p>
							Leer <strong><a href="http://www.develovers.net/publicada-version-online-djangobook-10-220544" title="Blog Sobre Desarrollo y Programación">Blog Sobre Desarrollo y Programación</a></strong> en <a href="http://www.develovers.net/" title="Blog Sobre Desarrollo y Programación">Develovers</a>
            </p>
			 ]]></description>
		<author>tomcask</author>
		<category><![CDATA[django]]></category>
		<comments>http://www.develovers.net/publicada-version-online-djangobook-10-220544#formulario</comments>
		<guid>http://www.develovers.net/publicada-version-online-djangobook-10-220544</guid>
		<pubDate>Tue, 17 Mar 2009 08:22:00 +0100</pubDate>
	</item>
	<item>
		<title><![CDATA[Cambiar de base con Javascript]]></title>
		<link>http://www.develovers.net/cambiar-base-javascript-217018</link>
		<description><![CDATA[
			<p>Es posible que tengamos la necesidad de cambiar la base de un n&uacute;mero para realizar c&aacute;lculos .</p>
<p>Javascript nos proporciona un m&eacute;todo muy &uacute;til para estos casos, se trata de</p>
<p><strong>objeto.toSring([base])</strong></p>
<p><strong></strong></p>
<p>Este m&eacute;todo recibe opcionalmente el par&aacute;metro base.</p>
<p>Al especificarle una base y recuperar el valor de este m&eacute;todo de un objecto nos devolver&aacute; su s&iacute;mil con el cambio de base.<br />Si no se especifica ninguna base, el m&eacute;todo devolver&aacute; una cadena de texto.</p>
<p>Como bases tenemos disponibles&nbsp; principalmente:</p>
<ul>
<li>Decimal (10)&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; (del 0 al 9)<br /></li>
<li>Hexadecimal (16) (del 0-9 y de la A - F )</li>
<li>Binario (2) (0 y 1)</li>
<li>Octal(8) (de 0 a 7)</li>
</ul>
<p>Veamos el c&oacute;digo de un ejemplo:</p>
			<blockquote>
<p style="text-align: left;">&lt;script type="text/javascript"&gt;<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; var numero=128;<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; var decimal = "decimal : " + numero.toString();<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; var hexadecimal = "hexadecimal : " + numero.toString(16);<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; var octal  = "octal : "       + numero.toString(8);<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; var binario  = "binario : "     + numero.toString(2);<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; alert(decimal + "\r" + hexadecimal + "\r" + octal + "\r" + binario);<br />&lt;/script&gt;</p>
</blockquote>
<p>Con resultado:</p>
<p style="text-align: left;">Decimal:128<br />Hexadecimal:80<br />Octal:200<br />Binario:100000000</p>
			<p>
							Leer <strong><a href="http://www.develovers.net/cambiar-base-javascript-217018" title="Blog Sobre Desarrollo y Programación">Blog Sobre Desarrollo y Programación</a></strong> en <a href="http://www.develovers.net/" title="Blog Sobre Desarrollo y Programación">Develovers</a>
            </p>
			 ]]></description>
		<author>Robfeb</author>
		<category><![CDATA[binario]]></category>
		<category><![CDATA[javascript]]></category>
		<comments>http://www.develovers.net/cambiar-base-javascript-217018#formulario</comments>
		<guid>http://www.develovers.net/cambiar-base-javascript-217018</guid>
		<pubDate>Wed, 11 Mar 2009 08:45:00 +0100</pubDate>
	</item>
	<item>
		<title><![CDATA[Librerias especificas de Javascript]]></title>
		<link>http://www.develovers.net/librerias-especificas-javascript-213469</link>
		<description><![CDATA[
			<p>Los chicos de <a href="http://www.smashingmagazine.com">smashing magazine</a> han hecho de las suyas, han publicado un post impresionante de las <a href="http://www.smashingmagazine.com/2009/03/02/40-stand-alone-javascript-libraries-for-specific-purposes/">40 Librer&iacute;as javascript mas &uacute;tiles</a> adem&aacute;s de nombrarlas las han categorizado, espectacular.</p>
<p>No os voy a nombrar todas solo las que me han parecido m&aacute;s interesantes</p>
<ul>
<li>
<h4>Formularios</h4>
<a href="http://www.formassembly.com/wForms/">wForms</a> librer&iacute;a open-source que simplifica las tareas mas comunes al trabajar con formularios desde javascript</li>
<li>
<h4>Animaci&oacute;n</h4>
<a href="http://fx.inetcat.com/">$fx()</a> es una librer&iacute;a muy ligera para animar objetos html, a traves de la alteraci&oacute;n de sus propiedades css siguiendo una linea de tiempo rollo flash.</li>
<li>
<h4>Gr&aacute;ficos de Estad&iacute;sticas</h4>
<a href="http://www.jscharts.com/">JS charts</a> gran librer&iacute;a para realizar gr&aacute;ficos de estad&iacute;sticas, desde gr&aacute;ficos con barras, quesitos, o lineas</li>
<li>
<h4>Fechas</h4>
<a href="http://www.datejs.com/">Date.js</a> Que gran librer&iacute;a, simplifica el trabajo tedioso de fechas incre&iacute;blemente, totalmente recomendada</li>
<li>
<h4>Expresiones Regulares</h4>
<a href="http://stevenlevithan.com/regex/xregexp/">XRegExp</a> esta librer&iacute;a a&ntilde;ade mas potencia al objeto RegExp de javascript.</li>
<li>
<h4>Fuentes</h4>
<a href="http://typeface.neocracy.org/">Typeface.js</a> gran librer&iacute;a no obstrusiva sin necesidad de usar flash totalmente javascript.</li>
<li>
<h4>Debugging y Logging</h4>
<a href="http://www.gscottolson.com/blackbirdjs/">Blackbird</a> esta librer&iacute;a nos proporciona una consola para logs, filtrar mensajes en javascript, a estudiar.<br /> <a href="http://getfirebug.com/lite.html">Firebug Lite</a> Firebug en todos los navegadores insertando esta librer&iacute;a.</li>
</ul>
			
			<p>
							Leer <strong><a href="http://www.develovers.net/librerias-especificas-javascript-213469" title="Blog Sobre Desarrollo y Programación">Blog Sobre Desarrollo y Programación</a></strong> en <a href="http://www.develovers.net/" title="Blog Sobre Desarrollo y Programación">Develovers</a>
            </p>
			 ]]></description>
		<author>tomcask</author>
		<category><![CDATA[javascript]]></category>
		<comments>http://www.develovers.net/librerias-especificas-javascript-213469#formulario</comments>
		<guid>http://www.develovers.net/librerias-especificas-javascript-213469</guid>
		<pubDate>Wed, 04 Mar 2009 07:51:00 +0100</pubDate>
	</item>
	<item>
		<title><![CDATA[Enlaces JSON  y .NET]]></title>
		<link>http://www.develovers.net/enlaces-json-net-212346</link>
		<description><![CDATA[
			<p>Imprescindible</p>
<ul>
<li>El comienzo <a href="http://www.microsoft.com/spanish/msdn/articulos/archivo/180607/voices/bb299886.mspx">que es JSON</a></li>
<li>Microsoft <a href="http://msdn.microsoft.com/es-es/library/bb515101.aspx">versi&oacute;n oficial</a> y <a href="http://msdn.microsoft.com/en-us/library/bb299886.aspx">uso</a></li>
<li><a href="http://forums.asp.net/t/1118828.aspx">Consultas en el forum</a></li>
<li><a href="http://weblogs.asp.net/thiagosantos/archive/2008/11/17/get-json-from-sql-server.aspx">Directamente las consultas en sql server devuelvan en formato json...</a><br /></li>
<li><a href="http://geekswithblogs.net/JuanDoNeblo/archive/2007/10/24/json_in_aspnetajax_part2.aspx">Muy util e introducci&oacute;n al REST</a><br /></li>
<li><a href="http://www.phdcc.com/xml2json.htm">Como convertir XML a JSON en ASP.NET con c#</a><br /></li>
</ul>
<p>Informaci&oacute;n para aburrir</p>
<ul>
<li><a href="http://www.json.org/json-es.html">http://www.json.org/json-es.html</a></li>
<li><a href="http://jayrock.berlios.de/">http://jayrock.berlios.de/</a></li>
<li><a href="http://weblogs.asp.net/thiagosantos/archive/2008/11/18/consuming-webservices-in-javascript-with-mootools.aspx">Consumiendo webservices en javascript </a></li>
</ul>
<p>&nbsp;</p>
<p>&nbsp;</p>
			
			<p>
							Leer <strong><a href="http://www.develovers.net/enlaces-json-net-212346" title="Blog Sobre Desarrollo y Programación">Blog Sobre Desarrollo y Programación</a></strong> en <a href="http://www.develovers.net/" title="Blog Sobre Desarrollo y Programación">Develovers</a>
            </p>
			 ]]></description>
		<author>tomcask</author>
		<category><![CDATA[.net]]></category>
		<category><![CDATA[json]]></category>
		<comments>http://www.develovers.net/enlaces-json-net-212346#formulario</comments>
		<guid>http://www.develovers.net/enlaces-json-net-212346</guid>
		<pubDate>Mon, 02 Mar 2009 15:09:00 +0100</pubDate>
	</item>
	<item>
		<title><![CDATA[Empecemos con GIS y geodjango]]></title>
		<link>http://www.develovers.net/empecemos-gis-geodjango-208873</link>
		<description><![CDATA[
			<p>* Parte de este post utiliza la informaci&oacute;n extra&iacute;da de la traducci&oacute;n del manual PostGIS de Paul Ramsey traducido por Manuel Mart&iacute;n Mart&iacute;n, el <a href="http://www.obolog.com/write/postgis.refractions.net/documentation/postgis-spanish.pdf">manual completo</a> y correo de Manuel para felicitarle por su labor.</p>
<p>Un GIS (Geographic information systems) o SIG (Sistemas de Informaci&oacute;n Geografica), b&aacute;sicamente es la tecnolog&iacute;a que nos permite trabajar con informaci&oacute;n georeferenciada a trav&eacute;s ficheros shape, imagenes raster, mapas, pol&iacute;gonos, lineas, puntos, coordenadas, etc</p>
<p>El formato de fichero mas usual para informaci&oacute;n GIS suele ser los ficheros SHP y sus asociados, b&aacute;sicamente se dividen en:</p>
			<ul>
<li>Obligatorios:<br /> 
<ul>
<li>SHP: Entidades geom&eacute;tricas.</li>
<li>SHX: &Iacute;ndice de la geometr&iacute;a.</li>
<li>DBF: Atributos.</li>
</ul>
</li>
<li>Opcionales:           
<ul>
<li>SBN y SBX: &Iacute;ndice espacial.</li>
</ul>
<ul>
<li>FBN y FBX: &Iacute;ndice espacial para Shapefiles de solo lectura.</li>
</ul>
<ul>
<li>AIN y AIH: &Iacute;ndice de atributos.</li>
</ul>
<ul>
<li>PRJ: Sistema de referencia.</li>
</ul>
<ul>
<li>SHP.XML: Metadatos.</li>
</ul>
</li>
</ul>
<p>Necesitamos algo que gestione esta informaci&oacute;n, tenemos m&uacute;ltiples soluciones que implementan su propio servidor gis, su sistema gestor pero todas con costes en licencias <strong>elevad&iacute;simas, creerme elevad&iacute;simas</strong>, como por ejemplo ArcView, OracleGIs, etc..</p>
<p>Pero <a href="http://www.postgresql.org/">PostgreSQL</a> el Sistema de base de Datos Open Source nos viene al rescate a trav&eacute;s de <a href="http://postgis.refractions.net/">PostGIS</a>, no voy a entrar si PostgreSQL es un buen sistema gestor de base de datos,<strong> es indudable que si</strong> y se utiliza en m&uacute;ltiples proyectos profesionales y comerciales de gran envergadura, (Whashington Times, Sun, Google, Fujitsu, RedHat, EntrerpriseDB, NTTGroup).</p>
<p>PostGIS: Es una extensi&oacute;n al sistema de base de datos objeto-relacional PostgreSql, para Permitir el uso de objetos GIS, incluye soporte para &iacute;ndices GiST basados en R-Tree, y funciones b&aacute;sicas para el an&aacute;lisis de objetos GIS, esta basado principalmente en <a href="http://www.opengeospatial.org/standards">OpenGis</a>.</p>
<p>Esta creado por <a href="http://www.refractions.net/">Refractions Research Inc</a>, como un proyecto de investigaci&oacute;n de tecnolog&iacute;as de bases de datos espaciales. Esta publicado bajo licencia GNU.</p>
<p>Con PostGIS podemos usar todos los objetos que aparecen en la especificaci&oacute;n OpenGIS<br />como puntos,lineas, pol&iacute;gonos, multil&iacute;neas, multipuntos, y colecciones geom&eacute;tricas.</p>
<p>PostGis no trabaja directamente con los tipicos ficheros SHP, pero en google pod&eacute;is encontrar <a href="http://geotux.tuxfamily.org/index.php?option=com_myblog&amp;show=cargar-shapefiles-a-postgis-por-medio-de-scripts-en-bash-para-gnulinux.html&amp;Itemid=59">multiples</a> enlaces que facilitaran la importaci&oacute;n de ficheros SHP a un entorno PostGis, tambi&eacute;n pod&eacute;is probarlo desde la propia consola de postgre escribiendo "<strong>Shp2pgsql --help</strong>"</p>
<p>Una vez tenemos el sistema gestor necesitamos programarlo, podemos utilizar por ejemplo si programamos en c# <a href="http://www.bostongis.com/PrinterFriendly.aspx?content_name=postgis_sharpmap_tut01">sharmap</a>, un componente que nos permite realizar aplicaciones en ASPNET o Escritorio, haciendo una b&uacute;squeda encontrareis muchisima mas informaci&oacute;n.</p>
<p>Pero si de verdad quer&eacute;is ser productivos aqui entra <a href="http://geodjango.org/">geodjango</a> (Python + django) el cual se autodefine como un framework web geogr&aacute;fico de clase mundial.  Apoyado en poderosos proyectos como Django, Postgis, OpenLayers y OpenStreetMap, es posible aumentar la productividad y los resultados en el desarrollo de aplicaciones gis, conociendo lo potente que django, imaginaos como nos va a facilitar la vida.</p>
<p>Otro de los proyectos interesantes sobre GIS es <a href="http://www.geonames.org">geonames</a>, la base de datos georeferenciada de todos las poblaciones, ciudades y calles del mundo, utilizado por:</p>
<ul>
<li> <a href="http://km42.spiegel.de/home/index.php">km42 Spiegel Online</a> usado en sus servicios de b&uacute;squeda </li>
<li> <a href="http://www.tagzania.com">Tagzania</a> usado en sus servicios de b&uacute;squeda y correcci&oacute;n de errores<br /> </li>
<li> <a href="http://www.slide.com/">slide.com</a> </li>
<li> <a href="http://geonames.wordpress.com/2007/05/18/geonames-does-geocoding-for-popfly/">Microsoft Popfly</a>, <a href="http://geonames.wordpress.com/2007/09/13/multimap-is-integrating-geonames/">Multimap</a> </li>
<li> <a href="http://www.adidas.com/campaigns/verticalsrunning/content/fw07/com/index.asp">Adidas</a> y <a href="http://nikeplus.nike.com/nikeplus/index.jhtml">Nike</a> </li>
<li> <a href="http://www.esri.com">ESRI</a>, <a href="http://www.digitalglobe.com">DigitalGlobe</a> y <a href="http://www.spotimage.com">Spot Image</a> </li>
<li> <a href="http://www.bbc.co.uk">BBC</a>, <a href="http://www.yr.no/">Norwegian Broadcasting Corp</a> </li>
<li> <a href="http://earthquake.usgs.gov/">US Geological Survey</a> </li>
</ul>
<p>Nos proporcionan m&uacute;ltiples webservices para utilizarlos a nuestra conveniencia.</p>
<p>Links a consultar</p>
<p><a href="http://www.eqsoft.net/cms/?q=node/22">Conferencia de introducci&oacute;n a PostgreSql</a> v&iacute;deos<br /><a href="http://www.postgresql.org/about/casestudies/">Casos de Exito</a> uso PostgreSql<br /><a href="http://geodjango.org/docs/">Documentaci&oacute;n</a> de geodjango</p>
<p>Ejemplos de implementaciones</p>
<ul>
<li><a href="http://github.com/fiam/geonames">django-geonames</a> Clases Modelo de datos para usar la base de datos de geonames con django, de <a href="http://fi.am/">Alberto Garc&iacute;a Hierro</a>.</li>
<li><a href="http://github.com/fiam/geocoding">django-geocoding</a> utiliza la API de Google Maps API para geocodificar direcciones y al rev&eacute;s, utiliza django-geonames, de <a href="http://fi.am/">Alberto Garc&iacute;a Hierro</a>.</li>
</ul>
<p>Os animo a ayudarme con mas links para que podamos enriquecerlo.</p>
			<p>
							Leer <strong><a href="http://www.develovers.net/empecemos-gis-geodjango-208873" title="Blog Sobre Desarrollo y Programación">Blog Sobre Desarrollo y Programación</a></strong> en <a href="http://www.develovers.net/" title="Blog Sobre Desarrollo y Programación">Develovers</a>
            </p>
			 ]]></description>
		<author>tomcask</author>
		<category><![CDATA[django]]></category>
		<category><![CDATA[geodjango]]></category>
		<category><![CDATA[geonames]]></category>
		<category><![CDATA[gis]]></category>
		<comments>http://www.develovers.net/empecemos-gis-geodjango-208873#formulario</comments>
		<guid>http://www.develovers.net/empecemos-gis-geodjango-208873</guid>
		<pubDate>Thu, 26 Feb 2009 08:34:00 +0100</pubDate>
	</item>
	<item>
		<title><![CDATA[Calcular Fecha Semana Santa en python]]></title>
		<link>http://www.develovers.net/calcular-fecha-semana-santa-python-208735</link>
		<description><![CDATA[
			<p>Una de esas cosas utiles e interesantes para no olvidar.</p>
<p>Codigo extraido de la <a href="http://es.wikipedia.org/wiki/C%C3%A1lculo_de_la_fecha_de_Pascua#Algoritmo_en_Python">wikipedia</a></p>
<div class="code">
<p>def SemanaSanta(anyo):<br />&nbsp; # Constantes m&aacute;gicas<br />&nbsp; M = 24  <br />&nbsp; N = 5<br /> <br />&nbsp; #C&aacute;lculo de residuos<br />&nbsp; a = anyo % 19<br />&nbsp; b = anyo % 4<br />&nbsp; c = anyo % 7<br />&nbsp; d = (19*a + M) % 30<br />&nbsp; e = (2*b+4*c+6*d + N) % 7<br /> <br />&nbsp; # Decidir entre los 2 casos:<br />&nbsp; if d+e &lt; 10  :<br />&nbsp;&nbsp;  dia = d+e+22<br />&nbsp;&nbsp; mes = "marzo"<br />&nbsp; else:<br />&nbsp;&nbsp; dia = d+e-9<br />&nbsp;&nbsp; mes = "abril"<br /> &nbsp;# Excepciones especiales (seg&uacute;n art&iacute;culo)<br />&nbsp;if dia == 26  and mes == "abril":<br />&nbsp;&nbsp;  dia = 19<br />&nbsp; if dia == 25 and mes == "abril" and d==28 and e == 6 and a &gt;10:<br />&nbsp;&nbsp;  dia = 18<br />&nbsp;<br />&nbsp; return [dia, mes, anyo]<br /> <br />print SemanaSanta(2008)</p>
</div>
			
			<p>
							Leer <strong><a href="http://www.develovers.net/calcular-fecha-semana-santa-python-208735" title="Blog Sobre Desarrollo y Programación">Blog Sobre Desarrollo y Programación</a></strong> en <a href="http://www.develovers.net/" title="Blog Sobre Desarrollo y Programación">Develovers</a>
            </p>
			 ]]></description>
		<author>tomcask</author>
		<category><![CDATA[python]]></category>
		<comments>http://www.develovers.net/calcular-fecha-semana-santa-python-208735#formulario</comments>
		<guid>http://www.develovers.net/calcular-fecha-semana-santa-python-208735</guid>
		<pubDate>Tue, 24 Feb 2009 08:37:16 +0100</pubDate>
	</item>
	<item>
		<title><![CDATA[Detectar Semana Santa con Javascript]]></title>
		<link>http://www.develovers.net/detectar-semana-santa-javascript-208227</link>
		<description><![CDATA[
			<p>Es posible que en estas fiestas cercanas tengamos la necesidad de saber en qu&eacute; d&iacute;as cae la semana santa.</p>
<p>Podemos determinar que el domingo de resurrecci&oacute;n ser&aacute; el primer domingo de luna llena de primavera. <br />Y sabemos que la primavera empieza el 21 de marzo.</p>
<p>A partir de ah&iacute; tenemos claro que el jueves y viernes es festivo y el lunes de pascua en algunas comunidades.</p>
<p>A trav&eacute;s de los '<a href="http://www.divvol.org/recursos/fecha_pascua.htm" target="_blank">Hijos de la Divina Voluntad</a>'&nbsp; nos encontramos con una p&aacute;gina con el c&oacute;digo Javascript que calcula ese domingo en funci&oacute;n del a&ntilde;o de una forma curiosa y l&oacute;gica!.</p>
<p>Dicha funci&oacute;n est&aacute; extraida de&nbsp; la f&oacute;rmula de Gauss que podemos observar en la p&aacute;gina de la wikipedia con todas sus explicaciones:</p>
<p><a href="http://es.wikipedia.org/wiki/C%C3%A1lculo_de_la_fecha_de_Pascua" target="_blank">Wikipedia: C&aacute;lculo de la fecha de Pascua</a></p>
<p><br />Aqu&iacute; est&aacute; la funci&oacute;n para Javascript.</p>
			<blockquote>
<p>function CalculePascua (Agno, Calendario) {<br /> if (Calendario == "GREGORIANO") {<br /> a=Agno%19<br /> b=Math.floor(Agno/100)<br /> c=Agno%100<br /> d=Math.floor(b/4)<br /> e=b%4<br /> f=Math.floor((b+8)/25)<br /> g=Math.floor((b-f+1)/3)<br /> h=(19*a+b-d-g+15)%30<br /> i=Math.floor(c/4)<br /> k=c%4<br /> l=(32+2*e+2*i-h-k)%7<br /> m=Math.floor((a+11*h+22*l)/451)<br /> p=(h+l-7*m+114)<br /> // Devuelve un registro Registro.Dia_Res / Registro.Mes_Res<br /> return {Dia : (p%31)+1, Mes : Math.floor(p/31)}<br /> } else if (calendario == "JULIANO") {<br /> // Para a&ntilde;os anteriores a 1583 (Calend&aacute;rio Juliano):<br /> a = Agno % 4<br /> b = Agno % 7<br /> b = Agno % 19<br /> d = (19*c + 15) % 30<br /> e = (2*a + 4*b - d + 34) % 7<br /> f = Math.floor((d + e + 114) / 31)<br /> g = (d + e + 114) % 31<br /> // Devuelve un registro Registro.Dia_Res / Registro.Mes_Res<br /> return {Dia : g+1, Mes : f}<br /> } else return {Dia : 0, Mes : 0}<br />} // CalculePascua</p>
</blockquote>
<p>Diferenciamos entre Gregoriano y Juliano, tomando como ejemplo el gregoriano.</p>
<p>Ejemplo:</p>
<p>Agno<strong>=&gt;2009</strong><br />a=Agno%19 ( ) <strong>=&gt; 14</strong><br />b=Math.floor(Agno/100) <strong>=&gt; 20</strong><br />c=Agno%100 <strong>=&gt; 9</strong><br />d=Math.floor(b/4)&nbsp; <strong>=&gt; 5</strong><br />e=b%4 <strong>=&gt; 0</strong><br />f=Math.floor((b+8)/25)&nbsp; <strong>=&gt; 1 </strong><br />g=Math.floor((b-f+1)/3) <strong>=&gt; 6</strong><br />h=(19*a+b-d-g+15)%30 <strong>=&gt; 20</strong><br />i=Math.floor(c/4) <strong>=&gt; 2</strong><br />k=c%4&nbsp;<strong> =&gt; 1</strong><br />l=(32+2*e+2*i-h-k)%7&nbsp; <strong>=&gt; 1</strong><br />m=Math.floor((a+11*h+22*l)/451) <strong>=&gt; 0</strong><br />p=(h+l-7*m+114) <strong>=&gt; 135</strong><br /><br />Dia : (p%31)+1 <strong>=&gt;12 </strong></p>
<p>Mes : Math.floor(p/31) <strong>=&gt;4</strong></p>
<p>12 de marzo es el domingo de resurrecci&oacute;n.</p>
<p>En el enlade de la <a title="Calculo de semana santa" href="http://es.wikipedia.org/wiki/C%C3%A1lculo_de_la_fecha_de_Pascua" target="_blank">wikipedia </a>podemos obtener ejemplos para:</p>
<ul>
<li>&nbsp; Java</li>
<li>&nbsp; <a title="semana santa en Phyton" href="http://www.develovers.net/calcular-fecha-semana-santa-python-208735" target="_blank"> Python</a></li>
<li>&nbsp;    Perl</li>
<li>&nbsp;    PHP</li>
<li>&nbsp;    Turbo Pascal</li>
<li>&nbsp;    pl/pgsql de postgresql</li>
<li>&nbsp;    PowerBuilder</li>
</ul>
			<p>
							Leer <strong><a href="http://www.develovers.net/detectar-semana-santa-javascript-208227" title="Blog Sobre Desarrollo y Programación">Blog Sobre Desarrollo y Programación</a></strong> en <a href="http://www.develovers.net/" title="Blog Sobre Desarrollo y Programación">Develovers</a>
            </p>
			 ]]></description>
		<author>Robfeb</author>
		<category><![CDATA[consejos]]></category>
		<category><![CDATA[javascript]]></category>
		<category><![CDATA[utilidades]]></category>
		<comments>http://www.develovers.net/detectar-semana-santa-javascript-208227#formulario</comments>
		<guid>http://www.develovers.net/detectar-semana-santa-javascript-208227</guid>
		<pubDate>Tue, 24 Feb 2009 07:58:00 +0100</pubDate>
	</item>
	<item>
		<title><![CDATA[Washington Times implicado con Django]]></title>
		<link>http://www.develovers.net/washington-times-implicado-django-208194</link>
		<description><![CDATA[
			<p>Gracias a un <a href="http://twitter.com/mpuig/status/1240040601">twitt</a> de <a href="http://twitter.com/mpuig">Marc Puig</a>, emprendedor que tambi&eacute;n utiliza <a href="http://www.djangoproject.com">django</a> para <a href="http://www.plazz.me/about/about">varios proyectos interesantes</a>, descubro que el <a href=" http://www.washingtontimes.com/">Washington times</a> esta muy implicado con el software libre y en especial con Django para el desarrollo web de su portal.</p>
<p>Revisar sus <a href=" http://opensource.washingtontimes.com/">proyectos</a> open source, actualmente ha liberado <a href="http://opensource.washingtontimes.com/projects/">5 apps</a> para django bastante interesantes.</p>
<p>El Washington Times trabajo con proyectos open source desde hace tiempo. Todos sus servidores corren bajo <a href="http://www.ubuntu.com/">Ubuntu linux</a>, los servidores de Base de Datos utilizan <a href="http://www.postgresql.org/">PostgreSQL</a>, los servidores web est&aacute;n bajo <a href="http://www.lighttpd.net/">lighttpd</a> y <a href="http://www.obolog.com/organize/develovers/post/httpd.apache.org">Apache httpd</a>, con <a href="http://www.danga.com/memcached/">memcached</a> para gestionar la cache, desarrollan todo en <a href="http://www.python.org/">Python</a> con django.</p>
<p>Un ejemplo m&aacute;s de lo que se utiliza en la vida real cuando desarrollas con django.</p>
			
			<p>
							Leer <strong><a href="http://www.develovers.net/washington-times-implicado-django-208194" title="Blog Sobre Desarrollo y Programación">Blog Sobre Desarrollo y Programación</a></strong> en <a href="http://www.develovers.net/" title="Blog Sobre Desarrollo y Programación">Develovers</a>
            </p>
			 ]]></description>
		<author>tomcask</author>
		<category><![CDATA[django]]></category>
		<comments>http://www.develovers.net/washington-times-implicado-django-208194#formulario</comments>
		<guid>http://www.develovers.net/washington-times-implicado-django-208194</guid>
		<pubDate>Mon, 23 Feb 2009 10:00:00 +0100</pubDate>
	</item>
	<item>
		<title><![CDATA[Componentes Gzip]]></title>
		<link>http://www.develovers.net/componentes-gzip-208182</link>
		<description><![CDATA[
			<p>El tiempo que se tarda en tranferir diferentes componentes a trav&eacute;s de la red, se puede reducir de forma significativa usando determinadas t&eacute;cnicas de compresi&oacute;n.</p>
<p>Si bien depende del ancho de banda del cliente, de su proveedor de internet y de su proximidad a los servidores, existen otros factores que tambi&eacute;n afectan a estos tiempos de respuesta.</p>
<p>La compresi&oacute;n Gzip reduce los tiempos, disminuyendo el tama&ntilde;o de los paquetes y optimizando su distribuci&oacute;n.<br />Gzip es el m&aacute;s conocido m&eacute;todo de compresi&oacute;n hoy por hoy. Fue desarrollado bajo un proyecto GNU y estandarizado por RFC 1952.</p>
<p>Esta compresi&oacute;n reduce el tama&ntilde;o de las peticiones en un 70% y es usado por m&aacute;s de un 90% de los navegadores.</p>
			<p>Si en los servidores Web se aprecia esta petici&oacute;n, se observa que el servidor notifica al navegador del cliente el m&eacute;todo usado para la compresi&oacute;n.<br /> Content-Encoding: gzip<br /> <br />Los navegadores web ofrecen soporte a la cabeceras codificadas y comprimidas de las peticiones HTTP que realiza:<br /> Accept-Encoding: gzip, deflate</p>
<p>Los servidores eligen el tipo de fichero a comprimir usando Gzip, pero es un proceso muy limitado ya que no son aceptados todos los tipos.</p>
<p>La mayor&iacute;a de portales comprime sus documentos HTML, pero pasan por alto que tambi&eacute;n vale la pena comprimir los .js(scripts), css y XML.</p>
<p>Las im&aacute;genes y PDF no se comprimen por tratarse de ficheros ya comprimidos.</p>
<p>Usar la compresi&oacute;n Gzip en la mayoria de tipos de ficheros es otra de las maneras para reducir el peso de las p&aacute;ginas y acelerar as&iacute; la experiencia del usuario.</p>
			<p>
							Leer <strong><a href="http://www.develovers.net/componentes-gzip-208182" title="Blog Sobre Desarrollo y Programación">Blog Sobre Desarrollo y Programación</a></strong> en <a href="http://www.develovers.net/" title="Blog Sobre Desarrollo y Programación">Develovers</a>
            </p>
			 ]]></description>
		<author>Robfeb</author>
		<category><![CDATA[acelerar tu sitio web]]></category>
		<category><![CDATA[consejos]]></category>
		<category><![CDATA[rendimiento]]></category>
		<comments>http://www.develovers.net/componentes-gzip-208182#formulario</comments>
		<guid>http://www.develovers.net/componentes-gzip-208182</guid>
		<pubDate>Mon, 23 Feb 2009 09:18:56 +0100</pubDate>
	</item>
	<item>
		<title><![CDATA[Problemas Variables de entorno DJANGO_SETTINGS_MODULE]]></title>
		<link>http://www.develovers.net/problemas-variables-entorno-djangosettingsmodule-201112</link>
		<description><![CDATA[
			<p>Problemas con variables de entorno de django concretamente DJANGO_SETTINGS_MODULE.<br /> <strong>Error</strong><br /> <code><br /> ENVIRONMENT_VARIABLE<br /> ImportError: Settings cannot be imported, because environment<br /> variable DJANGO_SETTINGS_MODULE is undefined.</code></p>
<p>El interprete de python no tiene valor para la variable <strong>DJANGO_SETTINGS_MODULE</strong>.</p>
<p><strong>Solucion</strong><br /> Una facil es arrancar el interprete desde el directorio del site y arrancarlo asi:</p>
			<p><code>python manage.py shell</code></p>
<p>y listo, otra manera mas elegante es desde vuestro interprete preferido (console, pyshell, etc&hellip;) ejecutar al principio de todo algo asi como esto:</p>
<p><code>from django.conf import settings<br /> settings.configure()</code></p>
<p>Y con esto y un bizcocho hasta ma&ntilde;ana a las 8.</p>
			<p>
							Leer <strong><a href="http://www.develovers.net/problemas-variables-entorno-djangosettingsmodule-201112" title="Blog Sobre Desarrollo y Programación">Blog Sobre Desarrollo y Programación</a></strong> en <a href="http://www.develovers.net/" title="Blog Sobre Desarrollo y Programación">Develovers</a>
            </p>
			 ]]></description>
		<author>tomcask</author>
		<category><![CDATA[django]]></category>
		<comments>http://www.develovers.net/problemas-variables-entorno-djangosettingsmodule-201112#formulario</comments>
		<guid>http://www.develovers.net/problemas-variables-entorno-djangosettingsmodule-201112</guid>
		<pubDate>Tue, 10 Feb 2009 08:55:49 +0100</pubDate>
	</item>
	<item>
		<title><![CDATA[Añadir Cabeceras con fecha de caducidad]]></title>
		<link>http://www.develovers.net/anadir-cabeceras-fecha-caducidad-194148</link>
		<description><![CDATA[
			<p>Los dise&ntilde;os de las p&aacute;ginas Web, repletos de componentes (scripts, css, im&aacute;genes, etc), requieres que la primera vez que se visita la p&aacute;gina&nbsp;se descarguen todos los componentes, con sus correspondientes peticiones http. (Recordar el 2 post de esta serie:<a title="Minimizar peticiones HTTP" href="http://www.develovers.net/minimizar-peticiones-http-179350" target="_blank"> Minimizar Peticiones HTTP</a>)</p>
<p>Otra forma de reducir peticiones futuras es estableciendo como 'cacheable' esos componentes, a tener en cuenta sobretodo en im&aacute;genes, scripts y Flash, que posiblemente ser&aacute;n llamadas por m&aacute;s de una p&aacute;gina, con su consecutiva petici&oacute;n http.</p>
<p>Dos partes importantes de esta Regla a establecer seg&uacute;n el tipo de componente:</p>
			<ul>
<li>Est&aacute;tico&nbsp;&nbsp; : Especificar "nunca caduca" en la informaci&oacute;n de meta-datos.</li>
<li>Din&aacute;mico: Establecer caducidades en los meta-datos en funci&oacute;n del contenido.</li>
</ul>
<p>Los navegadores utilizan la cach&eacute; para reducir el numero de peticiones, reduciendo as&iacute; el tiempo de carga de las p&aacute;ginas.</p>
<p><br />Un servidor web utiliza cabeceras de caducidad al servir ficheros para indicar a los navegadores cuando deben actualizar la informaci&oacute;n de cache.<br />En este ejemplo se le especifica al navegador que la p&aacute;gina caduca el 15 de abril de 2010 a las 20:00 y hasta llegado ese d&iacute;a no debe volver a realizar la petici&oacute;n.</p>
<blockquote>
<p>Expires: Thu, 15 Apr 2010 20:00:00 GMT</p>
</blockquote>
<p>En el caso de ser un servidor Apache, se usa la instrucci&oacute;n 'ExpiresDefault' para establecer una fecha de caducidad relativa a la fecha actual.<br />En el ejemplo el servidor apache aplica autom&aacute;ticamente una caducidad de 10 a&ntilde;os a cada p&aacute;gina servida a partir del d&iacute;a servido.</p>
<blockquote>
<p>ExpiresDefault "access plus 10 years"</p>
</blockquote>
<p>Tener en cuenta que utilizar cabeceras de caducidad, s&oacute;lo afecta a las p&aacute;ginas visitadas, ya que la primera vez deber&aacute; descargarse todos los componentes si la cach&eacute; est&aacute; vac&iacute;a.</p>
			<p>
							Leer <strong><a href="http://www.develovers.net/anadir-cabeceras-fecha-caducidad-194148" title="Blog Sobre Desarrollo y Programación">Blog Sobre Desarrollo y Programación</a></strong> en <a href="http://www.develovers.net/" title="Blog Sobre Desarrollo y Programación">Develovers</a>
            </p>
			 ]]></description>
		<author>Robfeb</author>
		<category><![CDATA[acelerar tu sitio web]]></category>
		<category><![CDATA[consejos]]></category>
		<category><![CDATA[rendimiento]]></category>
		<comments>http://www.develovers.net/anadir-cabeceras-fecha-caducidad-194148#formulario</comments>
		<guid>http://www.develovers.net/anadir-cabeceras-fecha-caducidad-194148</guid>
		<pubDate>Thu, 29 Jan 2009 00:00:00 +0100</pubDate>
	</item>
	<item>
		<title><![CDATA[Juego Test del Amor: Compatibilidad]]></title>
		<link>http://www.develovers.net/juego-test-amor-compatibilidad-193702</link>
		<description><![CDATA[
			<p style='text-align:center'>
				<a href='http://www.develovers.net/juego-test-amor-compatibilidad-193702' title="Juego Test del Amor: Compatibilidad"><img src='http://stc.obolog.net/multimedia/fotos/194000/193702/193702-117189_p.jpg' alt=''></a>
			</p>
			<p>Os traigo una nueva entrega de los juegos simples usando javascript.</p>
<p>Seguramente ver&aacute;s muchas aplicaciones del tipo: 'Compatibilidad amorosa',<br />'&iquest;Quieres saber si sois compatibles?','&iquest;Cuanto dicen los astros que os quer&eacute;is?'<br />As&iacute; como tambi&eacute;n el "&iquest;De ver&aacute;s vas a dejar a esa persona porque un juego te ha dicho que no sois compatibles?"<br /></p>
<p>&iquest;Quieres  probar suerte?  <a title="Test del Amor!" href="http://ejemplos.develovers.net/javascript/juegoamor/testamor.htm" target="_blank">http://ejemplos.develovers.net/javascript/juegoamor/testamor.htm</a></p>
<p>L&oacute;gicamente estas cosas pueden estar sujetas al azar, en este caso a la codificaci&oacute;n ling&uuml;istica.</p>
<p>Funcionamiento:</p>
			<p>Dos campos de texto recogen los nombres de las personas a compatibilizar.</p>
<p>Se les extrae su c&oacute;digo ascii y se va acumulando.</p>
<p>Obtenemos un total dividiendo el resultado entre el total de car&aacute;cteres y escogiendo &uacute;nicamente el &uacute;ltimo d&iacute;gito.</p>
<p>Muy simple: 7=70%, 8=80%</p>
<p>Accede al juego aqu&iacute;:</p>
<p><a title="Test del Amor!" href="http://ejemplos.develovers.net/javascript/juegoamor/testamor.htm" target="_blank">http://ejemplos.develovers.net/javascript/juegoamor/testamor.htm</a></p>
<p>PD: Nadie es 100% compatible&nbsp; ;-)</p>
			<p>
							Leer <strong><a href="http://www.develovers.net/juego-test-amor-compatibilidad-193702" title="Blog Sobre Desarrollo y Programación">Blog Sobre Desarrollo y Programación</a></strong> en <a href="http://www.develovers.net/" title="Blog Sobre Desarrollo y Programación">Develovers</a>
            </p>
			 ]]></description>
		<author>Robfeb</author>
		<category><![CDATA[javascript]]></category>
		<category><![CDATA[juegos]]></category>
		<category><![CDATA[test_amor]]></category>
		<comments>http://www.develovers.net/juego-test-amor-compatibilidad-193702#formulario</comments>
		<guid>http://www.develovers.net/juego-test-amor-compatibilidad-193702</guid>
		<pubDate>Tue, 27 Jan 2009 11:42:49 +0100</pubDate>
	</item>
	<item>
		<title><![CDATA[Que es django.contrib]]></title>
		<link>http://www.develovers.net/djangocontrib-193692</link>
		<description><![CDATA[
			<p><strong>Jacob Kaplan-Moss</strong> ha publicado un <a href="http://jacobian.org/writing/what-is-django-contrib/">post</a> muy interesante sobre algunas consideraciones acerca de django.contrib.</p>
<p>Jacob se ha encontrado con muchas dudas acerca del uso y el funcionamiento de django.contrib, por eso intenta aclararlo un poco definiendo a django.contrib como el modulo que contiene los paquetes <strong>opcionales, estandares de facto e implementaciones de los patrones mas comunes.</strong>&nbsp;</p>
<p><strong>Opcional</strong>: paquetes que pueden ser eliminados, podrias hacer<strong> rm -rf django/contrib</strong> y django seguiria funcionando.</p>
<p>Los lectores astutos (todos lo sois, verdad?) se daran cuenta que django.contrib.contenttypes no cumple con esta regla, Jacob cree que esto deberia considerarse un bug.</p>
			<p>En este sentido los paquetes de django.contrib idealmente deberian poder tener acceso especial a partes internas del framework, otra vez los lectores astutos notaran que romperemos esa regla en algunos sitios y esto de nuevo deberia considerarse como un bug.</p>
<p><strong>Estandares de facto</strong>:&nbsp; Cualquier cosa dentro de contrib necesitara ser aceptada generalmente como forma adecuada de hacer algo por la mayoria de usuarios.   django.contrib.sessions es un ejemplo de esto, hay varias maneras de gestionar sesiones, pero la manera de django -<em> clave de session opaca en cookie, toda la informaci&oacute;n almacenada en el backend</em> - esta aceptada generalmente como la "best practice".</p>
<p><strong>Patrones comunes:</strong>&nbsp; Los paquetes de contrib debe resolver los problemas mas frecuentes encontrados en el mundo real por los desarrolladores web.</p>
<p>Esta constantemente actualizado basicamente este es lo que contiene django.contrib, tal vez este post sea un poco avanzado - <em>principalmente para mi </em>- pero ya va bien, que nos pongamos metas.</p>
			<p>
							Leer <strong><a href="http://www.develovers.net/djangocontrib-193692" title="Blog Sobre Desarrollo y Programación">Blog Sobre Desarrollo y Programación</a></strong> en <a href="http://www.develovers.net/" title="Blog Sobre Desarrollo y Programación">Develovers</a>
            </p>
			 ]]></description>
		<author>tomcask</author>
		<category><![CDATA[django]]></category>
		<comments>http://www.develovers.net/djangocontrib-193692#formulario</comments>
		<guid>http://www.develovers.net/djangocontrib-193692</guid>
		<pubDate>Mon, 26 Jan 2009 00:00:00 +0100</pubDate>
	</item>
	<item>
		<title><![CDATA[La primera impresión es lo que cuenta]]></title>
		<link>http://www.develovers.net/primera-impresion-cuenta-190160</link>
		<description><![CDATA[
			<p>En el blog de <a href="http://vandelaydesign.com">Vandelay Design</a> encuentro este <a href="http://vandelaydesign.com/blog/design/first-impression/">pedazo de post</a> que habla sobre la primera impresi&oacute;n de un visitante cuando llega a un WebSite, me ha gustado tanto el articulo que lo he traducido (chapuzeramente) para no perderlo entre mis links de <a href="http://del.icio.us">del.icio.us</a> y empaparme muy mucho de lo que dicen.</p>
<h3>1. Tiempo de carga.</h3>
<p>La mayor&iacute;a de nosotros somos muy impacientes, no regresamos a las p&aacute;ginas que cargan lentamente, Por otro lado, la carga r&aacute;pida de las paginas (otro articulo interesante http://vandelaydesign.com/blog/design/designing-pages-to-load-quickly/ ) fomenta que el visitante navegue por tu site,  porque sabe que no tendr&aacute; que esperar mucho en la carga de cada p&aacute;gina.</p>
<h3>2. Mensajes de error.</h3>
<p>Si los nuevos visitantes se encuentran con errores y no les es posible acceder a tu site, estate seguro que no vuelven, hay diferentes errores que pueden ocurrir, BlogStorm (http://www.blogstorm.co.uk/) ha publicado un art&iacute;culo Porque las empresas necesitan un website que trabaje (http://www.blogstorm.co.uk/blog/why-small-businesses-need-a-website/ ) .</p>
			<h3>3. Colores.</h3>
<p>El aspecto de tu site obviamente es un factor importante en la primera impresi&oacute;n de tus visitantes, el color en especial tiene un gran impacto en el atractivo general del site.<br /> Escoger la combinaci&oacute;n de colores adecuada, puede ser dif&iacute;cil pero afortunadamente tienes m&uacute;ltiples herramientas que te pueden ayudar. (<a href="http://www.vandelaydesign.com/blog/design/find-the-perfect-colors-for-your-website">Recursos, links y algunos art&iacute;culos sobre la filosof&iacute;a del color.</a>).</p>
<h3>4. Logo/Branding.</h3>
<p>Otro factor importante en la apariencia general de tu website es el Logo y el Branding (No s&eacute; c&oacute;mo traducirlo, tal vez formato de marca, identidad corporativa, se aceptan sugerencias) ,  Lo m&aacute;s importante, el Logo debe contribuir a la marca de tu empresa, en la idea que tus visitas tienen de ti. Para m&aacute;s informaci&oacute;n mirar <a href="http://www.davidairey.com/what-makes-a-good-logo/">What Makes a Great Logo? </a></p>
<h3>5. Im&aacute;genes del Header.</h3>
<p>Las im&aacute;genes del header demasiado llamativas o dominantes usadas habitualmente tienen un duro efecto en las primeras impresiones. Personalmente no soy un gran seguidor de los headers para blogs, pero algunos han tenido muy buenos resultados.</p>
<h3>6. Tipograf&iacute;as.</h3>
<p>Algo sutil suele ser la influencia de las fuentes, un cambio en las tipos, no debe ser un cambio dr&aacute;stico pero puede crear la diferencia.<br /> Mirar <a href="http://www.markboulton.co.uk/journal/comments/five_simple_steps_to_better_typography">Five Simple Steps to Better Typography</a></p>
<h3>7. Layout.</h3>
<p>Uno de los elementos de dise&ntilde;o m&aacute;s importantes es el LAYOUT,  Sea cual sea la disposici&oacute;n que utilice debe llamar la atenci&oacute;n del lector a los temas que son m&aacute;s importantes.</p>
<p>El LAYOUT no solo debe ser  para crear un atractivo dise&ntilde;o sino tambi&eacute;n para ser un site f&aacute;cil de usar por los visitantes.<br /> Mientras la mayor&iacute;a de sites utilizan un dise&ntilde;o bastante est&aacute;ndar, una buena manera de destacar tu site es tener un creativo LAYOUT,  pero por supuesto debe asegurarse que su LAYOUT creativo a&ntilde;ade eficacia en vez de afectarle la facilidad de uso.</p>
<h3>8. Publicidad.</h3>
<p>Una sencilla manera de tener una mala impresi&oacute;n es estar lleno de publicidad. La mayor&iacute;a de los actuales usuarios de internet, comprenden que haya publicidad en la mayor&iacute;a de los websistes, pero demasiada publicidad, tipos err&oacute;neos de publicidad y la mala disposici&oacute;n de los anuncios har&aacute;n que nuestros usuarios desaparezcan.</p>
<p>Una regla general es que debes tener la publicidad en los lugares que no estorben al usuario, la publicidad animada es sensible de distraer y molestar a los usuarios.</p>
<p>Si utilizas publicidad relevante para los usuarios y la mantienes fuera del flujo de tu contenido, Normalmente los usuarios no lo tienen en cuenta como efecto negativo.</p>
<h3>9. Tu reputaci&oacute;n.</h3>
<p>Si tienes buena relaci&oacute;n con otros bloggers, estas enlazado  y tienes opiniones positivas, vendr&aacute;n con una pre-actitud positiva.</p>
<h3>10. Facilidad de navegaci&oacute;n.</h3>
<p>Todos hemos estado probablemente en sites que parec&iacute;an que ten&iacute;an mucho contenido que ofrecernos pero no encontramos lo que buscamos. No estoy seguro si hay algo mas frustante en site que una navegaci&oacute;n pobre o mala navegaci&oacute;n.<br /> Una navegaci&oacute;n bien construida puede ayudar a tus visitantes a tener una muy positiva experiencia en tu site.</p>
<h3>11. Prop&oacute;sito Claro.</h3>
<p>Los nuevos visitantes deber&iacute;an tener r&aacute;pidamente el objetivo, tematica del sitio.<br /> Algunos sitios incorporan muy eficazmente una l&iacute;nea descriptiva que resume el objetivo del site.<br /> La p&aacute;gina About puede ser de gran ayuda para comunicar nuestro objetivo.</p>
<h3>12. Items no profesionales.</h3>
<p>Im&aacute;genes de mala calidad, gifs animados y contadores suelen llevara  a una primera impresi&oacute;n negativa.</p>
<h3>13. Calidad de las im&aacute;genes y las fotos.</h3>
<p>Es asombroso el gran impacto que pueden tener en un site, fotos o gr&aacute;ficos de gran calidad. Afortunadamente tenemos m&uacute;ltiples recursos para obtener im&aacute;genes de alta calidad a un bajo precio, incluso algunos gratuitos.<br /> Buscar una buena foto gratis no vale la pena cuando por 1 o 2 tienes lugares que encontraras buen material r&aacute;pidamente, este <a href="http://www.vandelaydesign.com/blog/design/stock-photography-resources/">link</a> te puede ayudar.</p>
<h3>14. Accesibilidad.</h3>
<p>La Accesibilidad es el gran rompecabezas - Elemento pendiente - en el dise&ntilde;o Web. La realidad es que no todos tus visitantes est&aacute;n englobados en el visitante medio. Muchos tienen h&aacute;ndicaps o discapacidades,  algunos usan navegadores antiguos, o tienen conexiones muy lentas, etc. Si tu website no es accesible para el visitante siempre se llevara una mala impresi&oacute;n.</p>
<h3>15. Popups y Pop-unders</h3>
<p>La mayor&iacute;a de usuarios utilizan alg&uacute;n bloqueador de popups, pero algunos websites insisten en su uso. La mayor&iacute;a de usuarios no aprecian los popups que no han sido bloqueados, esto les causa muy mala impresi&oacute;n. Algunos sites sin embargo utilizan popups de manera efectiva, debes valorar los pros y los contras.</p>
<h3>16. V&iacute;deo y Audio.</h3>
<p>Cada vez mas y mas usuarios tienen conexiones r&aacute;pidas, audio y v&iacute;deo se convertir&aacute; en algo muy com&uacute;n. Algunos visitantes aprecian estos elementos por ejemplo YouTube.<br /> Un buen uso seria el que el v&iacute;deo no empiece autom&aacute;ticamente sin que el usuario pulse explicitamente.</p>
<h3>17. Asociaciones.</h3>
<p>Los visitantes percibir&aacute;n una buena impresi&oacute;n si tienes puntos de uni&oacute;n con Grandes Empresas.</p>
<h3>18. Calidad de Contenido.</h3>
<p>Por supuesto la calidad del contenido no se puede olvidar en esta lista.  Mientras el contenido no tiene el impacto instant&aacute;neo de algunos puntos de esta lista, pero si tienen un gran impacto en los usuarios que pasan 1 minuto o mas en tu site. Para la primera vez que un usuario te visita que encuentre lo que busca o que le parezca bueno la recordara mucho m&aacute;s f&aacute;cilmente.</p>
<h3>19. Tono.</h3>
<p>El tono de un contenido puede tener impacto en la primera impresi&oacute;n, una actitud negativa en un buen contenido puede ser contraproducente.</p>
<h3>20. Numero de Comentarios y Trackbacks.</h3>
<p>Los visitantes normalmente tienen la percepci&oacute;n (&rsquo;acertada&rsquo;) de un site con muchos comentarios y trackbacks tiene algo que ofrecerles, que es un recurso valorable. Intenta propiciar los comentarios en tu site.</p>
<h3>21. Intros Flash.</h3>
<p>Positiva o Negativa  las intros en flash tienen un impacto muy grande en la primera impresi&oacute;n. A mi no me gustan demasiado las intros en flash, creo que tiene lugar en ciertas industrias, pelis, m&uacute;sica, val&oacute;ralo.</p>
<p>Falta A&ntilde;adir algo m&aacute;s a la lista.???</p>
			<p>
							Leer <strong><a href="http://www.develovers.net/primera-impresion-cuenta-190160" title="Blog Sobre Desarrollo y Programación">Blog Sobre Desarrollo y Programación</a></strong> en <a href="http://www.develovers.net/" title="Blog Sobre Desarrollo y Programación">Develovers</a>
            </p>
			 ]]></description>
		<author>tomcask</author>
		<category><![CDATA[consejos]]></category>
		<comments>http://www.develovers.net/primera-impresion-cuenta-190160#formulario</comments>
		<guid>http://www.develovers.net/primera-impresion-cuenta-190160</guid>
		<pubDate>Fri, 23 Jan 2009 00:00:00 +0100</pubDate>
	</item>
</channel>
</rss>
