<?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>monoBOT</title>
	<atom:link href="http://alvarezalonso.es/monobotblog/?feed=rss2" rel="self" type="application/rss+xml" />
	<link>http://alvarezalonso.es/monobotblog</link>
	<description>monoBOT: Aprendiz de programador (Python)</description>
	<lastBuildDate>Sat, 12 May 2012 18:00:14 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.3.2</generator>
		<item>
		<title>[python] manejo de directorios y ficheros</title>
		<link>http://alvarezalonso.es/monobotblog/?p=991</link>
		<comments>http://alvarezalonso.es/monobotblog/?p=991#comments</comments>
		<pubDate>Sat, 12 May 2012 18:00:14 +0000</pubDate>
		<dc:creator>monoBOT</dc:creator>
				<category><![CDATA[Python]]></category>

		<guid isPermaLink="false">http://alvarezalonso.es/monobotblog/?p=991</guid>
		<description><![CDATA[Esta es la tipica pagina de referencia cuando quiero mirar referencias al manejo de directorios y ficheros &#8230; la tengo como favoritos y la miro cada varios dias &#8230; la quería compartir con ustedes.
&#160;
]]></description>
			<content:encoded><![CDATA[<p>Esta es la tipica pagina de referencia cuando quiero mirar referencias al manejo de <a href="http://code.google.com/p/asi-iesenlaces/wiki/ArchivosyDirectoriosConPython" target="_blank">directorios y ficheros</a> &#8230; la tengo como favoritos y la miro cada varios dias &#8230; la quería compartir con ustedes.</p>
<p>&nbsp;</p>
]]></content:encoded>
			<wfw:commentRss>http://alvarezalonso.es/monobotblog/?feed=rss2&#038;p=991</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>[django] chuletilla</title>
		<link>http://alvarezalonso.es/monobotblog/?p=989</link>
		<comments>http://alvarezalonso.es/monobotblog/?p=989#comments</comments>
		<pubDate>Sat, 14 Apr 2012 16:33:56 +0000</pubDate>
		<dc:creator>monoBOT</dc:creator>
				<category><![CDATA[django]]></category>

		<guid isPermaLink="false">http://alvarezalonso.es/monobotblog/?p=989</guid>
		<description><![CDATA[Como sabeis soy muy aficionado a las chuletillas, y aunque solo ha pasado algo mas de una semana desde la versión 1.4 de django ya tenemos una chuletilla de django que tal vez les pueda interesar &#8230;  saludos!
&#160;
]]></description>
			<content:encoded><![CDATA[<p>Como sabeis soy muy aficionado a las chuletillas, y aunque solo ha pasado algo mas de una semana desde la versión 1.4 de django ya tenemos<a href="http://media.revsys.com/images/django-1.4-cheatsheet.pdf"> una chuletilla </a>de django que tal vez les pueda interesar &#8230;  saludos!</p>
<p>&nbsp;</p>
]]></content:encoded>
			<wfw:commentRss>http://alvarezalonso.es/monobotblog/?feed=rss2&#038;p=989</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>[CSS] Por mucho que odie Css &#8230; chuleta de css!!!</title>
		<link>http://alvarezalonso.es/monobotblog/?p=985</link>
		<comments>http://alvarezalonso.es/monobotblog/?p=985#comments</comments>
		<pubDate>Mon, 09 Apr 2012 15:15:47 +0000</pubDate>
		<dc:creator>monoBOT</dc:creator>
				<category><![CDATA[OffTopic]]></category>
		<category><![CDATA[chuleta]]></category>
		<category><![CDATA[css]]></category>

		<guid isPermaLink="false">http://alvarezalonso.es/monobotblog/?p=985</guid>
		<description><![CDATA[Por mucho que odie el css, por ser muy opaco y poco claro a la hora de renderizar la página y lo complicado que es la mayoría de las veces preveer su comportamiento, es necesario usarlo para poder tener una web decente, así que aqui les adjunto una chuletilla css para vuestros diseños.
]]></description>
			<content:encoded><![CDATA[<p>Por mucho que odie el css, por ser muy opaco y poco claro a la hora de renderizar la página y lo complicado que es la mayoría de las veces preveer su comportamiento, es necesario usarlo para poder tener una web decente, así que aqui les adjunto una <a href="http://media.smashingmagazine.com/wp-content/uploads/images/css3-cheat-sheet/css3-cheat-sheet.pdf" target="_blank">chuletilla css</a> para vuestros diseños.</p>
]]></content:encoded>
			<wfw:commentRss>http://alvarezalonso.es/monobotblog/?feed=rss2&#038;p=985</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>[SublimeText2] mi nuevo ide para python.</title>
		<link>http://alvarezalonso.es/monobotblog/?p=975</link>
		<comments>http://alvarezalonso.es/monobotblog/?p=975#comments</comments>
		<pubDate>Tue, 03 Apr 2012 17:35:35 +0000</pubDate>
		<dc:creator>monoBOT</dc:creator>
				<category><![CDATA[Python]]></category>
		<category><![CDATA[SublimeText2]]></category>

		<guid isPermaLink="false">http://alvarezalonso.es/monobotblog/?p=975</guid>
		<description><![CDATA[He vuelto a cambiar de IDE &#8230; la verdad es que no era mi intención Spyderlib me iba bastante bien.
Había algunas veces que se colgaba extrañamente pero eran pocas las veces. Aprendi a mejorar el código con pep8 gracias a Spyderlib ya que activé la función y me obligué a usar pep8.
Pero cayó en mis  [...]]]></description>
			<content:encoded><![CDATA[<p>He vuelto a cambiar de IDE &#8230; la verdad es que no era mi intención Spyderlib me iba bastante bien.</p>
<p>Había algunas veces que se colgaba extrañamente pero eran pocas las veces. Aprendi a mejorar el código con pep8 gracias a Spyderlib ya que activé la función y me obligué a usar pep8.</p>
<p>Pero cayó en mis manos SublimeText gracias a criticas muy buenas por parte de algunas páginas web, así que me decidí a echarle un vistazo.<span id="more-975"></span></p>
<p>En principio me pareció que no era para mi puesto que era muy complicado configurarlo como yo necesitaba, pero después de dos días le di otra oportunidad y ya me estoy cambiando poco a poco.</p>
<p>Lo que tiene SublimeText que no tenía Spyderlib eran los snipetts que para mi son muy importantes para teclear código mas rápidamente, todo lo demás lo tiene y además SublimeText es muy liviano (está escrito en python igual que Spyderlib) y permite muchas mejoras via plugins y aditivos.</p>
<p>Se puede descargar gratuitamente pero es necesario pagar 59$ para comprar la licencia si lo vas a usar, yo aun no lo he pagado pero en cuanto gane algo con Python (si ese dia llega) pagaré mi licencia.</p>
<p>Descarga:</p>
<p><a href="http://www.sublimetext.com/2">SublimeText</a></p>
<p>Bájate la version de instalar si estás en windows y no la portatil.</p>
<p>Luego instalate el gestor de paquetes (package Control):</p>
<p><a href="http://wbond.net/sublime_packages/package_control">package_control</a>    lo mas fácil es teclear esto en la consola de SublimeText:</p>
<pre>import urllib2,os; pf='Package Control.sublime-package'; ipp=sublime.installed_packages_path(); os.makedirs(ipp) if not os.path.exists(ipp) else None; urllib2.install_opener(urllib2.build_opener(urllib2.ProxyHandler())); open(os.path.join(ipp,pf),'wb').write(urllib2.urlopen('http://sublime.wbond.net/'+pf.replace(' ','%20')).read()); print 'Please restart Sublime Text to finish installation'</pre>
<p>Después necesitarás estos dos paquetes para empezar a convertir el editor de texto en un auténtico IDE.<br />
<em>&#8220;SublimeRope&#8221;</em><br />
y<br />
<em>&#8220;SublimeLinter&#8221;</em></p>
<p>Los dos se instalan desde SublimeText mediante el gestor de paquetes. Pulsa [Ctrl+Mays+P] dentro teclea package control, de las opciones busca la que pone install, se conecta al servidor y busca los paquetes por ti.<br />
El primero es para poder tener rope en SublimeText2 es decir refactorización y control de documentación.<br />
el segundo es para tener pep8, yo lo tengo configurado para que me haga resaltado de errores, como? pues en SublimeText vas a PREFERENCES -&gt; SETTINGS &#8211; USER &gt;<br />
allí le metes esta línea:</p>
<pre>	"sublimelinter" : true,</pre>
<p>(si true en minúsculas XD)</p>
]]></content:encoded>
			<wfw:commentRss>http://alvarezalonso.es/monobotblog/?feed=rss2&#038;p=975</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>[Django] Django ha sacado la última versión de su plataforma, la 1.4</title>
		<link>http://alvarezalonso.es/monobotblog/?p=969</link>
		<comments>http://alvarezalonso.es/monobotblog/?p=969#comments</comments>
		<pubDate>Sun, 01 Apr 2012 22:09:38 +0000</pubDate>
		<dc:creator>monoBOT</dc:creator>
				<category><![CDATA[django]]></category>
		<category><![CDATA[Python]]></category>

		<guid isPermaLink="false">http://alvarezalonso.es/monobotblog/?p=969</guid>
		<description><![CDATA[Pues nada hacer eco de la noticia, Django ha sacado la última versión de su plataforma, la 1.4
https://www.djangoproject.com/
]]></description>
			<content:encoded><![CDATA[<p>Pues nada hacer eco de la noticia, Django ha sacado la última versión de su plataforma, la 1.4</p>
<p><a href="https://www.djangoproject.com/">https://www.djangoproject.com/</a></p>
]]></content:encoded>
			<wfw:commentRss>http://alvarezalonso.es/monobotblog/?feed=rss2&#038;p=969</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>[Python] Refactorizar Python en SublimeText2</title>
		<link>http://alvarezalonso.es/monobotblog/?p=966</link>
		<comments>http://alvarezalonso.es/monobotblog/?p=966#comments</comments>
		<pubDate>Sun, 01 Apr 2012 22:05:09 +0000</pubDate>
		<dc:creator>monoBOT</dc:creator>
				<category><![CDATA[Python]]></category>
		<category><![CDATA[ST2]]></category>

		<guid isPermaLink="false">http://alvarezalonso.es/monobotblog/?p=966</guid>
		<description><![CDATA[http://www.genbetadev.com/herramientas/sublime-text-2-refactoring-en-python-con-sublimerope
&#160;
articulo interesante.
]]></description>
			<content:encoded><![CDATA[<p><a href="http://www.genbetadev.com/herramientas/sublime-text-2-refactoring-en-python-con-sublimerope">http://www.genbetadev.com/herramientas/sublime-text-2-refactoring-en-python-con-sublimerope</a></p>
<p>&nbsp;</p>
<p>articulo interesante.</p>
]]></content:encoded>
			<wfw:commentRss>http://alvarezalonso.es/monobotblog/?feed=rss2&#038;p=966</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>[Noticias] ICS llega a Samsung Galaxy SII</title>
		<link>http://alvarezalonso.es/monobotblog/?p=964</link>
		<comments>http://alvarezalonso.es/monobotblog/?p=964#comments</comments>
		<pubDate>Tue, 13 Mar 2012 08:52:09 +0000</pubDate>
		<dc:creator>monoBOT</dc:creator>
				<category><![CDATA[Android]]></category>
		<category><![CDATA[Noticias]]></category>
		<category><![CDATA[Galaxy]]></category>
		<category><![CDATA[ICS]]></category>

		<guid isPermaLink="false">http://alvarezalonso.es/monobotblog/?p=964</guid>
		<description><![CDATA[ICS llega a Samsung Galaxy SII
Lástima para los que como yo tenemos el Galaxy S+ que es un terminal superior pero los de Samsung no les ponen el ICS básicamente porque no les da la real gana&#8230; Una lástima, debería de haber leyes que dijeran que los terminales se deben de actualizar por los  [...]]]></description>
			<content:encoded><![CDATA[<p><a href="http://www.xataka.com/moviles/la-actualizacion-a-ice-cream-sandwich-de-samsung-galaxy-s2-comienza-hoy?utm_source=feedburner&amp;utm_medium=feed&amp;utm_campaign=Feed%3A+xataka2+%28Xataka%29&amp;utm_content=Google+Reader">ICS llega a Samsung Galaxy SII</a></p>
<p>Lástima para los que como yo tenemos el Galaxy S+ que es un terminal superior pero los de Samsung no les ponen el ICS básicamente porque no les da la real gana&#8230; Una lástima, debería de haber leyes que dijeran que los terminales se deben de actualizar por los fabricantes al menos durante los primeros 2 años que es la vida útil normal de los mismos.</p>
<p>&nbsp;</p>
]]></content:encoded>
			<wfw:commentRss>http://alvarezalonso.es/monobotblog/?feed=rss2&#038;p=964</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Codigo inteligente [wxpython]</title>
		<link>http://alvarezalonso.es/monobotblog/?p=955</link>
		<comments>http://alvarezalonso.es/monobotblog/?p=955#comments</comments>
		<pubDate>Fri, 02 Mar 2012 20:42:47 +0000</pubDate>
		<dc:creator>monoBOT</dc:creator>
				<category><![CDATA[Python]]></category>
		<category><![CDATA[Wxpython]]></category>
		<category><![CDATA[trucos]]></category>

		<guid isPermaLink="false">http://alvarezalonso.es/monobotblog/?p=955</guid>
		<description><![CDATA[Estoy terminando un interface y como supongo todos hacemos vamos mirando tutoriales y cosas por el estilo, el tema es que me he encontrado este pedazo de código que me parece una maravilla. No se será que soy un novato y todo me gusta / sorprende.
Pero es muy inteligente que lo que hace es crear un  [...]]]></description>
			<content:encoded><![CDATA[<p>Estoy terminando un interface y como supongo todos hacemos vamos mirando tutoriales y cosas por el estilo, el tema es que me he encontrado este pedazo de código que me parece una maravilla. No se será que soy un novato y todo me gusta / sorprende.<span id="more-955"></span></p>
<p>Pero es muy inteligente que lo que hace es crear un widget, aplicarle el Bind y el sizer todo a la vez.</p>

<div class="wp_syntax"><div class="code"><pre class="python" style="font-family:monospace;">        txt = <span style="color: #008000;">self</span>.<span style="color: black;">onWidgetSetup</span><span style="color: black;">&#40;</span>
                    wx.<span style="color: black;">TextCtrl</span><span style="color: black;">&#40;</span>panel, value=<span style="color: #483d8b;">&quot;&quot;</span><span style="color: black;">&#41;</span>,
                    wx.<span style="color: black;">EVT_KEY_DOWN</span>,
                    <span style="color: #008000;">self</span>.<span style="color: black;">onTextKeyEvent</span>, sizer
                    <span style="color: black;">&#41;</span>
    <span style="color: #ff7700;font-weight:bold;">def</span> onWidgetSetup<span style="color: black;">&#40;</span><span style="color: #008000;">self</span>, widget, event, handler, sizer<span style="color: black;">&#41;</span>:
        widget.<span style="color: black;">Bind</span><span style="color: black;">&#40;</span>event, handler<span style="color: black;">&#41;</span>
        sizer.<span style="color: black;">Add</span><span style="color: black;">&#40;</span>widget, <span style="color: #ff4500;">0</span>, wx.<span style="color: black;">ALL</span>, <span style="color: #ff4500;">5</span><span style="color: black;">&#41;</span>
        <span style="color: #ff7700;font-weight:bold;">return</span> widget</pre></div></div>

<p>Analicemos lo que hace:<br />
define una función que recibe un widget, configuracion de un sizer y de un bind .. la funcion aplica los valores a los elementos y devuelve el widget propiamente.<br />
Por tanto de una sola vez crea y aplica los elementos.<br />
Ahora que ya controlo bastante bien como tira wxpython, empiezo a encontrar estas joyas realmente interesantes, para optimizar y mejorar código repetitivo.</p>
]]></content:encoded>
			<wfw:commentRss>http://alvarezalonso.es/monobotblog/?feed=rss2&#038;p=955</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>[SpyderLib] Mi nuevo IDE para python</title>
		<link>http://alvarezalonso.es/monobotblog/?p=947</link>
		<comments>http://alvarezalonso.es/monobotblog/?p=947#comments</comments>
		<pubDate>Fri, 17 Feb 2012 10:21:58 +0000</pubDate>
		<dc:creator>monoBOT</dc:creator>
				<category><![CDATA[Python]]></category>

		<guid isPermaLink="false">http://alvarezalonso.es/monobotblog/?p=947</guid>
		<description><![CDATA[Les comento que he cambiado de IDE para Python, siempre he usado Geany que es un editor de texto muy liviano con resaltado de sintaxis, básicamente. Pero hace un par de dias que he estado toqueteando otros IDE con el objeto de mejorar mi forma de hacer código y sobretodo que tenga detector de  [...]]]></description>
			<content:encoded><![CDATA[<p>Les comento que he cambiado de IDE para Python, siempre he usado Geany que es un editor de texto muy liviano con resaltado de sintaxis, básicamente. Pero hace un par de dias que he estado toqueteando otros IDE con el objeto de mejorar mi forma de hacer código y sobretodo que tenga detector de bugs.</p>
<p>He mirado los siguientes:<br />
<a href="http://ninja-ide.org/downloads/">NinjaIDE</a> y <a href="http://code.google.com/p/spyderlib/downloads/list">SpyderLib</a></p>
<p><span id="more-947"></span></p>
<p>Me quedo con SpyderLib porque en windows funciona bien y es bastante completo, tiene lo que necesito resaltado de sintaxis, detector de bugs, correcto de estilo*[1] y mejora de código*[2]. La razón por la que finalmente no opto por Ninja es que en windows da algunos errores tontos (en Ubuntu me va bien la verdad) y de vez en cuando en windows también se rompe.</p>
<p>Lo único que echo en falta en Spyder es la falta de snippets pero es algo que en futuras ediciones lo incluirán (de acuerdo al sitio de google code que es donde se aloja el código).</p>
<p>Denle una oportunidad a estos dos editores valen la pena.</p>
<p><a href="http://monobotblog.alvarezalonso.es/wp-content/uploads/2012/02/2012-02-17_102747.jpg"><img class="alignnone size-medium wp-image-950" title="2012-02-17_102747" src="http://monobotblog.alvarezalonso.es/wp-content/uploads/2012/02/2012-02-17_102747-300x230.jpg" alt="" width="300" height="230" /></a> &lt;&#8212;-  Spyderlib</p>
<p>*[1] Para que funcione el corrector de estilo tenemos que instalar en python el repositorio de <a href="http://pypi.python.org/pypi/pep8#downloads">pep8</a><br />
**[2] Para que funcione el corrector de código tenemos que instalar en python el repositorio <a href="http://download.logilab.org/pub/pylint/pylint-0.25.1.tar.gz">pylint</a></p>
]]></content:encoded>
			<wfw:commentRss>http://alvarezalonso.es/monobotblog/?feed=rss2&#038;p=947</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>[Python] Codigos Qr en Python</title>
		<link>http://alvarezalonso.es/monobotblog/?p=942</link>
		<comments>http://alvarezalonso.es/monobotblog/?p=942#comments</comments>
		<pubDate>Thu, 02 Feb 2012 16:39:03 +0000</pubDate>
		<dc:creator>monoBOT</dc:creator>
				<category><![CDATA[Python]]></category>
		<category><![CDATA[Qr]]></category>

		<guid isPermaLink="false">http://alvarezalonso.es/monobotblog/?p=942</guid>
		<description><![CDATA[Ayer estuve mirando lo de los códigos Qr, y me quedé gratamente sorprendido al ver un módulo para Python que encripta cualquier mensaje en un código Qr que cualquier (o casi) dispositivo puede desencriptar.
Bueno al tajo, el módulo del que hablo es qrcode y es tan fácil de usar como esto:

def  [...]]]></description>
			<content:encoded><![CDATA[<p>Ayer estuve mirando lo de los códigos Qr, y me quedé gratamente sorprendido al ver un módulo para Python que encripta cualquier mensaje en un código Qr que cualquier (o casi) dispositivo puede desencriptar.</p>
<p>Bueno al tajo, el módulo del que hablo es <a href="http://pypi.python.org/pypi/qrcode/2.0" title="qrcode" target="_blank">qrcode</a> y es tan fácil de usar como esto:</p>

<div class="wp_syntax"><div class="code"><pre class="python" style="font-family:monospace;"><span style="color: #ff7700;font-weight:bold;">def</span> QrEncode<span style="color: black;">&#40;</span>txt=<span style="color: #483d8b;">'prueba'</span>, nFichero=<span style="color: #483d8b;">'prueba.png'</span><span style="color: black;">&#41;</span>:
    <span style="color: #483d8b;">''</span><span style="color: #483d8b;">'
    @funcionamiento: crea imagen png con el texto encriptado en codigo QR
    @argumentos:
        txt: el fichero de texto que quieres que tenga el código QR
        nFichero: el nombre del fichero de texto de salida
    @return:
        devuelve True
    '</span><span style="color: #483d8b;">''</span>
    qr = qrcode.<span style="color: black;">QRCode</span><span style="color: black;">&#40;</span>
        version=<span style="color: #ff4500;">1</span>,
        box_size=<span style="color: #ff4500;">10</span>,
    <span style="color: black;">&#41;</span>
    qr.<span style="color: black;">add_data</span><span style="color: black;">&#40;</span>txt<span style="color: black;">&#41;</span>
    qr.<span style="color: black;">make</span><span style="color: black;">&#40;</span>fit=<span style="color: #008000;">True</span><span style="color: black;">&#41;</span>
&nbsp;
    img = qr.<span style="color: black;">make_image</span><span style="color: black;">&#40;</span><span style="color: black;">&#41;</span>
&nbsp;
    img.<span style="color: black;">save</span><span style="color: black;">&#40;</span>nFichero<span style="color: black;">&#41;</span>
    <span style="color: #ff7700;font-weight:bold;">return</span> <span style="color: #008000;">True</span>
<span style="color: #483d8b;">''</span><span style="color: #483d8b;">'para usarlo simplemente ejecutamos lo siguiente:'</span><span style="color: #483d8b;">''</span>
&nbsp;
QrEncode<span style="color: black;">&#40;</span>txt=<span style="color: #483d8b;">'http://monobotblog.alvarezalonso.es'</span>, nFichero=<span style="color: #483d8b;">'monobot.png'</span><span style="color: black;">&#41;</span></pre></div></div>

]]></content:encoded>
			<wfw:commentRss>http://alvarezalonso.es/monobotblog/?feed=rss2&#038;p=942</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
	</channel>
</rss>

