Canonical Voices

What Bitácora de Vuelo talks about

facundo


Hace rato que debía este post, pero no fue hasta la semana pasada que pasé a buscar todos los audios por la biblioteca de ETER.

El curso estuvo bueno, dio un pantallazo general y superficial de mucho contenido que se profundiza en la carrera de Locución. La mayoría de mis compañeros estaban ahí porque no se decidían si encarar la carrera o no, o (como yo) porque les interesaba la temática en sí, con actividades en mayor o menor medida relacionadas al hablar en público, o la radio.

Estaba dividido en dos patas principales: la de Foniatría (dada por Ariel Aguirre), donde básicamente uno aprende a preparar y usar el instrumento (que no es sólo la boca, o cuerdas vocales, sino todo el cuerpo), y la de Locución (dada por Cristina Taboada), donde íbamos realizando distintas actividades en un estudio de verdad, aprendiendo no sólo a locutar sino también a interactuar con el operador, usar el estudio, y muchos detalles más.

De la parte de Foniatría no me queda más que algunas fotocopias a modo de apunte, pero de la parte de Locución tengo todos los audios que fuimos realizando, porque el operador los grababa:

  • Presentación: la primera vez que entramos en un estudio, con la idea de contar un poco de uno mismo y por qué estábamos ahí.
  • Cuento para niños: había que llevar un cuento infantil, para practicar lo que es una lectura muy colorida, con muchas inflexiones, apuntando a un público infantil.
  • Hablando raro: un juego donde había que leer un determinado texto con distintas voces (a mí me tocó 'gangoso', 'sensual' y 'neutro', pero habían muchos más como 'riéndose', o 'gritando', o 'enojada/o', etc.)
  • Que profesional: las mismas palabras con muchos significados distintos.
  • Texto difícil: un texto bastante complicado de leer... no llega a ser un trabalenguas, pero hay mil trampitas por ahí.
  • Leyenda Sioux: Un radioteatro, donde entre varios representábamos una historia bastante conocida; a mí me tocó ser el Relator.
  • Vecinos: Otro radioteatro, pero este sólo entre dos personas, representando una situación en el pasillo de un departamento.
  • Publicidades: Varios textos cortos que había que leer con el punto neutro pero alegre de las publicidades, hecho a dúo con la profesora.
  • Recitado: la consignar era llevar la letra de una canción con la idea de recitarla, y también una música (que no sea de esa canción) para poner de fondo.

Este último se lo dedico a mi hermana, porque es una letra que a nosotros siempre nos gustó mucho, ella hizo un grabado con esa temática (tengo una impresión colgada en la pared, y tuve una remera mucho tiempo), y también porque ella está cumpliendo un poco con la consigna de la canción, lo que me llena de alegría.

Read more
facundo

Logging levels


Cuando empecé con el concepto de loguear, me parecía demasiado tener niveles. Con el tiempo y la experiencia me di cuenta que son imprescindibles, :)

En la biblioteca estándar de Python hay un módulo logging que trae varios niveles prefijados. Son estos, con una pequeña anotación de cómo los uso, más un ejemplo de la vida real (tomados de mi programa de Encuentro o de fades).

- CRITICAL: creo que nunca lo usé :)

- ERROR: problemas de todo tipo; cosas que no deberían pasar, y si pasan son un inconveniente; muchas veces el programa no continúa, o continua de forma parcial o limitada, luego de este tipo de linea logueada. En este ejemplo logueo que no se pudo bajar la lista de los backends durante una actualización (también en este caso se le avisa al usuario mediante una ventanita, y el programa sigue, aunque la actualización no se concretó):

    try:
        _, backends_file = yield utils.download(BACKENDS_URL)
    except Exception, e:
        logger.error("Problem when downloading backends: %s", e)
        tell_user("Hubo un PROBLEMA al bajar la lista de backends:", e)
        return

- WARNING: para indicar que sucedió algo que en general no debería pasar; en general no son cosas malas, sino más bien anómalas, y no presentan una situación problemática. En el siguiente ejemplo estoy dejando registro que ignoro la opción 'quiet' que pasó el usuario (porque también pasó la opción 'verbose', que es más importante):

    if verbose and quiet:
        l.warning("Overriding 'quiet' option ('verbose' also requested)")

- INFO: información general del funcionamiento del programa, cosas que son imprescindibles saber y que siempre queremos que sean registradas; en general no involucran gran cantidad de lineas, pero permite seguir el flujo de ejecución del programa desde un nivel alto. Normalmente los programas que se entregan a los usuarios o corren en los servidores están configurados para realmente mandar a disco desde este nivel. En las siguientes dos lineas muestro lo primero que loguea Encuentro al arrancar: con qué versión de Python está siendo ejecutado y qué versión de sí mismo es:

    log.info("Running Python %s on %r", sys.version_info, sys.platform)
    log.info("Encuentro version: %r", version)

- DEBUG: toda la información necesaria para analizar en detalle la ejecución del programa. Puede involucrar grandes cantidades de información, y hasta ser un problema con respecto al uso de disco o afectar la performance, pero en general no se corren los programas en este nivel, sólo durante el desarrollo o en casos de tratar de analizar un problema específico. No es raro, por ejemplo, pedirle al usuario que ejecute el programa con un parámetro especial que configura los logs en este nivel y que trate de reproducir el problema que tuvo, para luego hacer un análisis forense de la situación. En el siguiente ejemplo estoy dejando constancia que fades tuvo que instalar pip a mano en el virtualenv:

    logger.debug("Installing PIP manually in the virtualenv")

Me ha pasado en sistemas muy complejos de necesitar un nivel más abajo que DEBUG para loguear toda aquella información que podría llegar a ser útil para un análisis del comportamiento del programa, pero que normalmente sería un exceso de datos (lo cual complica desde la lectura de los registros hasta el mismo manejo de los archivos). Entonces, usábamos un nivel TRACE, que casi nunca se prendía, para este propósito.

La macana es que el módulo de logging no tiene un nivel TRACE, pero lo creábamos a mano:

    TRACE = 5
    logging.addLevelName('TRACE', TRACE)

Fíjense el 5 ese: es que DEBUG es 10, entonces queda "más abajo". Claro, para que funcione todo, teníamos que usar un Logger custom:

    class Logger(logging.Logger):
        """Logger that support our custom levels."""

        def trace(self, msg, *args, **kwargs):
            """log at TRACE level"""
            if self.isEnabledFor(TRACE):
                self._log(TRACE, msg, args, **kwargs)

Para más información sobre la infrastructura de logging de Python y consejos generales sobre qué, cómo, o cuándo dejar registro de lo que sucede, pueden ver mi charla sobre el tema (estos sons los slides, y en algún momento se publicará acá el video de esta misma charla que dí en la PyCon de Rafaela).

Read more
facundo

Decime quien sos vos


El título de este post es robado a un maravilloso programa de Eduardo Aliverti.

Es un programa de radio que sale desde hace años por Radio Nacional los domingos a las 10hs. Se basa en una entrevista de Aliverti a alguna personalidad, armando un diálogo tranquilo, profundo, inteligente.

La dinámica es bastante minimalista: sólo Aliverti charlando con el entrevistado. Nada más. La producción es de Roxana Russo, de extensísima carrera, y directora de la carrera de Periodismo en ETER (escuela donde terminé el curso de Locución y Técnicas Vocales hace un par de meses, :) ).

En palabras de ellos mismos:

        "Decime quién sos vos" es un programa de entrevistas tan distendidas como agudas e intimistas donde convergen personalidades emblemáticas del pensamiento, la cultura, el arte, el espectáculo, el deporte.

¿Por qué les cuento esto? En parte porque el programa se merece ampliamente una recomendación: es uno de los (casi ningún) programas de radio y televisión que escucho religiosamente.

Pero también porque van a poder bajarlo de forma fácil usando Encuentro, a partir de la versión 2.1 que acabo de liberar.

Meter "Decime quien sos vos" en Encuentro me llevó *muchísimo* trabajo (incluso tuve que hacer una biblioteca para parsear SWFs en Python), pero la posibilidad de buscar fácilmente entrevistados para poder bajar el programa lo valía.

Entonces, ahora es muy fácil escuchar entrevistas de calidad a (entre otros) Pepe Soriano, Hector Larrea, Teresa Parodi, Carlos Ulanosvsky, Horacio Fontova, Lalo Mir, Horacio Verbitsky, Lito Vitale, Adrián Paenza, Walter Malosetti, Luis Salinas, Roberto Perfumo, Abelardo Castillo, Gonzalo Bonadeo, Luis María Pescetti, Alejandro Dolina, Lito Cruz, etcétera, etcétera, y recontra etcétera.

Bajen/instalen el nuevo Encuentro, refresquen la metadata, y además de todo lo que pueden encontrar ahí, filtren u ordenen por este nuevo programa, y van a ver que el contenido es invaluable.

Que lo disfruten, :)

Read more
facundo

PyCon 2014 en Rafaela


Acaba de pasar la sexta PyCon Argentina. Como dice el título, se hizo en Rafaela, provincia de Santa Fe.

Fuimos con Nico Demarchi en auto, salimos el miércoles a la tarde y llegamos una y monedas de la mañana, volvimos el domingo durante el día, arrancando a media mañana. Creo que es el límite de lo que haría en auto... más distancia ya iría en micro o avión.

Yo tenía que llegar el miércoles a la noche porque el jueves abría el día de talleres con Introducción a Python (modo charla extendida, ya que tenía dos horas). El jueves dí dos charlas más: Cómo debuguear en Python, y Cómo los logs me salvaron el alma.Y para cerrar (justo antes de los sorteos y foto grupal), le conté a la gente un poco cómo íbamos con el proyecto de armar la Asociación Civil de PyAr.

Mis charlas salieron bien, aunque la de debugging no me gustó del todo como la había dado (pero luego recibí buen feedback). Para el taller de Intro a Python usé por primera vez a Pysenteishon, un software muy copado y piola para ir pasando los slides desde el teléfono (¡gracias Emiliano por hacerlo!). Y para las charlas del jueves estuve por primera vez descalzo dando la presentación (era algo que quería probar desde hace rato, y aproveché que el escenario del auditorio tenía piso de madera).

Dando la charla en patas

También fuí a muchas charlas, había muchas cosas copadas para ver, y creo que me salté uno o dos timeslots nada más en toda la conferencia. Las keynotes estuvieron bien, pero no me entusiasmaron particularmente. Y todo lo fue lugar y organización estuvo genial, la verdad que se pasaron. Lo mismo con la gente con la que me (re)encontré: es un placer ser parte de una comunidad así.

Yo llevé la cámara... pero la verdad es que colgué sacando fotos. Pero la grosa de Yami sacó un montón, están todas acá. Y una de las últimas que sacó es justamente la grupal, esta que muestro acá:

Foto grupal

Y como siempre que uno no viaja durmiendo o solo, está el efecto de "PyCon extendida". Es que uno viene charlando de mil cosas, de lo más variado, pero también de proyectos, ideas, etc. Con Nico nos venía rondando en la cabeza una idea para facilitar el uso de dependencias en programas Python, estuvimos charlando con gente en la conferencia, nos dieron feedback, la idea fue mutando... y en el viaje de vuelta se nos terminó de ocurrir algo piola, que no debería ser demasiado loco de implementar; ya les traeré la novedad.

¡Pero no sólo un proyecto me traje! (como si tuviera pocos y/o mucho tiempo libre, ¿no?). Tengo ganas de hacer una "maquinita de timelapse" con una Raspi (una cajita que uno puede colgar en cualquier lado y dejarla ahí algunas horas o un par de días y arme un video de esos donde se ve todo rápido, por ejemplo este). El otro proyecto es armar una valija o caja robusta con todo lo necesario en un PyCamp (router, computadora para caché de repositorios, energía, y varios etcéteras), de manera de tener todo listo y de fácil armado, onda llegás y enchufás. Ya veremos cómo se van desarrollando ambos proyectos...

Read more
facundo

Como loco con las películas


Gran cantidad de películas vistas, principalmente porque tuve un par de viajes en el medio (y en uno en particular, tanto en la ida como en el regreso, tenía enchufe en el asiento, así que pude ver varias pelis sin preocuparme de la duración de la batería de la laptop).

Y también porque vi varias en casa. Como contrapartida, vengo atrasado con las series... pero bueno :)

  • A Good Day to Die Hard: -0. Algunos momentos de humor. No mucho más, demasiado repetido todo.
  • Branded: -0. Demasiado volada. Tiene una idea interesante, y una historia, pero no se llevan bien del todo.
  • Dark Shadows: -0. Una gran colección de actores para una historia que ni fú ni fá.
  • Emergo: -0. Tiene algunas cosas muy interesantes, pero todo ese tipo de películas donde tenés una imagen quieta durante un minuto y de repente se mueve o pasa algo, me aburren profundamente.
  • Extraterrestre: -0. Algunos momentos tiene, y la historia de la película no está mal, es una mirada nueva. Pero en general me aburrió :/
  • Hit and Run: -0. Una comedia romanticona más, principalmente de persecuciones y disparos. Berreta, pero con sus momentos de humor.
  • Into the Mind: +0. La historia no vale demasiado... pero la fotografía es absolutamente genial.
  • Intruders: +0. No es la gran cosa a nivel de terror, pero tiene giros interesantes, y me mantuvo atrapado hasta el final.
  • Iron Man 3: +0. Un poco más de lo mismo, pero dentro de eso, la película está bien, y es un correcto cierre a la historia.
  • Meeting Evil: -1. Dos escenas. O tres. Nada más.
  • Metegol: +1. La historia está buena, y la animación es inmejorable, muy buena peli.
  • Muppets Most Wanted: +0. Es *obviamente* para chicos... pero es linda.
  • Oblivion: +0. Una buena película de ciencia ficción y acción. Podría ser mejor con alguna que otra mejor actuación, si fuese menos previsible, y sin un par de errores conceptuales en la historia. Pero zafa, cumple.
  • One for the Money: +0. Comedia romántica con algo de acción... muy muy liviana, pero divertida.
  • Savages: +0. La historia no es la gran cosa, pero muy bien contada! Buenas actuaciones, buena fotografía, buena dirección.
  • Side Effects: -0. Un poco lenta, algo predecible, y con un final bleh. Tiene sus momentos interesantes y algunos giros, pero no alcanza.
  • Side by Side: +1. Muy buena película que muestra la evolución en la tecnología del cine. Muy bien armada la película, maravillosamente contada.
  • Skyfall: +0. Es una buena película de James Bond (con floja participación de chicas Bond, sin embargo). Si te gusta, bien, sino a otra cosa.
  • The Adjustment Bureau: +1. Muy buena historia, muy bien explicado lo que tiene sentido explicar (dejando afuera lo que no tiene sentido, claro), muy interesante todo el concepto.
  • The Amazing Spider-Man: +0. La peli está buena, pero está muy pegada al original, con lo cual es como ver un remake de la película de hace sólo ~10 años, y eso le resta muchísimo.
  • The Bourne Legacy: -0. Una peli de persecuciones. No vale la pena. Sí, tiene algo alrededor, pero nada nuevo contra las Bournes anteriores. En resumen... te entretiene, pero no vale la pena.
  • The Call: +0. La peli no está mal, las actuaciones muy buenas y la historia.... bien hasta el final. O sea, hasta cuatro minutos antes del final :/
  • The Debt: -0. La historia tiene un trasfondo interesante... pero me aburrió demasiado.
  • The Last Stand: -0. "Hagamos una con Arnold, que está viejo, repitiendo clichés; pongamos a una parejita linda como ayudantes, y algunos actores buenos para que le den estructura". La peli es de esas que los malos, los buenos y los buenos están todo el tiempo disparando para ver quien la tiene más larga.
  • The Paperboy: -0. La historia está buena... demasiado sórdida, quizás, sin mucho sentido; es como una pequeña imagen de algo que no llegó a crecer, se nota que le falta profundidad en muchos aspectos (al final te enterás que es basada en una novela, eso lo explica).
  • Total Recall: -0. No me gustó... por lo fantasioso. O sea, si va a ser una película de ciencia ficción, todo bien, pero que sea más o menos en serio. Si van a agarrar un libro de Philip K. Dick y lo van a llevar a la pantalla estilo Underworld, no da...


De este lado, también un montonazo de películas nuevas! Parece que se pusieron las pilas con temas interesantes. Ojo, también hay algunas que son viejas y me las recomendaron hace poco.

Una novedad es que empecé a incluir de qué va la peli (argumento, fecha, género, actores, director), lo que puede servirle a alguien para a priori descartarla o decidir de buscar más info. Obviamente, no los escribo yo, sino que los estoy sacando de IMDB; sí, ya sé, está en inglés... pero es mejor que nada.

  • 7 cajas (2012; Action, Thriller) It's Friday night in Asunción, Paraguay and the temperature is sweltering. Víctor, a 17-year-old wheelbarrow delivery boy, dreams of becoming famous and covets a fancy cellular phone in the infamous Mercado 4. He's offered a chance to deliver seven boxes with unknown contents in exchange for a quick US$100. But what sounds like an easy job soon gets complicated. Something in the boxes is highly coveted and Víctor and his pursuers quickly find themselves caught up in a crime they know nothing about. [D: Juan Carlos Maneglia, Tana Schembori; A: Celso Franco, Víctor Sosa, Lali Gonzalez]
  • All Is Lost (2013; Action, Adventure, Drama) Deep into a solo voyage in the Indian Ocean, an unnamed man (Redford) wakes to find his 39-foot yacht taking on water after a collision with a shipping container left floating on the high seas. With his navigation equipment and radio disabled, the man sails unknowingly into the path of a violent storm. Despite his success in patching the breached hull, his mariner's intuition and a strength that belies his age, the man barely survives the tempest. Using only a sextant and nautical maps to chart his progress, he is forced to rely on ocean currents to carry him into a shipping lane in hopes of hailing a passing vessel. But with the sun unrelenting, sharks circling and his meager supplies dwindling, the ever-resourceful sailor soon finds himself staring his mortality in the face. [D: J.C. Chandor; A: Robert Redford]
  • Autómata (2014; Sci-Fi, Thriller) Jacq Vaucan is an insurance agent of ROC robotics corporation who investigates cases of robots violating their primary protocols against harming humans. What he discovers will have profound consequences for the future of humanity. [D: Gabe Ibáñez; A: Antonio Banderas, Birgitte Hjort Sørensen, Melanie Griffith]
  • Camp X-Ray (2014; Drama) A young soldier escapes her suffocating small town by joining the military, only to find that she isn't going for a tour of duty in Iraq as she hoped. Instead, she's sent to Guantanamo. Met with hatred and abuse from the men in her charge, she forges an odd friendship with a young man who has been imprisoned at Gitmo for eight years. [D: Peter Sattler; A: Nawal Bengholam, Peyman Moaadi, Lane Garrison]
  • El Ardor (2014; Drama, Western) A mysterious man emerges from the Argentinean rainforest to rescue the kidnapped daughter of a poor farmer after mercenaries murder her father and take over his property. [D: Pablo Fendrik; A: Gael García Bernal, Alice Braga, Claudio Tolcachir]
  • Focus (2015; Comedy, Crime, Drama, Romance) A veteran grifter takes a young, attractive woman under his wing, but things get complicated when they become romantically involved. [D: Glenn Ficarra, John Requa; A: Margot Robbie, Will Smith, Rodrigo Santoro]
  • Interstellar (2014; Adventure, Sci-Fi) In the near future Earth has been devastated by drought and famine, causing a scarcity in food and extreme changes in climate. When humanity is facing extinction, a mysterious rip in the space-time continuum is discovered, giving mankind the opportunity to widen their lifespan. A group of explorers must travel beyond our solar system in search of a planet that can sustain life. The crew of the Endurance are required to think bigger and go further than any human in history as they embark on an interstellar voyage, into the unknown. Coop, the pilot of the Endurance, must decide between seeing his children again and the future of the human race. [D: Christopher Nolan; A: Ellen Burstyn, Matthew McConaughey, Mackenzie Foy]
  • The Hunger Games (2012; Sci-Fi) In a dystopian future, the totalitarian nation of Panem is divided between 12 districts and the Capitol. Each year two young representatives from each district are selected by lottery to participate in The Hunger Games. Part entertainment, part brutal retribution for a past rebellion, the televised games are broadcast throughout Panem. The 24 participants are forced to eliminate their competitors while the citizens of Panem are required to watch. When 16-year-old Katniss's young sister, Prim, is selected as District 12's female representative, Katniss volunteers to take her place. She and her male counterpart, Peeta, are pitted against bigger, stronger representatives, some of whom have trained for this their whole lives. [D: Gary Ross; A: Stanley Tucci, Wes Bentley, Jennifer Lawrence]
  • La Vénus à la fourrure (2013; Drama) An actress attempts to convince a director how she's perfect for a role in his upcoming production. [D: Roman Polanski; A: Emmanuelle Seigner, Mathieu Amalric]
  • Laggies (2014; Comedy, Romance) In the throes of a quarter-life crisis, Megan panics when her boyfriend proposes, then, taking an opportunity to escape for a week, hides out in the home of her new friend, 16-year-old Annika, who lives with her world-weary single dad. [D: Lynn Shelton; A: Keira Knightley, Chloë Grace Moretz, Sam Rockwell]
  • Mad Max: Fury Road (2015; Action, Adventure, Thriller) An apocalyptic story set in the furthest reaches of our planet, in a stark desert landscape where humanity is broken, and almost everyone is crazed fighting for the necessities of life. Within this world exist two rebels on the run who just might be able to restore order. There's Max, a man of action and a man of few words, who seeks peace of mind following the loss of his wife and child in the aftermath of the chaos. And Furiosa, a woman of action and a woman who believes her path to survival may be achieved if she can make it across the desert back to her childhood homeland. [D: George Miller; A: Tom Hardy, Charlize Theron, Nicholas Hoult]
  • Mortdecai (2015; Action, Comedy) Juggling some angry Russians, the British Mi5, his impossibly leggy wife and an international terrorist, debonair art dealer and part time rogue Charlie Mortdecai must traverse the globe armed only with his good looks and special charm in a race to recover a stolen painting rumored to contain the code to a lost bank account filled with Nazi gold. [D: David Koepp; A: Johnny Depp, Olivia Munn, Aubrey Plaza]
  • Primer (2004; Drama, Thriller, Sci-Fi) At night and on weekends, four men in a suburban garage have built a cottage industry of error-checking devices. But, they know that there is something more. There is some idea, some mechanism, some accidental side effect that is standing between them and a pure leap of innovation. And so, through trial and error they are building the device that is missing most. However, two of these men find the device and immediately realize that it is too valuable to market. The limit of their trust in each other is strained when they are faced with the question, If you always want what you can't have, what do you want when you can have anything? [D: Shane Carruth; A: Shane Carruth, David Sullivan, Casey Gooden]
  • Relatos salvajes (2014; Comedy, Drama, Thriller) A story about love deception, the return of the past, a tragedy, or even the violence contained in an everyday detail, appear themselves to push them towards the abyss, into the undeniable pleasure of losing control. [D: Damián Szifrón; A: Liliana Ackerman, Luis Manuel Altamirano García, Alejandro Angelini]
  • Stealing Beauty (1996; Drama, Romance) After her mother commits suicide, nineteen year old Lucy Harmon travels to Italy to have her picture painted. However, she has other reasons for wanting to go. She wants to renew her acquaintance with Nicolo Donati, a young boy with whom she fell in love on her last visit four years ago. She also is trying tosolve the riddle left in a diary written by her dead mother, Sara. [D: Bernardo Bertolucci; A: Carlo Cecchi, Sinéad Cusack, Joseph Fiennes]
  • The Hobbit: The Battle of the Five Armies (2014; Adventure, Fantasy) Bilbo and Company are forced to be embraced in a war against an armed flock of combatants and the terrifying Smaug from acquiring a kingdom of treasure and obliterating all of Middle-Earth. [D: Peter Jackson; A: Benedict Cumberbatch, Luke Evans, Evangeline Lilly]
  • The Imitation Game (2014; Biography, Drama, Thriller, War) Based on the real life story of legendary cryptanalyst Alan Turing, the film portrays the nail-biting race against time by Turing and his brilliant team of code-breakers at Britain's top-secret Government Code and Cypher School at Bletchley Park, during the darkest days of World War II. [D: Morten Tyldum; A: Benedict Cumberbatch, Keira Knightley, Matthew Goode]
  • The Maze Runner (2014; Action, Mystery, Sci-Fi, Thriller) Thomas wakes up in an elevator, remembering nothing but his own name. He emerges into a world of about 60 teen boys who have learned to survive in a completely enclosed environment, subsisting on their own agriculture and supplies. A new boy arrives every 30 days. The original group has been in "The Glade" for two years, trying to find a way to escape through the Maze that surrounds their living space. They have begun to give up hope. Then a comatose girl arrives with a strange note, and their world begins to change. There are some great, fast-paced action scenes, particularly those involving the nightmarish Grievers who plague the boys. [D: Wes Ball; A: Dylan O'Brien, Aml Ameen, Ki Hong Lee]
  • The Scribbler (2014; Thriller) THE SCRIBBLER follows Suki (Katie Cassidy), a young woman confronting her destructive mental illness using "The Siamese Burn," an experimental machine designed to eliminate multiple personalities. The closer Suki comes to being "cured," she's haunted by a thought - what if the last unwanted identity turns out to be her? [D: John Suits; A: Katie Cassidy, Garret Dillahunt, Michelle Trachtenberg]
  • The Book of Life (2014; Animation, Adventure, Comedy, Family, Fantasy, Romance) From producer Guillermo del Toro and director Jorge Gutierrez comes an animated comedy with a unique visual style. THE BOOK OF LIFE is the journey of Manolo, a young man who is torn between fulfilling the expectations of his family and following his heart. Before choosing which path to follow, he embarks on an incredible adventure that spans three fantastical worlds where he must face his greatest fears. Rich with a fresh take on pop music favorites, THE BOOK OF LIFE encourages us to celebrate the past while looking forward to the future. [D: Jorge R. Gutierrez; A: Diego Luna, Zoe Saldana, Channing Tatum]
  • The Judge (2014; Drama) Hank Palmer is a successful defense attorney in Chicago, who is getting a divorce. When His brother calls with the news that their mother has died, Hank returns to his childhood home to attend the funeral. Despite the brittle bond between Hank and the Judge, Hank must come to his fathers aid and defend him in court. Here, Hank discovers the truth behind the case, which binds together the dysfunctional family and reveals the struggles and secrecy of the family. [D: David Dobkin; A: Robert Downey Jr., Robert Duvall, Vera Farmiga]
  • The November Man (2014; Action, Crime, Thriller) Peter Devereaux is a former CIA agent who is asked by the man he worked for that their person who in Russia who is presently close to a man running for President, who is believed to have committed crimes during the Chechen war, can give them the name of someone who can prove it. His friend says that she will only come to him. So he goes and she gets the info and tries to get out but the man finds out and tries to get her. Peter arrives and gets her but as they are getting away they're shot at. She is killed but tells Peter the name before she dies. Peter kills the men who attacked them but when he sees the leader, Mason, a man he trained, he realizes the CIA is involved. He tries to find the person and the only person who might know where she is, is Alice Fournier, the social worker who helped her when she came to the West. A CIA bigwig comes and orders that Devereaux be taken out and wants Mason to take care of it. An assassin whom the Presidential candidate sent to make sure no one wrecks his chances of becoming President. Devereaux finds Alice and tries to protect while trying to find the girl. [D: Roger Donaldson; A: Pierce Brosnan, Luke Bracey, Olga Kurylenko]
  • Tomorrowland (2015; Mystery, Sci-Fi) Bound by a shared destiny, a bright, optimistic teen bursting with scientific curiosity and a former boy-genius inventor jaded by disillusionment embark on a danger-filled mission to unearth the secrets of an enigmatic place somewhere in time and space that exists in their collective memory as "Tomorrowland." [D: Brad Bird; A: Britt Robertson, George Clooney, Judy Greer]
  • Under the Skin (2013; Drama, Sci-Fi, Thriller) A female drives a van through the roads and streets of Scotland seducing lonely men. [D: Jonathan Glazer; A: Scarlett Johansson, Jeremy McWilliams, Lynsey Taylor Mackay]


Finalmente, el conteo de pendientes por fecha:

(Ene-2009)    1   1
(May-2009)    5
(Oct-2009)   14
(Mar-2010)   18  16   4
(Sep-2010)   18  18  18   9   2   1
(Dic-2010)   13  12  12  12   5   1
(Abr-2011)   23  23  23  23  22  17   4
(Ago-2011)   12  11  11  11  11  11  11   4
(Ene-2012)   21  21  18  17  17  17  17  11   3
(Jul-2012)       15  15  15  15  15  15  14  11
(Nov-2012)           12  12  11  11  11  11  11   6
(Feb-2013)               19  19  16  15  14  14   9
(Jun-2013)                   19  18  16  15  15  15
(Sep-2013)                       18  18  18  18  17
(Dic-2013)                           14  14  12  12
(Abr-2014)                                9   9   8
(Jul-2014)                                   10  10
(Nov-2014)                                       24
Total:      125 117 113 118 121 125 121 110 103 101

Read more
facundo

A la caza del Octubre


Cuando estuve planificando el segundo semestre de este año no tenía idea que Octubre iba a estar tan complicado.

Lo primero grande que me llevó mucho tiempo fue el cumpleaños de Felipe. Este año hicimos algo en un saloncito (el mismo donde le festejamos el primer cumple) para los amiguitos del jardín y todos nuestros familiares/amigos que tienen niños, el mismo viernes que Felipe cumplía. Y luego un asado en casa para todo el resto de amigos y familiares, el domingo siguiente.

Felu soplando la velita

Salió todo muy bien, pero organizar todo lleva varios, varios días y terminás exhausto :p. Igual, la que más labura en estos casos es Moni, desde muchas semanas antes... haciendo decoraciones, los souvenirs, escenografías, y mil cosas más. Yo me ocupo de muchas cosas que tienen que ser los últimos días, así que lo mío es más corto, pero intensivo.

Felipe 5

Algo que no tenía planeado al armar el segundo semestre era una semana de laburo en Washington. Claro, es una semana hábil más el viaje durante el finde, así que ocupa bastante tiempo.

Yo ya conocía Washington (ver este post y siguientes), así que no me hice mucha malasangre porque no tenía tiempo de pasear por los alrededores y el centro. Igual algo caminamos, especialmente una noche que hicimos la cena de equipo, y nos fuimos a una ciudad costera cercana, a comer "bien local" (estuvo buenísimo). Y siempre es una excusa para volver a reencontrarse con gente, romper la rutina, jugar algunos juegos de mesa, etc... ¡ah! y trabajar en equipo, claro, :p

Salsa

Y para cerrar el mes, justo la semana posterior al viaje, asistí a mi primera Ekoparty (la conferencia seguridad más grande de latinoamérica). Esto lo estoy escribiendo el jueves a la mañana, así que todavía me resta asistir a dos tercios de la misma, y el primer día estuve a full en el stand de PyAr.

Bueno, "estuve", ¡estuvimos! Con Gabriel, Osiris, Nico y Julián, armando todo lo que es la competencia de Python Argentina, que armamos especialmente para Ekoparty. Lo que armamos fue un TypusPocus toqueteado especialmente para el evento; lo hacemos correr en una RasPi en modo "kiosco" para que la gente juegue, y sincronicamos los highscores a otra RasPi donde también corre TypusPocus, en modo "showcase" (mostrando highscores y propagandas de PyAr, la próxima PyConAr, y cosas del mismo juego).

Stand de PyAr en la Ekoparty

El stand va siendo un éxito. Ayer volaron los 100 microtutoriales que llevé, y la gente viene y va todo el tiempo. El jueves (hoy!) voy medio día, y mañana ya voy desde temprano y me quedo hasta bien el final. Y como ya tenemos 98% de todo listo, seguro que voy a ir a varias charlas de la conferencia misma, que hay algunas muy copadas.

Y ni hablemos de que todavía no liberé la nueva versión de Encuentro, o que tengo a medio armar varias cosas de CDPedia, las clases atrasadas de tenis, y muchas cosas para hacer en casa. Esperemos que Noviembre venga más tranquilo...

Read more
facundo


¿Qué es un satélite? Hay varias definiciones... para el propósito de este artículo, podemos decir que es un objeto que orbita alrededor de otro. Nuestro planeta tiene un satélite natural (la Luna) y muchos, muchísimos satélites artificiales.

Crear un nuevo satélite artificial, es decir poner un aparato creado por los humanos a girar alrededor de la tierra es bastante fácil. Es cuestión de subir el aparato lo suficientemente alto, es decir, ponerlo en órbita. Claro, crear un satélite artificial útil tampoco es moco de pavo, hay que ponerlo en una órbita más o menos controlada, y poder comunicarse con el aparato.

Hay un detalle importante en la frase anterior. Estoy hablando de órbitas... una órbita terrestre es el camino que recorre el satélite cuando está girando por alredor de la Tierra. Y claro, hay muchas, ¡infinidades! Agarren una pelota, por ejemplo, y van a ver que pueden trazar con una lapicera muchísimos recorridos distintos alrededor de ella, y a eso hay que sumarle que las órbitas pueden estar a distintas alturas (la altura del satélite afecta la velocidad a la que se desplaza, cuanto más abajo está más rápido tiene que ir para no "caerse", mientras que cuanto más alto está más lento tiene que ir para no "salir disparado" de la órbita terrestre).

Órbitas hay un montón, pero no todas son útiles. Un ejemplo de una órbita útil es la llamada "órbita sincrónica al sol", que se logra combinando altitud e inclinación para lograr que el satélite pase sobre una determinada latitud terrestre a la misma hora del día. Esto es piola para aquellos satélites que tienen que sacar imágenes del suelo terrestre, porque quizás es suficiente con que pasen un par de veces al día por arriba del lugar que tienen que fotografiar. Es el caso de los nanosatélites que estuvimos mandando estos años.

Hay, sin embargo, una órbita que es muy especial. Si al satélite lo ponemos justo sobre la linea del ecuador, y lo hacemos girar a una velocidad específica, en lugar de verlo pasar cada tanto, lo vamos a estar viendo siempre en el mismo punto en el cielo.

Esta órbita se llama geostacionaria. Para ponerlo en términos precisos, la órbita geoestacionaria es una órbita geosíncrona en el plano ecuatorial terrestre, con una excentricidad nula (órbita circular) y un movimiento de oeste a este.

Órbita síncrona

Arthur C. Clarke popularizó la idea de utilizar la órbita geoestacionaria para poner allí satélites de comunicaciones (lo hizo en un paper en 1945, "Extra-Terrestrial Relays", por el cual ganó el premio Marconi en 1982).

Un satélite en órbita geoestacionaria es muy importante para las comunicaciones, porque como siempre se lo ve en el mismo lugar, se puede apuntar una antena y dejarla fija en esa dirección, y tener un enlace permanente con el satélite. O sea que dos puntos en la tierra, apuntando al mismo satélite, pueden estar comunicados todo el tiempo. Este concepto es la base de las comunicaciones modernas en nuestra sociedad, afectando profundamente la forma en que vivimos.

Las órbitas geoestacionarias sólo se pueden conseguir muy cerca de un anillo de 35.786 km sobre el ecuador. En la práctica, esto significa que todos los satélites geoestacionarios deben estar en este anillo, y sólo en ese anillo, por lo cual la cantidad de satélites que se puede poner ahí es limitada.

Estarán de acuerdo conmigo que las comunicaciones son un factor clave en nuestra sociedad: es por eso muy importante quien tiene el poder sobre los satélites en esa órbita, quien los controla. La organización que está coordinando la asignación de estos espacios es la Unión Internacional de Telecomunicaciones.

Con el ARSAT-1 (lanzado el pasado 16 de Octubre) Argentina vuelve a ocupar una posición orbital que tenía asignada (que estuvo ocupada hasta el 2010 por el Nahuel 1A), y que corría el riesgo de perder luego de cuatro años de no utilizarla.

ARSAT 1

Es por eso que este satélite era tan importante. No sólo porque fue desarrollado, financiado y ensamblado acá (Argentina es ahora una de las pocas naciones que hacen sus propios satélites) sino porque es un factor clave en la soberanía del país, ya que permite tener control propio sobre un elemento clave para las comunicaciones.

Read more
facundo


¿Cómo es que llegaste a leer esto? En algún momento apretaste un botón y la computadora se prendió. Luego hiciste un click y se abrió el navegador. Hiciste otro click o escribiste algo, y entraste a mi blog.

Esos son ejemplos de causas y consecuencias. Estamos muy acostumbrados a vivir en un mundo donde las causas y las consecuencias están firmemente atadas. Lo vemos todo así, aunque no estemos todo el tiempo razonándolo. Ejemplo: vemos una hoja en el piso. Sabemos que la hoja vino de un árbol, aunque no razonamos toda la secuencia: la hoja estaba en el árbol, la hoja se desprendió, fue cayendo y desplazándose por efecto de la gravedad y el aire, hasta que cayó donde la vemos.

Incluso, podríamos hacer el razonamiento al revés: vemos la hoja, está ahí porque cayó del árbol, cayó porque se desprendió, etc. En general, sin embargo no hacemos estos razonamientos de forma consciente.

Todo esto es común para vos, y no presenta mayor sorpresa, ¿cierto? Eso es porque estamos acostumbrados a la causa y consecuencia, forma parte de nuestra experiencia como humanos, es la forma en que nuestro cerebro interpreta todo lo que nos pasa. Desde que nacemos estamos expuestos a lo que nuestros sensores capturan (ojos, oídos, piel, etc), y formamos una imagen de la realidad en base a esa información.

Pero esa realidad que nosotros percibimos, y que nos es común (en el sentido en que la vivimos siempre, y en que es la misma que viven el resto de los humanos), es sólo parte de todo lo que realmente existe. Es decir, sólo interpretamos parte de la realidad, sentimos sólo una parte de lo que realmente existe. Y todo aquello que está fuera de nuestra experiencia es muy difícil de entender, porque nuestro cerebro no está acostumbrado a procesarlo.

Una de esas cosas es el tiempo. Y no estoy hablando de si llueve o mañana va a ser un día soleado (o sea, el clima) sino el tiempo como lo que pasa entre el "antes", el "ahora" y el "después". Nosotros creemos que entendemos qué pasa con el tiempo, porque en general estamos expuestos a siempre lo mismo con respecto a esa variable física. Siempre sentimos parte de la realidad, aquella en la que la flecha del tiempo es reversible. Por eso a partir de la situación del ahora se puede deducir la situación del después. O incluso sabiendo el estado actual podemos saber como estaba el sistema antes.

Pongamos un ejemplo para entenderlo mejor: soltemos una pelota en el aire...

La pelota, antes de soltarla

En el momento de soltar la pelota, la misma está quieta y a una altura determinada. Si yo te pregunto, qué pasa luego de soltar la pelota, me contestarías fácilmente. Obviamente, momentos después, la pelota está más abajo, y cayendo a una velocidad determinada...

La pelota, un rato después

También, si en lugar de mostrarte las dos imágenes al mismo tiempo, te muestro la segunda, te podés imaginar la primera. Es como en el caso de ver la hoja del árbol en el piso, sabés que antes estaba en una rama.

Implícito en todo esto está la reversibilidad del tiempo. Viendo la primera imagen (que está sacada en "tiempo cero") podemos imaginar el avance del tiempo y predecir que va a pasar después (con tiempo t‚, obviamente mayor que cero) , o viendo la segunda imagen podemos predecir que pasaría si el tiempo retrocediese e imaginar la primera imagen.

Lo vemos incluso en las ecuaciones que describen este modelo simple. Vayamos por ejemplo a las posiciones... la ecuación para esto es:

  e = ½.a.t²

Eso es: el espacio recorrido (h‚ - h, en el dibujo) es la mitad de la aceleración multiplicada por el tiempo que pasó al cuadrado. Si entre la primera y segunda imagen pasaron 2 segundos, siendo la aceleración 9.81m/s² (más o menos, acá en la Tierra), tenemos que el espacio es 19.62m. O sea, viendo la primera imagen podemos deducir que 2 segundos después la pelota va a estar casi 20 metros más abajo... y si vemos la segunda imagen, podemos deducir que 2 segundos antes (o sea, usando t=-2s en la ecuación) la pelota estaba esa distancia más arriba (el espacio lo recorremos en la dirección contraria, porque el resultado de la ecuación nos dio negativo).

Más allá de la complejidad matemática (?) todo esto que te estoy contando no te parece muy loco, ¿no? No. Pero ojo... no todo es tan simple en esta vida (bah, en este Universo).

Y no es tan simple, porque esto de poder ir para adelante y para atrás en el tiempo ,en nuestra mente, en nuestros razonamientos, ¡sorpresivamente no siempre se cumple!

Vayamos con otro ejemplo sencillo (aunque un poco más difícil de construir)... mirá el siguiente dibujo.

Foton loco, viaje de ida

Eso es una lamparita que tira de a un fotón (la mínima unidad de luz, su partícula elemental), una superficie semiespejada (la explico abajo), y un detector de fotones (que nos va a decir si el fotón llegó ahí).

La superficie semiespejada es un instrumento óptico que tiene el siguiente efecto: deja pasar la mitad de la luz, y la otra mitad la refleja. O sea, si lo iluminamos con un millón de fotones, la mitad sigue derecho, y la otra mitad rebota. En el caso de nuestro experimento, que le tiramos de a un sólo fotón, podemos decir que ese fotón tiene la mitad de chance de ser reflejado, y la mitad de chance de seguir derecho. [0]

Entonces, veamos qué pasa cuando la lamparita emite un fotón. Este va derechito hasta el espejo (recorrido A-B), y como dijimos puede seguir su camino o reflejarse e irse para la pared. Podemos decir que el recorrido A-B-C tiene un 50% de probabilidad de que suceda, y el recorrido A-B-D tiene la otra mitad. Piénsenlo como las dos fases del ejemplo anterior, el de la pelota: viendo el fotón saliendo de la lamparita como estado inicial, se pueden imaginar que va a pasar después (o sea, avanzando en el tiempo): que el fotón pegue en el detector, o que pegue en la pared.

Pero ahora hagamos la pregunta inversa: arranquemos de la segunda imagen, y tratemos de deducir la primera. O sea, tratemos de imaginar qué pasó antes (retrocediendo en el tiempo), arrancando nuestra visualización desde el fotón impactando en el detector. Para eso voy dibujo el mismo experimento, pero con otros recorridos...

Fotón loco, viaje de vuelta

¿Cómo se entiende este nuevo dibujo? Como decía, tenemos que pensar para atrás. Si nosotros sabemos que el detector recibió un fotón, la trayectoria B-C seguro se cumplió; entonces, al punto B del semiespejo el fotón llego de uno de dos lados posibles: o de la lamparita en A (atravesando el semiespejo), o desde un nuevo punto D (reflejándose en el semiespejo).

Acá me dirás que le estoy pifiando conceptualmente... ¿cómo puede ser que el fotón salga desde el punto D, que arranque desde una pared? Pues claro, ¡el fotón no puede venir nunca de ahí! Eso hace que la trayectoria E-B-C no sea realmente posible. En otras palabras, el fotón salió sí o sí de la lamparita: la trayectoria A-B-C se recorrió seguro (un 100% de probabilidad).

No te sientas frustrada/o si tenés que leer dos o tres veces la explicación para entender que pasa, es bastante avanzado a nivel de física. Yo, la primera vez, lo tuve que leer como cinco veces ;). Una de las razones por la que cuesta entenderlo, y hasta aceptarlo es que, justamente, todo eso está por afuera de lo que nosotros sentimos del universo, no forma parte de nuestra experiencia.

En fin, resumiendo los dos análisis: si hacemos que el tiempo se desarrolle para adelante, arrancando con el fotón desde A, vemos que puede recorrer dos trayectorias, A-B-C o A-B-D, con un 50% de chances cada una. Pero si hacemos que el tiempo se desarrolle para atrás, arrancando con el fotón desde C, tenemos que sólo pudo recorrer un camino: A-B-C.

¡Esta es una muestra de que el fotón atravesando el semiespejo no se comporta de una forma reversible en el tiempo! El tener dos posibles recorridos cuando hacemos correr el tiempo para adelante, y uno solo cuando lo hacemos recorrer para atrás, es totalmente distinto a lo que veíamos en el primer experimento, y totalmente distinto a la forma en que vemos normalmente a nuestro entorno, a la forma en que experimentamos el Universo.

La razón de este comportamiento se explica en las bases de la mecánica cuántica, donde se ve y entiende que hay todo un modelo que explica nuestro Universo con el tiempo reversible, pero hay toda una parte donde el tiempo no lo es. O sea, hay toda una rama de la física donde en las ecuaciones no podemos cambiarle alegremente el signo a t.

Respirá aliviada/o, no voy a meterme en toda esa explicación ;) [1]. Pero lo que te quería mostrar es que ahí afuera, aunque no lo veamos, aunque no forme parte de nuestra experiencia como humanos, hay todo un Universo al que sólo podemos acceder con el poder de nuestros cerebros y su capacidad de pensamiento abstracto. Es una herramienta maravillosa, ¡la tenemos que entrenar más y mejor!


[0] Para usar terminología adecuada, tenemos que decir que hay una amplitud de uno sobre raíz cuadrada de dos de que el fotón esté en un lado y la misma amplitud de que esté en el otro... eso es hablando de distribución de amplitudes con respecto a las posiciones... el módulo del cuadrado de eso nos da la probabilidad de que el fotón esté en un punto o el otro, que es .5 en cada caso.

[1] Pero si te interesa, hay un libro que es GENIAL y que habla de esto en tres o cuatro páginas del medio millar que tiene: The Emperor's New Mind, de Roger Penrose

Read more
facundo

Jardinera


Sí, ya sé que estoy denso con las fotitos de Malena... ¿¿¿pero qué quieren que haga???

<baba>
Malena jardinera
</baba>

Read more
facundo

¡Carne!


Mi familia es bastante carnívora (como sucede con los argentinos en general). Cuando vivía con mis padres, no tenía mayor injerencia en cómo, dónde o cuando se compraba la carne (aunque existe la anécdota de que yo, de niño, siguiendo una receta, fuí a la carnicería del barrio a comprar "un kilo de ternera", y el carnicero me preguntaba "¿pero qué corte"?).

Cuando volé del nido, una de las cuestiones que tuve que decidir y hacerme cargo, fue, obviamente ¿dónde comprar la carne?

No es una pregunta sencilla. Bah, la pregunta es sencilla, lo que no es simple es la respuesta. Para simplificar, voy a contar solamente mi última experiencia.

A muchos les gusta construir una "relación especial" con el carnicero/a del barrio (no encontré una manera de escribir eso que no suene un poco pornográfico). De esa manera, siempre tratan de conseguir un corte lindo, una mejor atención, etc. Mi problema es que en la zona donde vivo la carne está cara. Eso me llevó a ir buscando precios por un lado, por el otro, y al final terminé en Chalín, un frigorífico que descubrió mi viejo por la zona de Mataderos.

Mataderos es lejos de casa, sin embargo. Durante mucho tiempo Chalín hacía delivery, con lo cual me traían el pedido a casa (entonces, me resbalaba que fuese lejos).  Desde hace un tiempo, sin embargo, no tienen más ese servicio, pero se puede encargar el pedido y pasarlo a buscar. Aunque no podés elegir el pedazo de carne puntualmente (esa tira de asado, ese pedacito de vacío), pasar a buscar el pedido tiene la ventaja de que no tenés que hacer la cola.

¡Y no hacer la cola es importante! Es que en Chalín se junta gente. Normalmente, tenés una espera de dos o tres horas. Pero me ha pasado de ir en una fecha complicada (para las fiestas de fin de año), llegar a las 7:50 de la mañana, y encontrarme con que tenía 270 personas adelante!! Me terminé yendo a las 12:40 :/

Ahora, ¿tiene sentido ir a buscar la carne hasta allá? De Olivos a Mataderos hay una distancia respetable, y aunque en tiempo no es tanto, hay un gasto de nafta, etc. Una vez, a principio de año, comparé los precios y calculé que, para la compra que había hecho, en Chalín gasté $998, y en la carnicería del barrio habría gastado $1309. Sí, más de 300 mangos de diferencia.

En fin. El punto es que hace mucho tiempo que compro en Chalín, para el consumo de la casa, para cuando hago asados por un cumpleaños, o mis asados geek. Incluso tengo el historial de precios, desde hace cuatro años y medio, que les comparto acá.

Carne

No dejo de buscar alternativas, sin embargo, por si deja de ser la mejor opción. El otro día un conocido que respeto mucho culinariamente me recomendó el Frigorífico Las Heras, que tienen delivery, y decidí probarlos.

Tienen varias cajas, paquetes prearmados de opciones. Por ejemplo, yo compré la "Familiar", que traía "cortes de milanesa, picada, y peceto" (según me dijeron por teléfono). Cuando llegó la caja, ví que tenía 3.5kg de picada, los cortes para milanesa eran 1.5kg de nalga, 1.6kg de cuaddrada, y 1.3kg de bola de lomo, y finalmente el peceto, 1.4kg.

Las principales ventajas de este frigorífico son que te traen el pedido a tu casa, y que viene empaquetado al vacío, super cómodo de manejar y meter en el freezer.

Pero aunque la carne es un poco mejor que en Chalín, me cobraron $70 el kilo (mientras que en Chalín, a esas cantidades de esos cortes, hubiese tenido un promedio de $51 por kg). Y no hay una diferencia de calidad que amerite esa diferencia de precios.

Sí, a Chalín la tengo que ir a buscar. ¡Pero compro los cortes que quiero! Finalmente, un detalle no menor: en Chalín *siempre* me dieron un ticket AFIP válido, y del frigorífico Las Heras no me trajeron boleta.

Read more
facundo

Ciento catorce


Van
en ronda porfiada
ancianas de viento
de un frío que gasta
tacleando al olvido
yugando el dolor

Van
en ronda mareada
remando en silencio
a orillas de un tiempo
de grises, de ausencias
de niebla en la voz

Van de pie con las heridas altas
convidando memoria
y andarán contra mugre y perdón
aunque duren los cuervos
llueva este asco
y pesen los pies

Van
pañuelos curtidos
de llantos inmensos
de soles de inviernos
diciendo los gritos que nadie gritó

Van
en ronda acunada
tobillos cansados
y ovarios de hierro
pariendo el coraje que nadie parió

Van de pie con las heridas altas
convidando memoria
y andarán contra mugre y perdón
aunque duren los cuervos
llueva este asco
y pesen los pies

Aunque duren los cuervos
llueva este asco
y pesen los pies



Autores: Iván Noble y, Martín Mendez; Intérprete: Los Caballeros de la Quema

Read more
facundo


Se nos está terminando Julio, así que ya debería tener casi todo el segundo semestre medio planificado... sino después se me empiezan a pisar las cosas y tengo que cancelar eventos, etc.

La segunda mitad del año es normalmente la más cargada de eventos tanto de Python como de otros ámbitos... y a mi no se me ocurrió mejor idea que ponerme un curso que me ocupa todos los sábados de Agosto y Septiembre: un curso introductorio de Locución y Técnicas Vocales, en ETER.

Lo primero que se me pisa es el 9 de Agosto mismo, un sprint organizado por Lipe (está buscando laburar con cosas de torrent, pero yo creo que voy a ir a hacer Encuentro o CDPedia). Obviamente voy a ir a la tarde, no creo que haya problema.

Lo segundo que se me pisa (y me complica la vida) es el PyDay en Luján, el 20 de septiembre. Acá la tengo más complicada, porque encima de que salgo del curso a las 13, me tengo que ir hasta Luján. Igual, voy seguro, porque lo más probable es que de alguna charla (propuse dos repetidas y una nueva, sobre consejos de debugging).

Ya en Noviembre (con lo cual el curso no molesta) está la PyCon, en Rafaela, el viernes 14 y sábado 15, aunque lo más probable es que vaya el día anterior, para viajar tranquilo, ayudarlos a terminar todo, etc.

El 26 de septiembre, viernes, a la noche, tengo un curso en La Plata, donde doy Introducción a Python en un Postgrado de Informática para Científicos, como en la mayoría de los últimos años.

Los últimos días de Septiembre y los primeros de Octubre, aunque no hay nada puntual, me los voy a tratar de dejar liberados, porque está el cumpleaños de Felu. Seguramente haremos algo menos para adultos, más para compañeros de jardín y eso, pero no sabemos todavía exactamente qué, y siempre es un montón de trabajo :p

En fin... un segundo semestre bailado. Encima estoy bastante ocupado en general, especialmente en el laburo porque en estos meses ya sale a la calle el teléfono de Ubuntu, y también porque finalmente estamos hablando seriamente de hacer la asociación civil de Python Argentina (tenemos una lista separada para charlar de eso) y aunque ahora los abogados están de feria, después seguro voy a tener algunas reuniones, trámites para hacer, etc.

Read more
facundo

Malena y el mate


¡Le encanta! Lo señala y dice "agua", para que le ponga agua del termo, y luego toma, y toma... a veces se chorrea un poco, lo cual se complica porque las manchas de mate en la ropa son un tema, pero bueh...

Malena y el mate

Read more
facundo


Algunas tardes de sábado libre, más un par de viajes, hicieron que no me quede atrás con las películas...

  • A good old fashioned orgy: +0. De esas comedias livianas sobre la amistad y el amor. Divertida, no es gran cosa, pero está bien.
  • Apollo 18: -0. La idea general es interesante, pero ese querer simular una película con pedazos de filmaciones "reales" hace que todo sea muy forzado, especialmente cuando se nota lo "no real".
  • Catch .44: -0. Desordenada, aburrida, sin una historia que valga la pena.
  • Jack Ryan: Shadow recruit: +0. Una de acción, bien hecha, pero no más que eso.
  • Le noms des gens: +0. Una comedia simpática que plantea puntos interesantes sobre los franceses... y sobre el amor.
  • Like crazy: -0. Una historia de amor, que muestra las dificultades de las distancias. Aunque tiene sus momentos, en general la peli es muy lenta, y no entusiasma.
  • Prometheus: +0. Es una más de "alien", pero bien hecha, me gustó bastante, aunque al final no dejar de ser eso... una más de "alien" :)
  • Sherlock Holmes: A game of shadows: +0. Está perdiendo un poco la gracia (y es la segunda!), pero las buenas actuaciones y una historia interesante la salvan.
  • The darkest hour: -0. Un par de conceptos interesantes... pero no deja de ser una peli yanqui de adolescentes.
  • The girl with the dragon tattoo: +1. Una gran película, muy densa en contenidos (deja entrever que el libro es mucho más sabroso) y que te tiene atrapado hasta el final. Eso sí, muy dura (es un warning, no le resta).
  • The grey: +0. Fuerte, dura, pero bastante conceptual, con planteos que me gustaron. Estaría mejor si no estuviese bastante llena de golpes bajos al pedo (como ruidos que te quieren sorprender cuando lo único que sucedes es un cambio de encuadre que no tiene nada que ver).
  • The monuments men: +0. Un punto de vista sobre la guerra como destructor de culturas que no había pensado antes. Bien armada, con actuaciones decentes.
  • The rum diary: -0. Tiene un trasfondo interesante, pero la peli en general es aburrida, y no vale la pena.
  • Underworld: Awakening: -0. Ni siquiera más de lo mismo, antes las "underworld" tenían conceptos o historias interesantes... está es una mezcla mala de resident evil y blade; no más underworld para mí, gracias.


Pocas nuevas, eso sí, incluso metiendo una peli vieja en la lista...


Finalmente, el conteo de pendientes por fecha:

(Ene-2009)   12   1   1
(May-2009)   10   5
(Oct-2009)   15  14
(Mar-2010)   18  18  16   4
(Sep-2010)   18  18  18  18   9   2   1
(Dic-2010)   13  13  12  12  12   5   1
(Abr-2011)   23  23  23  23  23  22  17   4
(Ago-2011)   12  12  11  11  11  11  11  11   4
(Ene-2012)       21  21  18  17  17  17  17  11   3
(Jul-2012)           15  15  15  15  15  15  14  11
(Nov-2012)               12  12  11  11  11  11  11
(Feb-2013)                   19  19  16  15  14  14
(Jun-2013)                       19  18  16  15  15
(Sep-2013)                           18  18  18  18
(Dic-2013)                               14  14  12
(Abr-2014)                                    9   9
(Jul-2014)                                       10
Total:      127 125 117 113 118 121 125 121 110 103

Read more
facundo

¿Dónde estaba Dios?


Hay un micro de la segunda temporada del genial programa "Filosofía aquí y ahora", de José Pablo Feinmann, que se llama ¿Dónde estaba Dios?. Lo pueden ver acá, pero les transcribo el texto, que es cortito...

    En el tema de Auschwitz está el tema de Dios.

    Es un tema muy muy complejo, y más de un teólogo se pone de muy mal humor cuando se menciona el tema de Dios con respecto a Auschwitz, pero más de un filósofo ha preguntado ¿dónde estaba Dios en Auschwitz?

    E incluso Primo Levi, que es el gran escritor judío, que escribe "Si esto es un hombre", "Los hundidos y los salvados"... dice "Existe Auschwitz, no existe Dios".

    Y Karl Löwith, que también es un gran pensador judío, discípulo de Heidegger, dice "Luego de Auschwitz es imposible pensar un Dios totalmente bueno".

    Es muy contundente, todo esto. Hay un tango, incluso, genial, que dice "¿dónde estaba Dios cuando te fuiste?". O sea, nuestra tanguística es tan excepcional que puede ser comparada con los grandes filósofos del siglo XX.

    Es lo mismo, ¿dónde estaba Dios cuando te fuiste?.

Y como cierre, tenemos al Chino Laborde, invitado de Demoliendo Tangos, interpretando, justamente, "Canción desesperada", de Enrique Santos Discépolo.

Read more
facundo

Satélites argentinos


Estos días fue lanzado exitosamente el tercer nanosatélite argentino, "Tita" (llamado así en honor a Tita Merello).

Se llaman "nanosatélites" porque, justamente, son mucho más chicos (y baratos) que los satélites "tradicionales". En particular, Tita pesa unos 25 kilos, está equipado con tres antenas y lleva una cámara para tomar fotos y videos en alta definición.

El satélite Tita, siendo instalado en el lanzador

Lo desarrolló la empresa argentina Satellogic, pero no lo lanzamos nosotros al espacio (todavía no tenemos esa capacidad), sino que fue lanzado desde la ciudad rusa de Yasny. Su objetivo es tomar imágenes durante tres años, en colaboración con otros nanosatélites, los ya lanzados Capitán Beto (llamado así obviamente en referencia a la canción de Spinetta) y Manolito (por el personaje de Mafalda), y a otros 15 satélites que Satellogic planea lanzar durante el próximo año.

Pero Tita es diferente a los dos anteriores, que pesaban alrededor de dos kilos. También es un prototipo, y usa las mismas estrategias de diseño y fabricación con componentes de uso comercial (resortes de ferretería, electrónica de teléfonos celulares y computadoras personales), pero este permite tomar imágenes y videos de dos metros de resolución. Esencialmente, la gente de Satellogic está haciendo lo mismo que hace un satélite convencional, pero a un precio entre cien y mil veces menor.

En este video bastante interesante podemos ver a Lino Barañao (Ministro de Ciencia y Tecnología) y Emiliano Kargieman (CEO de Satellogic), contándonos un poco todo esto (y de paso se ven pasos de la construcción, y las oficinas, ¡donde se ve bastante gente de PyAr trabajando!).



Como detalle final, les dejo este audio de Adrián Paenza hablando sobre los satélites (en general) en el programa La Mañana de Victor Hugo Morales.

Read more
facundo

Malta


La semana pasada estuve de sprint, esta vez en un destino al que no había ido nunca. Malta. Siempre que lo menciono, todo me preguntan donde está Malta (yo tampoco sabía)... bueno, está acá:

Mapa de Malta

Es una isla principal, con un par de islas pequeñas alrededor... parece chica, pero tiene casi medio millón de habitantes, y sorprendentemente la más alta densidad de población de Europa [-].

No pude pasear demasiado y conocer, lamentablemente, porque el domingo llegué tarde y el sábado me fui temprano... y durante la semana trabajé un montón. Muchos de mis compañeros llegaron un día antes y se fueron un día después, pero yo no elegí eso. En parte porque eran dos días más que estaba lejos de casa, extrañando, en parte porque le complicaba la vida a Moni dos días más de la semana.

La ciudad es rara. Tiene algo de pintoresco, pero también de decadente. Hay edificios muy lindos, y hay otros que son directamente feos. Que el 90% de las construcciones estén hechas con la misma piedra local le da a todo un tono peculiar.

Edificios

Aunque es una isla, y algunas playitas de arena tiene, la mayoría de la costa es rocosa. Obvio, igual la gente toma sol, nada, disfruta del mar, etc. Algo que nos llamó mucho la atención fueron unas piletas cavadas en las rocas de la playa... algo así como saunas naturales...

Piletas en la costa

Todas las fotos acá.

Read more
facundo


En este post detallé todo lo que querría tener en el testrunner ideal, con la idea de trabajar un poco sobre eso en el último PyCamp.

Así fue. Nos sentamos un rato largo con Martín Gaitán y empezamos a ver si con nosetest podíamos lograr parte o todo de lo que queremos.

Algo en lo que no nos metimos mucho es la integración de nosetests con frameworks que proveen un reactor (o main loop). Buscando un poco ví que hay algo para integrarlo con Twisted, bastante sencillo, pero no encontré nada para GTK o Qt... no sé si porque no se puede, o es automático :p

Entonces, vayamos a los bifes... ¿qué necesitamos para tener el testrunner ideal?

Keep testing


Los componentes

El primer paso, obvio, es instalar el nosetests base. Con esto tenemos el primer par de puntos de lo que queríamos en mi post original: que soporte recibir un directorio y que busque de ahí para abajo, y que al recibir un archivo que corra los tests de ese archivo.

El primer plugin que necesitamos para ir a donde queremos es "nose-progressive". Este es un plugin que nos cambia bastante la forma de ver los resultados de los tests. Por ejemplo, no hace falta que muestre cada linea de cada test ejecutado, en jerarquía, porque ante un error nos va a dar un pequeño resumen donde podemos ver la info del test que falló.

También nos va a dar un lindo OK en verde si todo salió bien... y si hubieron problemas vamos a ver esos resúmenes, coloridos, con un montón de info copada.

De la info que nos da en ese resumen también podemos extraer el path para correr el test sólo, o toda la clase, todo el archivo etc. Pero también tenemos otro plugin, el "nosecomplete" que hace que podamos ir escribiendo el path para un test, autocompletando de una forma muy piola, descubriendo lo que hay para correr.

Para correr más de un test, un subconjunto que matchee con una regex, tenemos el "nose-selecttests", que nos permite pasarle un --select-tests= que hace que le podamos pasar luego aquello que queremos que coincida.

Finalmente, tenemos varios detalles. Le podemos decir que corte en el primer test que falla, y que no siga, con -x. También podemos pedirle que no esconda ni los prints que hagamos ni lo que logueamos, con --nocapture y --nologcapture. Y le podemos pedir que nos tire un buen resumen de cuales tests tardan más con --with-timer (necesitamos el plugin "nose-timer").


Armando el entorno

Lo primero, obviamente en el virtualenv de tu proyecto, es instalar nose y todos sus plugins:

    pip install nose nose-progressive nose-selecttests nose-timer nosecomplete

Para el plugin de autocomplete, como autocompletamos desde el shell, realmente, tenemos que hookear al mismo con el plugin de nose. Es copiar y pegar algo, nada más, las instrucciones acá.

Finalmente, hay que decirle a nose, cuando lo ejecutamos, que use tal o cual plugin, y de qué forma. Acá viene mezclada la mano... algunas configs la podemos poner en el el $HOME/.noserc...

    [nosetests]
    with-progressive=1
    nologcapture=1
    verbose=1

..., pero otras las tenemos que especificar al ejecutarlo:

    nosetests --progressive-bar-filled=2 --progressive-function-color=1 --progressive-dim-color=5

Esto último se podría meter como un alias del bash, o simplemente encapsularlo en un script 'test' en el proyecto (junto con algún pyflakes o pylint, etc).

En fin. Lo importante es: Keep Testing :)

Read more
facundo

Encuentro 2.0


Como varias veces ya les conté, Encuentro es un simple programa que permite buscar, descargar y ver contenido del Canal Encuentro, Paka Paka, BACUA, Educ.ar y otros.

Hoy estoy liberando la versión 2.0, una versión importante ya que hace que todo vuelva a funcionar correctamente, luego que Encuentro y Conectate reconfiguraran sus portales. En otras palabras... actualizá, sí o sí.

Encuentro

La versión 2.0 trae los siguientes cambios con respecto a la versión anterior:

  • Vuelve a funcionar luego de los cambios de backend de Encuentro y Conectate
  • Maneja las temporadas de los programas; no se repiten nombres y graba agrupado a disco
  • Sólo anota (y no requiere aprobación del usuario) al tener errores en la descarga
  • Mejor manejo de las imágenes de los episodios, con lo cual ahora se ven las de Bacua
  • Actualiza automáticamente la metadata si se la encuentra demasiado desactualizada
  • El proyecto tiene menos dependencias, es más simple hacerlo funcionar en más sistemas
  • Soporta ser ejecutado en un virtualenv
  • Varias correcciones y detalles para hacerlo más usable y robusto

Hay muchas formas de instalarlo, todo bien explicadito en la página oficial. ¡Que lo disfruten!

Read more
facundo


Entre los viajes y las vacaciones, estos meses terminé viendo un montonazo de películas. Encima, no aparecieron muchas peliculas copadas para anotar a futuro.

Por otro lado, no estuve viendo muchas series. Con Moni estamos viendo Battlestar Galactica, y yo tengo varias a punto de arrancar (Black Mirror, Almost Human, Through The Wormhole S03).

Pero, a nivel de películas, sí recuperé bastante terreno, :)

  • Chronicle: -0. Muy bien desarrollado el tema de cómo llevar adelante, explorar, y en algún punto sobrellevar, un superpoder adquirido. El resto de la película no vale.
  • Contagion: -0. Muestra de forma interesante (y ajustado a la realidad, me parece) el proceso social ante una epidemia, y las actuaciones están bien, pero le falta como película, como historia contada, como relato.
  • Dream house: +0. Predecible, predecible, predeci..WHAT? Un giro loco, la historia está buena, las actuaciones también; quiere ser un toque de terror pero blah.
  • El hombre de al lado: -0. Tiene partes interesantes, y Daniel Araoz está genial, pero la historia no llega a evitar el naufragio.
  • Elefante blanco: +0. Una realidad que uno (yo) no conoce; bien crudo como acostumbra Trapero. Darín está bien como siempre. Podría estar mejor la historia.
  • Ender's game: +1. Es una buena adaptación del libro, y la película está buenísima. Sí, el libro está mejor, tiene toda una parte que en la peli ni aparece, y es mucho más profundo... pero todo eso no hace que la peli en sí deje de estar buena.
  • Habitación en Roma: +1. Una película hermosa, cruda, y maravillosa, sobre el "enamoramiento".
  • Haywire: -0. Una película de acción que tiene algunos buenos actores un poco desaprovechados, tiene partes buenas, pero meh, es una más sin nada que la haga valer específicamente.
  • Killer Elite: -0. Al final no es más que una historia (que sí está buena) donde muchos machotes están todo el tiempo midiendo a ver quien tiene la pistola más larga.
  • Margin call: +1. Impecablemente contado la interna humana de un descarrilamiento financiero. Me gusta mucho el punto de vista del trabajador interno de la empresa, me pareció muy veraz. Muy buenas actuaciones.
  • Men in black III: +0. Divertida. Más de lo mismo pero con lo interesante de los saltos temporales y mostrar como era MIB en el pasado :)
  • Mission: Impossible - Ghost protocol: +0. No deja de ser la misma película fantasiosa de siempre, pero esta vez me divertí bastante al verla.
  • Monsters University: +1. Tan buena como la primera, aunque totalmente distinta.
  • No strings attached: -0. Natalie Portman no la llega a rescatar; el tema es trillado, no le dan un giro interesante, y Kutcher, como siempre, resta.
  • Paul: +0. Comedia liviana, nada espectacular, para reirse un rato y disfrutar todas las referencias extraterrestroides.
  • The Avengers: +0. Un poco demasiado violenta, pero en el límite (me hacía acordar a Transformers). Me divirtió. Me gustó los (escasos) planteos filosóficos que tiene, aunque al final siempre el mensaje de "menos mal que tenemos superheroes que nos van a salvar cuando todo esté mal", con el que estoy totalmente opuesto.
  • The King's speech: +1. Fantástica película, con actuaciones soberbias, y una historia muy interesante sobre superación personal.
  • The Ledge: +1. La historia interesante, las actuaciones bien. Muy buenos contrapuntos sobre "la religión". Emotiva. Patrick Wilson mejor de lo que esperaba, y Terrence Howard, como siempre, muy muy bien.
  • The divide: +1. Muy bien hecha. Muestra tan bien las miserias humanas que, aunque no soy impresionable y me banco (casi) cualquier cosa, no la voy a volver a ver.
  • The hobbit: The desolation of Smaug: +1. Segunda parte de la trilogía, sigue estando muy buena. Sorprendente la voz de Smaug (el dragón), ¡es Sherlock! http://www.imdb.com/name/nm1212722/
  • The thing: +1. Es vieja, pero los efectos no están tan mal. Y parece que tiene un montón de lugares comunes... hasta que uno entiende que en esa época no eran comunes! ;)


Las anotadas nuevas:


Finalmente, el conteo de pendientes por fecha:

(Sep-2008)    6
(Ene-2009)   18  12   1   1
(May-2009)   11  10   5
(Oct-2009)   16  15  14
(Mar-2010)   18  18  18  16   4
(Sep-2010)   18  18  18  18  18   9   2   1
(Dic-2010)   13  13  13  12  12  12   5   1
(Abr-2011)   23  23  23  23  23  23  22  17   4
(Ago-2011)       12  12  11  11  11  11  11  11   4
(Ene-2012)           21  21  18  17  17  17  17  11
(Jul-2012)               15  15  15  15  15  15  14
(Nov-2012)                   12  12  11  11  11  11
(Feb-2013)                       19  19  16  15  14
(Jun-2013)                           19  18  16  15
(Sep-2013)                               18  18  18
(Dic-2013)                                   14  14
(Abr-2014)                                        9
Total:      123 121 125 117 113 118 121 125 121 110

Read more