Project A: day#6

Today we did the iteration review (it should have been last Friday, but our customer decided to move it because of Thanksgiving day). We completed all the committed items and some more. The review meeting was short (less that 30 min),  we had prepared a slide deck with 4 slides to highlight some facts of the past iteration and some important stuff about the next one. During the meeting we browsed the application, we reviewed the backlog and we agreed the scope for the next iteration. After the review we did a retrospective, and here we are now starting our second iteration.

To be continue…

Project A: day#4

We are in good shape, the customer confirmed that we are going to take care of developing the application and go live process.

Today we deployed to staging the first drop of the application. To set clear expectation with our customer we added a disclaimer message on top on each page.

image

The link “See drop details” takes the user to a page were the deatils of features/modifications are listed. This first drop includes 4 out of the 6 story commited for the current iteration.

To be continue…

Project A: day#1

Today we (GabrielSZ, DiegoM, TimO and Lito) started a new project (aka project A) and I decided to (try to) write a post every day telling the story of the project. As you may image the first day our activities were:

  • Kick-off: a short meeting where everybody get familiar with the project goals, timeframes and restrictions.
  • Planning:  the customer gave us a VERY rough idea of his needs and we took care of “backlogize” them (convert into a backlog the customer needs). This is usually misunderstood so I want to be very explicit: we clearly identified user stories, we estimated them and prioritized them according to the customer criteria. Finally we published the backlog for the customer to “play with it” (without modifying our estimates). Based on this backlog we will start our first iteration.
  • Research: the project has some technical challenges so we had to make some research (just a couple of hours) before the planning, to be able to estimate.
  • Setup: we made the infraestructure request for the project (repository, lists, tracking system, etc.)

To be continue…

Nuestra presentación en Smalltalks 2009

El pasado viernes junto a Carlos presentamos el trabajo que estamos haciendo en algo3. En la sesión hubo unas 50 personas. Comenzamos la sesión presentando el contexto en el cual dictamos la materia, luego Carlos explicó el régimen de cursada y la forma en que se encara la parte teórica de la materia, después de eso yo expliqué el enfoque utilizado en la práctica, donde a mi parecer lo más interesante es el uso de alguna prácticas ágiles como TDD, desarrollo iterativo, pair programming, collective ownership e integración contínua.

Durante la presentación tuvimos algunas consultas de la audiencia . En una de ellas un asistente comentó que el pedirles a los alumnos un informe con la explicación del TP realizado le parecía “anti” ágil, pues los métodos ágiles prefieren código corriendo en lugar de documentación. La realidad es que tengo 2 respuestas para esto:

  1. Los métodos ágiles no dicen que no haya que documentar, sino que es más importante la aplicación funcionando y en nuestro caso pedimos la aplicación funcionando y ADEMAS un informe de cómo fue resuelta la problemática (en ese orden de prioridad).  Nota: próximamente voy a escribir un blogpost sobre agilidad y documentación pues creo que hay un mal entendido general de este tema)
  2. En el contexto de la materia enseñamos a desarrollar software, lo cual es más ámplio que la mera escritura de código, los alumnos deben entender el problema a resolver, tomar decisiones de diseño y comunicarlas. Un diseño por más bueno que sea, si no es bien comunicado puede traer muchas complicaciones a futuro. Es por esto que hacemos incapié en la aplicación funcionando y TAMBIEN en las pruebas unitarias y el informe como dos herramientas para comunicar el diseño.

Otro comentario que tuvimos fue tal vez la gran cantidad de herramientas y contenidos vistos podian restar importante cantidad de tiempo para el correcto aprendizaje del paradigma y junto con esto nos proponian dar todo la materia sólo con Smalltalk. Personalmente no comparto esta visión y creo justamente la variedad de herramientas vistas permite a los alumnos una mejor comprensión del paradigma.

Como de costumbre al finalizar la sesión pedí feedbak a los asistentes utilizando la técnica de las caritas ( 🙂  😐  😦 ). Comentí el error de no dejar en claro si el feedback era sobre la calidad de la sesión o si era una opinión sobre el enfoque presentado. Algunos dieron su opinion sobre ambas cosas, pero la mayoria no. Más allá de este detalle el resultado fue: 80% 🙂  20% 😐

Después de la sesión estuvimos hablando con varios docentes de universidades de la patagonia y de UTN quienes se mostraron interesados con el enfoque presentado.

Personalmente estoy muy conforme con la presentación y muy contento con el enfoque que estamos utilizando.

La presentación completa fue grabada por los organizadores del evento y próximamente está disponible (seguramente en el site de la conferencia). Mientras tanto para los interesados el slide deck utilizado esta disponible aquí (inglés) y también puse una versión en castellano aquí.

 

Smalltalks 2009 conference

During 19, 20 and 21 of November took place in Buenos Aires the 3 rd Argentine Smalltalk Conference. Among many international visitors there were Dan Ingalls (one of Smalltalk’s creators) and Stephane Ducasse (author of the famous book: Squeak By Example, and creator of Pharo).badge

The conference’s opening was in charge of Hernan Wilkinson, and inmediatly after him, Ducasse gave his session titled: I have a dream…. let’s make it come true. It was a really interesting session where Ducasse shared the vision that lead him to start Pharo project. Other interesting session were James Foster’s Introduction to Gemstone, Smalltalk in the pocket by Esteban Lorenzano (who talk about building applications for the iPhone) and 40 years of Fun with computers by Dan Ingalls. This last session was a review of the main projects Dan participated during his life. He finishes the session showing us his current work at Sun Microsystem developing the Lively Kernel (something VERY interesting I will be writting in short.)

My session was on Friday 20 th and I shared the stage with Carlos Fontela (my Senior Faculty). There were about 50 people!! a number over our expectations.  We talked about our experience at FIUBA, teaching object-oriented programming using Smalltalk, Java and agile practices. The slide deck used in the session is available here. And if you want to know more about our sesion I will be writting some more details in my Spanish blog.

Enjoy it!

Smalltalks 2009, calendario publicado

Desde hace un par de dias se encuentra publicado el calendario de la conferencia. Entre las sesiones que parecen más prometedoras a mi parecer (más allá de las sesiones de los invitados especiales) están la de Esteban Lorenzano, sobre desarrollo de aplicaciones para IPhone y  la Germán Arduino sobre Smalltalk Web Toolkit.

En cuanto a mi sesión, la misma fue confirmada para el viernes 20 a las 14 hs, a los interesados en conocer el enfoque que estamos aplicando en Algo3, ¡allí nos vemos!

Smalltalks 2009 (¡seré speaker!)

Del 19 al 21 de noviembre se llevará a cabo en la Facultad de Ciencias Exactas y Naturales (UBA) la tercer conferencia argentina de Smalltalk: Smalltalks2009. Esta edición contará la presencia de varias personalidades entre las que se destacan Dan Ingalls y Stephane Ducasse. Adicionalmentecomo  indica el título del post, voy a ser uno de los speakers de la conferencia, donde junto a Carlos vamos a estar contando lo que estamos haciendo en Algoritmos 3.

Aún no está confirmado el horario de la presentación, pero si quieren ver un abstract de lo que hablaremos, les dejo este link.

¡Nos vemos allí!