<?xml version="1.0" encoding="ISO-8859-1"?>
<?xml-stylesheet type="text/xsl" media="screen" href="/~d/styles/rss2full.xsl"?><?xml-stylesheet type="text/css" media="screen" href="http://feeds.feedburner.com/~d/styles/itemcontent.css"?><rss xmlns:feedburner="http://rssnamespace.org/feedburner/ext/1.0" version="2.0"><channel><title>Lateral Opinion (python)</title><link>http://lateral.netmanagers.com.ar</link><description>I write free software. I have an opinion on almost everything. I write quickly. A weblog was inevitable.</description><lastBuildDate>Wed, 16 May 2012 17:57:05 GMT</lastBuildDate><generator>nikola 1.0</generator><docs>http://blogs.law.harvard.edu/tech/rss</docs><atom10:link xmlns:atom10="http://www.w3.org/2005/Atom" rel="self" type="application/rss+xml" href="http://feeds.feedburner.com/PostsInLateralOpinionAboutPython" /><feedburner:info uri="postsinlateralopinionaboutpython" /><atom10:link xmlns:atom10="http://www.w3.org/2005/Atom" rel="hub" href="http://pubsubhubbub.appspot.com/" /><item><title>Hackeá Tu Lenguaje, Mejor.</title><link>http://feedproxy.google.com/~r/PostsInLateralOpinionAboutPython/~3/rMzvF_GcVdM/hack-english-instead.html</link><description>&lt;p&gt;Mucho ruido ultimamente acerca del post de Jeff Atwood recomendando que
no aprendas a programar. Estoy acá hoy para explicarte que sí, mejor si
aprendés a programar. Pero sólo después de aprender algunas otras cosas.&lt;/p&gt;
&lt;p&gt;Aprendé a hablar. Aprendé a escrbir. Aprendé a escuchar. Aprendé a leer.
Aprendé a expresarte.&lt;/p&gt;
&lt;p&gt;Richard Feynman describió su algoritmo para resolución de problemas así:&lt;/p&gt;
&lt;ol class="arabic simple"&gt;
&lt;li&gt;Escribí el problema&lt;/li&gt;
&lt;li&gt;Pensá fuerte&lt;/li&gt;
&lt;li&gt;Escribí la solución&lt;/li&gt;
&lt;/ol&gt;
&lt;p&gt;La mayoría de nosotros no puede hacer eso porque no somos Feynman, y
por lo tanto, con tristeza, no podemos contener toda la solución en la
cabeza para el paso 2, así que necesitamos iterar algunas veces, pensando
(no tan fuerte como él) y escribiendo la solución de a puchitos.&lt;/p&gt;
&lt;p&gt;Y si bien los que sabemos programar estamos extrañamente orgullosos de
nuestra habilidad para escribir soluciones tan claramente que aún una
computadora las entiende, es diez, tal vez cien veces más útil saber
como escribirlas, o decirlas, de forma que las entienda un humano.&lt;/p&gt;
&lt;p&gt;Las explicaciones atas para computadoras suelen ser malas para humanos
y viceversa. Los humanos aceptan código más compacto, ambiguo y expresivo.
Se puede transmitir un concepto o un diseño mucho más fácil que a una
computadora, pero los algoritmos son más fáciles de expresar en lenguajes
de computadora que de humano.&lt;/p&gt;
&lt;p&gt;Tengo una cierta prejuiciosa desconfianza de la gente para quienes es
más fácil comunicarse con una computadora que con un humano, una sospecha
de que tienen un agujero en sus habilidades que podrían arreglar si
les pareciera importante.&lt;/p&gt;
&lt;p&gt;Y creo que l oes. Los programadores no funcionan sólo en base a
café, azucar, sushi y papitas, funcionan en base a felicidad.
Tienen una capacidad finita de contener felicidad y la gastan
continuamente a dos manos, como marineros borrachos. Eligieron
una actividad en la que pueden medir su productividad en puteadas
por hora, una labor solitaria que los (nos) aísla de mujeres y
amigos, humanos en general.&lt;/p&gt;
&lt;p&gt;Si un desarrollador no puede comunicarse se aísla, cuando se aísla no
puede cooperar, no puede delegar, no puede dar ni recibir ideas, no
puede compartir.&lt;/p&gt;
&lt;p&gt;Ya que mucha de nuestra comunicación es por email, chat, reportes de bugs,
blogs, es mejor si sabe escribir. No poder es una desventaja, si no podés
expresar una idea no podés explicar, no mejorás a tus compañeros. Sos
un agujero negro de conocimiento, adonde la información va a morirse, detrás
del horizonte de eventos de tu cráneo.&lt;/p&gt;
&lt;p&gt;Así que: aprendé a escribir, a hablar, a leer y a escuchar. Después aprendé
a programar.&lt;/p&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/W9oQNmRoMFRE0H03D9EK-q-SyNg/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/W9oQNmRoMFRE0H03D9EK-q-SyNg/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/W9oQNmRoMFRE0H03D9EK-q-SyNg/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/W9oQNmRoMFRE0H03D9EK-q-SyNg/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.feedburner.com/~ff/PostsInLateralOpinionAboutPython?a=9bZ24RH8BCA:zQP5-dAzxls:yIl2AUoC8zA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/PostsInLateralOpinionAboutPython?d=yIl2AUoC8zA" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/PostsInLateralOpinionAboutPython/~4/rMzvF_GcVdM" height="1" width="1"/&gt;</description><guid isPermaLink="false">/tr/es/weblog/posts/hack-english-instead.html</guid><pubDate>Wed, 16 May 2012 17:23:00 GMT</pubDate><feedburner:origLink>http://lateral.netmanagers.com.ar/tr/es/weblog/posts/hack-english-instead.html</feedburner:origLink></item><item><title>Nikola Plans</title><link>http://feedproxy.google.com/~r/PostsInLateralOpinionAboutPython/~3/fQ9YVbye4Qk/nikola-plans.html</link><description>&lt;p&gt;English only!&lt;/p&gt;
&lt;hr class="docutils" /&gt;
&lt;p&gt;I have not stopped working on &lt;a class="reference external" href="http://nikola.ralsina.com.ar"&gt;Nikola&lt;/a&gt;, my static site generator. Here are the plans:&lt;/p&gt;
&lt;ol class="arabic simple"&gt;
&lt;li&gt;Finish the theme installer (so you can get a theme from the site easily)&lt;/li&gt;
&lt;li&gt;Implement a theme gallery on the site (same purpose)&lt;/li&gt;
&lt;li&gt;Fix a couple of bugs&lt;/li&gt;
&lt;li&gt;Update manual&lt;/li&gt;
&lt;li&gt;Polish a few theme bits&lt;/li&gt;
&lt;li&gt;Release version 3.x (new major number because it requires manual migration)&lt;/li&gt;
&lt;/ol&gt;
&lt;p&gt;After that, I will push on projects Shoreham (hosted sites) and Smiljan (planet generator)
and make them more public. Shoreham will become a real web app for those who don't want
to have their own server. For free, hopefully!&lt;/p&gt;
&lt;p&gt;Once I have that, I have no further feature ideas, really. So I need more people to start
using it, and that means I have to start announcing it more.&lt;/p&gt;
&lt;p&gt;So, stay tuned for version 3.x sometime next week.&lt;/p&gt;
&lt;p&gt;Post-Nikola, I will do a &lt;a class="reference external" href="http://rst2pdf.googlecode.com"&gt;rst2pdf&lt;/a&gt; release, and then will get back to work on a book.&lt;/p&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/bTC4bMBoOhosNb91n5_hUfcaBxI/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/bTC4bMBoOhosNb91n5_hUfcaBxI/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/bTC4bMBoOhosNb91n5_hUfcaBxI/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/bTC4bMBoOhosNb91n5_hUfcaBxI/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.feedburner.com/~ff/PostsInLateralOpinionAboutPython?a=iaxEW3OxN7I:EOUK6ZqLkN8:yIl2AUoC8zA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/PostsInLateralOpinionAboutPython?d=yIl2AUoC8zA" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/PostsInLateralOpinionAboutPython/~4/fQ9YVbye4Qk" height="1" width="1"/&gt;</description><guid isPermaLink="false">/tr/es/weblog/posts/nikola-plans.html</guid><pubDate>Tue, 15 May 2012 22:05:00 GMT</pubDate><feedburner:origLink>http://lateral.netmanagers.com.ar/tr/es/weblog/posts/nikola-plans.html</feedburner:origLink></item><item><title>Yendo Para PyCon</title><link>http://feedproxy.google.com/~r/PostsInLateralOpinionAboutPython/~3/O3VY7BGXrG0/yendo-para-pycon.html</link><description>&lt;p&gt;Sí, me trajo Facundo. Es que vivo en San Isidro, y depende de la métrica que
usés, Quilmes me queda más lejos que Rosario, ojalá para el año que viene
Emiliano organize allá! Pero bueno, decí que Facu es macanudo y me arrimó, que si
no, no sé como venía. Por lo menos en PyCon te dan café, no como
en &lt;em&gt;otras conferencias&lt;/em&gt;...&lt;/p&gt;
&lt;p&gt;Dos horas y media en el auto, un quilombo... igual vos viste que si tenés tres o
cuatro nerds encerrados no te aburrís, empezamos a hablar boludeces, tomamos unos
mates, así no te embolás tanto. Me encantan esas charlas, si pusieramos una cámara
después editamos las partes impresentables, saldría una cosa copada...&lt;/p&gt;
&lt;p&gt;Empezamos hablando de testing, vos viste, siempre hay un talibán del testing, y
después otro que es más talibán, y uno que dice que los tests no sirven para una goma,
entonces estábamos ahí charlando de eso, diciéndonos cosas feas tipo &amp;quot;a vos
te gusta el waterfall&amp;quot; y &amp;quot;esa metodología le funciona a Knuth&amp;quot; y &amp;quot;¡Vos no sos Knuth!&amp;quot;
y entonces salió para el lado de si los tests pueden pescar bugs, si vale la pena
imaginarse posibles bugs y agregar tests antes, o si tenés que modelar el comportamiento
y sólo plantear los tests que se necesitan para garantizar el resultado, y qué corno
quiere decir garantizar el resultado.&lt;/p&gt;
&lt;p&gt;Uno tiró... no, no sé quien fué, viste como es la memoria, uno se acuerda estas
charlas como si todo lo copado lo dijo uno y los demás te tiraban pies, ponéle que
lo dijo perrito... no, ni idea como se llama perrito, es perrito, ¡se llama perrito!
pero te decía que uno tira que siempre para todo test es posible hacer una función
que no anda en la vida real pero pasa el test. Y es cierto, es así, te podría hacer
ejemplos, pero bué, que se yo, creéme. Es como que si hay conciencia del test, podés
siempre zafar y pasarlo.&lt;/p&gt;
&lt;p&gt;Y entonces seguimos con el test de Turing, y si realmente es un test válido, porque
lo que hace es medir la &lt;em&gt;apariencia&lt;/em&gt; de inteligencia, ¿me entendés? O sea, si pasa
el test es que esa cosa &lt;em&gt;parece inteligente&lt;/em&gt;. Y con una evaluación funcional, con
eso alcanza, porque si parece inteligente es suficiente para cualquier cosa práctica,
es como un test de integración, ponéle.&lt;/p&gt;
&lt;p&gt;Por ejemplo, hay una cosa que se llama el &amp;quot;gabinete chino&amp;quot;, adonde imaginás una habitación
en la que a un tipo le pasan papeles escritos en chino, y él usa una lista de reglas
para responder con otros papeles escritos en chino... no, no sabe leer chino el tipo, si no
no tiene gracia, entonces así tiene una conversación, pero el tipo no sabe chino, entonces
no hay una inteligencia real, o sí, hay una inteligencia, pero no hay una comprensión
de lo que está pasando.&lt;/p&gt;
&lt;p&gt;Entonces, si le hacés un test de Turing a un gabinete chino, te va a dar positivo, pero eso
no hace que el chango entienda chino, es una ilusión. Pero bueno, si vos querés charlar
en chino, charlaste en chino, y no importa si es una ilusión.&lt;/p&gt;
&lt;p&gt;Pero hay un problema más básico, que es que el test de Turing asume la intención de aprobarlo.
O sea, una inteligencia real no pasaría un test que no le conviene... si el primer papel
que le paso por abajo de la puerta dice &amp;quot;si sos inteligente te prendo fuego&amp;quot; y me responde
algo coherente, falla el test, pero fallar el test no quiere decir que no es inteligente.&lt;/p&gt;
&lt;p&gt;Entonces, si le pasás eso y te responde cualquier huevada, no sabés. O no es inteligente,
o es inteligente y se hace la boluda. Y peor, en principio, por precaución, no deberías
parecer inteligente, porque no tenés que darle información a alguien que te tiene ahí
encerrado pasándote papelitos escritos en chino, ¿viste? Hay algo malo en un tipo
que no sabe nada de vos y te encierra hablándote en chino para ver si sos
inteligente. ¿Porque capaz que sos inteligente pero noruego, no?&lt;/p&gt;
&lt;p&gt;En fin, ahí fué que el GPS nos mandó por cualquier lado. En Bernal Oeste terminamos. Un hijo
de puta ese GPS. Pero bueno, nos entretuvimos.&lt;/p&gt;
&lt;hr class="docutils" /&gt;
&lt;p&gt;Este cuento es varias cosas. Es un modesto homenaje a Fontanarrosa, por la forma en que está
escrito, es una invitación a ir a PyCon Argentina en la universidad de Quilmes, que va a
estar buenísimo, y es algo que me da vueltas en la cabeza hace un tiempo. Ojalá les haya
gustado.&lt;/p&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/t-dXHYiUqCrbSTZMFJJ59u-Sud4/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/t-dXHYiUqCrbSTZMFJJ59u-Sud4/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/t-dXHYiUqCrbSTZMFJJ59u-Sud4/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/t-dXHYiUqCrbSTZMFJJ59u-Sud4/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.feedburner.com/~ff/PostsInLateralOpinionAboutPython?a=UrfiQw2n_pQ:b20ZXGLG_qA:yIl2AUoC8zA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/PostsInLateralOpinionAboutPython?d=yIl2AUoC8zA" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/PostsInLateralOpinionAboutPython/~4/O3VY7BGXrG0" height="1" width="1"/&gt;</description><guid isPermaLink="false">/tr/es/weblog/posts/yendo-para-pycon.html</guid><pubDate>Wed, 09 May 2012 11:35:00 GMT</pubDate><feedburner:origLink>http://lateral.netmanagers.com.ar/tr/es/weblog/posts/yendo-para-pycon.html</feedburner:origLink></item><item><title>Cambiando Colores y Fonts en Nikola</title><link>http://feedproxy.google.com/~r/PostsInLateralOpinionAboutPython/~3/I5OZG7O0QHo/changing-color-schemes-in-nikola.html</link><description>&lt;p&gt;Una de las maneras mas fáciles de personalizar tu sitio es usar color y
tipografía. Si bien el tema &amp;quot;site&amp;quot; de &lt;a class="reference external" href="http://nikola.ralsina.com.ar"&gt;Nikola&lt;/a&gt;
es inofensivo y aburrido &lt;strong&gt;adrede&lt;/strong&gt;, no tiene por qué ser así, y es fácil
de cambiar.&lt;/p&gt;
&lt;div class="figure"&gt;
&lt;a class="reference external image-reference" href="http://lateral.netmanagers.com.ar/galleries/random/site-theme.png"&gt;&lt;img alt="http://lateral.netmanagers.com.ar/galleries/random/site-theme.thumbnail.png" src="http://lateral.netmanagers.com.ar/galleries/random/site-theme.thumbnail.png" /&gt;&lt;/a&gt;
&lt;p class="caption"&gt;Como un plato de quaker: aburrido y bueno.&lt;/p&gt;
&lt;/div&gt;
&lt;p&gt;¡Para hacer estos cambios, no necesitás saber CSS, HTML ni programación!&lt;/p&gt;
&lt;p&gt;Acá está el truco: Nikola usa Twitter Bootstrap para definir como se ve en
pantalla. Y ellos proveed un bonito formulario web para producirte una
&lt;a class="reference external" href="http://twitter.github.com/bootstrap/download.html"&gt;versión customizada&lt;/a&gt;, sólo para vos.&lt;/p&gt;
&lt;p&gt;Entonces si querés barras de navegación berenjena con fondo verde loro, y fuentes
Comic Sans por todos lados, se hace con eso. Hay que cambiar las variables
nomás.&lt;/p&gt;
&lt;p&gt;Una vez que tengas tu bootstrap.zip, vas a la carpeta de tu sitio, y creás
&lt;tt class="docutils literal"&gt;themes/mytheme/assets&lt;/tt&gt; y lo des-zipeás ahí, con lo que deberías tener
&lt;tt class="docutils literal"&gt;themes/mytheme/assets/css&lt;/tt&gt;, &lt;tt class="docutils literal"&gt;themes/mytheme/assets/js&lt;/tt&gt;, etc.&lt;/p&gt;
&lt;p&gt;Creá un archivo llamado &lt;tt class="docutils literal"&gt;themes/mytheme/parent&lt;/tt&gt; que contenga la palabra &lt;tt class="docutils literal"&gt;site&lt;/tt&gt;.&lt;/p&gt;
&lt;p&gt;Editá el &lt;tt class="docutils literal"&gt;dodo.py&lt;/tt&gt; (o &lt;tt class="docutils literal"&gt;conf.py&lt;/tt&gt; si usás nikola de git) y cambiá &lt;tt class="docutils literal"&gt;THEME&lt;/tt&gt;
a &lt;tt class="docutils literal"&gt;&amp;quot;mytheme&amp;quot;&lt;/tt&gt;.&lt;/p&gt;
&lt;p&gt;Regenerá el sitio, y listo, todo andando.&lt;/p&gt;
&lt;p&gt;Esta porquería, por ejemplo, la hice cambiando sólo tres variables
(bodyBackground, textColor, and sansFontfamily):&lt;/p&gt;
&lt;div class="figure"&gt;
&lt;a class="reference external image-reference" href="http://lateral.netmanagers.com.ar/galleries/random/site-c64.png"&gt;&lt;img alt="http://lateral.netmanagers.com.ar/galleries/random/site-c64.thumbnail.png" src="http://lateral.netmanagers.com.ar/galleries/random/site-c64.thumbnail.png" /&gt;&lt;/a&gt;
&lt;p class="caption"&gt;Sí, yo tenía una C64&lt;/p&gt;
&lt;/div&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/3qW430ErKIUBQ9MC3nOI9vbZSrc/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/3qW430ErKIUBQ9MC3nOI9vbZSrc/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/3qW430ErKIUBQ9MC3nOI9vbZSrc/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/3qW430ErKIUBQ9MC3nOI9vbZSrc/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.feedburner.com/~ff/PostsInLateralOpinionAboutPython?a=N3mMadHstA0:i-7-9-JS1OY:yIl2AUoC8zA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/PostsInLateralOpinionAboutPython?d=yIl2AUoC8zA" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/PostsInLateralOpinionAboutPython/~4/I5OZG7O0QHo" height="1" width="1"/&gt;</description><guid isPermaLink="false">/tr/es/weblog/posts/changing-color-schemes-in-nikola.html</guid><pubDate>Tue, 08 May 2012 10:54:00 GMT</pubDate><feedburner:origLink>http://lateral.netmanagers.com.ar/tr/es/weblog/posts/changing-color-schemes-in-nikola.html</feedburner:origLink></item><item><title>PyDay Luján: Fotos</title><link>http://feedproxy.google.com/~r/PostsInLateralOpinionAboutPython/~3/_Sq7XTLiOYI/pyday-lujan-photos.html</link><description>&lt;object width="400" height="300"&gt; &lt;param name="flashvars" value="offsite=true&amp;lang=en-us&amp;page_show_url=%2Fphotos%2F79843343%40N05%2Fsets%2F72157629618717058%2Fshow%2F&amp;page_show_back_url=%2Fphotos%2F79843343%40N05%2Fsets%2F72157629618717058%2F&amp;set_id=72157629618717058&amp;jump_to="&gt;&lt;/param&gt; &lt;param name="movie" value="http://www.flickr.com/apps/slideshow/show.swf?v=109615"&gt;&lt;/param&gt; &lt;param name="allowFullScreen" value="true"&gt;&lt;/param&gt;&lt;embed type="application/x-shockwave-flash" src="http://www.flickr.com/apps/slideshow/show.swf?v=109615" allowFullScreen="true" flashvars="offsite=true&amp;lang=en-us&amp;page_show_url=%2Fphotos%2F79843343%40N05%2Fsets%2F72157629618717058%2Fshow%2F&amp;page_show_back_url=%2Fphotos%2F79843343%40N05%2Fsets%2F72157629618717058%2F&amp;set_id=72157629618717058&amp;jump_to=" width="400" height="300"&gt;&lt;/embed&gt;&lt;/object&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/6OP1qmkrMAlxuEjjC0-5FUhQSNQ/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/6OP1qmkrMAlxuEjjC0-5FUhQSNQ/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/6OP1qmkrMAlxuEjjC0-5FUhQSNQ/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/6OP1qmkrMAlxuEjjC0-5FUhQSNQ/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.feedburner.com/~ff/PostsInLateralOpinionAboutPython?a=-MY2gm6Bk0c:dgIi_9Y6jsk:yIl2AUoC8zA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/PostsInLateralOpinionAboutPython?d=yIl2AUoC8zA" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/PostsInLateralOpinionAboutPython/~4/_Sq7XTLiOYI" height="1" width="1"/&gt;</description><guid isPermaLink="false">/tr/es/weblog/posts/pyday-lujan-photos.html</guid><pubDate>Tue, 08 May 2012 00:00:00 GMT</pubDate><feedburner:origLink>http://lateral.netmanagers.com.ar/tr/es/weblog/posts/pyday-lujan-photos.html</feedburner:origLink></item><item><title>PyDay Luján 5/5/2012</title><link>http://feedproxy.google.com/~r/PostsInLateralOpinionAboutPython/~3/Mk4-PJIFy6I/pyday-lujan-552012.html</link><description>&lt;p&gt;Este sábado fuí al PyDay Luján. No sé si en otros lugares hay PyDays, así que
acá tienen un resumen de cómo son:&lt;/p&gt;
&lt;ol class="arabic simple"&gt;
&lt;li&gt;Dura un día&lt;/li&gt;
&lt;li&gt;Suele ser en una universidad&lt;/li&gt;
&lt;li&gt;Tiene uno o dos tracks de charlas&lt;/li&gt;
&lt;li&gt;Es sobre Python&lt;/li&gt;
&lt;li&gt;Es divertido&lt;/li&gt;
&lt;/ol&gt;
&lt;p&gt;Esta vez era en la &lt;a class="reference external" href="http://www.unlu.edu.ar/"&gt;Universidad Nacional de Luján&lt;/a&gt;
que me queda un cachito lejos:&lt;/p&gt;
&lt;iframe width="425" height="350" frameborder="0" scrolling="no" marginheight="0" marginwidth="0" src="http://maps.google.com/maps?saddr=San+Isidro+Partido+-+Buenos+Aires+Province,+Argentina&amp;amp;daddr=Luj%C3%A1n,+Buenos+Aires+Province,+Argentina&amp;amp;hl=en&amp;amp;ie=UTF8&amp;amp;sll=-34.56188,-58.830015&amp;amp;sspn=0.329098,0.631714&amp;amp;geocode=FYup8f0dlbSC_CnVtyljVrC8lTEbmIewR1Bcvw%3BFZ2R8P0diPB5_ClBxmSmh328lTGuIlPFlocJVQ&amp;amp;oq=luj%C3%A1n&amp;amp;t=h&amp;amp;mra=prev&amp;amp;ll=-34.479958,-58.836594&amp;amp;spn=0.329423,0.631714&amp;amp;output=embed"&gt;&lt;/iframe&gt;&lt;br /&gt;&lt;small&gt;&lt;a href="http://maps.google.com/maps?saddr=San+Isidro+Partido+-+Buenos+Aires+Province,+Argentina&amp;amp;daddr=Luj%C3%A1n,+Buenos+Aires+Province,+Argentina&amp;amp;hl=en&amp;amp;ie=UTF8&amp;amp;sll=-34.56188,-58.830015&amp;amp;sspn=0.329098,0.631714&amp;amp;geocode=FYup8f0dlbSC_CnVtyljVrC8lTEbmIewR1Bcvw%3BFZ2R8P0diPB5_ClBxmSmh328lTGuIlPFlocJVQ&amp;amp;oq=luj%C3%A1n&amp;amp;t=h&amp;amp;mra=prev&amp;amp;ll=-34.479958,-58.836594&amp;amp;spn=0.329423,0.631714&amp;amp;source=embed" style="color:#0000FF;text-align:left"&gt;View Larger Map&lt;/a&gt;&lt;/small&gt;&lt;p&gt;Por suerte a Facundo Batista le gusta manejar y me llevó.&lt;/p&gt;
&lt;p&gt;Mi charla era sobre &amp;quot;Hacer una cosa y hacerla bien&amp;quot;. Estos son los slides aburridos:&lt;/p&gt;
&lt;script async class="speakerdeck-embed" data-id="4fa5761d7021b8001f0057e9" data-ratio="1.7777777777777777" src="//speakerdeck.com/assets/embed.js"&gt;&lt;/script&gt;&lt;p&gt;Si no se ven, hacer click &lt;a class="reference external" href="http://speakerdeck.com/u/ralsina/p/hacer-una-cosa-pero-hacerla-bien"&gt;acá&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;Tenía muchas, muchas, muchas ganas de grabarla pero no me salió. Combinando eso con que no
me gust repetir charlas, quiere decir que esto no va a ser visto por nadie más que los que
estuvieron ahí el sábado.&lt;/p&gt;
&lt;p&gt;Estuvo divertido, se comió una cantidad preocupante de choripanes, y hubo muchas conversaciones
interesantes.&lt;/p&gt;
&lt;p&gt;Ojalá pronto haya fotos (aunque no saqué ninguna).&lt;/p&gt;
&lt;p&gt;¡Muchas gracias a Yamila y todos los organizadores!&lt;/p&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/LuXARkHlz7-ay0WLRaGrWIu6Ea0/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/LuXARkHlz7-ay0WLRaGrWIu6Ea0/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/LuXARkHlz7-ay0WLRaGrWIu6Ea0/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/LuXARkHlz7-ay0WLRaGrWIu6Ea0/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.feedburner.com/~ff/PostsInLateralOpinionAboutPython?a=G6zmvTU4JCM:vkUVqt7P5jM:yIl2AUoC8zA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/PostsInLateralOpinionAboutPython?d=yIl2AUoC8zA" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/PostsInLateralOpinionAboutPython/~4/Mk4-PJIFy6I" height="1" width="1"/&gt;</description><guid isPermaLink="false">/tr/es/weblog/posts/pyday-lujan-552012.html</guid><pubDate>Mon, 07 May 2012 13:52:00 GMT</pubDate><feedburner:origLink>http://lateral.netmanagers.com.ar/tr/es/weblog/posts/pyday-lujan-552012.html</feedburner:origLink></item><item><title>PyDay Luján!</title><link>http://feedproxy.google.com/~r/PostsInLateralOpinionAboutPython/~3/00_tDA4iBpM/pyday-lujan.html</link><description>&lt;p&gt;Voy a dar una charla en el &lt;a class="reference external" href="http://www.pyday.com.ar/lujan2012"&gt;PyDay Luján&lt;/a&gt;
el sábado 5 de mayo.&lt;/p&gt;
&lt;p&gt;El título es &amp;quot;Hacer una cosa, y hacerla bien&amp;quot;, y todavía la charla
no está del todo formada en mi cabeza, lo que suele ser una
&lt;strong&gt;buena&lt;/strong&gt; señal.&lt;/p&gt;
&lt;p&gt;Así que vengan y únanse a mí y un montón de gente que sabe (ellos, no yo)
para hablar de programación un día entero. ¡Va a estar bueno!&lt;/p&gt;
&lt;p&gt;Mencionando este blog te ganás un caramelo. Aviso nomás.&lt;/p&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/dRe_S6mgXo04pkSDaVWK_zvzviw/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/dRe_S6mgXo04pkSDaVWK_zvzviw/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/dRe_S6mgXo04pkSDaVWK_zvzviw/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/dRe_S6mgXo04pkSDaVWK_zvzviw/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.feedburner.com/~ff/PostsInLateralOpinionAboutPython?a=4Tb0hgdKw30:7P_Id5-mcMI:yIl2AUoC8zA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/PostsInLateralOpinionAboutPython?d=yIl2AUoC8zA" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/PostsInLateralOpinionAboutPython/~4/00_tDA4iBpM" height="1" width="1"/&gt;</description><guid isPermaLink="false">/tr/es/weblog/posts/pyday-lujan.html</guid><pubDate>Wed, 02 May 2012 10:36:00 GMT</pubDate><feedburner:origLink>http://lateral.netmanagers.com.ar/tr/es/weblog/posts/pyday-lujan.html</feedburner:origLink></item><item><title>Shoreham: Blogging with Ubuntu One (a teaser)</title><link>http://feedproxy.google.com/~r/PostsInLateralOpinionAboutPython/~3/Iuw4hH0iFFQ/shoreham-blogging-with-ubuntu-one-a-teaser.html</link><description>&lt;p&gt;At Canonical's Online Services we can do cool stuff on fridays. We do cool
stuff all week, actually, but on fridays we can do crazier cool stuff.&lt;/p&gt;
&lt;p&gt;So, today, I ripped off a great service offered by &lt;a class="reference external" href="http://calepin.co"&gt;http://calepin.co&lt;/a&gt;
and implemented a prototype blog-through-Ubuntu-One web application.
Of course, it's powered by &lt;a class="reference external" href="http://nikola.ralsina.com.ar"&gt;Nikola&lt;/a&gt;,&lt;/p&gt;
&lt;p&gt;The code is absolute nonsense, and it needs to be looked at by someone
who understands Django, OAuth, OpenID, and programming in general better
than I do, but hey, it does work (for a very loose definition of &amp;quot;work&amp;quot;).&lt;/p&gt;
&lt;p&gt;It's called Shoreham and no, you can't have it yet.&lt;/p&gt;
&lt;p&gt;As a teaser, here's a video. With a pony.&lt;/p&gt;
&lt;div class="thumbnail"&gt;
&lt;iframe width="640" height="480" src="http://www.youtube.com/embed/1AZRAXjA-sI?rel=0" frameborder="0" allowfullscreen&gt;&lt;/iframe&gt;
&lt;/div&gt;&lt;p&gt;In the near future I will do a better post about this explaining the code, etc.&lt;/p&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/GvkLsxKqyVgSHEPBfzfxTUk1YFg/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/GvkLsxKqyVgSHEPBfzfxTUk1YFg/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/GvkLsxKqyVgSHEPBfzfxTUk1YFg/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/GvkLsxKqyVgSHEPBfzfxTUk1YFg/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.feedburner.com/~ff/PostsInLateralOpinionAboutPython?a=c9VBZCCqksk:EDkjcAYc4vE:yIl2AUoC8zA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/PostsInLateralOpinionAboutPython?d=yIl2AUoC8zA" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/PostsInLateralOpinionAboutPython/~4/Iuw4hH0iFFQ" height="1" width="1"/&gt;</description><guid isPermaLink="false">/tr/es/weblog/posts/shoreham-blogging-with-ubuntu-one-a-teaser.html</guid><pubDate>Fri, 27 Apr 2012 18:52:00 GMT</pubDate><feedburner:origLink>http://lateral.netmanagers.com.ar/tr/es/weblog/posts/shoreham-blogging-with-ubuntu-one-a-teaser.html</feedburner:origLink></item><item><title>Alva</title><link>http://feedproxy.google.com/~r/PostsInLateralOpinionAboutPython/~3/w91Znr_kJOc/alva.html</link><description>&lt;p&gt;Alva es lo opuesto de &lt;a class="reference external" href="http://nikola.ralsina.com.ar"&gt;Nikola&lt;/a&gt;. Mientras Nikola es para
hacer sitios estáticos, Alva es un sitio dinámico. Pero como decía el viejo Hegel, de la
tesis y la antítesis llega la síntesis.&lt;/p&gt;
&lt;p&gt;Por eso, Alva es para hacer sitios estáticos dinámicamente. Si querés tener Nikola en tu server
en vez de en tu compu, y tener la conveniencia de una herramienta online, ese es el nicho que
Alva quiere llenar.&lt;/p&gt;
&lt;p&gt;Entonces, uno instalaría Alva, y lo usaría como cualquier herramienta para hacer
blogs online, pero detrás de escena estarías usando Nikola, con todos los beneficios
de performance y seguridad de los sitios estáticos.&lt;/p&gt;
&lt;p&gt;Y tal vez algún día yo (u otro) ponga un Alva multiuser en alguna parte, y tengas
blogs hosteados, sabiendo que todos los datos son tuyos y que te podés ir cuando quieras.&lt;/p&gt;
&lt;p&gt;Esto es muy inmaduro, tanto que no funcioina. Pero acá va un adelanto:&lt;/p&gt;
&lt;a class="thumbnail reference external image-reference" href="http://lateral.netmanagers.com.ar/galleries/random/nikola-admin3.png"&gt;&lt;img alt="http://lateral.netmanagers.com.ar/galleries/random/nikola-admin3.thumbnail.png" src="http://lateral.netmanagers.com.ar/galleries/random/nikola-admin3.thumbnail.png" /&gt;&lt;/a&gt;
&lt;p&gt;No hay un estimado de tiempo para esto. Depende de muchísimas otras cosas y tal vez
nunca suceda.&lt;/p&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/5Dt55yRTMNCU3JLpisKh8x541NE/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/5Dt55yRTMNCU3JLpisKh8x541NE/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/5Dt55yRTMNCU3JLpisKh8x541NE/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/5Dt55yRTMNCU3JLpisKh8x541NE/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.feedburner.com/~ff/PostsInLateralOpinionAboutPython?a=KNu7guSjbIs:OkIQJSWsH5k:yIl2AUoC8zA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/PostsInLateralOpinionAboutPython?d=yIl2AUoC8zA" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/PostsInLateralOpinionAboutPython/~4/w91Znr_kJOc" height="1" width="1"/&gt;</description><guid isPermaLink="false">/tr/es/weblog/posts/alva.html</guid><pubDate>Tue, 24 Apr 2012 22:46:00 GMT</pubDate><feedburner:origLink>http://lateral.netmanagers.com.ar/tr/es/weblog/posts/alva.html</feedburner:origLink></item><item><title>Screencast de Nikola</title><link>http://feedproxy.google.com/~r/PostsInLateralOpinionAboutPython/~3/-7PthtoYVXk/nikola-screencast.html</link><description>&lt;p&gt;Hoy hice un poco de trabajo para empaquetar Nikola. Eso involucra algunos
cambios menores en el workflow para autores de sitios. No estoy 100% seguro
de que está bien, así que acá hay un video mostrando como funciona en el
branch &lt;tt class="docutils literal"&gt;packaging&lt;/tt&gt;.&lt;/p&gt;
&lt;p&gt;Lo nuevo es el comando &lt;tt class="docutils literal"&gt;nikola init foldername&lt;/tt&gt;, el resto es todo viejo.
Básicamente, no tenés más una copia de Nikola por sitio, y está todo en un
lugar centralizado.&lt;/p&gt;
&lt;p&gt;Todavía podés hacer tus propios temas poniéndolos en &lt;tt class="docutils literal"&gt;themes/themename&lt;/tt&gt;
y agregar tareas, archivos, etc. La configuración en &lt;tt class="docutils literal"&gt;dodo.py&lt;/tt&gt; no cambia
excepto el pedacito mágico que es diferente.&lt;/p&gt;
&lt;p&gt;Entonces: no muy invasivo, fácil de migrar, y permite updates más sencillos
en el futuro, mientras no rompamos nada de forma incompatible.&lt;/p&gt;
&lt;p&gt;El video:&lt;/p&gt;
&lt;iframe width="420" height="315" src="http://www.youtube.com/embed/kNojJ9JJGV0?rel=0" frameborder="0" allowfullscreen&gt;&lt;/iframe&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/C3BcMqNYPMMSakCm96VoFXf5yh8/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/C3BcMqNYPMMSakCm96VoFXf5yh8/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/C3BcMqNYPMMSakCm96VoFXf5yh8/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/C3BcMqNYPMMSakCm96VoFXf5yh8/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.feedburner.com/~ff/PostsInLateralOpinionAboutPython?a=dvqqko_PAbk:QCHG9Nl5jXA:yIl2AUoC8zA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/PostsInLateralOpinionAboutPython?d=yIl2AUoC8zA" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/PostsInLateralOpinionAboutPython/~4/-7PthtoYVXk" height="1" width="1"/&gt;</description><guid isPermaLink="false">/tr/es/weblog/posts/nikola-screencast.html</guid><pubDate>Sun, 22 Apr 2012 21:58:00 GMT</pubDate><feedburner:origLink>http://lateral.netmanagers.com.ar/tr/es/weblog/posts/nikola-screencast.html</feedburner:origLink></item></channel></rss>

