ExpoUBA 2010

Con motivo del Bicentenario se lleva a cabo este evento, del 30 de septiembre al 2 de octubre en las instalaciones del predio ferial de Palermo (lugar más conocido como «La Rural»).

La exposición abre las puertas de la Universidad Buenos Aires presentando no solo toda su oferta académica sino también las demás actividades y puntos de contacto con la sociedad. Para mi info del evento pueden visitar el sitio oficial.

Y ya que estoy, comparto algunos datos sobre esta casa de estudios:

Actualmente la universidad cuenta con 13 facultades: Derecho, Ciencias Economicas, Ciencias Exactas y Naturales, Filosofia y Letras, Agronomia, Medicina, Ingenieria, Arquitectura, diseño y urbanismo, Psicologia, Ciencias Sociales, Veterinaria, Farmacia y Bioquimica, Odontologia.

Según el censo de 2004, la universidad cuenta 297.639 estudiantes y las facultades con más alumnos son Económicas (44 mil) y Derecho (31 mil).

Un dato interesante para destacar es que los 5 argentinos ganadores del premio Nobel pasaron por la UBA.

Y ya estoy, remato con unos datos de Fiuba (también según el censo de 2004). La cantidad de alumnos es 9621 de los caules el 82,6% son de sexo masculino. Las carreras con más alumnos son informática (23,9%), industrial (22%), electrónica (15,8%) y lic. en análisis de sistemas (13,8%).

Para quienes quieran más datos les recomiendo en primer lugar asistir a la expo y segundo lugar dar una mirada el censo que se encuentra publicado en la página del a UBA.

RyanAir para principiantes

Esta aerolínea de bandera Irlandesa ofrece vuelos a precios muy económicos. Según ellos mismos, sus tarifas son las económicas de Europa.

No se exactamente cual es el secreto (aunque recuerdo haber leido algo al respecto) pero uno lo puede ver al vivir la experiencia. En primer lugar varios de sus vuelos suelen ser entre aeropuertos «secundarios», o de menor importancia, lo cual para los viajantes requiere que luego del avión tengan que tomarse algún transporte adicional para llegar a su destino final. Les cuento un caso concreto, para ir a Barcelona desde Lille, viaje con está empresa, pagué algo menos de 40 euros, pero no volé directo a Barcelona, sino que mi vuelo iba de Lille a Girona, una ciudad que se encuentra a poco más de 1 hora en colectivo de Barcelona. Por otro lado, la  empresa permite llevar con uno único bolso de mano con dimensiones máximas 50 x 40 x 20 cm y peso máximo 10 kg. Pero es único, o sea, no se puede llevar una valija y aparte la cartera, NO, solo un bulto, asi que hay que meter la cartera en la valija. Obviamente si uno quiero llevar más equipaje no hay problema, pero hay que pagar extra, unos 20 euros por cada bulto adicional. Además si se quiere llevar alguna carga especial como un instrumento musical hay que pagar aparte. Por otro lado uno debe llevarse impreso el ticket, sino, lo imprimen ellos en el aeropuerto y te cobran (no se cuanto, pero creo que unos 10 euros).  Obviamente, durante el vuelo no te dan nada, no hay ni un vaso de agua ni una galletita. Si queres tomar algo tenes que pagarlo aparte. Más allá de todo esto para mi es un golazo, porque la verdad que en Europa está todo bastante cerca, no hay vuelos de 10 horas. Para mi caso, yo llevé mi mochila «de mochilero» como equipaje de mano y anduve joya, no tuve que pagar nada extra y no tuve que hacer la cola para despachar porque no tenia nada que despachar, al mismo tiempo ya tenia mi pasaje impreso por mi mismo asi que fue todo muy directo. Un detalle a considerar es que según la regulaciones europeas actuales en el equipaje de mano hay ciertas cosas que estan prohibidas, como ser ser objetos cortante y envases con contenido de más de 100 ml, o sea que retuvieron el desodorante y la crema de afeitar porque ser envases de más de 100 ml (y el desodorante era solo de 105 ml, pero no hubo excepción).

Para el tema del equipaje de mano, es muy simple, tienen unos artefactos con las medidas exactas, si podes meter tu equipaje ahí todo bien, sino hay que pagar. Y es muy loco porque si vos declaras que vas a llegar equipaje adicional a la hora de comprar el boleto, pagas un precio, pero si resulta que te decidis a ultimo momento, y tenes que pagar en el momento de abordar, el precio es otro.

Los aviones, están bien parecen bastante nuevos, pero nada de películas, las butacas están muy pegadas y NO son reclinables, si no se pueden reclinar, bastante curioso (ojo, tal vez haya algunos aviones que sean distintos, pero esto es lo que encontré yo las veces que viaje)

ESUG 2010 (día 5, final)

Esta fue una jornada reducida, pues el evento finalizó luego del almuerzo.  Entre las sesiones destacadas a mi parecer:

  • OOSCM: en esta sesión Jorge Silva presentó una herramienta desarrollada en Smalltalk para administración de la configuración de software (SCM). Lo interesante de la misma es la posibilidad de manejar versionado a nivel de los conceptos de OO, o sea, entre otras cosas permite versionar métodos de una clase.
  • Mars: Esteban presentó el proyecto que obtuvo el tercer puesto en los premios de invocación de este año.
  • Helvetia: es el resultado del trabajo de doctorado de Lukas Renggli y básicamente es una herramienta que permite extender Smalltalk para trabajar con lenguajes específicos de dominio.

Finalmente hubo algunos anuncios institucionales de ESUG, como por ejemplo la presentación del nuevo board, la lista de eventos en los que se estará participando y algunos de los proyectos que se llevarán a cabo en el próximo período.

Si bien no hubo anuncio oficial, hay rumores que indican que ESUG 2011 será en Inglaterra, ya mismo me estoy poniendo a pensar como hacer para ir. 🙂

ESUG 2010 (día 4)

Si bien mi cabeza estuvo principalmente en mi presentación hubo algunas sesiones a las que asistí y que resultaron interesantes:

  • Agile Web Development and Seaside: Lukas mostro la forma en que trabaja el equipo de Seaside un muy buen ejemplo concreto de desarrollo ágil.
  • Lesson learned in Agile Development: J. Brichau compartió sus experiencias (buenas y no tanto) en desarrollo ágil, Durante la sesión surgieron algunas discusiones interesantes por ejemplo alrededor de las distintas formas de contratación y la importancia de establecer una relación de confianza con cliente.
  • Power to communities: una vez más el genio de Stef, en esta ocasión hablando sobre algunas claves para crear/potenciar y hacer crecer a la comunidad (en este caso en particular la de Pharo).

Ya sobre el final del dia hubo un panel sobre licencias open source, en el que participación algunos referentes de la comunidad Smalltalk y una abogada especializada en el tema.

    ESUG 2010 (día 3)

    Las sesiones destacadas a mi parecer fueron:

    • Design Principles of Patagonia: en esta sesión H. Wilkinson compartió los principios de diseño OO utilizados en Patagonia, la aplicación utilizada para realizar la registración del evento.
    • Metacello: Dale y Mariano hicieron un corto pero efectivo tutorial sobre esta herramienta de configuración de paquetes.

    La sesión de Metacello terminó terminó poco antes de las 4 p.m., hora en que nos dirigimos al evento social. Dicho evento consistió en en una visita al Museo de Ciencia de Barcelona, un lugar excelente para niños y geeks. Además de la exposición permanente había dos exposiciones temporales: una sobre reciclado y otra sobre mágica, EXCELENTE!!!!.

    Luego de recorrer el museo por alrededor de 2 horas y medias (personalmente podría haber estado todo el día en ese lugar) nos dirigimos al auditorio donde se llevo a cabo una sesión a cargo de Stef y luego de eso se llevó a cabo la ceremonia de entrega de los Premios ESUG 2010. Los ganadores de los premios fueron.

    • Mejor libro de los últimos 6 años: Dynamic Web Development with Seaside
    • Mejor labor de difusión: Laurent Laffont  y Damien Cassou.
    • Inovación tecnológica (http://www.esug.org/wiki/pier/Conferences/2010/InnovationTechnologyAwards):
      • 1 puesto: Physical Etoys, by Gonzalo Zabala, Ricardo Moran y Sebastián Blanco
      • 2 puesto: Cog, by Eliot Miranda
      • 3 puesto: Mars, by Esteban Lorenzano

    Mis felicitaciones a todos los ganadores. Un punto interesante a destacar es que el 1 y 3 puesto son proyectos argentinos, :-).

    Finalmente cerramos la jornada con un cocktail en la plaza del museo.

    Presentando en ESUG 2010

    En un par de horas (9 hs. ARG ) tengo voy a dar sesión en ESUG 2010. En dicha sesión voy a presentar la forma en que estamos enseñando Programación orientada a objetos en FIUBA. En cierto punto la sesión es un update de la sesión que dimos con Carlos en Smalltalk 2009, pero encarada desde otro punto. Se sesión será transmitida online (al igual que toda la conferencia) en esta dirección: http://eventv.projectescitilab.eu/index.html.

    Dado que desde hace un tiempo he adoptado Linux como plataforma principal (si, una vez más y tengo un post pendiente al respecto) y no tengo Power Point disponible, me pareció una buena oportunidad para usar una nueva herramienta para hacer la presentación. Prezi.

    Otro condimento interesante es que la presentación será en inglés.

    Deseenme suerte y veremos que sale.

    ESUG 2010 (día 2)

    Por la mañana asistí a dos muy buenas sesiones:

    • A JIT implemented in itself, donde los argentinos X e Y contaron sobre la evolución y el estado de proyecto donde básicamente intentan implementar una maquina virtual de Smalltalk usando Smalltalk (muy loco para mi limitada mente)
    • Pharo Achievements and a Vision: creo que el título es auto descriptivo, solo voy a decir que me gustó la forma en que Marcus llevó la presentación.

    Ya por la tarde estuve un rato en el Workshop de Tecnologias Smalltalk donde se presentaron algunos trabajos interesantes (entre ellos el de MarianoP). Luego de esto tuve el honor de que Stef. Duccasse me invitara a participar de una sesión de «brainstoring»  sobre el manejo de interdependencias de paquetes junto a Marcus, MarianoP y Dale Henrichs, MUY groso, sin palabras.

    Ya hacia las 5 de la tarde Verónica presentó Torch, una herramienta para visualización de cambios en código fuente que desarrolló como parte de su doctorado.

    El segundo día de evento finalizó con una sesión en formato lightening talks donde los asistentes mostraban sus proyectos.

    Luego de esto emprendimos una visita guiada por la noche de Barcelona con nuestros colegas catalanes: Bernat y Rai.

    ESUG 2010 (día 1)

    Por estos dias me encuentro participando de la conferencia anual del grupo de usuarios de Smalltalk de Europa (ESUG). La cuidad elegida para el evento en esta ocasión ha sido Barcelona.

    DSC00517 (copy)

    Informalmente el evento comenzó durante el fin de semana con el Smalltalk Camp (espacio de encuentro donde la gente hace networking, codea y comparte sus proyectos ). El inicio formal fue el lunes y como era de esperarse la apertura estuvo a cargo de Stef. Duccasse, presidente de ESUG. El resto de la mañana estuvo dedicado a la utilización de Smalltalk en ambientes enterprise, lo cual me resultó por demás interesante.

    Por la tarde ya hubo 2 tracks, uno de ellos dedicado integramente a un workshop dictado por la gente Cincom. A diferencia de lo que podria pensarse el workshop no tenia foco en las herramientas de Cincom (que obviamente utilizamos) sino que el foco del workshop era ejercitar un proceso de desarrollo para trabajo concurrente sobre una única imagen. Para esto nos dividimos en varios equipos y la excusa del ejercicio era programar algoritmos para resolver Sudokus. La metodogia propuesta se llama Wolfpack (¿manada de lobos?) los detalles de la misma los voy a dejar para otro post. La herramienta que utilizamos para programar fue WebVelocity.

    En el track paralelo hubo 4 sesiones sobre Gaucho, Etoys, Physical Etoys y Xtreams (no vi ninguna pues que me quedé todo el tiempo en el workshop, ups!)

    Un punto interesante del evento es que todas las sesiones están siendo transmitidas en vivo con muy buena calidad. Para ver las sesiones pueden seguir este link.

    El evento cerro con la exposicion y votación de los proyectos que compiten por los Award de Innovación, entre los que a mi entender se destacaron COG (la nueva máquina virtual de Squeak/Pharo) y Guacho (una herramienta para manipulación de objetos).

    Luego de un aperitvo, los integrantes de la legión argentina (alrededor de 20 personas!!!) nos encaminamos hacia Plaza Cataluña para asi cerrar el dia entre copas y charlas de geeks.

    🙂

    Proyecto Seed (tercera parte)

    En el post anterior nos habíamos quedado en: ¿que es lo mínimo que debemos poner dentro de la una imagen?

    La respuesta depende de qué querramos hacer con la imagen. Básicamente podriamos decir que hay dos fines posibles:

    – Cargar la imagen y trabajar creando instancias de las clases existentes, SIN agregar nuevas clases ni modificar las existentes.

    – Idem caso anterior pero agregando capacidades para que la imagen pueda evolucionar incorporando nuevas clases. Para este caso es hay varias alternativas todas ellas partiendo del caso anterior y agregando por ejemplo un Compilador o algún componente capaz de cargar código binario (hay gente del equipo RMoD trabajando en esta última alternativa).

    Casualmente esta mañana tuvimos una reunión en la que reorientamos nuestro enfoque y en este momento el plan es comenzar trabajando con el kernel definido por Pavel, analizarlo con algunas herramientas de análisis componentes y en base a eso identificar concretamente los cambios a realizar en cuanto a la estructura de paquetes y dependencias. El resultado de este análisis será un conjunto de backlog items para la una futura versión de Pharo (tentativamente la 1.2).

    Bien, con este último post de esta serie de 3 doy por terminada la explicación de lo que intentamos hacer con el Proyecto Seed. En futuros post iré compartiendo los avances que tengamos.

    Espero que se haya entendido.

    Proyecto Seed (segunda parte)

    Habiendo seteado algo de contexto en la primera parte ahora voy a hablar en concreto de lo que estamos haciendo en Seed. Arrancaré como bien dicen las practicas de proyectos por definir nuestra visión y misión.

    Visión: Pharo cuenta con un kernel mínimo, límpio y extensible.

    Misión: experimentar con distintas estrategias para crear un paquete que nos permita crear imagenes mínimas y customizables de Pharo.

    Si bien esto parece bastante claro a estas alturas, las primeras 3 semanas de proyecto por momentos me sentí como turco en la neblina, pues había algunas cosas que no me cerraban. Al mismo tiempo, al comienzo nos dedicamos hacer algunas pruebas de concepto experimentado con los enfoques utilizados en otro proyectos y por momento era darse la cabeza contra la pared demasiado seguido. Por suerte, ya durante la cuarta semana de trabajo y luego de varias sesiones de peloteo con Stef y Marcus pusimos norte a nuestro barco definiendo el roadmap de trabajo.

    Existen distintas posibilidades para atacar esta problemática, algunas de las cuales ya hemos descartado de entrada. Por ejemplo, hemos decidido manejar el mismo formato de imagen que Pharo, o sea, queremos seguir utilizando la misma máquina virtual (aunque no se decarta que en futuras versiones del proyecto se propongan cambios en la máquina virtual para así optimazar el funcionamiento del sistema).

    Si pensamos en nuestro problema como «obtener una imagen tan chica como sea posible», básicamente existen 2 alternativas:

    1. Partir de una imagen existente y recortarla todo lo posible
    2. Partir de una imagen vacia y agregar lo mínimo necesario

    Como se podrán imaginar, nosotros no somos lo primeros en atacar esta problemática, ya ha habido proyectos anteriores entre los que me parece importante destacar:

    • Chácharas: sin entrar en detalles, lo que hace es crear una imagen «vacia» y la va llenando en runtime y on the fly. O sea si cuando envia un mensaje a la clase X se intercepta la llamada, se chequea la validez del mensaje y si el mismo no se puede resolver se comunica con otro imagen e importa las clases que resulten necesarias para poder resolver la llamada. El detalle es que requiere de una máquina virtual modificada.
    • Gwen Bootstrap: este desarrollo lo hizo Gweneal Cassasio quien es también parte del equipo RMoD. Básicamente Gwen trabajó sobre Gnu-Smalltalk, modificó la máquina virtual y definió su propia imagen desde cero.
    • PharoKernel: este es un desarrollo de Pavel Krivanek quien a muy grandes rasgos tomó una imagen de Pharo y la entró a recortar y mediante prueba y error se aseguro que el subconjunto final era suficiente para cargar el sistema.

    A diferencia de estos enfoques nosotros hemos decidido comenzar de una imagen vacia e ir agregando lo mínimo indispensable y al mismo tiempo de ir identificando «cosas sospechosas» para modificar en el proceso de creación de nuestra imagen.

    Ahora: ¿qué es lo mínimo? Ja! ¡Que buena pregunta Mario! La respuesta queda para la próxima entrega porque no es trivial y va a requerir unas cuantas líneas.

    Continuará…