martes, 3 de marzo de 2015

Cómo Programar

¡Me encanta programar! Es una de las cosas que más me divierte y me llena de mi carrera. Programar es una actividad que involucra tanto la creatividad, como la habilidad técnica y hacerlo bien puede potenciar incluso múltiples regiones de la mente.

¡Programar siempre es emocionante! :D

Sin embargo, quienes me han visto programar sabrán que yo suelo programar "extraño".

¿Cómo así?

Yo puedo pasar horas sólo viendo la computadora o incluso estar aparentemente procrastinando por la web, pero eventualmente abro el editor y básicamente escupo todo el código en cuestión de minutos. Algunos confunden la procrastinación con flojera, pero es muy al contrario. Cuando parezco estar haciendo nada, en realidad estoy pensando y planificando como voy a programar lo que necesito: las estructuras que hacen falta, algoritmos eficientes y patrones reutilizables de otras cosas que ya haya hecho. De repente, sale todo ese código y la gente se queda sorprendida con la velocidad en la que se me ocurrió todo. Pero la verdad, es que no hay realmente ninguna velocidad extravagante involucrada. Sólo una metodología de pensamiento diferente, donde primero se diseña y luego se programa. :)

La gente de Sistemas de Información, a pesar de sus documentos infinitos (los cuales, hay que confesar, contienen mayormente información inútil), tienen sin embargo un concepto acertado: Para programar bien, primero hay que planificar. Lamentablemente esto se enseña en torno a requerimientos y, en menor medida, a herramientas y patrones. Pero realmente no se enseña a planificar y diseñar soluciones con tipos de datos y algoritmos adecuados. Se enseña muy bien a tener claro lo que se desea hacer, pero muy poco se ahonda en tener claro cómo hacerlo.

Por todo esto, quisiera compartir con ustedes cuales son las reglas fundamentales en mi proceso al programar (al menos en la mayoría de los casos):
  • Regla fundamental No. 1: No echar ni un caracter de código, hasta haber planificado la estructura y funcionamiento básico del programa. Esto ahorra muchísimo trabajo al final, en especial de refactorizaciones constantes. Al principio no se verán resultados tangibles, pero cuando comiencen a aparecer será tan veloz que parecerá algo mágico, jajaja.
  • Regla fundamental No. 2: Los lenguajes y herramientas son diversos por algo. Cada problema tiene diferentes características y diferentes herramientas pueden ser mejores o peores en determinados momentos. Es importante conocer y dominar varias formas de pensar y resolver problemas para así poder seleccionar la más adecuada en cada situación. Por poner un ejemplo, creo que nadie duda que hacer una aplicación web en C sería un dolor de cabeza, pero para programar sistemas de operación pocos lenguajes se le comparan. ¿A su vez, cómo sería programar un sistema de operación en un lenguaje como Ruby? Cada herramienta tiene su dominio y por esto es importante saber distinguir entre ellos.
  • Regla fundamental No. 3: Pensar a futuro. Este es un hábito difícil de adquirir, pero sumamente útil si se domina. La verdadera parte complicada al programar está en diseñar la solución. Una vez el diseño de estructuras y algoritmos está completo, efectivamente programar la solución es en verdad un trabajo mecánico. Como tal, consume muy poco procesamiento mental realmente. Por lo tanto, es posible (aunque repito, difícil en un principio) seguir planificando a futuro mientras se programa lo que ya está planificado. Algo así como el pipeline del procesador que mientras ejecuta una instrucción ya interpreta la siguiente. Esto hace que la programación sea un poco más fluida y rápida. Además mantiene la mente activa y evita los peligros de contraer flojera crónica entre "sprints" de implementación.
  • Regla fundamental No. 4: ¡Reutilización por siempre! Y no sólo me refiero a reutilización de código, sino también de procesos mentales. Muchos problemas son parecidos o tienen componentes parecidas entre si. Aunque finalmente el código no sea el mismo (por una u otra razón), el proceso mental que llevó a solucionar un problema puede llevar a solucionar otro. Por ejemplo, si se pasó un par de días resolviendo una conexión entre una aplicación web y una base de datos de forma eficiente, el mismo proceso puede reutilizarse si en algún momento se debe conectar eficientemente una aplicación móvil a una base de datos local (a pesar de que muy posiblemente, el código sea bastante diferente).
  • Regla fundamental No. 5: Nunca perder la práctica. Es importante mantenerse programando y no únicamente en un área específico. Se debe intentar explorar nuevas áreas sin descuidar aquellas que ya se han explorado antes. Por ejemplo, a un programador web deberían poder asignarle un trabajo de bajo nivel (implementar un driver, por ejemplo) y no debería ser el fin del mundo para él, sino sólo un reto más a superar y una nueva oportunidad para aprender y practicar algo diferente.
Las tres primeras reglas fundamentales, potenciadas con la cuarta y la quinta, hacen que un programador luzca como un verdadero mago. Después de unos minutos pensando en un problema complejo, puede producir código muy rápido que lo soluciona. Y muy posiblemente, código eficiente, reutilizable y hasta seguro. Todo depende de cuanta experiencia se tenga. Como ejemplo personal, estoy claro que al programar en un lenguaje funcional (como Haskell) puedo llegar a hacerlo sumamente rápido. Pero eso no es más que una mezcla de pasión y experiencia. Eso no me hace más inteligente que nadie, ni mucho menos. Estoy totalmente seguro que todos y cada uno son mejores que yo en algo. Pero finalmente, creo honestamente que la experticia en cualquier herramienta o dominio siempre puede lograrse no más que siguiendo estas 5 reglas fundamentales.

Todas estas reglas dependen claro, de una que es incluso más fundamental y básica:

  • Regla fundamental No. 0: No puedes escribir un programa para resolver un problema que no entiendes. Es sumamente nocivo intentar resolver un problema, cuando no se tiene claro cuál es siquiera el problema que se necesita resolver. Esto, lamentablemente, es más que común por los tiempos apresurados de producción en la industria de la computación. Sin embargo, debe evitarse a toda costa. Lo primero que debe asegurarse siempre es haber entendido el problema, luego entender cómo resolverlo, luego con que herramientas y sólo entonces se debe echar manos a la obra e implementar. (gracias a Ernesto Hernandez-Novich por el comentario que inspiró esta regla adicional).
Y bueno, esto quería compartir con ustedes hoy. Éste es mi extraño método y debo decir que muchas veces me ha funcionado bastante bien (aunque puede ser terrible cuando hay deadlines cercanos involucrados, pero ese es otro cuento, jajaja). Cualquier comentario, como siempre, es más que bienvenido. ¡Hasta una próxima entrada! :D

sábado, 14 de febrero de 2015

El día del amor y la amistad

Hoy es 14 de Febrero, mejor conocido como el día del amor y la amistad. En honor a lo ocasión, quiero aprovechar para agradecer a tantas excelentes y geniales personas, que tengo el gusto de considerar mis amigos.

Falalalala... (ahh no, esa es otra comiquita. xD)

Este es un día interesante. Se celebra el mismo día que San Valentín, aunque ambas celebraciones realmente no están relacionadas. No estoy seguro que así sea generalmente, pero en lo personal pasé por diversas opiniones y actitudes hacia este día:

  • De niño, confieso que me emocionaba que llegara este día. Era día de darnos regalos en el colegio y de escribir cosas bonitas sobre los demás, leyendo cosas chéveres sobre uno mismo a cambio. Era un día alegre, repleto de manualidades, juegos y risas.
  • De adolescente, uno empieza a adquirir criterio. Pero es criterio sin experiencia. Y me puse hipster, jajaja. Empecé a ver este día como una vil excusa para comercializar sentimientos bonitos, que deberían ser puros. Despreciaba que uno se viera forzado a celebrar su relación un día predeterminado. ¿Fijado por quién y con qué derecho? Estuve en rebeldía contra la idea por un buen tiempo (recuerdo parejas que no fueron felices con eso, jajaja).
  • Años más tarde, incluso ya bien entrado en mi carrera universitaria (más de lo que me gustaría admitir), empecé a cambiar mi opinión nuevamente. ¿Qué importa si alguien obtiene un beneficio o no? ¡Es un día que celebra el amor y la amistad! Aunque es cierto que debe celebrarse cada día, nunca está de más dedicar una fecha especial en honor a esos bonitos y necesarios sentimientos.

He conocido a personas buenas que se niegan a celebrar fechas especiales bajo la premisa de que deben celebrarse a diario. Incluso conozco a personas que se niegan a que los demás conozcan sus cumpleaños, sólo por que les molesta que les presten más atención ese día que cualquier otro. Pero sería imposible dedicar cada hora de cada día, a todas y cada una de las personas que nos importan. Pero si es importante dedicar aunque sea un momento a aquellos que hacen mejores nuestras vidas. Y tener fechas especiales dedicadas a eso, es una manera de hacerles honor. Es por esto que ahora, habiendo madurado un poco quizá, agradezco la existencia de un día como hoy en honor a todas esas personas que me regalan su amistad a diario.

Por todo esto y más quiero agradecerles a todos. A mis amigos, a mi familia, a mis colegas, a mis estudiantes, a todos. Gracias por mantenerme siempre tan risueño y asquerosamente feliz como siempre. Gracias por compartir los buenos y malos momentos, las comidas gorditas, las conversaciones sinceras, los chistes malos, las discusiones interesantes y retadoras, las palabras de apoyo y la compañía en cada momento. Me considero infinitamente afortunado, pues conozco a muchísima gente muy valiosa con quienes he tenido el gusto de compartir mi vida. ¡Gracias por todo! :'D

Y no sólo es el ahora. Agradezco también al pasado y toda la gente que formó parte de él. Las cosas buenas y no tan buenas, que me han hecho lo que soy hoy. Inevitablemente las personas van y vienen, pero las memorias y el cariño quedan. También agradezco de antemano al futuro, pues sé que vendrán muchísimas cosas y personas geniales aún. Me encanta conocer gente nueva y hacer cada vez más amistades en el camino. Espero tener la suerte de poder continuar haciéndolo. :)

"Ajá... Pero hoy es 14 de Febrero, y estas escribiendo esto en vez de estar celebrándolo por ahí." Es un buen punto, pero cualquier razón es buena para estar agradecido. Y si... este año no tocó algo más, jajaja. Pero no es algo que me moleste o me preocupe, pues el futuro aguarda y muchas cosas nuevas y geniales quedan por venir. :)

Y bueno, esto era lo que quería compartir por ahora. ¡Feliz día del amor y la amistad a todos! Muy en especial a esos amigos y amigas especiales con los que tengo la dicha de compartir cada día (ustedes saben quienes son, si es que están leyendo esto, jajaja). ¡Hasta una próxima entrada! :D

sábado, 10 de enero de 2015

Sobre Docencia y Didáctica

¡Me encanta dar clases! En verdad es mi mayor pasión y satisfacción. Y la verdad es que no sólo es dar la clase, sino el poder compartir, ayudar, aprender y, por supuesto, hacer nuevos y geniales amigos en el proceso. :)

¡Y todos tenemos algo que enseñar! :D

Ya tengo el gusto de haber sido profesor durante 3 años, ayudante académico 3 años más y preparador durante mi pregrado, por unos 4 años (seh, ya estoy ancianito, jajaja). En ese tiempo he intentado ir mejorando poco a poco, aprendiendo a ser mejor docente y persona. Aún me queda muchísimo por aprender y mejorar, pero hoy quisiera compartir algunas de las cosas que he aprendido y que intento aplicar siempre que puedo.

  • El centro es el estudiante, no el profesor: Puede llegar a ser tentador hacer alarde de lo que uno ha aprendido e intentar exaltar la propia imagen. Pero esto está mal. ¡Muy mal! Un buen docente no es el que logra mostrar lo grande que es él, sino lo grande que pueden llegar a ser sus estudiantes. No se trata de enseñar para impresionar, sino de enseñar para motivar e inspirar.
  • El respeto ayuda a aprender, pero más aún la confianza: Desde siempre he estado en contra de la tradicional y socialmente arraigada "distancia alumno/profesor". En parte, por eso no me gusta que me digan profesor, profe, o cualquier otro "título" impersonal. Es verdad que en un salón donde el profesor es magnánimo e intocable, el aprendizaje puede darse bien. Pero sólo eso, sólo "bien".

    Pienso que si el profesor se presenta como sólo una persona más, con sus fallas y ganas de aprender, se crea un ambiente de confianza que es mucho más propicio para un aprendizaje excelente. ¿Quién no ha tenido pena de preguntar algo en clase? Pero... ¿Y si no se sintiera como una clase? ¿Y si más bien fuera como un grupo de personas estudiando y discutiendo? Las dudas fluyen mucho más libremente y se aprende con mayor gusto. Además, la recompensa es poder aprender mucho más en cambio de las personas a las que enseñas e incluso, muchas veces, llegar a hacer buenas amistades.
  • Ser positivo siempre es preferible: Al encontrar fallas en el conocimiento de una persona, no es correcto ni útil atacarlo por esas fallas. Al contrario, es preferible concentrarse en lo que tiene bien y reforzarlo, llevando poco a poco aquello que no se entiende bien hasta el punto en que es asimilado naturalmente y con gusto.

    Esto no quiere decir que no se pueda decir que alguien esté mal en su conocimiento, sino cuidar la forma de decirlo. Cosas como "Si no sabes de X tópico entonces realmente no sabes nada" o "Si sólo sabes manejar Y concepto, entonces eres un mediocre". Actitudes que lamentablemente he visto pasar frecuentemente y en muchos contextos. ¿No es preferible hacer ver las relaciones de ese X tópico que se considera importante, con lo que la persona ya conoce y maneja, o incluso con lo que le gusta? Incluso si toma tiempo y no pareciera ser fácil, al final todo está relacionado. Honestamente, creo nunca, NUNCA, se debe ser despectivo con el conocimiento ajeno, pues eso bloquea por completo la oportunidad de aprendizaje futuro.
  • Saber hallar el balance entre el "como" y el "para qué": Inevitablemente (y afortunadamente), existen personas de mentalidad práctica y personas de mentalidad metódica. Sin embargo, en el balance entre ambas está el potencial para un mayor aprendizaje. Si se es demasiado práctico, y sólo se muestran las aplicaciones de un concepto, lucirá como un mágico agitar de manos y ningún conocimiento será realmente transmitido. A la vez, si se es demasiado metódico y se intenta mostrar cada detalle teórico necesario antes de pasar a las aplicaciones, el proceso se hará tedioso y aburrido, perdiendo el foco fácilmente y dejando de transmitir conocimiento igualmente.

    Creo que en el balance está la respuesta. Saber mostrar los detalles más fundamentales, sin dejar a un lado aplicaciones tempranas que hagan interesante y motivador lo que se enseña.
  • Complementar con material adicional. no-exhaustivo: No todo el mundo aprende a la misma velocidad y siempre habrá quienes capten inmediatamente en clase y quienes tardan un poco más. Es importante que la información que se enseñe esté respaldada en algún medio persistente, de la manera más didáctica posible. Pero con cuidado... El material no debe ser exhaustivo, o hará completamente aburrida y redundante la clase. Debe funcionar como un método para recordar y reforzar, no como un reemplazo. Sólo se debe poner detalle en los conceptos más difíciles o importantes. Además, es bueno que ese material incluya adicionales a lo que se haya dado en clase, para mantener la lectura interesante (aunque sean sólo hechos de cultura general, totalmente tangentes y sin evaluación).
  • Compartir las huellas: Siempre que esté en poder y decisión de uno, los parciales/tareas/proyectos de cada período deberían ser publicados y disponibles para el futuro. Esto ayuda a los estudiantes actuales de la materia a ver sus fallas. Pero, más importantemente, ayuda a futuros estudiantes a poder practicar y prepararse. Claro, esas evaluaciones ahora no serán reutilizables y se tendrá que trabajar mucho más en crear más y más evaluaciones originales. Pero ese es problema (o más bien gusto, para algunos) del profesor, no del estudiante. Y vale la pena sacrificar esa comodidad por ayudarlos a ellos a aprovechar mejor el curso y aprender más.

    Podría decirse que no es necesario, ya que con que estudien todo el material es suficiente y no necesitan de exámenes modelo para practicar. ¡Pero eso es falso! Un parcial no es sólo reflejo del contenido de una materia, sino de la manera en que el profesor entiende esa materia. Aunque intente hacerse lo más objetivamente posible, siempre habrán cuestiones de estilo particulares de cada profesor. Es buena idea ayudarlos a practicar, a entender lo que esperas de ellos, para que puedan concentrar su esfuerzo en eso. Poco a poco se refina el estilo hacia lo que se considere más importante y eso es criterio de cada profesor, pero hay que darles la oportunidad de prepararse en todo caso.
  • Dudar siempre de lo establecido: No quedarse con lo estipulado o tradicional en cada curso. Dudar de todo lo que se supone que debes enseñar y buscar siempre mejores maneras de hacerlo. Incluso si uno se equivoca, será un gran avance. Nada daño tanto el avance conjunto de la humanidad como el enfoque conservador de la enseñanza. ¡Siempre hay que buscar nuevas ideas, nuevos métodos y nuevas estrategias!

Hay muchas otras cosas sobre las cuales podría conversar acá, pero creo que ya está bastante tl;dr, jajaja. Seguir este tipo de didáctica no es fácil y toma mucho más esfuerzo y tiempo de lo que podría parecer. ¡Pero al final la recompensa es enorme!

Me han dicho que pongo demasiado esfuerzo en esto de la docencia y que debería concentrarme en otras cosas, como publicar artículos de investigación y subir en el escalafón académico (cosa para la cual la USB te presiona increíblemente), pero mis reales metas lo contradicen. La investigación es chévere, pero nada me motiva como lo hace la docencia. Poco a poco he tenido que ir soltando otros compromisos, para poder volver a concentrarme en enseñar. El año pasado hubo cursos que no atendí como les era justo, por estar muy ocupado. ¡Pero no se repetirá! Tengo que dar prioridad a lo que realmente me mueve y en donde soy más útil. Me han dicho también "es que no se puede ser papá de todo el mundo" y estoy totalmente de acuerdo... Prefiero ser su amigo y como un buen amigo, preocuparme por que estén bien y que les vaya de la mejor manera posible en sus vidas. Creo que la mejor manera de ponerse uno primero es pensando en los demás y siempre buscar de que formas puedes ayudar a otros.

Y bueno, esto es lo que quería compartir hoy. Un poco de lo que he visto y aprendido en estos años. Quizá esté equivocado y aprenda en el futuro otros caminos, pero me gustaría pensar que las cosas van bien y que puedo seguir reforzando este estilo extraño de enseñar que me encanta. ¡Hasta una próxima entrada! :D

domingo, 4 de enero de 2015

¡Para el 2015!

¡Ajá! Este es mi primer post del 2015 en el blog y quisiera comenzar por plantear algunos de los objetivos y metas personales que tengo para este año que empieza.

Here... we... go!!!

Antes que nada, en este post: ( Graciabale: 2013... ¡Palante Marik: 2014! ) me planteé algunas metas para el año 2014 y me gustaría ver que tal me fue con eso, jajaja.
  • Y bueno... ¡La meta más grande fue cumplida! Pude graduarme de la maestría finalmente. :D 
  • Logré publicar un minipaper en CoNCISa, junto con Jesús Ravelo, del cual honestamente estoy sumamente orgulloso. Además, con Leonid Tineo y José Ángel Labbad logramos mandar un capítulo a revisión para el libro "Handbook of Research on Innovative Database Query Processing Techniques". Y otro capitulo viene en camino, si nos da tiempo de culminarlo, jeje.
  • Leí unos cuantos libros buenos, pero la verdad es que ni cerca de la meta de "un buen libro al més". El trabajo me alcanzó y me dejó sin mucho tiempo libre (lamentablemente y afortunadamente a la vez, pues he aprendido muchísimo igual).
  • Sobre la comida sana... Bueno... XD En realidad comencé el año bastante bien e incluso luego, ha sido considerablemente mejor que en otros años. Sin embargo, confieso que hubo un tiempo en que caí en una de comer gorditamente casi todos los días (por alguna u otra razón, jajaja).
  • Realmente no me enfoque en aprender nuevos lenguajes de programación per sé. Ni Perl ni Python, aunque si comencé a reentrenar para las competencias de programación afinando mis conocimientos en C++ (lenguaje que no me gusta en lo absoluto, pero que es indudablemente adecuado en el contexto de estas competencias y que tenía personalmente como un punto débil).
  • El año pasado hice un gran total de... cero cursos en Courera... Realmente no pude, con todo el trabajo que he tenido. Estoy inscrito en algunos cursos que comienzan pronto. Veamos si puedo hacer alguno de ellos, jeje,
Bien, lo más importante fue cumplido, aunque hubo otras cosas que no tanto. Igual el 2014 fue un año sumamente exitoso, más allá incluso de las metas que me había propuesto. ¡Estoy sumamente satisfecho y orgulloso! :D

Ahora con lo nuevo, los proyectos y metas para este 2015:
  • Creo que la meta más importante que tengo para este año es aún un proyecto oculto, pero que va por muy buen camino. Podría representar un cambio muy grande en mi vida y es algo que me entusiasma muchísimo. Después de que ocurra lo que debe ocurrir, seguramente compartiré muchos más detalles por acá.
  • En este momento tengo a mi cargo 4 proyectos de grado (6 tesistas) y un importantísimo objetivo para el 2015 es que puedan culminar exitosamente sus trabajos de grado y satisfagan (o quizá incluso excedan) las altísimas expectativas que tengo con ellos. Estoy realmente entusiasmado con estos proyectos, pues creo que ayudarán muchísimo a futuros estudiantes y profesionales de la computación.
  • Igual que el año pasado, tengo como meta hacer algunos cursos interesantes en Coursera y seguir aprendiendo. Además, tengo la meta de aprender uno o dos idiomas de forma básica, usando la excelente herramienta: Duolingo. Actualmente estoy aprendiendo Portugués (because of reasons). Luego retomaré seguramente Alemán. ¿Y de ahí, quién sabe? Cualquier circunstancia es una buena razón para seguir aprendiendo. Además, hablar diferentes idiomas expande el pensamiento como nada y desdobla la imaginación.
  • Comenzaré a entrenar, en algún tiempo libre que consiga, para volver a ponerme en forma con las competencias de programación. De esta manera, estaré más a la altura del excelente equipo con el que participaremos en el mundial en Marruecos. Además, así podré ayudar más a los geniales equipos y personas que están entrenando actualmente para hacerse mejores.
  • Creo que renovaré la meta de empezar a comer sano. Eso incluye menos postres y menos chucherías entre comidas. De nuevo, de ninguna manera pienso hacer dieta (no sirvo para ese tipo de régimen, jajaja), pero si le bajaré dos a la comida gordita.
  • Apartando todo, hay situaciones que superar y otras que afianzar. Ya el final del año pasado se dieron pasos importantes (aunque parezcan imperceptibles) para eso y todo va muy bien. :)
  • Una importante meta que tengo para este año y una que sin duda será una de las más difíciles de cumplir: Aprender a decir que no... Estoy hundido en una montaña de trabajo (y todo realmente interesante). Y es que cada vez que alguien me ofrece un proyecto, de inmediato comienzo a maquinar como sería trabajar en él y todas las cosas que aprendería o en las que podría colaborar. Sin embargo, tengo que comenzar a dejar pasar algunas oportunidades, para concentrarme en las oportunidades ya tomadas. Seguiré estando en muchos proyectos y cosas interesantes, pero deberá ser una cantidad mucho más controlada y razonable. Quizá pronto escriba algún otro post explicando por que esto es tan difícil realmente para mi, pero el cambio es sin duda necesario.
Bien, creo que estos son mis objetivos para este año, al menos en primera instancia. Estoy seguro que este año me sorprenderá con muchas otras cosas geniales. :D

Y esto era lo que quería compartir con ustedes hoy. Creo que escribir las metas del año, a pesar de que ya uno mismo las conozca o que se cumplan finalmente o no, ayuda a colocarlo a uno en perspectiva para evaluar todo lo que se ha logrado y su futuro cercano. ¡Veamos que depara este 2015; estoy seguro que será legendario! Hasta una próxima entrada queridos lectores ocasionales. :P

martes, 30 de diciembre de 2014

¡Gracias, 2014... You rocked!

Se acaba, se acabaaaa, el año 2014. (8) ¡Un excelente año! A pesar de las dificultades y los tristes momentos, fue un año de alegrías, de éxitos y de inicio de proyectos futuros. Tenía un tiempo sin escribir algo en este blog, pero quisiera aprovechar hoy para compartir con ustedes algunas de las cosas por las que estoy agradecido este año.

This year was legen... wait for it... dary! Legendary!

En primer lugar y por mucho el logro más importante de este año. ¡Finalmente defendí mi tesis de maestría y me gradué! Al fin Magíster en Ciencias de la Computación. Fueron casi 5 años de arduo trabajo (bueno, hubo un año no tan arduo, pero de resto si, jajaja). Además la tesis ganó mención de honor sobresaliente, lo que me llena de orgullo y de ganas de seguir aprendiendo y trabajando.

Además, tuve el gusto continuado de ser entrenador de los equipos de la USB que participan en los maratones de programación ACM-ICPC. Tuvimos un excelente local, que aunque fue preparado corriendo salió realmente excelente. ¡Gracias a todos los que lo hicieron posible! Luego, con los tres equipos campeones fuimos a participar en el Super-Regional Sudamericano con sede en la UDO de Anzoátegui. Aunque no tuvimos nada de playa, regresamos a casa con una gran recompensa: ¡Una clasificación al mundial en Marruecos 2015! Es la primera vez que Venezuela clasifica en 5 años, El equipo Team Phoenix, conformado por Wilmer Bandres, José Sanchez y José Gregorio Piñero obtuvo su clasificación haciendo 6 de los 11 problemas. Una cantidad de verdad admirable. Y más aún que han seguido entrenando para dar la talla en el mundial. ¡Sé que dejaremos el nombre de Venezuela en alto!

Recientemente tuve el privilegio y el gusto de recibir un inesperado halago: un premio a la excelencia docente, otorgado por la Federación de Centro de Estudiantes de la USB, decidido en votación de todos los estudiantes (bueno, los que se enteraron por las redes sociales, jeje). No puedo describir con palabras lo agradecido que estoy con tal honor y lo mucho que me inspira para continuar mejorando y aprendiendo.

Este año tuve la oportunidad de ser tutor de 5 pasantes: Erick Dos Ramos, Domingo de Abreu, Oriana Gómez, Carla Urrea y Andrea Balbás. Ya uno de ellos defendió, otro entregó su libro y a las otras les falta poco (básicamente por mi culpa, pues les faltan mis correcciones, jajaja). Ahora comienzo con un pasante más: José Lezama; y nada menos que 4 tesistas: José Luis Jimenez, Joel Araujo, Matteo Ferrando y David Lilue; y 2 en proyectos a dedicación exclusiva: Johan Gonzalez y Gabriel Casique. (Seeeh, no perdí el tiempo. XD). Todos los proyectos en los que están trabajando me entusiasman muchísimo y tengo altas expectativas con sus aplicaciones. ¡De verdad es emocionante!

Además he tenido algunos otros éxitos en progreso que prefiero no compartir aún, hasta que sea seguro. Seguramente en Enero escucharán noticias de uno de ellos y en Febrero de otro. Pero si les adelanto que es algo emocionante. ¡Una oportunidad para aprender mucho más sin duda!

Por último, pero no menos importante. Este año tuve el gusto de continuar compartiendo con amigos excelentes, una bonita familia y conociendo a nuevas personas que son realmente geniales. ¡Me considero afortunado de conocer a tantas excelentes personas! Recibo una gran cantidad de cariño a diario y puedo retribuirlo de muchas formas, con mi amigos y familia o con el trabajo que amo. ¡Gracias a todos!

En fin, al 2015 le sale una seria competencia para ganarle al 2014, pero tengo un excelente presentimiento de que será aún más épico. ¡Gracias a todos los que formaron parte de mi vida este año! (Éste es como el "mi año en facebook" pero mucho más largo, detallado y empalagoso, jajaja). Nos seguiremos viendo y compartiendo en el 2015. ¡Feliz año nuevo a todos y hasta una próxima entrada! :D

martes, 14 de octubre de 2014

De aprender y enseñar

Como muchos que me conocen saben, me encanta mi carrera y me apasiona aprender siempre nuevas cosas y mejorar día a día. Pero hay una cosa que me mueve más que nada en el mundo: enseñar, compartir, ayudar a otros a crecer. Creo que en cada persona existe un potencial enorme de grandeza. Poder ser aunque sea una pequeña parte de lo que impulse a una persona a encontrar esa grandeza es un orgullo y un privilegio sin duda. Es la fuerza que me mueve y mi propósito de vida. :)

No podía dejar pasar este chiste malo, jajaja.

Desde que comencé a estudiar mi carrera, siempre me he preocupado por contribuir (de la mejor manera que mi limitada experiencia me permitiera) en ayudar a los demás y mejorar mi carrera. Fui preparador la mayor parte de mi pregrado y luego de eso, ayudante académico y finalmente profesor. Hasta donde la voz y el voto me permitieron en cada etapa, siempre intenté proponer nuevas herramientas que motivaran a aprender. Intentar mostrar un poco eso que siento al aprender algo nuevo, de la inspiración y el descubrimiento, para que otros puedan contagiarse quizá un poco y seguir aprendiendo y descubriendo por su cuenta.

Es por todo esto que muchas veces actúo como actúo. Soy el "profesor niño", aquel al que se confunde con un estudiante más si no fuera por la cara de viejo, jajaja. Muchos profesores creen que el camino al aprendizaje es a través del respeto y la distancia. ¡No estoy de acuerdo! Honestamente, creo que el mejor camino al aprendizaje es a través de la confianza, el humor y la automotivación constante. No sólo se crea el ambiente para que los demás aprendan más fácilmente, sino que a cambio terminas aprendiendo muchísimo más de tus estudiantes, tanto académica como personalmente.

Las responsabilidades de un profesor en una universidad, lamentablemente, no están centradas en la docencia y en la formación de los futuros gigantes. En cambio, está centrada en el descubrimiento y diseminación de nuevas ideas a través de la investigación. A pesar de que es algo que también me gusta y por lo que tengo un respeto enorme, no es realmente lo que me apasiona y es respecto a este único atributo que se mide la valía de un profesor e incluso de una universidad. He visto estudiantes de diferentes universidades que se enorgullecen al ver los rankings de universidades y ver sus propias casas en la delantera. Pero ese ranking lamentablemente no tiene nada que ver con la calidad de sus egresados, sino con la cantidad de publicaciones realizadas por profesores adscritos a ellas.

Creo que debería existir la figura del profesor docente, que pueda dedicarse a enseñar y no tanto a investigar. Así mismo la del profesor investigador, que sea justamente lo contrario. Conozco profesores a los que no les gusta enseñar, pero que son excelentes investigadores y eso es lo que les motiva. Eso está muy bien y tienen la suerte de vivir en un mundo donde ese talento es dado mayor importancia, pero deberían existir alternativas a ese filosofía. A su vez debería existir alguna medida, aunque sea difusa, de la calidad docente de una universidad (existen clasificaciones culturalmente aceptadas, pero ninguna formal o basada en argumentos sólidos). Y no lo digo por el reconocimiento involucrado, sino para que aquellos a los que nos apasiona enseñar tengamos la libertad de centrar nuestro trabajo y energía en justamente eso.

Y bueno, cuando comencé a escribir sobre esta entrada, en realidad se trataba de otra cosa pero me desvié, jajaja. Tengo en planes (aunque sin fecha de inicio estipulada) volver a estudiar mi carrera completa por cuenta propia y afinar los detalles que no comprendí por completo. De hecho, he estado haciendo eso ya por algún tiempo. Durante mis estudios, siempre que una materia me gustaba pero no la comprendía completamente hacía lo posible por dar la preparaduría en algún momento. Eso me pasó con una de mis materias favoritas: Traductores e Interpretadores. ¡Esa materia me encantó! Pero a duras penas la pasé (51/100 like a boss, jajaja). Y me fijé comprenderla, enseñándola. Y así fue. :)

¿Cómo planeo repasar mi carrera ahora? Leyendo más que todo, pero con un objetivo concreto en mente: Realizar un repositorio de guías y ejemplos de cada cosa que repase. De esa manera, no sólo aprenderé con mayor profundidad, sino que dejaré algo para que los demás puedan apoyarse en su aprendizaje también. Es un proyecto personal de gran escala y para el cual lamentablemente no cuento con tiempo ahora, pero me encantaría comenzarlo lo más pronto posible.

Y bueno, esto era lo que quería compartir por ahora con ustedes. Solamente un desahogo personal. Cuento con la suerte y el honor de pertenecer a grupos de investigación conformado por algunas de las mejores personas y docentes que conozco, lo cual ha hecho todo muy divertido e interesante. Pero siempre me hace falta ese algo extra especial. El brillo en la mirada de una persona que no sólo acaba de comprender algo, sino que disfrutó aprenderlo y está listo para utilizarlo en su vida. El agradecimiento sincero, aunque sea tácito, de quien halló su vocación y camino en parte con tu ayuda. Ese rincón en el corazón de todas las personas que compartieron contigo y con quienes lograste crecer mutuamente. Son cosas como esa a las que no se les puede poner precio y llenan la vida de color (seh, momento cursi del día patrocinado por Ricardo, jajaja). Hasta una próxima entrada y gracias por seguir leyendo estas locuras ocasionales. n_n

sábado, 4 de octubre de 2014

Semana CoNCISa

Finalmente llegó el momento de colgar el distintivo y disfrutar de un merecido día de descanso. ¡Ha concluido la 2da Escuela Venezolana de Informática y Conferencia Nacional de Computación, Informática y Sistemas!

¡COnferencia Nacional de Computación, Informática y SistemAs!

Fue una semana de trabajo duro, pero que valió muchísimo la pena. Ambos eventos (EVI y CoNCISa) salieron super bien y creo que los asistentes salieron bastante satisfechos. Tuve el gusto y el privilegio de ser parte del equipo organizador del evento (aunque la invitación fue tardía, y no pude ayudar en el previo tanto como hubiera querido, pero igual pude dar mi todo para que el evento saliera bien, jeje). Tuve la oportunidad de compartir con queridos colegas ya conocidos y la dicha de conocer a otros más. Además, tuvimos la invaluable ayuda de un equipo de logística formado por estudiantes voluntarios de varias universidades. A la mayoría ya los conocía y son personas geniales. Los que no, pronto descubrí que también eran excelentes personas y pasamos una genial semana entre todos haciendo posible estos eventos (y haciendo Origami, jajaja).

Ambos eventos fueron con sede en la UCAB (Universidad Católica Andrés Bello). Como otras veces que esta universidad ha sido casa para eventos académicos, el lugar fue excelente y todas las cosas funcionaron muy bien. Además, para mi, la UCAB tiene un "no se qué" que me hace sentir muy a gusto. Siempre me ha parecido que tiene un ambiente muy relajante y unos jardines sumamente estéticos y bien cuidados. Después de mi adorada USB, creo que es uno de los sitios en donde me siento más a gusto. Además, estaba lleno de gente genial de muchas diferentes universidades, lo cual lo hizo aún mejor. :)

No pude entrar a muchas de las charlas, ya que estuve ocupado en la organización. Sin embargo, tuve el gusto de poder asistir a tres muy buenos subeventos:

  • En primer lugar, fui el moderador del tutorial "Herramientas para la Gestión de Eventos Académicos en Línea", dictado virtualmente por el prof. Raymond Marquina de la ULA (excelente persona y profesional, al menos en lo poco que tuve el gusto de compartir con él). A pesar de un inconveniente con la luz, que se fue en casa del presentador y tuvimos que sobrevivir con puro audio vía plan de datos (ese si es un plan de datos vale, jajaja), la charla estuvo buenísima y aprendí bastante.
  • En segundo lugar, pude asistir y ser chair de la 4ta (y última) tanda de ponencias del segundo día de CoNCISa. Hubo muchas buenas charlas de diferentes temas, en realidad muy interesantes. Además, aquí presenté yo mismo una charla llamada "Hacia la Verificación de Programas que Manipulan Estructuras Recursivas Generales Mediante Apuntadores", correspondiente al trabajo enviado en conjunto con Jesús Ravelo. Volví a leer el artículo preparando la presentación y sigo enormemente orgulloso del resultado y agradecido por toda la ayuda, guía y amistad de Jesús. ¡Es en verdad invaluable! Y la presentación creo que salió bastante bien, aunque quedaría de la audiencia constatarlo, jajaja.
  • En tercer lugar, pude asistir a la presentación del premio a la destacada trayectoria para mi amigo y profesor, Jorge Baralt. Además de emotivo, todo el acto fue en realidad super gracioso, por diversas razones. Nada más la exposición del curriculum fueron casi 10 minutos, jajaja. Y el discurso de aceptación fue lo máximo: "Me dijeron que tengo solo dos minutos... El primero y el último me imagino." y "Seré breve entonces: Gracias... ¿Ahh? ¿Un poco menos breve? Muy bien... Muchas gracias", jajaja. Después de ahí si se enserió un poco el discurso y dijo algunas excelentes e inspiradoras palabras. ¡Qué gusto y qué privilegio conocer a una persona tan valiosa en verdad! :)

Fue una semana interesante y entretenida, aunque fuerte. Una cosa divertida es que los últimos dos días y medio estuve encargado de las ventas de souvenirs del evento. He descubierto mi don y gusto de venta, jajaja. La apodaron "La tiendita de Ricardo" y se pudo vender unas cuantas franelas, chemisses y hasta libros con las memorias de CoNCISa del año pasado. Además, vendimos tantas membresías a la Sociedad Venezolana de Computación que nos quedamos sin facturas. Fue divertido eso, jajaja. Cuando no estuve en la tiendita, estuve más que todo en la mesa de registro. ¡Ese trabajo me encanta! Tengo la oportunidad de tratar y conocer a mucha gente nueva, y ayudarlos a tener la mejor experiencia posible. Recibí a cada uno con una sonrisa, no sólo por que es lo indicado, sino por que estaba genuinamente feliz de estar ahí ayudando y conociendo nueva gente.

El acto de clausura también estuvo buenísimo, con una agrupación tributo de Les Luthiers llamada "Los Experimentados" (o algo así). ¡EXCELENTE! Hicieron dos obras originales que estuvieron realmente buenas. Es una lástima que sean prácticamente invisibles en la web. No he podido encontrar nada sobre ellos posterior al evento, pero fue realmente genial. ¡Ojala logren surgir y triunfar como grupo!

En fin, excelente semana. Tuve el gusto de conocer a mucha gente nueva y compartir con viejos y nuevos amigos. Me encantó la hermandad que vi entre las diferentes universidades. Sin las competencias, ni los delirios de superioridad, ni discriminaciones. Tan sólo un grupo de gente unida por su pasión por la computación y las ganas de ayudar a realizar un gran evento. ¡Qué orgullo haber formado parte de este gran equipo! Espero poder colaborar nuevamente el año que viene y en cualquier otro evento de este estilo. Fue una gran experiencia en verdad. ¡Gracias a todos! :D

Y esto era lo que quería compartir por ahora. Tenía bastante tiempo sin escribir, jeje. He estado realmente ocupado, con mil cosas que hacer. Estas semanas venideras ya deberían ser un poco más ligeras, pero ya veremos, jajaja. ¡Hasta una próxima entrada!