Uff, hace un tiempo que ya no toco este blog, es hora de volverlo a la vida. Acá les va un pequeño update con mis últimas aventuras y desventuras.

Personal

No he visto ninguna película interesante últimamente — aunque sí tengo algunas pendientes para escribir un review (particularmente quiero hablar de Frozen, que me encantó). Continúo lentamente jugando al Mass Effect 3 y grabando la experiencia. También tengo un par de juegos que he probado y de los que tengo que hacer reviews. Destaco Antichamber, que me voló la cabeza. He avanzado poco con libros y todavía estoy leyendo Gödel, Escher, Bach: An Eternal Golden Braid, absolutamente recomendable: es iluminador. Luego diré más. También estoy esperando la publicación de Show your work, de Austin Kleon. Ya había hablado de él y su libro Steal Like an Artist, que es asombroso.

Estaba tomando un pequeño curso online de francés pero lo tengo abandonado por ahora. Posiblemente haya olvidado más de la mitad de todo lo aprendido, pero este tipo de cursos está basado en la memoria y no la práctica. Eso significa que descuidarlo un poco puede tener un efecto drástico en lo que quede arraigado en nosotros al final. Me falta poder practicar. Pronto.

Estaba probando Khan Academy y me atrapó el diseño de challenges que tienen para la sección de matemáticas. No le presto demasiada atención, pero de vez en cuando me paso a sumar algunos puntitos (pun intended) y a ver cosas que ya había olvidado de la primaria. También a repasar algunas que nunca comprendí del todo.

Mi ingreso de información principal es de YouTube, en donde recomiendo totalmente a los siguientes canales informativos: SciShow, VlogBrothers, CrashCourse, Mental Floss (las obras de los hermanos Green), DNews, ASAPScience, BigThink, CGPGrey, Extra Credits, Minute Physics, Nature Video, PBS Idea Channel, Sixty Symbols, TED, TED-Ed, Veritasium, VSauce, VSauce2 y VSauce3. Este es el listado únicamente de los que recomiendo y que siempre enseñan algo. No todo es matemática y computación, también algunos hablan de sociología, psicología, economía y otras ías. Muchos de estos además se mantienen al tanto con noticias nuevas, por lo que uno puede estar al tanto de lo nuevo en el mundo científico — y cuando no hay noticias, se aprende sobre algo no tan nuevo.

Ya no he vuelto a escribir historias, pero tengo borradores abandonados. Tendré que retomarlos luego. La música está más abandonada que nunca, pero realmente quiero mejorar mis habilidades antes de volver a publicar nada. He tenido la oportunidad de “jugar” a ser fotógrafo con una cámara profesional y fue una bonita experiencia. Visité lugares nuevos y conocidos, cercanos y lejanos, me encontré con mucha gente conocida, puse papeles en regla y ya casi estoy de vuelta a mi vida normal.

Programación

En cuanto a tecnología y trabajo, estoy incursionando más en el mundo de NodeJS, desde hace algunos meses ya. Me agrada mucho, pero todavía me considero un novato en él. Aún así, habiendo tenido experiencia previa de JavaScript, puedo decir que se siente muy natural. Utilizando MongoDB como base, y AngularJS como frontend, estamos trabajando en cosas interesantes.

Un comentario de A. M. sobre AngularJS me dejó pensando: “Te fuerza a hacer las cosas a su manera.” Si bien en el momento en que me lo dijo no lo percibí como un problema, me dejó pensando. Inicialmente pensé que era una cuestión de gustos y de cómo preferimos que un framework nos guíe por su camino. En una experiencia posterior tratando de integrar D3.js y AngularJS me di cuenta de la gran incompatibilidad: no hay una forma limpia de hacerlo por las filosofías distintas que ambos tienen. D3, por motivos de diseño, debe ser una referencia global y AngularJS desalienta esas prácticas en su misma estructura y uso. ¿Sacrificamos testabilidad y dejamos la referencia global, o la escondemos detrás de un servicio falso? (Esto último es lo que la gente de Google recomienda.) No hay un win-win aquí.

Pensé en formas de totalmente invalidar la referencia global de otras librerías. La mejor opción para mi es recibir la URL del script, bajarlo como texto, e invocar un eval en donde reemplacemos la referencia al window global por un window pasado por argumento — e incluso podríamos reemplazar las referencias a this. Todo esto tiene sentido — hasta el momento de ejecutar. Si bien podríamos así desacoplar las librerías de sus referencias globales, al momento de realmente pedirles que trabajan es en donde perdemos su utilidad. ¿Qué sería jQuery sin poder acceder al DOM? (Mal ejemplo: jQuery permite controlar sus referencias globales.) Lo mismo con D3, underscore.

También estoy trabajando con BackboneJS, algo que no tocaba desde los días de CommonJobs, por lo que estoy algo oxidado. Más aún, me enteré que el proyecto en donde lo estoy utilizando fue de hecho el proyecto que motivó la generación de Backbone-Support y Marionette. No puedo dar más detalles, pero imaginarán que es motivador trabajar en proyectos de tal calibre, no sólo para la empresa que lo sostiene, sino para la comunidad completa. ¿Quién sabe qué podría salir de esta nueva versión?

Pronto incursionaré con EmberJS, pero aún no he tenido la oportunidad de tocarlo. Y he tenido algo de exposición a cucumber (BDD), en quién también espero poder profundizar.

Mucho de todo esto, además, bajo la sintaxis de CoffeeScript, que me resultó muy agradable y amigablemente confusa cuando se trata de un backend en Ruby y un frontend CoffeeScript. La sintaxis es demasiado parecida — quizá más a los ojos de un novato como yo. Pero a la vez esa similitud de frontend y backend se siente muy agradable, muy consistente. (Uno de los placeres que NodeJS también me da.)

Con la excusa de jugar con HTML5 Boilerplate hice zen-answer.me, un poco bajo la influencia del libro de Gödel, Escher, Bach. Es simple en funcionamiento y no útil para nada, pero fue entretenido aprender cómo estaba pensado el proyecto del boilerplate.

Presencia online

Tengo Twitter muy abandonado, y Google Plus medianamente abandonado también. Mi divertimento principal es pasear por Tumblr, en donde suelo sumergirme en la parte bizarra de lo que hay. Cuidado, posiblemente sea NSFW. Facebook, olvidadísimo, y de a poco sigo completando mi perfil de LinkedIn.

Tampoco he vuelto a participar en foros. Lo intenté con un par de foros temáticos pero no puedo (o no quiero) dedicar un gran porcentaje de mi tiempo a construir una relación por escrito con gente que luego pierde sus cabales porque alguien se puso un avatar parecido. Mi presencia en StackExchange sigue siendo más de preguntón que de aporte, pero aprendo mucho de todos los sitios en donde participo, tanto que estoy subscripto a varios newsletters que envian, para estar al tanto.

Del blog, podrán juzgar ustedes mismos. Sin embargo, hay varias otras entradas que están preparadas y nunca terminé. Veremos si puedo darles algo de empuje y publicar algunas cosas más.

Aún así, estoy abierto a todos estos canales por si desean comunicarse conmigo.

Series

Tras haber terminado de ver Doctor Who (la versión nueva), comencé con Sherlock. Me agrada pero estoy esperando que se ponga más tensa, ya llegando por la segunda temporada. Estoy por la tercera de The Walking Dead y no logro que me atrape. Podría decir que camina lento.

Game of Thrones está algo abandonada, probablemente la retome luego. Le tengo curiosidad a Breaking Bad.

Eso es todo.

Por ahora. Espero poder extenderme en alguno de estos conceptos en el futuro, posiblemente haciendo un análisis más extenso y contar más de lo que he mencionado. Me gustaría explicarme en algunos de estos y exponer el por qué de mis elecciones, pero cada uno de ellos merece su propio artículo. ¡Saludos!