sábado, 23 de agosto de 2014

El épico origen de "bulda e' bien"

Hoy quiero compartir con ustedes una historia graciosa y épica, de como nació el alias que uso para un montón de cosas en Internet: bulda e' bien.

Cuenta la leyenda...

Como toda buena historia... comienza en la biblioteca de la USB (ahh?). Antes de comenzar la universidad nunca vi la necesidad de abrirme un correo electrónico (super material computista yo, jajaja.) Y cuando llegué a la universidad me abrieron automáticamente mi correo con el USB-ID (el carné) y comencé a usarlo. Pero los límites de ese correo eran ridículos, aún para la época y decidí probar una nueva página que ofrecía servicio de correo electrónico. Todo el mundo tenía uno y ya era hora de que me hiciera una cuenta. (Botando la cédula en 3... 2... 1...) Me abrí un Hotmail.

¿Y que tiene que ver todo esto con la biblioteca de la USB? Bueno, en esa época (yo entré a la USB en el 2003) uno podía anotarse en una lista para tener 45 minutos de Internet gratis en el 3er piso. ¡Y era lo máximo! Biblioteca abría a las 8:30am. y ya a las 7:00am. había gente esperando y haciendo cola. ¡Pero era Internet y GRATIS! Como cambian los tiempos, jajaja. Lo peor es que el Internet que ofrecían era leeento, pero era mejor que nada (y más aún, realmente no conocíamos el Internet rápido aún, jajaja). ¿Descargar una película? LOOOL, nope!

Un día de esos fui con un pana a nuestros 45 minutos de internet en la biblioteca y él nota que no tengo Hotmail. Ya yo estaba pensando abrir una cuenta, pero el insistió en que la creara ahí mismo. ¡Bueno, si va! ¿Pero que nombre habría de ponerle? Pensé muchas cosas geeks y de cero buen gusto, que si con Darth Vader, Goku y cosas así, pero todas estaban ocupadas (¿Qué pasa con la humanidad? Jajaja). Y ya acabándose el tiempo le digo al pana "Coye, no quiero usar mi nombre y ya. ¡Qué aburrido! Me gustaría algo divertido, un nombre bulda e' bien" (seh, yo era un tuki total, jajaja). Los dos lo pensamos al mismo tiempo... ¡Ese era el nombre perfecto! "bulda_e_bien@hotmail.com" y estaba disponible.

¡Tenía un nuevo correo! :D Sólo hacía falta llenar la información personal. Pero había un pequeño detalle: En esa época todo el mundo sufría de una paranoia horrible de no compartir nunca su información real por Internet y confieso que yo no era la excepción (y ahora la gente hasta hace "check in" en los lugares donde está para que los que quieran secuestrarlos no pasen tanto trabajo; tan considerados vale). Pero en esa época ni el nombre se acostumbraba poner a la ligera. Como era un servicio nuevo, pues desconfiaba de él y decidí inventarme un nombre ficticio. Me puse de nombre "Helketeko" y de apellido "Jioanoche" (seh seh, era extremadamente tuki, jajajajja).

Por un tiempo dejé eso así y todo relajado. A veces conseguía correos cómicos y se los quería reenviar a mi papá, pero aparentemente no le estaban llegando. Un día le pregunto y efectivamente me dice que no le llegaban. Hmmm... Voy a revisar con él y veo un poco de correos sin abrir. El me dice que está molesto por que le han estado mandando spam o virus o que se yo y siempre es desde el mismo correo. Un tal "Helketeko Jioanoche". Y yo LOOOOOOOOOL (en esa época no se decía tanto LOL, pero ustedes entienden, jajaja). ¡Ese soy yo! Jajajajja. Se me había olvidado completamente que le había puesto eso en la información personal y no sabía que se mostraba. ¡Que risa!

Pero, ya va. Entonces recordé que también había usado ese correo para cosas de la uni y mandar correos con dudas y eso. ¡Que pena! Debo haberle regalado horas de risas y pena ajena a mis profesores, jajaja. En seguida fui al correo y cambié la información personal con la verdadera.

Igual ese correo no duró mucho. Hotmail pasó de moda rápidamente en lo que nacieron otros servicios muy superiores. En especial cuando me invitaron a Gmail (fui uno de los primeros que conozco en tener una cuenta Gmail, ajem ajem, jajaja) y ahí me quedé hasta ahorita. El nombre "bulda e' bien" ha sobrevivido de varias maneras. Los cómics, mi usuario en páginas como Topcoder, Spoj y hasta Instagram, incluso en el nombre de este blog. Pero todo empezó un día en la biblioteca de la USB.

Y esta era la historia épica que quería contarles. ¡Todavía me mata de la risa! Espero les haya gustado, jajaja. ¡Hasta una próxima entrada! :D

jueves, 21 de agosto de 2014

Retomando un viejo proyecto: Guerra de Clases

Como muchos saben (y los que no pueden inferir de que a cada rato comparto cosas de este blog, jajaja), me gusta escribir. Además de este blog y del blog para mis cómics ( Bulda-E-Bien - A Web Comic ), también llevo un blog para cosas que escribo ( Ideas Nada Mas ), tanto ideas locas como mini-relatos. Aunque confieso que no escribo tanto como antes o como quisiera en ese blog, jeje.

O quizá P = NP. ¿Quién sabe? :D

En el 2010 escribí un cuento llamado "Guerra de Clases" ( Guerra De Clases ), que trataba de una guerra entre los clanes P y NP (seh, las clases de complejidad computacional, jajaja). Al final me había gustado bastante el resultado, pero lo dejé hasta ahí.

En el 2012 pensé que ese cuento podría expandirse y volverse quizá un mini-libro completo con bastantes referencias gallas a teoría de lenguajes. Realicé una planificación para la expansión del cuento y escribí el capítulo 0: "Igualdad" ( Guerra de Clases: Capítulo 0 - Igualdad ). Peeeero, también quedó hasta ahí. Realmente no continué con el proyecto.

En estos días decidí revisar las cosas que tenía en un disco duro viejo y encuentro una carpeta con cuentos e ideas para cuentos. ¿Con que me consigo? ¡La guerra de clases! Y pensé que quizá sea hora de retomar ese proyecto. Así que saqué papel y lapiz (o más bien teclado y LaTeX, jajaja) y comencé a actualizar lo que ya tenía. ¿El resultado? Una nueva versión para el primer capítulo, más pulida y organizada (creo yo).

Pueden leerla en el siguiente enlace:

¿Qué opinan? :D

El plan es que tenga unos 10 capítulos, lo que en promedio lo haría como de 40 páginas (no muy largo). Aunque quizá llegue una inspiración brutal y se extienda un poco más, jajaja. ¿Quién sabe? XD

Y bueno, eso es lo que quería compartir por ahora, quizá pronto vuelva a escribir sobre el siguiente capítulo. ¡Hasta una próxima entrada! :D

Capítulos posteriores:

( Capítulo 2 - Un nuevo y grandioso poder )

jueves, 14 de agosto de 2014

Discreto, Funcional, Implacable...

Como algunos ya saben, desde hace un tiempo he estado interesado en aprovechar las facilidades que trae un lenguaje funcional puro en la enseñanza de las matemáticas discretas. La primera entrada al respecto en este blog está aquí: ( Discretamente hablando: Haskell ). En esta ocasión quiero continuar con esa discusión, planteando una implementación directa del primer tema que se toca en el curso de Estructuras Discretas III de la USB: Los números enteros.

Like a sir, indeed!

Para este curso se usan las muy completas guías que realizó el profesor Yriarte (disponibles en: http://ldc.usb.ve/~yriarte/d2index.html). Que plantean muchos de los conceptos y propiedades importantes en un lenguaje fácil de entender (además que esté en Español, lo cual ayuda mucho a quien no maneja del todo el Inglés). Sin embargo, creo que se puede ir mucho más allá de una guía estática y convertirlo en una ayuda interactiva y flexible mediante el uso de un lenguaje como Haskell.

¿Por qué Haskell? Porque es un lenguaje funcional puro, de muy alto nivel, en el que las definiciones matemáticas abstractas son casi directamente plasmables de forma clara y compacta. Además, el sistema de tipos estático ayuda en gran medida a la correcta definición de las funciones y los tipos de interés. ¿Por que no algo más especializado como Coq o Idris? (Excelente sugerencia de Manuel Gómez en la entrada anterior) Las únicas razones válidas hasta el momento: tiempo y falta de experiencia. Estos lenguajes/herramientas tienen sistemas de tipo mucho más elaborados y rigurosos que permitirían mucha más confianza en las definiciones hechas. Incluso, permitirían la elaboración de pruebas simbólicas en el contexto del mismo lenguaje (ver: Idris: verifying a monoid). Sin embargo, explorar las capacidades de estos lenguajes y de como acotarlas a un nivel que sea a la vez correcto, pedagógico y práctico, es algo que tomaría tiempo y por tanto estaría sujeto a una próxima iteración de cambios.

Antes de comenzar con los temas correspondientes a Estructuras Discretas III, hacen falta algunos preliminares (idealmente, ya se hubiera usado un lenguaje como Haskell al menos en Estructuras Discretas II, pero no es el caso en esta ocasión). En particular: lo que quiere decir poder hacer aritmética sobre un tipo determinado y el tipo de los números naturales. Nótese que hablo de tipos en vez de conjuntos. ¡Esa es una de las principales ventajas del enfoque funcional! Se desliga de la fundamentación en conjuntos (heterogénea y complicada) a una fundamentación en tipos (homogénea y constructiva). Para una discusión mucho más elaborada de esto basta ver cualquier libro de teoría de tipos básica y empezar a notar todas las ventajas. Teorías de tipos más complejas dan aún más comodidades, a expensas de claridad en la presentación y por tanto se intentará mantener la presentación lo más sencilla posible (por ejemplo, la igualdad será considerada una proposición, no un tipo como es costumbre en teoría de tipos).

A continuación un archivo Haskell con la implementación de los preliminares necesarios hasta el momento:


A continuación un archivo Haskell con la implementación de los números naturales como números de Church:


Una vez se han establecido los preliminares, se puede comenzar a tocar temas de Estructuras Discretas III. La primera guía de Yriarte (ver: Capítulo Uno) se trata de los números enteros. En particular, la sección 1.2 los define y plantea algunas propiedades sobre los mismos. A continuación un archivo Haskell con la implementación de los números enteros, según la guía antes mencionada:


Es notable como poco a poco aumenta el nivel de abstracción hasta el punto que, en la definición de la función valor absoluto (abs), la implementación interna y complicada de números enteros se vuelve completamente transparente. ¡Esta es la belleza de una teoría constructiva!

Desventajas: Hay una inconsistencia entre la definición formal de los números enteros y la que plantea el tipo en Haskell. Los enteros son clases de equivalencia (conjunto cociente del producto N x N con respecto a la relación planteada en la ecuación 1.1). En Haskell, son tratados simplemente como miembros del producto N x N. Esto por varias razones: La guía tiene la misma inconsistencia con respecto a la definición, pues plantea las propiedades y definiciones posteriores en términos de N x N y no del conjunto cociente. Pero la más importante de las razones sería que realmente no encuentro una manera fácil e intuitiva de construir un tipo que corresponda a clases de equivalencia, sin entrar en temas muy oscuros como para una materia introductoria. (Se aceptan sugerencias en este punto).

A través de las definiciones en Haskell se puede notar una falta de estandarización en los nombres. Por ejemplo, a veces las variables son x, y, z... otras son m, n, p... y otras son a, b, c... sin motivo aparente.  Estas son importadas directamente de la guía, para no chocar con los nombres ahí utilizados. Además, algunas proposiciones son "propiedades" y otras son "teoremas". Ambas son demostrables a partir de las definiciones dadas. ¿Por qué la distinción? Ese tipo de detalles y muchas otras cosas más que me parece que faltan me hacen pensar que quizá sea más interesante, en vez de implementar un apoyo a las guían que ya existen, hacer un reboot y reescribir las guías desde un punto de vista funcional. ¡Quizá hasta un libro! Independiente del curso y general para cualquiera interesado en hacer matemáticas discretas desde un punto de vista funcional. Hasta les tengo el nombre ya (hint: el título de esta entrada es un spoiler). Se llamaría "Discreto, Funcional, Implacable..." y me imagino que la portada sería algo como un James Bond sosteniendo un arma que en realidad es un lambda. Pero esos ya son detalles no tan importantes (aunque divertidos. XD).

¿Qué opinan? ¿Va por buen camino? Gracias a muchos comentarios de diversas personas la cosa ha ido tomando forma. Me gustaría seguir recibiendo opiniones con respecto a esto para enriquecerlo y terminar con una propuesta sólida, implementable y divertida. ¡Muchas gracias a todos los que han ayudado (y a los que ayudarán. XD)!

Hasta una próxima entrada. :)

martes, 12 de agosto de 2014

Coursera... ¡Nostalgia Épica!

Mi hobby preferido, como mucho saben, es aprender (seh, la oración más galla ever, jajaja). ¡Pero es así! Me emociona aprender de muchos diferentes temas, tanto en computación como en otras áreas. Por eso, cuando descubrí la página Coursera, hallé un verdadero nuevo amor. Claro, eso hasta que la nación del fuego atacó (entiéndase la nación del fuego como la tesis de la maestría, jajaja).

¡Coursera Rocks! \m/

El primer curso que hice en Coursera fue "Natural Language Processing" de Stanford, en Marzo del 2012. ¡Excelente curso! Y el sistema de aprendizaje online de Coursera me pareció extraordinario. A partir de ese momento tomé un montón de otros cursos, cada uno mejor que el anterior. En ocasiones podía estar viendo de 3 a 6 cursos simultáneamente y fabricaba el tiempo para cumplir con eso y con todas mis demás responsabilidades. Claro, llegó un momento en que las demás responsabilidades se hicieron demasiadas y de carácter urgente, por lo que tuve que abandonarlo. El último curso que logré terminar fue "An Introduction to Functional Analysis" de École Centrale Paris, en Enero del 2014. Este curso NO JUGÓ CARRITOS. Fue sin duda uno de los más difíciles, pero también uno de los más interesantes. :)

Ahora que terminé la maestría finalmente, aún no he tenido tiempo de volver a Coursera, ya que tengo muchas otras responsabilidades pendientes. Recordando todas las cosas interesantes que he aprendido en esa página, me da nostalgia. Me gustaría volver a tener todo el tiempo para seguir aprendiendo aquí, pero seguramente pronto se podrá nuevamente aprovechar ese conocimiento tan disponible y de excelente calidad.

Y bueno, como para dar una idea de la calidad de fiebre que tuve con Coursera entre 2012 y principios de 2014, pongo aquí una lista con todos los cursos para los cuales gané un certificado, clasificados por el área del curso:
  • Computación:
    • "Natural Language Processing"
      • Universidad: Stanford
      • Marzo de 2012
      • Más información: (Enlace)
    • "Functional Programming Principles in Scala"
      • Universidad: EPFL
      • Septiembre de 2012
      • Más información: (Enlace)
    • "Compilers"
      • Universidad: Stanford
      • Octubre de 2012
      • Más información: (Enlace)
    • "Algorithms: Design And Analysis, Part 1"
      • Universidad: Stanford
      • Julio de 2013
      • Más información: (Enlace)
    • "Algorithms: Design And Analysis, Part 2"
      • Universidad: Stanford
      • Septiembre de 2013
      • Más información: (Enlace)
    • "Artificial Intelligence Planning"
      • Universidad: Edinburgh
      • Enero de 2014
      • Más información: (Enlace)
  • Física:
    • "Quantum Mechanics and Quantum Computation"
      • Universidad: Berkeley
      • Julio de 2012
      • Más información: (Enlace)
    • "Introduction to Astronomy"
      • Universidad: Duke
      • Noviembre de 2012
      • Más información: (Enlace)
    • "Volcanic Eruptions: A Material Science"
      • Universidad: LMU
      • Julio de 2013
      • Más información: (Enlace)
    • "From The Big Bang To Dark Energy"
      • Universidad: Tokyo
      • Septiembre de 2013
      • Más información: (Enlace)
  • Matemáticas:
    • "Linear and Discrete Optimization"
      • Universidad: EPFL
      • Febrero de 2013
      • Más información: (Enlace)
    • "Introduction to Mathematical Thinking"
      • Universidad: Stanford
      • Septiembre de 2013
      • Más información: (Enlace)
    • "Calculus Two: Sequences and Series"
      • Universidad: Ohio State
      • Septiembre de 2013
      • Más información: (Enlace)
    • "An Introduction to Functional Analysis"
      • Universidad: École Centrale Paris
      • Enero de 2014
      • Más información: (Enlace)
  • Psicología:
    • "Gamification"
      • Universidad: Pennsylvania
      • Agosto de 2012
      • Más información: (Enlace)
    • "Introduction to Psychology"
      • Universidad: Toronto
      • Mayo de 2013
      • Más información: (Enlace)
    • "Social Psychology"
      • Universidad: Wesleyan
      • Agosto de 2014
      • Más información: (Enlace)
    • "Introduction to Communication Science"
      • Universidad: Amsterdam
      • Enero de 2014
      • Más información: (Enlace)
  • Filosofía:
    • "Introduction to Philosophy"
      • Universidad: Edinburgh
      • Enero de 2013
      • Más información: (Enlace)
    • "Introduction to Mathematical Philosophy"
      • Universidad: LMU
      • Julio de 2013
      • Más información: (Enlace)
    • "The Ancient Greeks"
      • Universidad: Wesleyan
      • Septiembre de 2013
      • Más información: (Enlace)
  • Misceláneos:
    • "Writing in the Sciences"
      • Universidad: Stanford
      • Septiembre de 2012
      • Más información: (Enlace)
    • "History of Rock, Part One"
      • Universidad: Rochester
      • Mayo de 2013
      • Más información: (Enlace)
    • "History of Rock, Part Two"
      • Universidad: Rochester
      • Julio de 2013
      • Más información: (Enlace)
    • "Undestanding Media By Understanding Google"
      • Universidad: Northwestern
      • Septiembre de 2013
      • Más información: (Enlace)
Nada más y nada menos que 25 cursos, sin contar los que hice sin recibir certificado (ya sea por que no ofrecían o por que no tuve la oportunidad de terminarlos), jajaja. Cada uno fue excelente, aunque si tuviera que hacer un top 5 de los que más me gustaron sería el siguiente:
  1. "Quantum Mechanics and Quantum Computation"
  2. "Social Psychology"
  3. "Introduction to Astronomy"
  4. "Introduction to Psychology"
  5. "An Introduction to Functional Analysis"
Es notable que no coloco alguno en computación, pero no porque hayan sido malos. Como computista, los cursos que hice de computación fueron más un repaso que otra cosa y como tal no se hicieron tan interesantes como los demás. Sin embargo los cursos de diseño de algoritmos son realmente excelentes y recomendables para cualquier computista que quiera ser íntegro como profesional. :)

Y bueno, habiéndome desahogado un poco de mi nostalgia épica, me despido. ¡Hasta una próxima entrada! :)

lunes, 11 de agosto de 2014

Semana de descanso y lectura

La semana pasada me desaparecí del planeta (o al menos de la porción digital del mismo) desde el Martes hasta el Sábado. Estuve toda una semanita playando en Puerto La Cruz. :D La verdad, hacía falta un pequeño escape de la rutina para recuperar energía y motivación, más con todo el trabajón que he tenido últimamente, jeje.

No creo que sea tan comodo, pero ¡palantemarik! XD

Fue una semana apartado, más que todo en un hotel con la piscina y eso. Pero además pude hacer algo que no suelo hacer muy a menudo: ¡dormir! XD Siesta tras siesta tras siesta (sé que suena a gente vieja lo de dormir, pero estoy seguro que cualquier computista me entiende, jajaja). Además, tuve la oportunidad de leer un par de libros: uno de literatura y uno técnico.

El libro de literatura que leí fue nada menos que el primero de la trilogía en cinco partes de "The Hitchhikers Guide To The Galaxy" de Douglas Adams. ¡Excelente libro! (y seeeh, debí haberlo leído hace tiempo pero no había tenido realmente la oportunidad hasta ahora.) Lo leí en inglés - como se debe ya que es su lengua original - aunque su inglés es complicado. Sin embargo dibuja escenas bastante detalladas y absurdamente cómicas. ¡Mil veces mejor que la película aquella que ni a los talones le llega! Aunque es gracioso como se le quedan algunos adjetivos pegados al autor como "mind-bogglingly" (viejo, existen otros adjetivos, jajaja), pero estuvo excepcionalmente bueno. Ahora me toca seguir y leer los libros que le suceden. :)

El libro técnico que leí fue "Basic Category Theory for Computer Scientists" de Benjamin Pierce. En realidad fue una relectura, ya que lo había leído ya en otras ocasiones. Pero fue muy valioso releerlo con la aumentada formación formal que tengo ahora y comprendí muchas cosas que no había captado del todo las otras veces. ¡Es una excelente referencia! Recomendado para cualquier computista.

Además, leí una buena parte del "Programming Challenges" de Steven Skiena y Miguel Revilla. Sin embargo, es un enfoque un tanto básico y la lectura se hace tediosa rápidamente. No sé si lo recomendaría para un principiante, pero al menos los problemas propuestos son buenos retos para alguien que esté empezando en esto de los maratones de programación. También comencé a leer un poco del libro de "Homotopy Type Theory" que había dejado en espera. El tipo de escritura de ese libro no es muy clara en ocasiones, pero es comprensible ya que es un compendio de diversos trabajos y diversos autores. Sin embargo, lo que plantean es sumamente interesante y continúo leyéndolo a ver que cosas se pueden utilizar para hacer una mejor computación. :)

Y bueno, no puede faltar la gordura épica durante la semana. Nada más gordito que bufé de desayuno incluido, jajaja. Y en la noche salíamos a comer cada cosa mejor que la otra. Desde parrilla, hasta hamburguesas gourmet y shawarmas callejeros. ¡Todo épicamente bueno!

Y bueno, esto es lo que he de compartir en este momento, jeje. Una semana relax. ¡Hacía falta! Y ahora a volver a la rutina, que hay papers que sacar. XD ¡Hasta una próxima entrada!

viernes, 1 de agosto de 2014

Las ventajas de una mente positiva

Los que me conocen saben que soy insoportablemente feliz y optimista casi todo el tiempo (incluso sé que a algunos eso hasta les molesta, jajaja). Pero es verdad, así soy. Y creo honestamente en que tener una actitud positiva hacia la vida siempre trae buenas cosas y experiencias. Saber apreciar las pequeñas cosas de la vida y esperar siempre una nueva sorpresa hace a la vida mucha más llevadera y divertida. Hoy me ocurrió una de esas de optimismo insoportable que terminó saliendo mejor de lo que me esperaba. :D

¡Tooodo es increíbleee! (8)
(A que les pegué la canción otra vez. XD)

Hoy se me hizo un poco tarde para salir de mi casa. El bus que tomo para venir a la uni pasa por la redoma de San Antonio entre 6:20am. y 6:40am. y mi casa no queda tan cerca de la redoma. Después de bañarme, vestirme, desayunar, etc. terminé saliendo como a las 6:10am. de mi casa. ¡Tardísimo! Las posibilidades de que me dejara el bus ya eran considerablemente altas. Así que salí pensando: "a menos que vea el autobús llegando (el que baja de mi casa a la redoma), me tocará agarrar un taxi hoy".

En lo que salgo de mi casa me asomo por la ventana de mi edificio y ¿que veo pasando? ¡El autobús que necesitaba! Jajaja. Estoy seguro que una persona "normal" estaría molesta y lanzaría frases tipo "a mi y al pato Lucas", "siempre tengo mala suerte" o alguna alusión a que su sufrimiento es similar en magnitud al de una chica llamada Precious. XD Capaz lo "lógico" era devolverse, ya que podía ser una señal de que no era buena idea salir o algo por el estilo. Pero como soy insoportablemente optimista me montó en el ascensor y pensé "nah, seguramente no tenía que agarrar ese bus hoy por alguna razón, seguramente todo saldrá bien".

Me voy de lo más tranquilo a donde se agarran los taxis y veo que me toca uno que maneja como si estuviera en la fórmula 1 (aunque hoy se controló un poco) y me monto igual. Como a mitad de camino pasamos el bus que había visto desde la ventana, que estaba dejando pasajeros. Llegando ya a la redoma veo llegando también el bus de la uni. Ya tenía la plata preparada del taxi (y exacta, no tenía que esperar vuelto), me bajé corriendo y logré alcanzar montarme en el bus.

Al principio pensé "que fino, lo alcancé en la raya" y no le di mas vueltas. Pero después me puse a pensar... "Ya va, si hubiera salido un par de minutos más temprano hubiera tomado el bus en vez del taxi y no hubiera alcanzado el bus de la uni". ¡Qué nivel de suerte over 9000! XD

Finalmente llegué a la uni, a eso de las 7:00am. ¡Ni una hora después de haber salido de mi casa! Algo que es casi irreal, aún para alguien con carro. Haber hecho ese tiempo en transporte fue sencillamente lo máximo, jajaja.

Y bueno, sé que tampoco es la graaan cosota. Pero me parece genial como al final todo sale bien si se mantiene una actitud positiva y se disfruta de las pequeñas cosas de la vida. Y esto era lo que quería compartir por ahora. Momento cursi y enfermamente feliz del día patrocinado por Ricardo, jajaja. ¡Hasta una próxima entrada! :D