They call me DOCTOR Tibbs!

Ya está. El miércoles defendí mi tesis doctoral. La defensa fue muy bien; me hicieron preguntas muy buenas, y el tribunal pareció muy satisfecho con el trabajo que he hecho estos últimos años.

Eso sí, a diferencia de las defensas en España, en la defensa no te dan una nota. Ni cum laude, ni sin laude, ni con unanimidad ni sin ella. O te doctoras o no. Y yo me voy a doctorar 🙂 Otra diferencia con las defensas españolas es que mi defensa no es el punto final; todavía tengo que hacer unas modificaciones menores a la tesis a petición del tribunal, pero estarán listas pronto (la fecha limite es el 30 de julio). Y no seré doctor oficialmente hasta el 27 de agosto. No obstante, me he quitado un peso enorme de encima 🙂

Por cierto, entre la entrega del manuscrito final el 30 de julio y la llegada de mis padres para mi investidura tengo planificado un viaje épico. Detalles coming soon.

La tesis, a punto de caramelo

Ya puedo ver la luz al final del tunel. Hace un par de días, envié el borrador de mi tesis a mi tribunal, que ahora tiene que revisarlo y sugerir cambios. No tenemos una fecha concreta para la defensa, pero seguramente será en julio. Eso sí, salvo actos de fuerza mayor, lo que es impepinable es que, seis años después de llegar a Chicago, el 27 de agosto me doctoro. De hecho, tengo noticias sobre lo que ocurrirá a partir del 28 de agosto, pero me las guardo hasta que estén confirmadas al 100%.

En cuanto a la tesis, todavía quiero pulirla un poco más antes de colgar un borrador publicamente. Eso sí, tampoco hay mucha sorpresas porque mi tesis es basicamente un compendio de mis publicaciones anteriores. No obstante, no basta con coger mis artículos, graparlos, y entregarlos al tribunal (aunque esto lo hacen en algunas universidades); hay que reescribir bastante para que quede una narrativa coherente, es una buena oportunidad para proporcionar explicaciones extendidas que no cupieron en el artículo original, se pueden presentar más resultados experimentales, etc.

Como curiosidad, cuando empecé a escribir la tesis a mediados de Marzo, escribí un script que extraia cada hora el número de páginas y de palabras en la tesis, para poder generar un gráfico. Este es el resultado:

progress

Curiosamente, cuando escribí el script me imaginé que el resultado sería una función monótona creciente, pero claramente no lo es. La razón es que, utilizando mis publicaciones anteriores como punto de partida, me di cuenta de que había partes bastante grandes que quería reescribir por completo. Por lo tanto, había días que me cargaba 5-10 páginas, que poco a poco volvían a aparecer. También había periodos largos en los que, en lugar de escribir, simplemente “pensaba”, y no había cambios en el número de páginas o palabras.

Por cierto, me molaría hacer un Wordle de la tesis, aunque me gustaría hacerlo bien (extrayendo las frecuencias no solo de palabras sino de frases también) utilizando el interfaz “avanzado” de Wordle. A ver si, cuando tenga un momento, escribo un script para extraer esa información de mis ficheros LaTeX.

Y, sí, la tesis está escrita en LaTeX. Aunque, claro, aquí a nadie se le ocurre escribir la tesis en cualquier otro sistema, a diferencia de otros lares.

Plagio, palabra soez

Es hora de desempolvar un poco el blog. Empiezo con este artículo, “Plagio, palabra soez”, que saldrá publicado en breve en la Revista UD, sobre las diferentes atitudes que hay ante el plagio en EEUU y España.

*   *   *

En mis años de estudiante en Deusto, tuve que realizar durante mi segundo año un examen que consistía en la realización de varios programas a pie de máquina en una de las aulas de informática de ESIDE. Durante el examen, un estudiante que no conocía, salvo por haberle visto alguna vez en clase o en los pasillos, me ofreció 2.000 de las antiguas pesetas si le pasaba la solución de uno de los ejercicios en un disquete. Me negué tajantemente y, al cabo de unos minutos, terminé el examen y abandoné el aula.

Unos días después, el profesor de la asignatura, con quién estaba realizando un proyecto de investigación, me informó que había corregido los exámenes, y que había varios exámenes idénticos al mío, y que suponía que el mío era el origen, dado que tengo un estilo de programación un tanto peculiar que él supo reconocer. Le conté lo que ocurrió durante el examen, y supuse que el estudiante que me ofreció las 2.000 pesetas se levantó en medio del examen, se sentó en frente de mi ordenador, birló con un disquete el trabajo que dejé en el ordenador, y se lo pasó a varios de sus compinches. El profesor me otorgó el beneficio de la duda y dijo que interrogaría a los otros estudiantes, sin revelar que había un “examen origen”. Unos días después, me dijo que convocó a los presuntos plagiadores, y les preguntó si podían explicar por qué sus exámenes eran idénticos. No admitieron ninguna culpa, y alegaron que “vamos a la misma academia, y por eso programamos exactamente igual”. Cualquier programador con un mínimo de experiencia sabe que esto es una soberana estupidez, aparte de estadísticamente imposible, con lo cual los otros estudiantes suspendieron y yo fui evaluado sin ninguna penalización.

Unos díez años después, me encontré co-impartiendo una asignatura de bases de datos en la Universidad de Chicago. Corrigiendo uno de los deberes semanales, me encuentro con que el trabajo entregado por un estudiante es sospechosamente similar, aunque no idéntico, al de otro estudiante. El profesor principal de la asignatura convoca a cada uno de los estudiantes por separado, y simplemente les presenta los hechos: sus dos deberes son peculiarmente similares. No idénticos. Simplemente lo suficientemente parecidos como para mosquearnos un poco. El primer estudiante, al oír esto, se echa a llorar y admite entre sollozos que pidió la solución al otro estudiante para utilizarlo como ayuda, pero que originalmente no tenía intención de copiarlo. El otro estudiante confirma esta versión de los hechos. El primer estudiante recibió una amonestación oficial en su expediente y, por motu propio, nos envió una disculpa escrita por la “enorme falta de respeto” que nos había demostrado. El otro estudiante recibió una bronca considerable y recibió un cero en esos deberes.

Ante un caso claro de plagio en un examen, el estudiante español intenta zafarse, mientras que, ante un caso menos claro y en unos deberes que cuentan mucho menos para la nota final, el estudiante estadounidense inmediatamente admite su culpabilidad. ¿Por qué? La razón es muy sencilla: el plagio es anatema en las universidades de Estados Unidos, debido, principalmente, a los severos castigos que se imponen. Un plagio menor (p.ej., en unos deberes) o con atenuantes (p.ej., si el estudiante confiesa el plagio) suele resultar en una amonestación en el expediente, una marca negra que puede dificultar la entrada en postgrados o incluso la búsqueda de empleo. Un plagio mayor (p.ej., si el estudiante no admite su culpabilidad y ésta se demuestra posteriormente ante un comité disciplinario, plagios en un examen, o si el estudiante reincide en el plagio menor) puede resultar en una expulsión. En España, si suspendes por copiar, siempre puedes probar de nuevo en la siguiente convocatoria. En EEUU, se acabó tu carrera universitaria. Puede parecer una medida draconiana, pero es innegable que es efectiva: mientras que en España el plagio es, para el estudiante, otra herramienta más para obtener el aprobado, el plagio en EEUU se ha convertido en un tabú.

Examen de Candidatura

En la inexorable marcha hacia el doctorado me toca pasar dentro de nada por otro aro: el examen de candidatura. No es un examen en el sentido convencional, sino más bien una presentación de mi propuesta de tesis. En nuestro departamento viene a ser más concretamente un informe en el que explico lo que he hecho hasta ahora, y lo que quiero hacer para completar la tesis (que ya debería estar medio hecha).

La candidatura es el último requisito formal antes de poder defender la tesis. De hecho, si avanzas a ser un “candidato doctoral”, se suele decir que eres un estudiante ABD (All But Dissertation). En nuestro departamento suelen pasar 1-2 años desde el examen de candidatura hasta la defensa de la tesis.

En fin, que mi examen de candidatura está planificado para el 25 de noviembre. Si a alguien le interesa leer el borrador actual de mi propuesta de candidatura, podéis leerla aquí:

Se agradecen todo tipo de comentarios, tanto si provienen de los menos iniciados (que siempre proporcionan una perspectiva diferente) como de los más curtidos en esto de la investigación 🙂

Haizea TP 1.1

Hace un par de semanas anuncié el lanzamiento de la primera versión de Haizea, el software que estoy produciendo en mi investigación doctoral. Hoy he lanzado una versión actualizada (Technology Preview 1.1), disponible en:

La principal novedad de esta versión es que incluye soporte para OpenNebula 1.0, también lanzado hoy mismo (el grupo de investigación con el que trabajo este verano es el mismo que desarrolla OpenNebula). OpenNebula y Haizea, utilizados juntos, permiten gestionar máquinas virtuales Xen o KVM en un cluster utilizando distintos tipos de reservas (como reserva de recursos en avance). Hay muchos más detalles en la web de OpenNebula y de Haizea. Y, por supuesto, lanzo mi enhorabuena al equipo de OpenNebula por lo currada que está la primera versión estable de su software, y por el infinito buen rollo que me han mostrado al colaborar con ellos.

Otra novedad interesante: Nos han publicado la noticia del lanzamiento de OpenNebula y Haizea en la portada de Barrapunto 🙂

El doctorado está bien, pero…

Ayer estuve en la Universidad de Deusto para dar mi ya habitual charla de julio. A lo largo del día hablé con la ínclita R (comentarista ocasional del blog) que, tras ponerle al día de cómo me iba todo en EEUU, me dijo que en el blog doy una visión muy romántica y optimista del doctorado en EEUU: muchos más recursos que en España, un sueldo digno, aventuras científicas, congresos, vivir la vida universitaria americana, charlas de investigadores famosos, etc. Todo eso es cierto, pero también tiene su lado negativo, al que sólo he aludido en una ocasión. Aunque suelo ser una persona generalmente optimista reconozco que, como me dijo R, puede haber gente que lee el blog y se imagina que lo del doctorado en EEUU es una gozada de principio a fin. Pues bien, para variar un poco, voy a ponerme pesimista y hacer un repaso de las cosas malas sobre hacer un doctorado en EEUU (al menos las que sufro y padezco yo; a otras personas seguro que le incordian cosas distintas)

  • Es mucho trabajo. La respuesta breve estandar a “¿Cómo es el doctorado en EEUU?” suele ser “Está muy bien, te exigen mucho y hay que trabajar mucho, pero está muy bien”. Sin embargo, me da la impresión de que a veces ese “hay que trabajar mucho” no termina de calar. Así que para ser claros: trabajo en mi tesis 10-12 horas al día, 6-7 días a la semana. Raramente tengo un fin de semana “entero” libre, y las vacaciones son contadisimas: las vacaciones más largas que me he pillado en los cuatro años que llevo en EEUU no exceden la semana de duración, y siempre en navidades. El resto del año de vez en cuando me concedo el capricho de pillarme un fin de semana de 3 o 4 días. Puede sonar a explotación laboral, pero no lo es, porque prácticamente todo ese trabajo me beneficia a mi, porque estoy trabajando en mi tesis (es decir, que el jefe, o “explotador”, vengo a ser yo). No hay un contrato que me diga que tengo que trabajar eso (o menos), ni hay un sindicato de estudiantes porque sinceramente no nos sentimos explotados. Es sencillamente la cantidad de trabajo que hay que meter para doctorarse aquí. Y punto.
  • El mundo científico no es el mundo del colegueo. Cuando llegué a EEUU, yo me imaginaba que el mundo de la ciencia era un club de colegas donde un montón de científicos cogidos de la mano trabajaban por el bien de la humanidad. No niego que, para muchos de nosotros, esa sea nuestra motivación abstracta, pero en la práctica el mundo de la ciencia es igual de competitivo (o más) que el mundo empresarial. Por ejemplo, hay que producir artículos, hay que presentarlos en las mejores conferencias (léase: las más competitivas), y hay que tenerlos listos para ayer. ¿Por qué? Por un lado, porque hay que convencer al gobierno de que te dé dinero para investigar, y para ello tienes que haber publicado más artículos y en mejores conferencias que el resto de grupos que se presentan para la misma beca. Por otro lado, tú mismo querrás conseguir un buen trabajo después de doctorarte, y para eso cuentan bastante las publicaciones y otros méritos donde habrás tenido que competir contra otras personas. Las publicaciones no son el único criterio, pero si uno muy importante y donde más se nota la competición.
  • La vida personal suele quedar en segundo plano. Yo soy de los que creen que hay que encontrar un balance entre la vida profesional y la personal, y que no se puede sacrificar una por otra. Sin embargo, tengo que admitir que es muy jodido mantener ese balance cuando tu trabajo consume tanto tiempo. Estos dos últimos años he visto como varios amigos de Bilbao ya se han casado (o están co-habitando con su pareja), y alguno incluso ya tiene un crío en camino. Yo me siento como que me estoy quedando atrás en ese sentido (aunque, como me corrigió un amigo en Bilbao, “ya, pero te estás adelantando en muchas otras cosas”), y que tendré que pillar carrerilla cuando me doctore…
  • Y la de cosas que me han pasado que no cuento en el blog… Como saben los lectores “de toda la vida”, el blog tiene sus límites y todas las cosa de naturaleza personal se quedan fuera (estos lectores lo saben porque son los amigos de toda la vida con lo que tengo ocasión de quedar en persona para contarles todo lo que no cuento aquí). Sólo diré que en el doctorado me ha tocado pasar por situaciones muy intensas (e incluso por cabronadas de espanto). Gustosamente se lo cuento a la gente que quiera escucharme en persona 🙂

En fin, en este post estoy siendo negativo a propósito. Reitero que hacer el doctorado en EEUU es, para mi, un verdadero privilegio a la que pocas personas pueden acceder, y que no me arrepiento ni una iota de haber decidido, hace cuatro años, de dejar Bilbao para irme a vivir a Chicago. De hecho, estoy seguro que muchos doctorandos en España se cambiarían conmigo sin pensarselo dos veces. No olvidemos que, en España, los doctorandos generalmente ni se les paga un sueldo digno, ni pueden trabajar a tiempo completo en su tesis, ni se les proporcionan los recursos adecuados para su investigación. Todo lo que he dicho arriba no es para quejarme de vicio, sino para que no quede duda de que, a pesar de todas las ventajas que supone hacer el doctorado en EEUU, también tiene su coste (y si estás pensando en hacer el doctorado en EEUU, ten muy claro en qué te estás metiendo).

Haizea

Hoy he llegado a un punto relativamente importante en mi investigación, ya que el trabajo que he estado haciendo recientemente ha alcanzado por fin suficiente masa crítica como para publicarlo no sólo en forma de artículo sino también en forma de proyecto de software. Hoy he lanzado públicamente el proyecto Haizea:

¿Qué es Haizea? Bueno, la respuesta a esa pregunta se encuentra en la web, pero intentaré resumir y dar poco el tostón (aunque voy a tener que asumir un mínimo de conocimiento informático). Suponed que tenéis un cluster de ordenadores, y que queréis compartir ese cluster entre varios usuarios. Evidentemente, cada usuario tendrá necesidades distintas: algunos querrán ejecutar programas en modo batch y otros querrán control exclusivo de parte o la totalidad del cluster durante un tiempo (p.ej., imaginad un profesor que quiere impartir un laboratorio de programación paralela de 14:00 a 16:00 todos los miércoles). Y cada usuario, claro, quiere un entorno software distinto. Hay soluciones que abordan partes de este problema y suelen estar muy especializados para un caso de uso concreto. Por ejemplo, los gestores de jobs son muy buenos para ejecución batch desatendida, pero suelen ser nefastamente malos para reservas en tiempos concretos (y de darte exactamente el entorno software que quieres, ni hablar). Por contra, sistemas como Amazon EC2 son excelentes para conseguir exactamente el entorno software que quieres, pero hay que pedirlo en el instante en el que se quiere. Similarmente, VMWare y compañía ofrecen gestores de infraestructura virtual pero principalmente orientados a servidores con alta disponibilidad.

Pues bien, Haizea (y buena parte de la investigación que realizo) tiene como objetivo proporcionar una solución general al problema del aprovisionamiento de recursos. El software que he desarrollado, utilizado en combinación con OpenNebula (un gestor open source de infraestructura virtual desarrollado por el grupo de Arquitectura de Sistemas Distribuidos de la Universidad Complutense de Madrid), permite gestionar un cluster Xen o KVM (y pronto también clusters VMWare) y desplegar máquinas virtuales dinámicamente en el cluster satisfaciendo varios casos de uso simultáneamente y eficientemente. Lo mismo puedes pedir “quiero una máquina con 2 CPUs y la quiero ahora“, o “dame 10 máquinas, cuando puedas, pero que se ejecuten durante 2 horas”, o “dame 20 máquinas mañana de 14:00 a 16:00”. Por cierto, “eficientemente” es la palabra clave aquí. Una de las razones por las que las soluciones existentes se centran en un caso de uso concreto es porque no suele ser posible combinar varios eficientemente. Ojo que la versión actual es todavía un “technology preview”, así que todavía le falta bastante funcionalidad, pero el proyecto irá creciendo bastante en los próximos meses.

Por supuesto, detrás de todo esto hay unos rollos macabeos tremendos de investigación. Al que se sienta aventurero, le animo a que se lea el artículo donde presenté las ideas principales de Haizea: Combining Batch Execution and Leasing Using Virtual Machines. Aunque no lo parezca, el contexto de esta investigación sigue siendo la computación grid, donde el aprovisionamiento eficiente de recursos es un problema. Más recientemente, Haizea también podría enmarcarse como una contribución dentro de la “computación cloud“, donde los recursos tipicamente se gestionan con tecnologías de virtualización (a los que estamos en el mundo de la grid, el término “cloud” nos resulta un poco marketing-iano porque toma muchas ideas de la grid, únicamente añadiendo el uso de máquinas virtuales). En fin, si alguien no ve claro algo de lo que digo aquí o en la web de Haizea, o qué utilidad tiene esto, o cuanto son 400 dracmas, que lo diga en los comentarios y yo respondo ipso facto.

Por cierto, no lo he dicho explícitamente, pero Haizea es, evidentemente, open source. Ya iba siendo hora de que, después de tanto predicar a favor del software libre y el código abierto, hiciese mi propia contribución. Y, sinceramente, lo que más me anima de este proyecto es saber que estoy devolviendo algo a la comunidad a través de un proceso abierto y colaborativo.

P.D.- Como ya saben los lectores euskaldunes, “Haizea” significa “viento” (vale, vale, más correctamente “el viento”). Inicialmente escogí ese nombre (hace ya casi un año) simplemente porque quería que mi sistema tuviese un nombre en euskera que sonase bien tanto en inglés como en castellano y me dio por “haizea”. Eso si, durante el último año han estado saliendo todo tipo de juegos de palabras en relación a la “computación cloud”. No se paran de ver artículos tipo “Are clouds a nebulous concept?”, “Will clouds go up in smoke?”, “Cloud Computing: Eyes on the skies”, etc, etc. Así que “haizea” resultó ser, sin querer, otro juego de palabras más… porque las nubes no se mueven sin un poco de viento… (eeeeeeh, eeeeeeh, ¿lo pillas? ¡viento! ¡nubes! si es que soy un caso perdido… xD )

P.P.D.- En la web doy los agradecimientos de rigor, pero la verdad es que tengo agradecer especialmente el apoyo del Grupo de Arquitectura de Sistemas Distribuidos de la Universidad Complutense de Madrid, con el que estoy trabajando este verano. Si no llega a ser por ellos, que me ofrecieron la oportunidad de desarrollar una versión más estable de Haizea para utilizar en combinación con OpenNebula, no creo que Haizea hubiese llegado a ver la luz del día (o, al menos, habría tardado bastante más). Y tampoco hay que olvidad, claro, que me han traido a España durante todo el verano 😉

Esta semana, en Boston

Esta semana me toca pasarla en Boston para asistir a la conferencia “ACM/IEEE International Symposium on High Performance Distributed Computing” (mejor conocida como HPDC 2008). Estoy aquí porque, como comenté anteriormente, me aceptaron un artículo en esta conferencia y hay que venir a presentarlo. Mi presentación no es hasta el jueves, así que de momento solamente estoy asistiendo a otras charlas.

A pesar de haber dado docenas y docenas de charlas, y estar muy suelto al hablar en público, hay un cierto acojone en venir a HPDC. Primero, porque esta presentación viene a ser como una defensa de proyecto de fin de carrera. Nos hemos tirado un año trabajando un tema de investigación, obtuvimos unos resultados, los resumimos en un artículo, y ahora hay que defenderlo delante de un montón de gente. Aunque que te hayan aceptado el artículo es un buen indicador de la calidad del trabajo, en la conferencia todavía puedes encontrarte con gente que te hace preguntas dificiles (y no con mala leche, simplemente son preguntas que a ti ni se te habían ocurrido). Segundo, porque HPDC es una de las conferencias más importantes en mi área de investigación, con lo cual no te enfrentas con cuatro pardillos en el público. Te enfrentas a los mejores investigadores de tu campo, e incluso con los autores que has citado en tu artículo (lo que siempre puede resultar en preguntas embarazosas del tipo “Usted no ha entendido lo que yo dije en mi artículo”). Finalmente, porque esta es la primera vez que tengo que presentar los resultados de un artículo mío en una conferencia. Por concretar, es el primer artículo en el que yo soy “primer autor”, lo que significa que soy el principal responsable (y el que se come el marrón si hay algún problema con el artículo). Y, sí, es mi primer artículo porque en el pasado he publicado artículos en “workshops”, que (en términos académicos) tienen menos standing que una conferencia o un congreso.

Vamos, que no es una charla tipo “Si me sale bien, vale, y sino, también”. Hay que prepararla y empollarla como la defensa del proyecto de fin de carrera o de una tesina. Así que seguramente habrá un poco de tensión hasta el jueves. A ver que tal…

Eso sí, me he planificado para poder quedarme el fin de semana después de la conferencia, así que tendré ocasión de hacer un poco de turismo por Boston. Tengo planificado, como visitas imprescindibles, ir al campus del MIT y de Harvard, pero se aceptan sugerencias.