<?xml version="1.0" encoding="utf-8"?>
<rss version="2.0"><channel><title>Lateral Opinion</title><link>http://ralsina.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, 15 May 2013 20:11:53 GMT</lastBuildDate><generator>nikola</generator><docs>http://blogs.law.harvard.edu/tech/rss</docs><item><title>Endomondo Lied To Me</title><link>http://ralsina.com.ar/weblog/posts/endomondo-lied-to-me.html</link><description>&lt;!-- link: --&gt;
&lt;!-- description: --&gt;
&lt;!-- tags: --&gt;
&lt;!-- date: 2013/05/15 19:46:44 --&gt;
&lt;!-- title: Endomondo Lied To Me --&gt;
&lt;!-- slug: endomondo-lied-to-me --&gt;
&lt;p&gt;A week ago I re-started my diet and exercise plan. Since I am grossly overweight, the
exercise plan is basically "walk around 5km every day, fat guy". Since I am a
nerd, I wanted data so I could stop lying to myself about how much I was walking.&lt;/p&gt;
&lt;p&gt;I had seen Endomondo mentioned in my tweeter timeline a bunch of times and the featureset
looked pretty much exactly as I needed:&lt;/p&gt;
&lt;ul class="simple"&gt;
&lt;li&gt;Track my walking&lt;/li&gt;
&lt;li&gt;Keep history&lt;/li&gt;
&lt;li&gt;Show it in google maps (because it's nice)&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;It even did things like tracking calories burnt and so on.&lt;/p&gt;
&lt;p&gt;The only problem was... it really &lt;strong&gt;sucks&lt;/strong&gt; at figuring out how much you walked. It consistently
overestimates by around 50% the distances, and since it calculates the average speed based on
time and distance (and the time measurement is correct) it overestimates speed by 50%, which
then means it overestimates calories burnt by (I am guessing) 125%.&lt;/p&gt;
&lt;p&gt;How did I verify that Endomondo is wrong, and avoid the obvious explanation of "your GPS is broken"?&lt;/p&gt;
&lt;ol class="arabic simple"&gt;
&lt;li&gt;I tracked myself using Endomondo and Google Trails at the same time.&lt;/li&gt;
&lt;li&gt;I counted steps roman-mile style (count every "left-right", multiply by 1.6)&lt;/li&gt;
&lt;li&gt;I measured the path I walked in Google Maps and Bing Maps&lt;/li&gt;
&lt;/ol&gt;
&lt;p&gt;All those measurements tell me a walk of 1100m +/- 150m is measured by Endomondo as 1.68 km&lt;/p&gt;
&lt;iframe width="425" height="350" frameborder="0" scrolling="no" marginheight="0" marginwidth="0" src="https://maps.google.com/maps?f=d&amp;amp;source=s_d&amp;amp;saddr=25+de+Mayo+300,+San+Isidro,+Buenos+Aires,+Argentina&amp;amp;daddr=-34.4719353,-58.5149842+to:Av+Centenario+700,+San+Isidro,+Buenos+Aires,+Argentina&amp;amp;hl=es-419&amp;amp;geocode=FcIK8v0dqTeD_ClfbI6pNLC8lTEbBX5_uRk3FQ%3BFQEA8v0d2CGD_CkzC1umNrC8lTEoIwheov32Kw%3BFZwM8v0d0haD_CmTuBJVMLC8lTE_XZ2JL1tVRg&amp;amp;aq=&amp;amp;sll=-34.468876,-58.513591&amp;amp;sspn=0.006315,0.013078&amp;amp;t=h&amp;amp;dirflg=w&amp;amp;mra=dpe&amp;amp;mrsp=1&amp;amp;sz=17&amp;amp;via=1&amp;amp;ie=UTF8&amp;amp;ll=-34.468876,-58.513591&amp;amp;spn=0.006315,0.013078&amp;amp;output=embed"&gt;&lt;/iframe&gt;&lt;br&gt;&lt;small&gt;&lt;a href="https://maps.google.com/maps?f=d&amp;amp;source=embed&amp;amp;saddr=25+de+Mayo+300,+San+Isidro,+Buenos+Aires,+Argentina&amp;amp;daddr=-34.4719353,-58.5149842+to:Av+Centenario+700,+San+Isidro,+Buenos+Aires,+Argentina&amp;amp;hl=es-419&amp;amp;geocode=FcIK8v0dqTeD_ClfbI6pNLC8lTEbBX5_uRk3FQ%3BFQEA8v0d2CGD_CkzC1umNrC8lTEoIwheov32Kw%3BFZwM8v0d0haD_CmTuBJVMLC8lTE_XZ2JL1tVRg&amp;amp;aq=&amp;amp;sll=-34.468876,-58.513591&amp;amp;sspn=0.006315,0.013078&amp;amp;t=h&amp;amp;dirflg=w&amp;amp;mra=dpe&amp;amp;mrsp=1&amp;amp;sz=17&amp;amp;via=1&amp;amp;ie=UTF8&amp;amp;ll=-34.468876,-58.513591&amp;amp;spn=0.006315,0.013078" style="color:#0000FF;text-align:left"&gt;Ver mapa más grande&lt;/a&gt;&lt;/small&gt;&lt;p&gt;Why does this happen? I could assume Endomondo is just crap, and probably be right, but trying
to come up with a "interesting" explanation, I am leaning towards noisy measurements. For example,
if Endomondo saw my position shifting randomly 10 or 15 meters left or right it would probably add
enough noise to make the path 50% longer (for a much more fun example of this, &lt;a class="reference external" href="http://en.wikipedia.org/wiki/How_Long_Is_the_Coast_of_Britain%3F_Statistical_Self-Similarity_and_Fractional_Dimension"&gt;read this paper (by no other than Benoit Mandelbrot!)&lt;/a&gt; but this doesn't explain why Google Trails works
so much better (unless Trails does something smart with antialiasing and interpolation).&lt;/p&gt;
&lt;p&gt;If you use Endomondo, care to share your experience? I am reluctant to 1-star it in Google Play without independent confirmation.&lt;/p&gt;</description><guid>http://ralsina.com.ar/weblog/posts/endomondo-lied-to-me.html</guid><pubDate>Wed, 15 May 2013 19:46:44 GMT</pubDate></item><item><title>How I Made My Phone Useful</title><link>http://ralsina.com.ar/weblog/posts/how-i-made-my-phone-useful.html</link><description>&lt;!-- link: --&gt;
&lt;!-- description: --&gt;
&lt;!-- tags: --&gt;
&lt;!-- date: 2013/05/08 13:40:38 --&gt;
&lt;!-- title: How I Made My Phone Useful --&gt;
&lt;!-- slug: how-i-made-my-phone-useful --&gt;
&lt;p&gt;So, I got this phone on my trip to the US. It's a Galaxy SII variant called the S959G.
It's not a very common variant, and of course it was locked to a network that's unavailable here,
and comes with Android 2.3 which is ancient, so it needed some fixing.&lt;/p&gt;
&lt;p&gt;And man, the Android community is a mess about documenting stuff. So here's my shot at it.&lt;/p&gt;
&lt;p&gt;This only applies to &lt;strong&gt;THIS PHONE&lt;/strong&gt; if you go blind doing this, or your dog catches fire, not my problem.&lt;/p&gt;
&lt;hr class="docutils"&gt;
&lt;p&gt;The goal:&lt;/p&gt;
&lt;ul class="simple"&gt;
&lt;li&gt;Unlocked&lt;/li&gt;
&lt;li&gt;Rooted&lt;/li&gt;
&lt;li&gt;Newer Android&lt;/li&gt;
&lt;li&gt;Google Apps&lt;/li&gt;
&lt;li&gt;Done using Ubuntu (because I prefer it)&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;The process is a bit lengthy, but simple.&lt;/p&gt;
&lt;dl class="docutils"&gt;
&lt;dt&gt;Install heimdall&lt;/dt&gt;
&lt;dd&gt;It's in the repos, just use apt, piece of cake&lt;/dd&gt;
&lt;/dl&gt;
&lt;p&gt;Go to the &lt;a class="reference external" href="http://forum.xda-developers.com/showthread.php?t=1982571"&gt;XDA page for this phone&lt;/a&gt; because that seems to be the canonical information source.&lt;/p&gt;
&lt;p&gt;Get (from where it says "The best way to root") the CWM RECOVERY v6.0.27 file. It's called
CWM-Recovery.tar.md5 because version names are for the weak.&lt;/p&gt;
&lt;p&gt;Get the recovery.bin that's inside it using &lt;tt class="docutils literal"&gt;tar xvf &lt;span class="pre"&gt;CWM-Recovery.tar.md5&lt;/span&gt;&lt;/tt&gt;&lt;/p&gt;
&lt;p&gt;Put your phone into download mode. For this model that's done like this:&lt;/p&gt;
&lt;ul class="simple"&gt;
&lt;li&gt;Turn off&lt;/li&gt;
&lt;li&gt;Plug into USB&lt;/li&gt;
&lt;li&gt;Press Volume Up &lt;strong&gt;and&lt;/strong&gt; Volume Down (keep pressed)&lt;/li&gt;
&lt;li&gt;Press power (keep pressed)&lt;/li&gt;
&lt;li&gt;When Samsung appears on screen, let go of power button&lt;/li&gt;
&lt;li&gt;When you see a warning sign, let go of volume buttons&lt;/li&gt;
&lt;li&gt;Click Volume Up&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Flash the recovery.bin using heimdall: &lt;tt class="docutils literal"&gt;heimdall flash &lt;span class="pre"&gt;--recovery&lt;/span&gt; recovery.bin&lt;/tt&gt;&lt;/p&gt;
&lt;p&gt;Now you have to go into recovery to make backups:&lt;/p&gt;
&lt;ul class="simple"&gt;
&lt;li&gt;Turn off&lt;/li&gt;
&lt;li&gt;Unplug USB&lt;/li&gt;
&lt;li&gt;Press Volume up and down and hold&lt;/li&gt;
&lt;li&gt;Press power&lt;/li&gt;
&lt;li&gt;Let go of power when Samsung flashes&lt;/li&gt;
&lt;li&gt;There you are&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;In this mode, volume up/down move the cursor up/down and the power button chooses the selected option. Do the obvious thing to do a backup.&lt;/p&gt;
&lt;p&gt;Turn on the phone and make sure it works.&lt;/p&gt;
&lt;p&gt;Now copy the CyanogenMod zip file from XDA (or any i777 image) into the phone's SD Card somehow (drag and drop in Nautilus works ;-)&lt;/p&gt;
&lt;p&gt;Go back into recovery mode as above.&lt;/p&gt;
&lt;p&gt;Clean up the phone: Clean data, cache, and in advanced, clean dalvik cache.&lt;/p&gt;
&lt;p&gt;Install by using "Install zip from sdcard" and choosing the right one, and doing the obvious thing.&lt;/p&gt;
&lt;p&gt;Boot the phone, it should now be in CyanogenMod (yay).&lt;/p&gt;
&lt;p&gt;Try to make a phone call. If you can't and/or the phone asks for a SIM PIN, it's still locked. To unlock
I used &lt;a class="reference external" href="http://forum.xda-developers.com/showthread.php?p=10456038"&gt;this APK&lt;/a&gt; which was untested on this
model, but hey, it worked.&lt;/p&gt;
&lt;p&gt;You &lt;em&gt;may&lt;/em&gt; also need to install one of the "modem" files from XDA. Just put them in the SD card, go to recovery, and
install one, try, if it doesn't work then try another one.&lt;/p&gt;
&lt;p&gt;Get gapps-jb-20130301-signed.zip from the XDA page.&lt;/p&gt;
&lt;p&gt;Copy that into the SD card, then install from recovery mode.&lt;/p&gt;
&lt;p&gt;And that's it. If it fails, you can probably go back to something reasonable using the stock firmware that's in the same page, but I have not done it so I don't offer intructions.&lt;/p&gt;
&lt;p&gt;Good luck!&lt;/p&gt;</description><guid>http://ralsina.com.ar/weblog/posts/how-i-made-my-phone-useful.html</guid><pubDate>Wed, 08 May 2013 13:40:38 GMT</pubDate></item><item><title>A Oakland me fuí, y traje remeras</title><link>http://ralsina.com.ar/weblog/posts/a-oakland-me-fui-y-traje-remeras.html</link><description>&lt;!-- title: A Oakland me fuí, y traje remeras --&gt;
&lt;!-- description: --&gt;
&lt;!-- link: --&gt;
&lt;!-- tags: --&gt;
&lt;!-- date: 2013/05/06 16:17:34 --&gt;
&lt;!-- slug: a-oakland-me-fui-y-traje-remeras --&gt;
&lt;p&gt;Cuando te postulás en Canonical, casi siempre dice algo como "está
dispuesto a viajar internacionalmente varias veces al año". Eso es parte de
estar en una empresa donde el 90% de la gente trabaja desde la casa. Que
cuando querés verte en persona con algún grupo, el lugar más práctico puede
estar a 10341KM de distancia.&lt;/p&gt;
&lt;p&gt;Entonces hice mi valijita porque trato de nunca despachar equipaje, y me subí
al vuelo de United a Houston, donde conectaría a San Francisco, y de ahí me
tomaría el tren a Oakland. Bueno, ese era el plan.&lt;/p&gt;
&lt;p&gt;Me dí un pequeño lujo, hice upgrade a "Economy Plus", no es super caro y garantiza
que llegás con las rótulas puestas, pero no mucho más que eso.&lt;/p&gt;
&lt;p&gt;El avión a Houston era un 767 nuevito, con pantallas de 9" y enchufe USB para cargar
tus aparatitos. El asiento de adelante estaba a mas o menos un metro y medio del mío.
De hecho, con mis bracitos de cocodrilo tenía que estirarme mucho para llegar al
bolsillo de adelante. Y mi bonita pantalla individual... no funcionaba. No me registraba
los toques. El azafato muy amablemente me reseteó el sistema dos veces pero no hubo caso,
así que el asiento bárbaro, pero bueno, siempre algo sale mal en los viajes.&lt;/p&gt;
&lt;p&gt;Y hablando de que las cosas salen mal... la conexión en Houston era un poco justa de tiempo.
Y había mucha, mucha gente en migraciones, y muy muy poca gente &lt;em&gt;atendiendo&lt;/em&gt; en migraciones
así que el avión salió mientras yo estaba haciendo cola todavía.&lt;/p&gt;
&lt;p&gt;Así que me voy al mostrador, me dicen que el siguiente vuelo sale a las 3PM y llega a San
Francisco a las 5PM (por el cambio de hora). Como le digo que tengo entradas para ver
Warriors-Nuggets a las 7, el copado que me atendió me pone en standby en
&lt;em&gt;todos los vuelos a San Francisco del día&lt;/em&gt;, así apenas hubiera un asiento viajo, porque
"anything for a NBA fan, dude". Así que engancho en el primer vuelo, que SÍ es un upgrade
porque en vez de viajar en esos horrendos A310 es otro 767!&lt;/p&gt;
&lt;p&gt;Obvio, voy en la última fila (pero pasillo :-) y la pantallita anda, y me ví
&lt;a class="reference external" href="http://www.imdb.com/title/tt1758830/?ref_=sr_1"&gt;This is 40&lt;/a&gt; que está muy buena
aunque los protagonistas son increíblemente odiosos y (por tener 41) me dan ganas
de agarrarlos a trompadas para sacarlos de la nube de pedos.&lt;/p&gt;
&lt;p&gt;Como en los vuelos internos no hay morfi, me compré una "lunch box" que te venden. Los contenidos
de la mía incluían:&lt;/p&gt;
&lt;ul class="simple"&gt;
&lt;li&gt;Un pote de puré de manzana&lt;/li&gt;
&lt;li&gt;Un minipaquete de Oreo&lt;/li&gt;
&lt;li&gt;Un minipaquete de skittles&lt;/li&gt;
&lt;li&gt;Dos (2) "meat sticks sabor peperoni"&lt;/li&gt;
&lt;li&gt;Dos (2) galletitas de agua&lt;/li&gt;
&lt;li&gt;Un pote de "mediterranean tapenade"&lt;/li&gt;
&lt;li&gt;Un minipaquete de galletitas Goldfish&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Eso, obviamente es una comida balanceada. Balanceada sobre el filo de una navaja entre
"What the fuck" y "uhhhh, oreos".&lt;/p&gt;
&lt;p&gt;Sí, gané el torneo de trivia del avión y tengo foto que no publico por modestia.
A la vuelta hice mejor puntaje pero no saqué fotos porque fuí el único que jugó.&lt;/p&gt;
&lt;p&gt;Llego a San Francisco, espero los 15 minutos que necesito para despejarme del mareo que
me provoca casi cualquier medio de locomoción, y me compré un teléfono en una
máquina expendedora, un &lt;a class="reference external" href="http://www.elandroidelibre.com/2011/05/analisis-y-review-del-samsung-galaxy-s-ii-el-telefono-android-mas-esperado-del-2011.html"&gt;Samsung Galaxy SII&lt;/a&gt;
"El teléfono Android más esperado de 2011" que está lindo (todas las fotos de este post
están hechas con ese teléfono) pero parece ser una variante porque no tiene botón "Home" como veo
en las fotos de la web.&lt;/p&gt;
&lt;p&gt;Como todavía estaba intrigado/hambreado por la experiencia "lunchbox" me comí unas buffalo
wings (no hay nada que hacerle, no me gusta comer alitas, no sé para que las pedí)
y me dieron una rica sopa de almejas de yapa (viene con unas galletitas que las rompés y
las metés adentro), y un café horrible.&lt;/p&gt;
&lt;p&gt;Ante la perspectiva de una hora de tren, decidí hacerme el playboy y tomarme un taxi. Tomé varios
en este viaje, y eran: Hindú (2), Pakistaní (1), Afgano (1), Uzbeko (1), Hondureño (1).&lt;/p&gt;
&lt;p&gt;Llego al hotel (lindo, es un Marriott, son todos iguales), lo encuentro a mi compañero de
habitación Lucio Torre cometiendo crímenes contra la gardelidad con "Por una cabeza" (igual,
mejoró mucho en la semana)&lt;/p&gt;
&lt;object width="250" height="40" classid="clsid:D27CDB6E-AE6D-11cf-96B8-444553540000" id="gsSong3594206215" name="gsSong3594206215"&gt;&lt;param name="movie" value="http://grooveshark.com/songWidget.swf"&gt;&lt;param name="wmode" value="window"&gt;&lt;param name="allowScriptAccess" value="always"&gt;&lt;param name="flashvars" value="hostname=grooveshark.com&amp;amp;songID=35942062&amp;amp;style=metal&amp;amp;p=0"&gt;&lt;object type="application/x-shockwave-flash" data="http://grooveshark.com/songWidget.swf" width="250" height="40"&gt;&lt;param name="wmode" value="window"&gt;&lt;param name="allowScriptAccess" value="always"&gt;&lt;param name="flashvars" value="hostname=grooveshark.com&amp;amp;songID=35942062&amp;amp;style=metal&amp;amp;p=0"&gt;&lt;span&gt;&lt;a href="http://grooveshark.com/search/song?q=Carlos%20Gardel%20Por%20una%20cabeza" title="Por una cabeza by Carlos Gardel on Grooveshark"&gt;Por una cabeza by Carlos Gardel on Grooveshark&lt;/a&gt;&lt;/span&gt;&lt;/object&gt;&lt;/object&gt;&lt;p&gt;Nos fuimos al Starbucks a comer/tomar algo.&lt;/p&gt;
&lt;div class="figure"&gt;
&lt;a class="reference external image-reference" href="http://ralsina.com.ar/galleries/oakland-5-2013/20130428_171110.jpg"&gt;&lt;img alt="http://ralsina.com.ar/galleries/oakland-5-2013/20130428_171110.thumbnail.jpg" src="http://ralsina.com.ar/galleries/oakland-5-2013/20130428_171110.thumbnail.jpg"&gt;&lt;/a&gt;
&lt;p class="caption"&gt;Universos paralelos, donde Hellman's hace mostaza.&lt;/p&gt;
&lt;/div&gt;
&lt;p&gt;Ducha, tratar de parecer un ser humano, minisiesta, y me voy a imprimir la
entrada para el partido al "Business Center", y nunca más claro el porqué del nombre.&lt;/p&gt;
&lt;div class="figure"&gt;
&lt;a class="reference external image-reference" href="http://ralsina.com.ar/galleries/oakland-5-2013/20130428_181529.jpg"&gt;&lt;img alt="http://ralsina.com.ar/galleries/oakland-5-2013/20130428_181529.thumbnail.jpg" src="http://ralsina.com.ar/galleries/oakland-5-2013/20130428_181529.thumbnail.jpg"&gt;&lt;/a&gt;
&lt;p class="caption"&gt;¡Pagué el mínimo!&lt;/p&gt;
&lt;/div&gt;
&lt;p&gt;Llego al Oracle Arena, que es famoso por ser el estadio más ruidoso de la NBA. Entré un cachito
tarde así que me perdí la presentación de los equipos, pero bueno. &lt;em&gt;TODO&lt;/em&gt; el estadio vestido de
amarillo... porque había remeras gratis en cada asiento. Y sí, la mía estaba ahí esperándome.&lt;/p&gt;
&lt;div class="figure"&gt;
&lt;a class="reference external image-reference" href="http://ralsina.com.ar/galleries/oakland-5-2013/20130428_203418.jpg"&gt;&lt;img alt="http://ralsina.com.ar/galleries/oakland-5-2013/20130428_203418.thumbnail.jpg" src="http://ralsina.com.ar/galleries/oakland-5-2013/20130428_203418.thumbnail.jpg"&gt;&lt;/a&gt;
&lt;p class="caption"&gt;Un argentino en Oakland.&lt;/p&gt;
&lt;/div&gt;
&lt;div class="figure"&gt;
&lt;a class="reference external image-reference" href="http://ralsina.com.ar/galleries/oakland-5-2013/20130428_193207.jpg"&gt;&lt;img alt="http://ralsina.com.ar/galleries/oakland-5-2013/20130428_193207.thumbnail.jpg" src="http://ralsina.com.ar/galleries/oakland-5-2013/20130428_193207.thumbnail.jpg"&gt;&lt;/a&gt;
&lt;p class="caption"&gt;Traje 2, regalos para las mellizas Warrior!&lt;/p&gt;
&lt;/div&gt;
&lt;p&gt;El estadio está bueno, mi asiento estaba bárbaro, medio arriba como para poder ver toda la cancha,
no tan lejos que no se vea nada, cerca del pasillo para salir rápido, no en el pasillo, para que
no me joda la gente pasando todo el tiempo (perdón por el momento Sheldon). Colgando del techo
hay por supuesto una super pantalla, tableros, etc, y... dos diminutas bolas de espejos.&lt;/p&gt;
&lt;div class="figure"&gt;
&lt;a class="reference external image-reference" href="http://ralsina.com.ar/galleries/oakland-5-2013/20130428_192735.jpg"&gt;&lt;img alt="http://ralsina.com.ar/galleries/oakland-5-2013/20130428_192735.thumbnail.jpg" src="http://ralsina.com.ar/galleries/oakland-5-2013/20130428_192735.thumbnail.jpg"&gt;&lt;/a&gt;
&lt;p class="caption"&gt;WTF?&lt;/p&gt;
&lt;/div&gt;
&lt;p&gt;El partido muy bueno, el ambiente muy ruidoso, todos muy entusiasmados aunque todo con esa
artificialidad que tiene el que el tablero del centro diga que hay que gritar y todos griten
lo mismo (excepto "Ref you suck!" que es espontáneo), un groso Stephen Curry, tira desde la
casa si quiere, impresiona que hasta los que parecen lentos en la tele son rapidísimos.
Andrew Bogut en un momento estaba con las manos en las rodillas como pidiendo aire, miré para otro
lado y en 2 segundos había cruzado la cancha y volcado como un animal.&lt;/p&gt;
&lt;p&gt;Termina el partido...&lt;/p&gt;
&lt;div class="figure"&gt;
&lt;a class="reference external image-reference" href="http://ralsina.com.ar/galleries/oakland-5-2013/20130428_211720.jpg"&gt;&lt;img alt="http://ralsina.com.ar/galleries/oakland-5-2013/20130428_211720.thumbnail.jpg" src="http://ralsina.com.ar/galleries/oakland-5-2013/20130428_211720.thumbnail.jpg"&gt;&lt;/a&gt;
&lt;p class="caption"&gt;Sí, ganaron los Warriors, por paliza.&lt;/p&gt;
&lt;/div&gt;
&lt;p&gt;Salgo, encaro para el tren, y veo un taxi parado, me lleva, resulta que el tipo fue a ver
el partido y el taxi estaba estacionado nomás, pero me llevó igual porque "ten bucks is
ten bucks, man!"&lt;/p&gt;
&lt;div class="figure"&gt;
&lt;a class="reference external image-reference" href="http://ralsina.com.ar/galleries/oakland-5-2013/20130428_212722.jpg"&gt;&lt;img alt="http://ralsina.com.ar/galleries/oakland-5-2013/20130428_212722.thumbnail.jpg" src="http://ralsina.com.ar/galleries/oakland-5-2013/20130428_212722.thumbnail.jpg"&gt;&lt;/a&gt;
&lt;p class="caption"&gt;Este cartel estaba a 5 metros del pibe que me vendió la segunda remera, obviamente.&lt;/p&gt;
&lt;/div&gt;
&lt;p&gt;Vuelvo al hotel, me dió hambre, hice mi primera parada en Rosamunde Bar &amp;amp; Grill, un
lugar especializado en salchichas!&lt;/p&gt;
&lt;div class="figure"&gt;
&lt;a class="reference external image-reference" href="http://ralsina.com.ar/galleries/oakland-5-2013/20130428_220640.jpg"&gt;&lt;img alt="http://ralsina.com.ar/galleries/oakland-5-2013/20130428_220640.thumbnail.jpg" src="http://ralsina.com.ar/galleries/oakland-5-2013/20130428_220640.thumbnail.jpg"&gt;&lt;/a&gt;
&lt;p class="caption"&gt;"First time? try something basic": Beer Sausage, sauerkraut &amp;amp; hot peppers.&lt;/p&gt;
&lt;/div&gt;
&lt;p&gt;Volvimos otro día con Lucio, y casi nos morimos, pero ... muy buenas las salchichas, tienen
una docena de variedades, y son &lt;em&gt;todas&lt;/em&gt; muy ricas :-)&lt;/p&gt;
&lt;p&gt;Al día siguiente salí a pasear un poco bien temprano, porque durante el día laburamos,
resulta que el hotel está a tres cuadras de la comisaría de Oakland (o, mejor dicho, del condado
de Alameda)&lt;/p&gt;
&lt;div class="figure"&gt;
&lt;a class="reference external image-reference" href="http://ralsina.com.ar/galleries/oakland-5-2013/20130429_073956.jpg"&gt;&lt;img alt="http://ralsina.com.ar/galleries/oakland-5-2013/20130429_073956.thumbnail.jpg" src="http://ralsina.com.ar/galleries/oakland-5-2013/20130429_073956.thumbnail.jpg"&gt;&lt;/a&gt;
&lt;p class="caption"&gt;Esto es enfrente de la entrada, los demás estacionan a la vuelta...&lt;/p&gt;
&lt;/div&gt;
&lt;div class="figure"&gt;
&lt;a class="reference external image-reference" href="http://ralsina.com.ar/galleries/oakland-5-2013/20130429_074218.jpg"&gt;&lt;img alt="http://ralsina.com.ar/galleries/oakland-5-2013/20130429_074218.thumbnail.jpg" src="http://ralsina.com.ar/galleries/oakland-5-2013/20130429_074218.thumbnail.jpg"&gt;&lt;/a&gt;
&lt;p class="caption"&gt;El único negocio del centro de Oakland que no cierra a las 9PM.&lt;/p&gt;
&lt;/div&gt;
&lt;p&gt;Así encontré el lugar donde desayunaría casi todos los días, Caffé 817. ¿Por qué? Rico
café, ricas cosas para acompañarlo, muebles steampunk, mesa en la vereda...&lt;/p&gt;
&lt;div class="figure"&gt;
&lt;a class="reference external image-reference" href="http://ralsina.com.ar/galleries/oakland-5-2013/20130429_075402.jpg"&gt;&lt;img alt="http://ralsina.com.ar/galleries/oakland-5-2013/20130429_075402.thumbnail.jpg" src="http://ralsina.com.ar/galleries/oakland-5-2013/20130429_075402.thumbnail.jpg"&gt;&lt;/a&gt;
&lt;/div&gt;
&lt;p&gt;Ahí empezamos a laburar, con lo que paso a tener mucho menos para contar, porque llegaba a la
noche tan hecho pomada que casi no salimos. Eso sí, esas tres cuadras alrededor del hotel
las conozco como la palma de mi mano!&lt;/p&gt;
&lt;div class="figure"&gt;
&lt;a class="reference external image-reference" href="http://ralsina.com.ar/galleries/oakland-5-2013/20130429_124838.jpg"&gt;&lt;img alt="http://ralsina.com.ar/galleries/oakland-5-2013/20130429_124838.thumbnail.jpg" src="http://ralsina.com.ar/galleries/oakland-5-2013/20130429_124838.thumbnail.jpg"&gt;&lt;/a&gt;
&lt;/div&gt;
&lt;div class="figure"&gt;
&lt;a class="reference external image-reference" href="http://ralsina.com.ar/galleries/oakland-5-2013/20130430_072650.jpg"&gt;&lt;img alt="http://ralsina.com.ar/galleries/oakland-5-2013/20130430_072650.thumbnail.jpg" src="http://ralsina.com.ar/galleries/oakland-5-2013/20130430_072650.thumbnail.jpg"&gt;&lt;/a&gt;
&lt;/div&gt;
&lt;div class="figure"&gt;
&lt;a class="reference external image-reference" href="http://ralsina.com.ar/galleries/oakland-5-2013/20130501_062916.jpg"&gt;&lt;img alt="http://ralsina.com.ar/galleries/oakland-5-2013/20130501_062916.thumbnail.jpg" src="http://ralsina.com.ar/galleries/oakland-5-2013/20130501_062916.thumbnail.jpg"&gt;&lt;/a&gt;
&lt;/div&gt;
&lt;p&gt;El mundo se divide entre los que te ven comiendo esto y te miran con cara de horror, y
los que se quejan que no les guardaste.&lt;/p&gt;
&lt;div class="figure"&gt;
&lt;a class="reference external image-reference" href="http://ralsina.com.ar/galleries/oakland-5-2013/20130429_134537.jpg"&gt;&lt;img alt="http://ralsina.com.ar/galleries/oakland-5-2013/20130429_134537.thumbnail.jpg" src="http://ralsina.com.ar/galleries/oakland-5-2013/20130429_134537.thumbnail.jpg"&gt;&lt;/a&gt;
&lt;/div&gt;
&lt;p&gt;El 1 de mayo cuando salgo del hotel justo estaba pasando la manifestación correspondiente.
Resulta que el año pasado se agarraron con la cana, así que estaban muy vigilados. De hecho
eran unas cuantas personas paseando por la calle principal haciendo ruido con mas o menos el
mismo número de policías. Sí, la mitad van encapuchados, todos los negocios van cerrando,
pero todo tranqui, por lo menos cuando pasé yo. Después vendían galletitas en la plaza.&lt;/p&gt;
&lt;div class="figure"&gt;
&lt;a class="reference external image-reference" href="http://ralsina.com.ar/galleries/oakland-5-2013/20130501_182515.jpg"&gt;&lt;img alt="http://ralsina.com.ar/galleries/oakland-5-2013/20130501_182515.thumbnail.jpg" src="http://ralsina.com.ar/galleries/oakland-5-2013/20130501_182515.thumbnail.jpg"&gt;&lt;/a&gt;
&lt;p class="caption"&gt;Manifestantes&lt;/p&gt;
&lt;/div&gt;
&lt;div class="figure"&gt;
&lt;a class="reference external image-reference" href="http://ralsina.com.ar/galleries/oakland-5-2013/20130501_182526.jpg"&gt;&lt;img alt="http://ralsina.com.ar/galleries/oakland-5-2013/20130501_182526.thumbnail.jpg" src="http://ralsina.com.ar/galleries/oakland-5-2013/20130501_182526.thumbnail.jpg"&gt;&lt;/a&gt;
&lt;p class="caption"&gt;Policías&lt;/p&gt;
&lt;/div&gt;
&lt;p&gt;Fuí a la farmacia, compré un regalo para mi otra cuñada:&lt;/p&gt;
&lt;div class="figure"&gt;
&lt;a class="reference external image-reference" href="http://ralsina.com.ar/galleries/oakland-5-2013/20130429_170837.jpg"&gt;&lt;img alt="http://ralsina.com.ar/galleries/oakland-5-2013/20130429_170837.thumbnail.jpg" src="http://ralsina.com.ar/galleries/oakland-5-2013/20130429_170837.thumbnail.jpg"&gt;&lt;/a&gt;
&lt;p class="caption"&gt;De nada, María!&lt;/p&gt;
&lt;/div&gt;
&lt;p&gt;Paseamos un poco en auto un día (O sea, fuimos a Best Buy, y a Target) y esto está en
el estacionamiento:&lt;/p&gt;
&lt;div class="figure"&gt;
&lt;a class="reference external image-reference" href="http://ralsina.com.ar/galleries/oakland-5-2013/20130430_175123.jpg"&gt;&lt;img alt="http://ralsina.com.ar/galleries/oakland-5-2013/20130430_175123.thumbnail.jpg" src="http://ralsina.com.ar/galleries/oakland-5-2013/20130430_175123.thumbnail.jpg"&gt;&lt;/a&gt;
&lt;p class="caption"&gt;También hay carteles parecidos en los lugares adonde podés fumar. Que no incluyen nada
a menos de 25 pies de una puerta. Sí, está prohibido fumar en la vereda.&lt;/p&gt;
&lt;/div&gt;
&lt;p&gt;Paseamos un poco más fuimos a la Jack London Square, comimos en varios lugares por ahí, fuí
al cine dos veces (Iron Man 3 y Oblivion) y se acabó el viaje. Para volver al aeropuerto no
había taxi, y me dice el tipo de uniforme de la puerta "Take a Towncar, it costs almost the same"
y me lleva a una cosa que es algo intermedio entre una limo y una carroza fúnebre:&lt;/p&gt;
&lt;div class="figure"&gt;
&lt;a class="reference external image-reference" href="http://ralsina.com.ar/galleries/oakland-5-2013/20130504_091503.jpg"&gt;&lt;img alt="http://ralsina.com.ar/galleries/oakland-5-2013/20130504_091503.thumbnail.jpg" src="http://ralsina.com.ar/galleries/oakland-5-2013/20130504_091503.thumbnail.jpg"&gt;&lt;/a&gt;
&lt;p class="caption"&gt;Es cómodo, para que te lo voy a negar.&lt;/p&gt;
&lt;/div&gt;
&lt;p&gt;Viaje de vuelta sin grandes problemas (asiento que no reclinaba), ya que hacía ya dos días que
nadie &lt;a class="reference external" href="http://www.nydailynews.com/news/national/man-opens-fire-houston-airport-shoots-hospital-article-1.1333389"&gt;abría fuego con armas automáticas en el aeropuerto&lt;/a&gt; llegada a casa, The End.&lt;/p&gt;
&lt;p&gt;Más fotos (incluyendo queso Filadelfia de chocolate, simulador de tornados,
estatua de Jack London, otras comidas, etc.) en &lt;a class="reference external" href="http://ralsina.com.ar/galleries/oakland-5-2013/"&gt;la galería.&lt;/a&gt;&lt;/p&gt;</description><guid>http://ralsina.com.ar/weblog/posts/a-oakland-me-fui-y-traje-remeras.html</guid><pubDate>Mon, 06 May 2013 16:17:34 GMT</pubDate></item><item><title>Indio</title><link>http://ralsina.com.ar/weblog/posts/indio.html</link><description>&lt;!-- tags: --&gt;
&lt;!-- slug: indio --&gt;
&lt;!-- link: --&gt;
&lt;!-- date: 2013/04/26 00:07:49 --&gt;
&lt;!-- title: Indio --&gt;
&lt;!-- description: --&gt;
&lt;p&gt;Con Tato jugamos a un juego de rimas. Por turno, cada uno le dice una frase al otro, y el otro tiene que rimarla. Por ejemplo, "Estoy sentado bajo una sombrilla" / "Me parece que es amarilla".
Si no la podés rimar, punto en contra.  Ok, no somos exactamente El Cuarteto de Nos, pero es divertido. &lt;strong&gt;PERO&lt;/strong&gt; hay una palabra que está prohibida, porque no tiene rima, que es &lt;em&gt;indio&lt;/em&gt;.&lt;/p&gt;
&lt;p&gt;Vaya acá un humilde intento de rimar indio, inspirado por algo que recuerdo vagamente de hace décadas.&lt;/p&gt;
&lt;div class="line-block"&gt;
&lt;div class="line"&gt;Me voy a ir al Quindio&lt;/div&gt;
&lt;div class="line"&gt;escribo yo con mi mano&lt;/div&gt;
&lt;div class="line"&gt;es un lugar colombiano&lt;/div&gt;
&lt;div class="line"&gt;que quiero rimar con indio.&lt;/div&gt;
&lt;div class="line"&gt;Se pronuncia Quindío&lt;/div&gt;
&lt;div class="line"&gt;me dice la wikipedia&lt;/div&gt;
&lt;div class="line"&gt;la puta que lo parío&lt;/div&gt;
&lt;div class="line"&gt;lo mío, es la comedia.&lt;/div&gt;
&lt;/div&gt;
&lt;p&gt;Gracias, gracias, premios de poesía avisen por email.&lt;/p&gt;</description><guid>http://ralsina.com.ar/weblog/posts/indio.html</guid><pubDate>Fri, 26 Apr 2013 00:07:49 GMT</pubDate></item><item><title>La Cacerola Loca</title><link>http://ralsina.com.ar/weblog/posts/la-cacerola-loca.html</link><description>&lt;!-- link: --&gt;
&lt;!-- description: "Locura es hacer lo mismo una y otra vez esperando resultados diferentes" - - Albert Einstein --&gt;
&lt;!-- tags: --&gt;
&lt;!-- date: 2013/04/20 22:32:12 --&gt;
&lt;!-- title: La Cacerola Loca --&gt;
&lt;!-- slug: la-cacerola-loca --&gt;
&lt;!--  --&gt;
&lt;blockquote&gt;
&lt;p&gt;"Locura es hacer lo mismo una y otra vez esperando resultados diferentes"&lt;/p&gt;
&lt;p class="attribution"&gt;—Albert Einstein&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;Hoy leí en un comentario en un sitio que no merece ser linkeado la pregunta "cómo puede ser
que hayan llegado al poder éstos". Bueno, estimado comentarista anónimo de blog político-vedettil,
te lo voy a explicar.&lt;/p&gt;
&lt;p&gt;La causa inmediada del poder de Cristina Fernandez es, obviamente, que ganó elecciones. Pero a nadie
le interesa eso, excepto a los que se la pasan echando en cara del 46% que 54 es más que 46, y que
si quieren ser presidentes es buena idea ganar elecciones, pero acá no vamos a caer en ese
facilismo. Vamos a ver más para atrás.&lt;/p&gt;
&lt;p&gt;Cristina llega a presidenta en gran parte porque la apoya como candidata Néstor. Si bien ella
es una persona con un gran historial político, senadora, etc. si no la llevaba Néstor, no
hubiera sido presidenta. O tal vez sí, pero de otra manera completamente distinta, igual que
si yo no hubiera comprado una Sinclair 1000 no sería programador (a menos que lo hubiera sido
por otros motivos). Pero esos otros motivos son ficción, porque no sucedieron. Ella es
presidenta por Néstor.&lt;/p&gt;
&lt;p&gt;¿Y cómo llegó Néstor a presidente? Llegó porque lo llevó Duhalde, y porque Menem se hizo encima
porque se olvidó de ponerse el pañal para adultos, o porque se dió cuenta de que a pesar de
&lt;em&gt;ganar&lt;/em&gt; la primera vuelta, en la segunda sacaba exactamente los mismos votos porque todos los
demás no lo querían.&lt;/p&gt;
&lt;p&gt;Así que Néstor ni siquiera llegó por ganar elecciones, llegó porque de los otros dos políticos
que podían llegar a ser candidatos, uno (Duhalde) se tenía que ir por dos muertos y el otro (Menem)
estaba quemado.&lt;/p&gt;
&lt;p&gt;¿Pero cómo puede ser eso? ¿Cómo puede suceder que los tres políticos más populares a nivel nacional
en ese momento fueran esos tres? ¡Uno que no se puede presentar, uno que no lo vota nadie, y uno
que no lo &lt;strong&gt;conoce&lt;/strong&gt; nadie, y saca menos votos que Memem! Eso &lt;strong&gt;no es normal&lt;/strong&gt;.&lt;/p&gt;
&lt;p&gt;Pero claro, pensemos. ¿Por qué Duhalde tenía poder, como para poder empujar a Kirchner como candidato?
Por la acefalía del 2001-2002. Acuérdense que a Duhalde ese poder le llega cuando ya todos los demás
se habían escapado de ese poder porque quemaba, porque nadie lo bancaba, porque no les daba el cuero,
porque no tenían las pelotas de titanio que tiene el hijo de mil putas de Duhalde.&lt;/p&gt;
&lt;p&gt;Menem llega porque hubo tal debacle que la gente (bueno, digamos un cuarto de la gente) decía, mierda,
el turco era un tremebundo hijo de puta... ¡pero esto fue peor!&lt;/p&gt;
&lt;p&gt;Sí, llegamos en el 2003 con esos 3 candidatos por culpa del 2001. ¿Qué pasó en el 2001? El cacerolazo.
En el 2001 se hizo pública esa consigna de "que se vayan todos". Y se fueron todos. Bueno, casi todos.
Quedó Duhalde, porque el tipo lo bautizaron con teflón, quedó Menem, porque no tenía otra cosa que
hacer en la vida, y quedó Kirchner porque a Duhalde se le fué de las manos una represión, murieron
dos pibes, dijo "ma sí, me voy a pescar en el gomón", y era lo que había a mano. ¿Se acuerdan cuando
decían que era "el chirolita de Duhalde"? ¡Si hasta lo habían bautizado Virolita! ¡Cuánta presciencia
política, qué don de adivinación!&lt;/p&gt;
&lt;p&gt;Pero si en el 2001 no se hubieran ido todos, alguno hubiera quedado. Y si quedaba alguno, Duhalde no
era presidente, Kirchner no era candidato, Menem era jubilado, y en las elecciones del 2003 quién
sabe qué hubiera pasado.&lt;/p&gt;
&lt;p&gt;Entonces ver ahora a la misma gente saliendo de vuelta a la calle, diciendo las mismas cosas, en la
misma pose, demonizando a la política como si ellos tuvieran una idea de con qué reemplazarla, es
gracioso. Bah, gracioso si no te jode que haya tanta gente
que no se da cuenta que está haciendo lo mismo, una y otra vez, esperando un resultado distinto.
Si no te jode que salir a decir "que se vayan todos" y "que se acabe la política" es, literalmente,
una locura.&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;"Todo lo que digas parece más inteligente si se lo atribuís a Einstein"&lt;/p&gt;
&lt;p class="attribution"&gt;—Albert Einstein&lt;/p&gt;
&lt;/blockquote&gt;</description><guid>http://ralsina.com.ar/weblog/posts/la-cacerola-loca.html</guid><pubDate>Sat, 20 Apr 2013 22:32:12 GMT</pubDate></item><item><title>GitHub's License Policy in a Few Tweets</title><link>http://ralsina.com.ar/weblog/posts/githubs-license-policy-in-a-few-tweets.html</link><description>&lt;!-- link: --&gt;
&lt;!-- description: --&gt;
&lt;!-- tags: --&gt;
&lt;!-- date: 2013/04/17 09:32:26 --&gt;
&lt;!-- title: GitHub's License Policy in a Few Tweets --&gt;
&lt;!-- slug: githubs-license-policy-in-a-few-tweets --&gt;
&lt;script src="//storify.com/ralsina/yes-you-do-need-to-put-a-license-there.js" type="text/javascript" language="javascript"&gt;&lt;/script&gt;&lt;noscript&gt;[&lt;a href="//storify.com/ralsina/yes-you-do-need-to-put-a-license-there" target="_blank"&gt;View the story "Yes, you do need to put a license there" on Storify&lt;/a&gt;]&lt;/noscript&gt;</description><guid>http://ralsina.com.ar/weblog/posts/githubs-license-policy-in-a-few-tweets.html</guid><pubDate>Wed, 17 Apr 2013 09:32:26 GMT</pubDate></item><item><title>Here's a very big gun, there's your foot: PHP support in Nikola</title><link>http://ralsina.com.ar/weblog/posts/heres-a-very-big-gun-theres-your-feet-php-support-in-nikola.html</link><description>&lt;!-- link: --&gt;
&lt;!-- description: --&gt;
&lt;!-- tags: nikola, python --&gt;
&lt;!-- date: 2013/04/16 10:26:10 --&gt;
&lt;!-- title: Here's a very big gun, there's your foot: PHP support in Nikola --&gt;
&lt;!-- slug: heres-a-very-big-gun-theres-your-feet-php-support-in-nikola --&gt;
&lt;p&gt;I am a very big proponent of static site generators. I would not have bothered
writing &lt;a class="reference external" href="http://nikola.ralsina.com.ar"&gt;Nikola&lt;/a&gt; otherwise. But there is always
that feeling that maybe there is some little thing which is hard to implement, like
a contact form.&lt;/p&gt;
&lt;p&gt;And let's face it, the easiest way to solve some of those things is by sticking
a few lines of PHP in your HTML.&lt;/p&gt;
&lt;p&gt;So, if you really want to, you can do it. I think Nikola (github master) is the first static
site generator that supports php code. Here's how:&lt;/p&gt;
&lt;ol class="arabic"&gt;
&lt;li&gt;&lt;p class="first"&gt;Add php to your page_compilers (because I will never put it there by default):&lt;/p&gt;
&lt;pre class="literal-block"&gt;
post_compilers = {
    "rest": ('.txt', '.rst'),
    "markdown": ('.md', '.mdown', '.markdown'),
    "textile": ('.textile',),
    "txt2tags": ('.t2t',),
    "bbcode": ('.bb',),
    "wiki": ('.wiki',),
    "ipynb": ('.ipynb',),
    "html": ('.html', '.htm'),
    "php": ('.php'),
}
&lt;/pre&gt;
&lt;/li&gt;
&lt;li&gt;&lt;p class="first"&gt;Add php posts or pages to your post_pages:&lt;/p&gt;
&lt;pre class="literal-block"&gt;
post_pages = (
    ("posts/*.txt", "posts", "post.tmpl", True),
    ("posts/*.php", "posts", "post.tmpl", True),
    ("stories/*.txt", "stories", "story.tmpl", False),
    ("stories/*.php", "stories", "story.tmpl", False),
)
&lt;/pre&gt;
&lt;/li&gt;
&lt;li&gt;&lt;p class="first"&gt;Create a php post:&lt;/p&gt;
&lt;pre class="literal-block"&gt;
nikola new_post posts/foo.php
&lt;/pre&gt;
&lt;/li&gt;
&lt;li&gt;&lt;p class="first"&gt;Put php in there:&lt;/p&gt;
&lt;pre class="literal-block"&gt;
&amp;lt;!--
.. date: 2013/04/16 09:57:09
.. title: php test
.. slug: foo
--&amp;gt;

&amp;lt;?php
Print "Hello, World!";
?&amp;gt;
&lt;/pre&gt;
&lt;/li&gt;
&lt;/ol&gt;
&lt;p&gt;Build the site as usual, and you should end up with a page with PHP extension,
that has that PHP in the "content" area, so it will follow your site's theme.
Of course you can't do things like add HTTP headers and such, but hey, read the title.&lt;/p&gt;</description><category>nikola</category><category>python</category><guid>http://ralsina.com.ar/weblog/posts/heres-a-very-big-gun-theres-your-feet-php-support-in-nikola.html</guid><pubDate>Tue, 16 Apr 2013 10:26:10 GMT</pubDate></item><item><title>Nikola version 5.4.4 is out!</title><link>http://ralsina.com.ar/weblog/posts/version-544-is-out.html</link><description>&lt;!-- link: --&gt;
&lt;!-- description: --&gt;
&lt;!-- tags: python, nikola --&gt;
&lt;!-- date: 2013/04/15 11:04:43 --&gt;
&lt;!-- title: Nikola version 5.4.4 is out! --&gt;
&lt;!-- slug: version-544-is-out --&gt;
&lt;p&gt;Yes, version 5.4.4 of Nikola, my static site/blog generator is just published at &lt;a class="reference external" href="http://nikola.ralsina.com.ar"&gt;the usual place&lt;/a&gt;, including the following improvements:&lt;/p&gt;
&lt;div class="section" id="features"&gt;
&lt;h2&gt;Features&lt;/h2&gt;
&lt;ul class="simple"&gt;
&lt;li&gt;New Japanese translation.&lt;/li&gt;
&lt;li&gt;Nikola check exists with 1 if there is an error&lt;/li&gt;
&lt;li&gt;New HIDE_UNTRANSLATED_POSTS option that ensures you don't have mixed-language pages (Issue #373)&lt;/li&gt;
&lt;li&gt;New theme "site-planetoid" for use with the planetoid plugin.&lt;/li&gt;
&lt;li&gt;New 'retired' tag for posts that should no longer be in feeds.&lt;/li&gt;
&lt;/ul&gt;
&lt;/div&gt;
&lt;div class="section" id="bugfixes"&gt;
&lt;h2&gt;Bugfixes&lt;/h2&gt;
&lt;ul class="simple"&gt;
&lt;li&gt;Added post data as a uptodate check for mustache (Issue #456)&lt;/li&gt;
&lt;li&gt;Rebuild post pages when the post's translation list changes (Issue #458)&lt;/li&gt;
&lt;li&gt;Handle "-h" (Issue #460)&lt;/li&gt;
&lt;li&gt;Added correct help for console command (Issue #460)&lt;/li&gt;
&lt;li&gt;Escape twittercard data (Issue #452)&lt;/li&gt;
&lt;li&gt;Added missing "twittercard" in story template&lt;/li&gt;
&lt;li&gt;Added support for per-language tags (Issue #450)&lt;/li&gt;
&lt;li&gt;Fix wrong path splitting (Issue #434)&lt;/li&gt;
&lt;li&gt;Remember locale even when set_locale failes (Issue #446)&lt;/li&gt;
&lt;li&gt;Decode path argument in new_post (Issue #442)&lt;/li&gt;
&lt;li&gt;task_indexes had missing config dependencies (Issue #441)&lt;/li&gt;
&lt;li&gt;Removed bogus links to slides assets that were removed&lt;/li&gt;
&lt;li&gt;Compressed files were seen as unknown by "nikola check"&lt;/li&gt;
&lt;li&gt;local search and mustache plugins must be disabled by default (Issue #437)&lt;/li&gt;
&lt;li&gt;Avoid failure if there are no tags and USE_GZIP is enabled (Issue #439)&lt;/li&gt;
&lt;li&gt;Fix aspect ratio detection in Vimeo videos (Issue #440)&lt;/li&gt;
&lt;li&gt;Blogger importer was passing wrong options to "nikola init" (Issue #408)&lt;/li&gt;
&lt;/ul&gt;
&lt;/div&gt;</description><category>python</category><category>nikola</category><guid>http://ralsina.com.ar/weblog/posts/version-544-is-out.html</guid><pubDate>Mon, 15 Apr 2013 11:04:43 GMT</pubDate></item><item><title>My very own Roger Ebert anecdote</title><link>http://ralsina.com.ar/weblog/posts/my-very-own-roger-ebert-anecdote.html</link><description>&lt;!-- link: --&gt;
&lt;!-- description: --&gt;
&lt;!-- tags: --&gt;
&lt;!-- date: 2013/04/12 20:38:09 --&gt;
&lt;!-- title: My very own Roger Ebert anecdote --&gt;
&lt;!-- slug: my-very-own-roger-ebert-anecdote --&gt;
&lt;p&gt;It was around the time "The Blair Witch Project" was a thing so it must have been in 1999 or 2000, that when I was reading
Roger Ebert's "Movie Answer Man" column, I thought, hey, I may have something to say about this.&lt;/p&gt;
&lt;p&gt;I emailed him about how the "found footage" genre was old, citing 1980's Cannibal Holocaust, and
even going back to Edgar Allan Poe's "Arthur Gordon Pym" which is (of course) a found manuscript. We exchanged a
few emails, he was always thoughtful, polite, willing to have a nice conversation. He eventually asked
about what was the best possible time to visit Buenos Aires, I said spring or fall, suggested that
he may be interested in attending BAFICI, and eventually it petered out.&lt;/p&gt;
&lt;p&gt;So, not much as anecdotes go, but it made me realize I had been reading his reviews and articles (and later his blog
and his twitter feed) for over 15 years.&lt;/p&gt;
&lt;p&gt;I remember seeing him do a cameo in a lame TV show (the one with the guy that has a magical dog that brings him
tomorrow's newspaper or something), and thinking, hey, I know that guy, sort of.&lt;/p&gt;
&lt;p&gt;Now that he's dead, it seems he was, for everyone, the same he was for me, gracious, friendly,
interesting.&lt;/p&gt;
&lt;p&gt;He was the kind of guy who wrote reviews for Deep Throat and co-authored
a Russ Meyer movie, and was always ready to say that a movie was crap yet good crap because
there are degrees of crap, and you have to take crap in its own terms.&lt;/p&gt;
&lt;p&gt;I'll miss the guy.&lt;/p&gt;</description><guid>http://ralsina.com.ar/weblog/posts/my-very-own-roger-ebert-anecdote.html</guid><pubDate>Fri, 12 Apr 2013 20:38:09 GMT</pubDate></item><item><title>Security Cargo Cults</title><link>http://ralsina.com.ar/weblog/posts/security-cargo-cults.html</link><description>&lt;!-- link: --&gt;
&lt;!-- description: --&gt;
&lt;!-- tags: --&gt;
&lt;!-- date: 2013/04/10 21:00:56 --&gt;
&lt;!-- title: Security Cargo Cults --&gt;
&lt;!-- slug: security-cargo-cults --&gt;
&lt;!-- nocomments: true --&gt;
&lt;p&gt;Earlier I mentioned a hack I use when I need to get a clean browser quick. Here it is again:&lt;/p&gt;
&lt;pre class="literal-block"&gt;
rm -f ~/.config/ralsina/devicenzo.conf
curl https://devicenzo.googlecode.com/svn/trunk/devicenzo.py | python
&lt;/pre&gt;
&lt;p&gt;Since that got posted on reddit (no, not linking it), it triggered "interesting" arguments.
Basically many were shocked (&lt;strong&gt;shocked&lt;/strong&gt;) about running arbitrary internet code locally in
this manner. It's &lt;strong&gt;insecure&lt;/strong&gt;. While I am by no means a security expert, at least I &lt;em&gt;know&lt;/em&gt;
I am ignorant.&lt;/p&gt;
&lt;p&gt;Let's examine that insecurity claim a little, in the context of what I was proposing. I am trying to
tell people "here's a small web browser that requires no setup and since it's not your main
browser, you can nuke it and reset its state easily before running it, like this".&lt;/p&gt;
&lt;p&gt;So, what's wrong with doing it that way, according to the commenters:&lt;/p&gt;
&lt;dl class="docutils"&gt;
&lt;dt&gt;It's insecure because you can't see the code before running it because it's piped.&lt;/dt&gt;
&lt;dd&gt;&lt;p class="first"&gt;Well, that makes it exactly as insecure as every unsigned binary you ever downloaded.
Or, let's be honest, every shell script, python script, perl script etc you have
ever downloaded. Or you audit them?&lt;/p&gt;
&lt;p&gt;Who exactly is being prevented from auditing it by having it presented this way?
Is the intersection of "people who can audit this script" and "pople who don't
understand pipes" not empty?&lt;/p&gt;
&lt;p class="last"&gt;For those who can audit, this makes no difference. For those who can't audit, this
makes no difference.&lt;/p&gt;
&lt;/dd&gt;
&lt;dt&gt;It would be better if I provided a hash of the file to know it's not tampered&lt;/dt&gt;
&lt;dd&gt;&lt;p class="first"&gt;And how would &lt;em&gt;you&lt;/em&gt; know the hash is not tampered? Wat you want, really is
a digital signature of the script.&lt;/p&gt;
&lt;p&gt;If you trust google (and usually, people do), then you know that:&lt;/p&gt;
&lt;ol class="loweralpha simple"&gt;
&lt;li&gt;The script was uploaded by me (check the history of the file)&lt;/li&gt;
&lt;li&gt;The script has not been tampered from the repo (since it's a secure
connection and yes, there is a hash of the revision)&lt;/li&gt;
&lt;/ol&gt;
&lt;p class="last"&gt;If you don't trust google, then you don't know who uploaded it, and if you don't
trust me, you &lt;em&gt;don't care&lt;/em&gt; who uploaded it, even if it's signed (because it's
signed by someone you don't trust).&lt;/p&gt;
&lt;/dd&gt;
&lt;dt&gt;How does the user know it's not malware?&lt;/dt&gt;
&lt;dd&gt;He doesn't. Life is like that.&lt;/dd&gt;
&lt;dt&gt;Why should the user trust you?&lt;/dt&gt;
&lt;dd&gt;He shouldn't. OTOH, were he so inclined, he can check who wrote it, and that
I am a real person, with a long history of sharing code online and no claims
of ever pushing malware.&lt;/dd&gt;
&lt;dt&gt;This is more insecure because it downloads on every run&lt;/dt&gt;
&lt;dd&gt;You don't need to run malware more than once, anyway. So, not much of a difference.&lt;/dd&gt;
&lt;dt&gt;This propagates bad habits&lt;/dt&gt;
&lt;dd&gt;So does Dunkin' Donuts, and noone posts about it at reddit. But in any case, sure,
it's a bad habit. Big deal.&lt;/dd&gt;
&lt;/dl&gt;
&lt;p&gt;So, is it secure? Hell no! Is it significantly less secure than installing a random PPA
you see mentioned in a forum? Maybe slightly. Is it less secure than running random
unsigned binaries? Hell no. Is it less secure than downloading and running it? No. Is it
less secure than building a random thing from source? Hell no.&lt;/p&gt;
&lt;p&gt;But is it less secure than the other realistic ways in which I can give you a 100+ line chunk
of python code that works as a web browser? I don't think so.&lt;/p&gt;
&lt;p&gt;In the context of "here's the code for it, it can do this", this is not significantly
insecure. It's more or less as insecure as the alternatives. With the advantage that,
if you want, you &lt;em&gt;can&lt;/em&gt; audit it. It's 128 lines of code (assuming you trust Qt and PyQt
and Python, etc)&lt;/p&gt;
&lt;p&gt;So there.&lt;/p&gt;</description><guid>http://ralsina.com.ar/weblog/posts/security-cargo-cults.html</guid><pubDate>Wed, 10 Apr 2013 21:00:56 GMT</pubDate></item></channel></rss>