<?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>aNieto2K &#187; Python</title>
	<atom:link href="http://www.anieto2k.com/category/programacion/python/feed/" rel="self" type="application/rss+xml" />
	<link>http://www.anieto2k.com</link>
	<description>Desarrollo web, Wordpress, y alguna cosilla más</description>
	<lastBuildDate>Sun, 12 Feb 2012 10:15:00 +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>Pycript, el javascript con sabor a Python</title>
		<link>http://www.anieto2k.com/2010/01/15/pycript-el-javascript-con-sabor-a-python/</link>
		<comments>http://www.anieto2k.com/2010/01/15/pycript-el-javascript-con-sabor-a-python/#comments</comments>
		<pubDate>Fri, 15 Jan 2010 09:47:44 +0000</pubDate>
		<dc:creator>aNieto2k</dc:creator>
				<category><![CDATA[javascript]]></category>
		<category><![CDATA[Programacion]]></category>
		<category><![CDATA[Python]]></category>
		<category><![CDATA[webdev]]></category>

		<guid isPermaLink="false">http://www.anieto2k.com/?p=9566</guid>
		<description><![CDATA[Si conoces Python habrás notado que la generación de código limpio es una norma muy inculcada en la filosofía del lenguaje. Esto ayuda sustancialmente a la creación de un código que prácticamente todo aquel que haya desarrollado alguna en Python podrá entender (aunque tambien se pueden hacer desastres :D). Por el contrario, Javascript, es archiconocido [...]]]></description>
			<content:encoded><![CDATA[<a href="http://www.anieto2k.com/2010/01/02/python-django-%C2%BFpor-donde-empezar/">Si conoces Python</a> habrás notado que la generación de código limpio es una norma <a href="http://es.wikipedia.org/wiki/Python#Filosof.C3.ADa">muy inculcada en la filosofía</a> del lenguaje. Esto ayuda sustancialmente a la creación de un código que prácticamente todo aquel que haya desarrollado alguna en Python podrá entender (aunque tambien se pueden hacer desastres :D).

Por el contrario, <a href="http://www.anieto2k.com/2009/01/30/minimizando-al-maximo-la-deteccion-del-navegador/">Javascript, es archiconocido por la filosofía de minimizar</a>, hacer todo en el menor número de líneas posibles, esto tiene sentido ya que el lenguaje ha de viajar hasta el cliente y allí ejecutarse. De esta forma, todo lo que podamos bajar, son bytes de menos que enviar.

<strong>Aza Raskin</strong> se <a href="http://www.azarask.in/blog/post/making-javascript-syntax-not-suck/">ha propuesto unir estas dos filosofías e implementar Pyscript</a>, una implementación en Javascript que nos permite desarrollar en Javascript usando la sintaxis de Python [Ver <a href="http://pythonicjavascript.googlecode.com/svn/trunk/demo.html">Demo</a>]
<pre style="float: left; width: 250px;"><code><strong>// Pyscript
</strong>function triangle(a,b):
  if a &gt; 0 &amp;&amp; b &gt; 0:
    function sqroot(x):
      if x &gt; 0:
        return Math.pow(x,.5)
      else:
        return 0
    return sqroot( a*a + b*b )
  else:
    return 0</code></pre>
<pre style="float: left; width: 250px; margin-left: 10px;"><code><strong>// Javascript
</strong>function triangle(a,b){
  if(a &gt; 0 &amp;&amp; b &gt; 0 ){
    function sqroot(x){
      if( x &gt; 0 ){
        return Math.pow(x,.5);
      }
      else {
        return 0;
      }
    }
    return sqroot( a*a + b*b );
  }
  else {
    return 0;
  }
}</code></pre>
<br style="clear: both;" />
<h3>¿Como usarlo?</h3>
Se trata de un fichero .js que podemos descargar directamente desde aquí y que nos permitirá incluir código Pyscript en unos tags personalizados para dicho código.
<pre><code>&lt;script src="pyscript.min.js"&gt;&lt;/script&gt;</code></pre>
Una vez añadido este código, ya podremos generar nuestros bloques de código.
<pre><code>&lt;script id="input" type="text/pyscript"&gt;
  var el = document.getElementById("string")
  for var i=0; i&lt;5; i++: el.innerHTML += "hello! "

  var count = 0
  for var i=0; i&lt;5; i++:
    count += 1
    if count==2:
      count *= 5

  document.getElementById("count").innerHTML = count;    

  function triangle(a,b):
    function sqroot(x): return Math.pow(x,.5)
    return sqroot( a*a + b*b )

  document.getElementById("triangle").innerHTML = triangle(3,4);
&lt;/script&gt;</code>
</pre>
Como experimento es muy interesante, pero por el momento no debería tomarse más enserio debido a que la filosofía de Javascript (que hemos visto antes) es así por algo, las conexiones más lentas lo agradecerán :D<h3>Artículos relacionados</h3>
<ul><li><a href="http://www.anieto2k.com/2010/01/02/python-django-%c2%bfpor-donde-empezar/" rel="bookmark" title="Permanent Link: Python + Django, ¿por donde empezar?">Python + Django, ¿por donde empezar?</a></li><li><a href="http://www.anieto2k.com/2007/07/02/firebug-para-iphone/" rel="bookmark" title="Permanent Link: Firebug para iPhone">Firebug para iPhone</a></li><li><a href="http://www.anieto2k.com/2006/10/13/que-lenguaje-es-el-mas-odiado/" rel="bookmark" title="Permanent Link: El lenguaje más odiado">El lenguaje más odiado</a></li><li><a href="http://www.anieto2k.com/2009/10/20/9-aplicaciones-microblogging-completamente-open-source/" rel="bookmark" title="Permanent Link: 9 aplicaciones microblogging completamente Open Source">9 aplicaciones microblogging completamente Open Source</a></li><li><a href="http://www.anieto2k.com/2010/08/05/twitterday-2010-08-05-2/" rel="bookmark" title="Permanent Link: TwitterDay &#8211; 2010-08-05">TwitterDay &#8211; 2010-08-05</a></li></ul><p><a href="http://www.anieto2k.com" id="38.107.179.239"><img rel="38.107.179.239" src="http://www.anieto2k.com/favicon.ico" alt="aNieto2k" /></a></p>]]></content:encoded>
			<wfw:commentRss>http://www.anieto2k.com/2010/01/15/pycript-el-javascript-con-sabor-a-python/feed/</wfw:commentRss>
		<slash:comments>8</slash:comments>
		</item>
		<item>
		<title>Python + Django, ¿por donde empezar?</title>
		<link>http://www.anieto2k.com/2010/01/02/python-django-%c2%bfpor-donde-empezar/</link>
		<comments>http://www.anieto2k.com/2010/01/02/python-django-%c2%bfpor-donde-empezar/#comments</comments>
		<pubDate>Sat, 02 Jan 2010 11:00:26 +0000</pubDate>
		<dc:creator>aNieto2k</dc:creator>
				<category><![CDATA[Programacion]]></category>
		<category><![CDATA[Python]]></category>
		<category><![CDATA[webdev]]></category>
		<category><![CDATA[django]]></category>

		<guid isPermaLink="false">http://www.anieto2k.com/?p=9518</guid>
		<description><![CDATA[Hace 1 mes, Antoni Aloy nos hizo una charla informal, el Creant Bits. En ella nos presentó, con una ilusión admirable, python + django (os dejo las presentaciones). Yo no había trasteado nada de Python y mucho menos Django, hasta aquel momento y la verdad es que en 4-5 horas que duró la presentación fué [...]]]></description>
			<content:encoded><![CDATA[Hace 1 mes, <a href="http://trespams.com/2009/11/20/anunci-python-i-django-workshow/">Antoni Aloy nos hizo una charla informal, el Creant Bits</a>. En ella nos presentó, con una ilusión admirable, <a href="http://www.slideshare.net/aaloy">python + django (os dejo las presentaciones)</a>. Yo no había trasteado nada de Python y mucho menos Django, hasta aquel momento y la verdad es que en 4-5 horas que duró la presentación fué posible conocer de pasada ambas herramientas lo suficiente para que el gusanillo empiece a mordisquear, tanto que aún sigue haciéndolo en mi :D
<h3>Python</h3>
Me voy a ahorrar <a href="http://es.wikipedia.org/wiki/Python">la información sobre el lenguaje, y delego ese trabajo a la Wikipedia</a>. Solo diré que el código identado al principio es poco "laborioso" pero con 2 días de tabulador no puedes vivir sin él.
<ul>
	<li><a href="http://www.python.org/download/">Descargar e instalar Python</a></li>
	<li><a href="http://mundogeek.net/tutorial-python/">Impresionante Tutorial para iniciarte</a></li>
	<li><a href="http://www.python.org/doc/">Documentación oficial del lenguaje</a></li>
	<li><a href="http://www.gulic.org/almacen/diveintopython-5.4-es/installing_python/index.html">Inmersión en Python (de Novato a Experto)</a></li>
	<li><a href="http://es.diveintopython.org/">Diveintopython, Python para programador con experiencia</a></li>
</ul>
Ojo! Actualmente la versión estable es la 2.6 aunque ya se vé asomar la versión 3.x. Por el momento han tomado la desición de paralizar la evolución de la 3.0 hasta que todas las implementaciones de Python lo soporten y asegurarse la mayor compatibilidad con esta nueva versión, así que aunque desarrollemos sobre la 2.6 deberíamos <a href="http://docs.python.org/3.1/whatsnew/3.1.html">conocer las diferencias con la 3.x</a>.
<h3>Django</h3>
Este framework fué desarrollado con la premisa de que generar una aplicación web no debería ser tan complicado y mucho menos lento. Por ese motivo, generar una aplicación con <a href="http://es.wikipedia.org/wiki/Django">Django es sencillo y rápido</a>. Una simple y "casi" universal configuración nos permitirá generar proyectos web completos con un simple copy&amp;paste.
<ul>
	<li><a href="http://www.djangoproject.com/">Django Project (Página oficial del framework)</a></li>
	<li><a href="http://docs.djangoproject.com/en/dev/topics/install/#topics-install">Descargar y Instalar</a></li>
	<li><a href="http://django.es/">Comunidad hispana de Django</a></li>
	<li><a href="http://docs.djangoproject.com/en/dev/intro/tutorial01/">Tutorial oficial (recomendada)</a></li>
	<li><a href="http://docs.djangoproject.com/en/1.1/">Documentación oficial</a></li>
	<li><a href="http://davidasorey.net/static/django-tutorial/">Tutorial no oficial</a></li>
	<li><a href="http://www.djangobook.com/">The Django Book</a> (via <a href="http://twitter.com/jllopezpino/status/7298846370">@jllopezpino</a>)</li>
</ul>
Esto solo pretende ser una pequeña guía de sitios que he ido recopilando en mi primer mes con Python + Django. Espero que a alguien le pueda servir y si de paso pico a algún curioso, pues mejor :D
<h4>Actualización(13:49)</h4>
Si crear un proyecto es fácil, configurarlo a veces es un poco pesado, así que <a href="http://code.google.com/p/simple-django-blank-project/">he montado un proyecto plantilla en blanco que puede servir para iniciarte en el mundo django</a>. Además, lo he alojado en Google Code para que alguien con más conocimientos sobre el tema lo complemente si cree conveniente.<h3>Artículos relacionados</h3>
<ul><li><a href="http://www.anieto2k.com/2010/01/15/pycript-el-javascript-con-sabor-a-python/" rel="bookmark" title="Permanent Link: Pycript, el javascript con sabor a Python">Pycript, el javascript con sabor a Python</a></li><li><a href="http://www.anieto2k.com/2009/10/20/9-aplicaciones-microblogging-completamente-open-source/" rel="bookmark" title="Permanent Link: 9 aplicaciones microblogging completamente Open Source">9 aplicaciones microblogging completamente Open Source</a></li><li><a href="http://www.anieto2k.com/2007/07/02/firebug-para-iphone/" rel="bookmark" title="Permanent Link: Firebug para iPhone">Firebug para iPhone</a></li><li><a href="http://www.anieto2k.com/2006/07/19/%c2%bfpor-que-programar-es-igual-que-el-sexo/" rel="bookmark" title="Permanent Link: ¿Por que programar es igual que el sexo?">¿Por que programar es igual que el sexo?</a></li><li><a href="http://www.anieto2k.com/2006/10/13/que-lenguaje-es-el-mas-odiado/" rel="bookmark" title="Permanent Link: El lenguaje más odiado">El lenguaje más odiado</a></li></ul><p><a href="http://www.anieto2k.com" id="38.107.179.239"><img rel="38.107.179.239" src="http://www.anieto2k.com/favicon.ico" alt="aNieto2k" /></a></p>]]></content:encoded>
			<wfw:commentRss>http://www.anieto2k.com/2010/01/02/python-django-%c2%bfpor-donde-empezar/feed/</wfw:commentRss>
		<slash:comments>17</slash:comments>
		</item>
	</channel>
</rss>

