Novedades: actualmente estoy impulsando el proyecto Argentina en Python, desde aquí (ver mapa)

Antes y Después

Hace varios años fui al dentista a empezar el tratamiento de ortodoncias para ubicar cada diente en el lugar que le corresponde según la ciencia (Mudo) y, al principio, seguí el tratamiento de una forma bastante militar. Hacía todo lo que me decía el dentista sobre los cuidados y demáses así el tratamiento avanzaba lo más rápido posible. Igualmente hubo algunos problemas. Los brackets se salen por morder algo muy duro o se te cortan las gomitas, por ejemplo, y eso hace que se vuelva para atrás ese diente y casi que se vuelve a empezar el tratamiento para ese diente. Como que se pierde el tiempo.

Así, pasaron los años (¡ya 4, no sabía que me había llevado tanto!) y hoy me tocó ir nuevamente a hacerme un control, aunque esta vez iba medio cabizbajo porque sabía que había hecho todo mal durante el último año. Por ejemplo, cuando me fui a EEUU el año pasado, me llevé el ortodoncia móvil como buen ciudadano y allá se me rompió una patita: la del frente. Así que, como no sabía si eso era importante o no, lo seguí usando un tiempo así. Después empecé a sospechar de que estaba mal y me autocancelé el tratamiento.

Volví de EEUU y me seguí mandando cualquiera, ya ni siquiera lo usaba por las noches. Nada de nada: 0. Siguió pasando el tiempo y la culpa crecía cada vez más, a tal punto que el Lunes pasado me hizo llamar nuevamente al consultorio y sacar un turno. Hoy fue ese gran día.

Básicamente, el Doc, Julio Alonso (un crack), me dijo que era una pena ya que todo lo que habíamos logrado mientras seguía el tratamiento ahora no lo podíamos recuperar con el ortodoncia que tengo hecho (ese móvil), que para volver los dientes a la posición casi-perfecta que habíamos logrado era necesario hacer los brackets desde 0 otra vez y que seguramente yo no iba a querer hacer eso, pero que igualmente podía tunearme el que ya tengo hecho para que me vuelva a calzar y empujar al menos un poco más. Como para que no se sigan cerrando.

Ahora bien, para todos aquellos que me han conocido en los últimos 4 años (o sea, ya con la cara que estoy portando ahora) les dejo unas fotos de mi otro yo antes de empezar todo este circo: ¡cambió sorprendentemente!...

antes-despues.jpg

Más allá de lo estético, que se ve a simple vista, lo primero que noté es la máquina de triturar cosas que tenemos en nuestro cuerpo. Es zarpada la diferencia en cuanto al esfuerzo que hace la boca para triturar la comida. Ese esfuerzo es mucho menos si tenés los dientes en los lugares correctos. Además, reduje un montón la cantidad de comida estancada entre los dientes ya que era muy difícil hacer llegar el cepillo a lugares dónde los dientes apuntaban para cualquier lado formando cavidades complicadas de alcanzar. Eso, entre un montón de otras cosas.

Yo estoy muy contento con el tratamiento y la atención de Julito. ¡Groso!


Subtítulos de cortos de David O'Reilly

Mientras estaba viajando por Buenos Aires, me llegó un mail de Paula, una de las organizadoras del Festival de Animación de Santa Fe que se realizó el fin de semana pasado preguntando si podía colaborar con la creación de unos subtítulos para los cortos de David O'Reilly que iban a pasar en el festival.

Lamentablemente, andaba muy corto de tiempo como para sumarme a hacer una cosa más, y encima soy medio duro para entender el Inglés solo escuchando que dicen los personajes (siendo que era animación, no personas a las que se le pueden leer los labios). En resumen, la tarea que se necesitaba era: "generar unos archivo de subtítulos en castellano para unos videos en inglés".

Lo primero que hice fue ver un par de videos (eran como 8) y fijarme qué tan largo eran, después qué tantas escenas de diálogos tenían, y depués si era capaz de entender esos diálogos. Para mi sorpresa, 6 de esos 8 videos no eran hablados, así que no había ningún subtítulo que hacer (quizás había algo de texto en la pantalla que necesite una traducción, no lo sé -tampoco lo hice). Entonces, de esos 2 videos que me quedaron miré un poco cada uno y me mandé a escribir el subtítulo en Inglés primero, para luego traducirlo, del corto "The External World". Decidí hacer primero el subtítulo en Inglés por dos razones:

  1. Queda el video con el subtítulo en tu idioma original, lo cuál permite que sea traducido a otros idiomas.
  2. Es mucho más fácil leer en Inglés y hacer la traducción del ese texto diréctamente, que volver al video cada vez que dudás de algo que tradujiste. Además, podés enviárselos a otros para que lo verifiquen fácilmente.

Una vez que tenía todo esto en mente y sabiendo que al menos entendía qué era lo que decían en el primer diálogo del corto, le contesté el mail a Paula y le dije: "Sí, lo puedo hacer. Al menos el de The External World ya que entiendo lo que dicen y me va a alcanzar el tiempo". Así que me mandé con ese.

Como nunca había hecho este laburo, me puse a investigar el famoso "¿Cómo mierda se hace esto?" y caí en algunos programas de subtítulos como por ejemplo gnome-subtitle y subtitleeditor. Sinceramente, ninguno de los dos están buenos: a uno le falta una cosa que tiene el otro y al otro le falta una cosa que tiene el uno. Por lo que terminé combinando ambos para generar el subtítulo en Inglés con los tiempos y las duraciones correctas.

Una vez que tenía el subtítulo en Inglés, la traducción fue fácil con gnome-subtitle ya que te permite crear una traducción al subtítulo que tenés abierto poniéndote al costado de cada línea un lugar para que puedas completar con la traducción. Entonces, te copia los tiempos y todo tal cuál está en el original y solo tenés que cambiar su contenido. ¡Está re bueno eso y re fácil de traducir así!

Lo que me gustaría saber es: ¿qué se usa normalmente para hacer subtítulos de una manera cómoda y no tan problemática?

Una vez que tenía la primera versión de la traducción en Español me puse en contacto de nuevo con Paula y se la mandé, aclarando que lo hice lo mejor que pude pero que sin embargo había partes que no pude entender bien qué decían y otras que no pude siquiera escribir nada. Quería me gustaría que le peguen una revisada porque por ahí podían completar esas partes.

Como pude terminar ese, probé seguir con "Please say something" y me encontré con que estaba hecho en "Gran Melot" (o algo así, no me acuerdo como se llama: es un estilo teatral en dónde se habla un idioma que no existe) y tenía los subtítulos en Inglés pegados al video :) . ¡Genial!

Así que, ese fue mucho más fácil y lo terminé bastante rápido ahora que sabía usar los programas y encima ya tenía la mitad más grande (cuac) resuelta.

Pasó cerca de una semana y volvía Paraná, dónde me encontré con Melina y le comenté de esto, se re copó con la idea me ayudó muchísimo a corregir y terminar el subtítulo de "The External World". Agregó varias partes que yo no pude entender, modificó cosas y mejoró otras varias. Así, el subtítulo original quedó genial y también su traducción. También me ayudó con los otros, pero como ya tenía el subtítulo original hecho (no tuve que usar mi oreja) fueron muy poquitos los errores que encontró.

Lamentablemente, cuando les mandé los nuevos subtítulos a Paula, me dijo que ya era tarde y que no podían usar los nuevos para el festival :( . ¡Una lástima!

Pero bueh, ahora los estamos publicando acá en mi blog y en subdivx para que cualquiera que los busque, los encuentre.


Dame contexto

Acabo de encontrar una opción hermosa del comando grep que hace muchísimo tiempo hubiese querido saber pero sin embargo ni siquiera había buscado: -C (-A -B)

Estas opciones sirven para decirle a grep "Dame contexto", entonces, en vez de mostrarte solo la línea que machea con tu búsqueda te muestra -A después y -B antes o bien -C antes y después (si querés usar el mismo valor):

$ grep -n -C 4 VCI hexdump.txt
91978381-57b90180  b7 5e 59 9c be 6c 9f 7c  60 88 e9 b8 9f 71 db 00  |.^Y..l.|`....q..|
91978382-57b90190  58 ff d5 55 67 9a f3 d5  ec cd 9f 4c 63 4c 0c 90  |X..Ug......LcL..|
91978383-57b901a0  70 f3 45 27 a4 58 4b bb  ea 10 7c df 1e ab c6 f2  |p.E'.XK...|.....|
91978384-57b901b0  9e a0 97 c7 3b 74 d8 8e  b3 ed 0b ca 13 1c 49 5e  |....;t........I^|
91978385:57b901c0  92 d3 f1 03 2b 56 43 49  c2 d1 92 e8 d0 e6 bf e6  |....+VCI........|
91978386-57b901d0  17 d3 a2 a1 23 d2 a4 7c  a4 95 bb 82 41 b8 fb e5  |....#..|....A...|
91978387-57b901e0  18 a6 e1 f0 05 af da da  e1 ad b8 5f 01 b7 9e 6b  |..........._...k|
91978388-57b901f0  4b 7f ae 37 9b f3 47 c1  35 95 f6 a7 21 93 5e 42  |K..7..G.5...!.^B|
91978389-57b90200  e3 14 03 79 32 f6 5d 17  a7 b8 6e d5 18 5a ef 8f  |...y2.]...n..Z..|
--
92767082-58798f50  f0 14 3f 64 bb 08 42 28  d7 a3 42 5b 7d 55 3b 89  |..?d..B(..B[}U;.|
92767083-58798f60  77 53 11 3d 62 ec 82 ee  e4 f9 00 30 f4 17 f3 14  |wS.=b......0....|
92767084-58798f70  1f 68 d6 81 99 1d f1 ec  ff 00 fb 55 47 8f ad b3  |.h.........UG...|
92767085-58798f80  68 ab 73 42 1f 2c 4a 2d  33 64 8f 7f 48 6e f7 44  |h.sB.,J-3d..Hn.D|
92767086:58798f90  f5 8e 56 43 49 9c ec 0a  35 a9 fb a2 c3 a0 48 87  |..VCI...5.....H.|
92767087-58798fa0  60 b6 6c ea a1 71 55 5e  d7 b9 97 4d 8a 6b 22 ec  |`.l..qU^...M.k".|
92767088-58798fb0  3a 55 1e c2 4d b4 8a 11  f4 52 1e a6 c2 b2 7f 53  |:U..M....R.....S|
92767089-58798fc0  13 16 c7 ca c0 ed 33 b1  bf bb b1 c9 c2 95 54 70  |......3.......Tp|
92767090-58798fd0  5d 6e 5f c8 cc 1a 09 7d  3d f3 43 b3 42 d3 14 e1  |]n_....}=.C.B...|
$

Entendé al programador

¿Siempre quisiste saber qué carajo hacen algunas personas, más claramente las llamadas programadores, todos los días durante 8 horas frente a una computadora?

No sólo que me imagino, sino que lo veo a diario, el hecho de que la gente intente entender qué es lo que realmente hacen los programadores enfrente de la computadora. Por eso, en esta campaña de alfabetización al ciudadano, se pretende dar a conocer varios de los aspectos del día a día de un programador.

Si bien siento que me cuesta explicar a una persona no-programador cómo se conectan los programas dentro de la computadora y qué significa hacer uno nuevo o cuándo es necesario modificarlo, por el contrario, muchas veces (la mayoría diría yo) me resulta muy divertido y hasta incluso desafiante, ya que hay que explicar algo, que de por sí es inexplicable utilizando lenguaje técnico, en lenguaje natural.

En general, creo que la idea del lenguaje SmallTalk funciona muy bien para explicar la forma en que las cosas se comunican dentro de una computadora, reemplazando a los Objetos por "Peronas que sólo saben hacer tareas específicas pero las hacen muy bien" (cuando el software está bien hecho). Otro ejemplo que me gusta usar, para explicar el Filesystem, es hacer la analogía con muchas cajas de zapatos de diferentes tamaños y una caja mucho más grande que sería el disco rígido: de ahí la palabra tan conocida "defragmentador".

En un párrafo aparte entra la consola: "lee un comando que hace muchos, muchísimos clicks en la pantalla de una sola vez"

Por estos motivos y por muchos otros que no están en el alcance de este post, se invita a la comunidad no-programadora de la zona y otras (a confirmar) a realizar su solicitud y coordinar una fecha para disfrutar 8hs seguidas de programación al lado de "un programador tipo" con permiso a... ¡más de 10 preguntas en el primer encuentro!

¡No dejes de inscribirte! (en los comentarios)

Nota

se solicita traer un almohadón cómodo, la espalda muy bien elongada, muchas ganas de cebar mates y sobre todo, muchas ganas de aprender y entender un mundo nuevo, dónde todo es mentira, ireal y para bichos raros...