Zipcar: coches “en demanda”

Como ya sabéis u os podéis imaginar, en Estados Unidos es prácticamente imposible arrerglárselas sin un coche para la mayoría de la población. Para nosotros es necesario para ir a trabajar, al supermercado de compras, al médico, etc. De hecho, muchas personas no pueden andar a casi ningún lado, sólo dar una vuelta por zonas residenciales. Sin embargo sí que existe una zona intermedia: gente con acceso a transporte público por vivir en el centro de las pequeñas ciudades o en ciudades grandes y que no necesita coche a diario (de hecho vivir en una gran ciudad con coche puede llegar a ser complicado). Para ellos existe un empresa que se dedica a alquilar coches por horas y acaba de llegar a la universidad de Virginia.

Zipcar te ofrece, a cambio de una cuota anual y pequeós pagos por cada alquiler, coches con seguro/gasolina/etc. que se pueden solicitar para hacer un recado especial o la compra de la semana. Más barato que tener coche propio y muchos menos quebraderos de cabeza. Eso sí, aquí en Charlottesville me pilla un poco lejos donde están situados. Pero me parece una buena idea que deberían probarla por allá: si hubiera estado disponible cuando vivía en Sestao seguro que me hacía socio.

http://www.zipcar.com/uva/

Curiosidades caseras de EEUU

Muchos de vosotros os acordaréis de los dibujos animados de los picapiedra, con sus invenciones de la edad de piedra para representar aparatos modernos como el coche, ventiladores, etc. Pues bien, hasta que no he estado viviendo en Estados Unidos me he dado cuenta de este detalle, fijaos en esta imagen:

Podemos ver a Wilma fregando los platos en la parte izquierda, con la ayuda de tres animales. Dos de ellos representan el grifo y el estropajo pero, ¿qué representa el cerdo metido en ese armario? Puedes pensar que el cubo de la basura, pero me he dado cuenta de que es en realidad un electrodoméstico muy común en Estados Unidos que no lo conocía. Se llama garbage disposal, y es así como un triturador instalado debajo de la fregadera. Cuando tienes que tirar los restos de las lentejas simplemente los tiras por el fregadero. Activas un interruptor y el triturador lo convierte todo en puré y se va por el desagüe.
Al mudarnos a nuestra casa la cocina no tenía este sistema, así que tuvimos que instalarlo entre el padre de Rebecca y yo. Cosa que no es nada fácil, ya que hay que dedicar un enchufe al aparato con interruptor (instalación eléctrica) y conectarlo al desagüe debajo de la fregadera junto con el lavavajillas (trabajillo de fontanería). Este sistema tienes sus ventajas e inconvenientes. Por ejemplo, los restos de comida no van a la basura con lo cual hay menos residuos, pero el tratamiento de las aguas de desagüe es más complicado. Para más info, como siempre, Wikipedia: http://en.wikipedia.org/wiki/Garbage_disposal

Science Cloud 2010 paper

Hace ya un mes que comenzó el nuevo curso en la Universidad de Virginia, así que a la vuelta de vacaciones nos hemos encontrado con Charlottesville lleno de estudiantes de nuevo. Antes de empezar a planear este nuevo curso académico creo que es mejor hacer un resumen del último año, que me quedé después de aprobar los exámenes de cualificación. Este primer post va sobre el paper que nos aceptaron y presenté en Chicago en el workshop Science Cloud -asociado con la conferencia HPDC (High Performance Parallel and Distributed Computing).

El texto completo lo podéis encontrar en este enlace: http://dsl.cs.uchicago.edu/ScienceCloud2010/p01.pdf Un resumen por encima y para los que no estéis especializados en el tema es el siguiente: ahora mismo es posible alquilar ordenadores para ejecutar programas y/o guardar datos en intervalos muy pequeños, a partir de una hora, y a un precio muy barato. Es lo que se llama el cloud computing y hay empresas importantes como Amazon, Google y Microsoft que se están metiendo en este modelo de negocio. Hay muchas personas a las que este modelo les viene muy bien y nosotros ponemos como ejemplo a la comunidad científica. Por ejemplo, un científico tiene su modelo de cómo evoluciona el clima global y lo ejecuta en su ordenador personal. Sin embargo, el nivel de detalle que se puede conseguir con un solo ordenador (incluso de última generación con varios procesadores) es bastante pobre: digamos que el enorme estado de Virginia se modela con 5 puntos diferentes y cada punto nos da información sobre temperaturas medias, etc. Si queremos una resolución mayor, es decir, enterarnos de cómo va a afectar el nuevo clima a las temperaturas de la costa en Virginia Beach o más en el interior en la cordillera de las Blue Rigde Mountains el científico necesita acceso a más ordenadores. Digamos unos 200 ordenadores durante 10 horas. Comprar 200 ordenadores, instalarlos, mantenerlos, pagar por la electricidad, etc. es carísimo y no todos los científicos pueden permitírselo o tener acceso a un centro que lo tenga. Por eso sale mejor pagar a Amazon unos 10 centavos por hora por ordenador: $200 y el cálculo está hecho en una noche en vez de en tres meses.

Éste va a ser el contexto de mi tesis doctoral. A principios del año pasado mi grupo estuvo realizando diversos experimentos en la cloud (nube) de Microsoft, llamada Azure. Nuestra pregunta sería: estoy muy interesado en usar la nube pero la información que veo en las páginas web es bastante vaga, ¿cómo puedo saber cómo se va a comportar mi aplicación y cuál va a ser su rendimiento? ¿Cuáles son las limitaciones o “realmente puedo tener 200 ordenadores a la vez machacando mi base de datos”? Por supuesto, esto es una simplificación y las respuestas tienen muchos matices. Para los que estéis interesados echarle un vistazo al paper que representa mi trabajo del otoño de 2009. Aquí os dejo con el abstract:

A significant open issue in cloud computing is performance. Few, if any, cloud providers or technologies offer quantitative performance guarantees. Regardless of the potential advantages of the cloud in comparison to enterprise-deployed applications, cloud infrastructures may ultimately fail if deployed applications cannot predictably meet behavioral requirements. In this paper, we present the results of comprehensive performance experiments we conducted on Windows Azure from October 2009 to February 2010. In general, we have observed good performance of the Windows Azure mechanisms, although the average 10 minute VM startup time and the worst-case 2x slowdown for SQL Azure in certain situations -relative to commodity hardware within the enterprise- must be accounted for in application design. In addition to a detailed performance evaluation of Windows Azure, we provide recommendations for potential users of Windows Azure based on these early observations. Although the discussion and analysis is tailored to scientific applications, the results are broadly applicable to the range of existing and future applications running in Windows Azure.

Por cierto, la conferencia estuvo bastante interesante y entretenida, incluso nos llevaron en un yate/restaurante por el lago a cenar un día. Y por supuesto, visita al chicagüense de turno.

QUALS!

Justo antes del verano cumplí con el último de los requisitos para continuar en el programa de doctorado en la Universidad de Virginia. Estoy hablando de los temidos exámenes de cualificación o “Qualifying exams, quals for short”. El sistema ha cambiado desde que estoy aquí, pero para mí el requisito se puede resumir de la siguiente forma: 5 exámenes escritos y uno oral, con dos oportunidades para aprobar cada uno. Te examinan en enero o mayo. Suspendes dos veces y dices adiós al doctorado en UVA -por eso va lo de temidos. Posiblemente es el paso más importante para cursar el doctorado, ya que aunque no es parte de tu tesis es la criba más importante en el programa. A no ser que Google te ofrezca un sueldo que se aproxima bastante a las 6 cifras y decidas dejar la vida académica con el título de Master of Computer Science – se han dado casos-.

Para los que tengáis curiosidad, los exámenes de cualificación se dividen en 5 secciones: Lenguajes de programación/Compiladores, Ingeniería del Software, Sistemas Operativos, Teoría de la Computación/Algoritmos y Arquitectura de Computadores. Hay un examen escrito por cada sección y un examen oral que cubre todo el temario. Este enero pasado aprobé el último escrito que me faltaba y me presenté por primera vez al oral, que no aprobé por los pelos. La impresión del comité fue que con un poco más de preparación no debería tener problemas en mi segunda -y última- oportunidad. Claro está, jugarte la permanencia en el programa de doctorado a un examen oral de 50 minutos ante un comité de 5 profesores es extremadamente estresant, por decirlo de alguna manera.

El caso es que felizmente superé la prueba a finales de mayo pasado después de encerrarme un mes con los libros y hacer sesiones de práctica con mis compañeros y varios profesores. Para los curiosos, esto es lo que recuerdo de las preguntas (10 minutos por sección):

  • Compiladores: Dibuja un diagrama con los componentes principales de un compilador. ¿Quál es la salida de cada componente? Describe la teoría matemática detrás del Scanner y del Parser. ¿Qué partes usan la tabla de símbolos? Describe dos optimizaciones, una independiente de la arquitectura y otra dependiente de ella.
  • Arquitectura: Diferencia entre coherencia y consistencia de memoria en sistemas con varios procesadores. ¿Quáles son las condiciones suficientes para tener un sistema de memoria coherente? ¿Tiene sentido la optimización “merging write buffer” en cachés si queremos tener un sistema de memoria estrictamente consistente? ¿Por qué?
  • Teoría/Algoritmos: ¿Es el problema de la parada NP-Completo? ¿Es NP-difícil? ¿Puedes demostrar que es NP-difícil? ¿Cómo se hace una reducción? Escribe 5 algoritmos diferentes que conozcas con 5 tiempos de ejecución diferentes-big O notation-.
  • Sistemas Operativos: ¿Qué es RPC? Dibuja un diagrama con dos procesos en un sistema distribuido ejecutando una RPC. ¿Quáles son los posible problemas en una RPC que no suelen darse en una llamada local? ¿Cómo distingue el cliente entre ellos? ¿Quáles son las posibles semánticas para una RPC?
  • Ingeniería del Software: ¿Cómo probarías un sistema operativo -enrollate por 5 minutos- ?¿ Cómo decides que ya has hecho suficientes tests a un sistema software?

Bueno, ¿qué pensáis? ¿Fácil/díficil/no sé de lo que me hablas? Por cierto, si alguien tiene curiosidad por el temario, aquí tenéis una foto con parte de los libros a estudiar (no se incluyen los libros de Ingeniería o Compiladores):

quals

Escrito en UVA. 1 comentario

Casa nueva!

Después de 4 meses sin un post ya va siendo hora de que escriba algo. Dos cosas me han tenido bastante ocupado estos últimos meses: la mudanza y el examen de cualificación. Del examen hablaré en otro post, este va a ser sobre nuestra nueva casa:

Casa

Dado que voy a permanecer un par de añitos más en Charlottesville para acabar el doctorado, y el mercado inmobiliario ha reventado en USA nos salía mejor comprar una casa que seguir de alquiler en nuestro apartamento. Para estándares norteamericanos no es gran cosa, pero para los que estamos acostumbrados a vivir en pisos alucina: 300 m2 de terreno, la casa tiene tres pisos: sótano, primero y segundo, con un total de 180m2 utilizables. Tenemos un pequeño terreno por delante -frontyard- y por detrás de la casa -backyard- vallado, con terraza y cobertizo incluido.

En febrero firmamos los papeles, y nos mudamos al de dos semanas. Afortunadamento, nos hemos desecho de nuestro contrato de alquiler -quedaban 4 meses todavía- y no había que hacer ninguna reparación importante. Así que estamos muy contentos con nuestra nueva vivienda. Eso sí, la mudanza nos ha costado bastante. Y ahora tengo que aprender algo de jardinería para cuidar del césped, que incluye pasar el cortacésped -imagen típica de USA- a menudo. Por supuesto, todas las reparaciones corren a nuestra cuenta, entre otras: fontanería, electricidad, pintura, etc.

by1

Escrito en USA. 2 Comentarios »

Vacaciones de Navidad

Después de 6 meses vuelvo de visita a casa. Voy a estar en Bilbao del día 25 de diciembre al 12 de enero, así que habrá que ir preparando reuniones con los amigos, cenas, visita a Deusto, etc. Mandadme un email o pegadme un toque al teléfono para quedar.

Como el año pasado, tengo los exámenes de cualificación para el Doctorado justo a la vuelta. Aunque como solo me queda por hacer el examen escrito de Lenguajes de Programación y Compiladores debería tener algo más de tiempo libre. ¡Hasta pronto!

Vote for Obama

Mañana es la elección presidencial en los Estados Unidos -aunque también al congreso y al senado- y en Virginia cada voto cuenta. Por primera vez en varias décadas Virginia podría votar demócrata en unas presidenciales y ambas campañas tratan de atraer hasta el último votante. En EEUU no hay jornada de reflexión por lo que los partidos políticos pueden llamar y hacer campaña puerta a puerta hasta el mismo dia de la elección. Esta noche he pasado una horita larga en uno de los múltiples sitios que la campaña de Barack Obama tiene en Charlottesville.

Esta sede es una lonja repleta de carteles, información y mesas con teléfonos para que voluntarios hagan llamadas. Ahora mismo (7:30pm) hay unas 30 personas en ella, de las cuales 15 están al teléfono -entre ellas mi novia Rebecca- y el resto está organizando visitas a pie por el vecindario o planeando viajes en furgoneta mañana a las urnas. Contribuir con algo de tiempo a una campaña es muy sencillo: basta con asomarse a uno de estos centros y en unos minutos estás llamando a gente que no conoces de nada para recordarles dónde tienen que votar y si necesitan que alguien les acerque en furgoneta a las urnas mañana. Por supuesto, hay gente que dedica mucho más tiempo a la campaña, sobre todo estudiantes de ciencias políticas o cualquiera que se plantee entrar en un partido en el futuro.

Para los que tienen el gusanillo de leer más sobre las elecciones en Estados Unidos, os recomiendo la web Crystal Ball -Bola de Cristal- de Larry Sabato, un profesor de ciencias políticas en la Universidad de Virginia. Tiene bastante buena reputación, y desde aquí voy a asumir las predicciones suyas para la elección de mañana: 364 delegados para Obama y 174 para McCain -a ver cuánto se acerca a la realidad-. Recordad que no se elige presidente por voto popular, cada estado -y el distrito de Columbia- envía un número de delegados al Colegio Electoral proporcional a la población. Así, Virginia elige 13 delegados este año, y es uno de los puntos cruciales de la campaña, ya que si Obama gana en los estados que ganaron los demócratas en 2004 -lo que parece altamente probable-, en Virginia y en otro estado más con al menos 5 votos electorales ganaría la elección. Aunque todo apunta a que, seguramente, ganará Obama con un margen lo suficientemente alto para evitar sorpresas.

Así que, Vote for Change!

De vuelta en Charlottesville

Tras un par de meses con ninguna actividad en el blog ya va siendo hora de que me decida a escribir algún post. El verano terminó, y ha dejado muy buenos recuerdos. Visita a Bilbao, vacaciones en el Caribe con la familia y vuelta al trabajo en la universidad de manera momentánea, ya que en septiembre he viajado a dos conferencias: IISWC en Seattle y Grid en Tsukuba, Japón.Iré comentando mis viajes más detalladamente, pero de momento me limito a mi visita de -casi- un mes a Bilbao. Muchos se sorprenderán de una visita tan larga ya que siendo un doctorando en Estados Unidos vacaciones hay pocas. Técnicamente no estaba de vacaciones, sino renovando mi visado. La entrada en la Unión Europea  facilita muchísimo la movilidad en Europa. Esto puede parecer obvio para muchos que nos vamos de vacaciones -como los buenos recuerdos que me dejó el Interrail o el Erasmus- sin tener que rellenar ningún papel o soportar largas esperas al cruzar la frontera de otro país. O las personas que trabajan en países europeos sin tener que depender de la aprobación de un visado. EEUU es otro cantar. Y no porque Estados Unidos sea especial, los trámites que tiene que pasar un ciudadano argentino -por poner un caso que conozco- para estudiar o trabajar en España no son tan diferentes. 

En Estados Unidos hay muchos tipos de visados, que te dan diferentes tipos de derechos. Una de las visas más populares para trabajadores del sector tecnológico son las visas H1B que te permiten trabajar por 3 años -prorrogables a 6- y que son relativamente fáciles de conseguir, aunque su número es limitado. La visa para estudiantes  -no de intercambio- es la F1, y te permite residir en el país mientras cursas tus estudios aunque no te da derecho a trabajar. Pues bien, dado que yo había solicitado primero entrar en el programa de Máster, mi visa expiraba a los dos años, en Mayo de 2006. Puedes permanecer en EEUU con una visa expirada siempre y cuando tengas los demás papeles en regla – formularios I-94 e I-20- pero si quieres viajar al extranjero tienes que renovarla. En caso contrario, no puedes volver a entrar en EEUU con una visa expirada. Así que antes de irme de vacaciones a ciertas islas en el Caribe que no son territorio estadounidense o a la conferencia Grid 2008 en Japón tuve que volver a Madrid a renovar mi visado.

Por alguna extraña razón que se me escapa, el visado sólo se puede renovar fuera de EEUU. Y como pueden tardar hasta 30 días en devolverte el pasaporte, tienes que planificar tu vuelo de vuelta 4 semanas después de la entrevista en la embajada, aunque normalmente te devuelven el pasaporte en 3 o 4 días. Después de un viaje a la embajada en Madrid y una sencilla entrevista me devolvieron el pasaporte rápidamente. El papeleo es bastante sencillo, lo que más incordia es tener que ir a Madrid en persona a entregarlo. Ahora tengo una visa válida en mi pasaporte hasta 2012, aunque esperemos que no tarde tanto en terminar el doctorado.

Aunque el viaje a Madrid incordia un poco, renovar el visado es una buena excusa para aprovechar a visitar amigos y familia durante varias semanas.  Eso sí, no es tan fácil ni se tiene tanto tiempo como parece. Ya que la mayoría de la gente trabaja me tengo que limitar a una o dos visitas al día. Con lo cual al final lo que suele pasar es que veo a mucha gente una o dos veces: una visita para saludar y ponernos al día y puede que una visita antes de despedirme. Así que sabe a poco, pero de momento es lo que hay. Eso sí, hoy en día hay muchas más facilidades para comunicarse como la telefonía IP -mantengo un número de Vizcaya para que me llamen mis conocidos gratis- o la videoconferencia.

Grid 2008

Retomo este blog -olvidado desde hace más de un mes- para comunicar una excelente noticia: me han aceptado un paper en la conferencia Grid 2008 que se celebrará en Tsukuba, Japón. En este enlace pódeis ver el trabajo: http://www.cs.virginia.edu/~ar5je/bespp.pdf

Para los no iniciados, la publicación de tu trabajo de investigación es una parte fundamental de tu carrera, ya que sin una publicación revisada por tus pares en una conferencia/revista/journal es como si no hubieras hecho nada. El número de publicaciones y el impacto que están tienen en la comunidad determinan el éxito de tu carrera. En mi campo, Ciencias de la Computación (Informática) las organizaciones principales que organizan las conferencias y publican los trabajos son el IEEE y la ACM (Association for Computer Machinery). Éstas organizaciones financian diferentes conferencias, normalmente anuales, y cada una con una tématica bien definida: Grid obviamente agrupa a la comunidad que desarrolla su investigación en Computación Grid. En mi grupo también solemos participar en SuperComputing. Al frente de cada conferencia está el Program Committee, formado por expertos en el área que provienen de universidades o compañías privadas (como Intel, HP Labs, Microsoft Research, etc.).

El proceso para publicar es el siguiente: una vez realizado tu trabajo de investigación debes escribir un artículo (normalmente entre 8 o 10 folios a doble columna) y enviarlo para su revisión por parte del comité del programa. En este artículo tienes que describir el problema que estás considerando, tu solución propuesta y una evaluación rigurosa que permita concluir que tu solución mejora anteriores propuestas. El comité del programa va a considerar solamente el artículo, y es lo único que se publica, con lo que tienes que sintetizar todo tu trabajo en él. Una vez pasado la fecha límite para enviar artículos, el comité del programa los revisa. Cada artículo es asignado un número de revisores (entre 3 y 5 normalmente, a los que tú como autor desconoces quiénes son) que analizan el paper y comentan sus puntos fuertes, debilidades y su contribución a la comunidad científica. Al final los mejores artículos son seleccionados para la presentación en la conferencia y su publicación. Este proceso de revisión científica intenta asegurar que los resultados publicados son verdaderamente rigurosos trabajos de investigación de calidad. Sin un proceso de revisión independiente tus resultados no tienen credibilidad ya que no se puede asegurar que hayan sido obtenidos científicamente.

Aparte del número de publicaciones también se tiene en cuenta el impacto. Como podéis ver en mi artículo es imprescindible tener una sección que mencione investigaciones similares, y una bibliografía que cite estos trabajos relacionados y todos los resultados anteriores en los que te apoyas (ya que siempre nos alzamos sobre los hombros de gigantes). Así, cuanto más se cite tu trabajo en otros artículos, más impacto se considera que tiene.

Este es mi primer artículo listo para publicación -el segundo vendrá dentro de poco-, y además soy el primer autor, que en Ciencias de la Computación se interpreta como el que realiza la mayor parte del trabajo (no es así en otros campos, en matemáticas se hace por orden alfabético). Volar a Japón es caro, así que no sé si me será posible presentarlo. Pero por lo menos ya se puede decir que acabo de dar el primer paso de mi carrera como científico.

Graduation Day

El pasado fin de semana tuvo lugar la ceremonia de graduación en la Universidad de Virginia. Al haber acabado el Master of Computer Science este semestre me tocaba desfilar con el resto de graduados en la ceremonia principal de la universidad, y con los graduados de la facultad de Ingeniería en la entrega de diplomas posterior. Para haceros una idea del tamaño de la Universidad de Virginia este año se han graduado más de 6.400 estudiantes, de los cuales cerca de 2.000 son de postgrado (Másters y Doctorados). Por primera vez en la historia de la Universidad los estudiantes internacionales suman más del 10% de los titulados (unos 650).

La ceremonia principal consiste en caminar con tus compañeros por la parte central de la Universidad, The Lawn. Empezando desde la Rotonda – una copia del panteón de Roma- los estudiantes avanzan en procesión organizados según la facultad y llevando la tradicional indumentaria académica. A los lados se sientan los padres y familiares, que son multitud -tres entradas por cada estudiante suman más de 18.000 disponibles-. Al final todos los estudiantes nos sentamos para escuchar los discursos del presidente de la Universidad y de un invitado especial, normalmente alguien relacionado con Virginia. Este año habló un rector de otra Universidad, aunque otros años han acudido escritores como Tom Wolfe o John Grisham. Pódeis ver un resumen en Youtube:

Finals 2008 Highlights

Debido al mal tiempo la entrega de los diplomas de la facultad de Ingeniería tuvo que hacerse en un polideportivo(bastante feo, por cierto) y juntando a los undergraduates y los graduates, con lo que la ceremonia se alargó durante varias horas. Por lo menos sales de la ceremonia con el diploma en la mano, y no tienes que esperar años -todavía no tengo el de Ingeniero en Informática- hasta que la Universidad te lo entregue.

Por cierto, lo de lanzar los gorros al aire no es algo generalizado, sólo un par de estudiantes lo hicieron y la mayoría se abstuvo de lanzarlo. Por lo demás, los tópicos sobre la ceremonia de graduación se cumplen.

Escrito en UVA. 2 Comentarios »
Seguir

Get every new post delivered to your Inbox.