Sunday, August 31, 2008

eNTERFACE'08 Workshop Finished

After one month working hard in a scientific project, I came back home with many subjects to discuss with you through this blog. I'm very happy with that experience because it was really unique in my life.

In a recent post I wrote about this project during the eNTERFACE '08 workshop, where I spent the whole month of August with a multidisciplinary and multicultural team. Just to give you a fast overview, the project was about the fusion of 2 different modalities in order to help people on their every day life. The two modalities were speech and image, detected by a speech recognition tool and an image processing tool respectively. The fusion mechanism combines speech and movements to predict what people are planning to do in a certain scenario and the computer should help them to complete their tasks as fast as possible. For a scientific project and considering many challenges and limitations, actually it was a successful project. We are all happy with the results.


I'm presenting the evolution of the project in a middle term presentation.

So, what could be so challenging in a project like this? This is a list of challenges we had and I would like to share it with you and with future eNTERFACE attendees:
  1. multidisciplinary team: our team was composed of 5 people from 5 different specialties, which were: linguistics, system engineering, speech recognition, image processing and computational semantics. All these skills were important to achieve good results, but most of the time people worked alone, each one in his/her specialty, meeting only when an integration is needed or when it is necessary to know the status of the project. In terms of scientific results, it was good, but in terms of problem solving it is more efficient to work in pairs. We defined a very challenging target and a multidisciplinary team was good, but if you have a very specific target to achieve, consider more than one specialist per discipline.
  2. multicultural team: Since eNTERFACE is an international workshop, people come from different parts of the world, and there is a big probability to have many nationalities, with different cultures. Our case was extreme ;) . 5 members, 5 cultures, which were: Brazilian, Russian, Swedish, Mexican and Chinese. 4 continents in a room, trying to conciliate their habits, ways to express themselves, ways to think about the same problem and so on. With a multicultural team, you never know how to react in some situations, and the best thing to do is try to be as much transparent as possible. Without transparency, a cloud of assumptions stops on your head and the project might suffer a big impact.
  3. time constraints: You have a big scientific challenge in our hands and you have to achieve it in less than one month (19 days actually :O), otherwise, you won't have something original to show at the end, which might be a little bit frustrating. It implies in almost no time for tourism (I had just one opportunity and I wasted it in EuroDisney :( ), many nights sleeping very late, and some level of indiscipline with food and self care. But, don't worry! When everybody is in the same situation as yours, actually you don't feel bad at all, but challenged.
  4. dynamic scope: scientific projects have, since their conception, a very weak scope. Don't try to emphasize the scope because it is a natural limitation for creativity. Every time you talk with somebody there or attend an invited speaker session, many ideas start to appear and you can not just say no for them because you actually like them. So, what? A good approach is to think the inverse. Instead of limiting the scope, define milestones describing what should run at that stage and not how it will run actually. Good researchers need freedom of choice and thinking, but they also want to know what they have to achieve at the end.
The most important thing is to finish the project looking as a family, but also keeping our friendship and scientific links always active.


Our eNTERFACE team (from the left to the right): David Gomez (Mexican), Olga Vybornova (Russian), Daniel Neiberg (Swedish), Me (Brazilian) and Shen Ao (Chinese).

Friday, August 22, 2008

The Extreme Usability Era

Is it time to rethink how we develop user interfaces nowadays? The video below proves that it is. It shows why user interfaces must respect natural abilities of human beings instead of humans being adapted to operate machines.



Instead of expecting a new clever generation of computer users willing to operate machines through buttons and clicks, we have to change the technology to keep the humanity so natural as they were born to be.

Sunday, August 10, 2008

The eNTERFACE Workshop

Imagine an event where people from different parts of the world meet in a great touristic place to work during one month in a project of their choice. This is an eNTERFACE workshop, a special event conceived by Thierry Dutoit in the context of an European project called Similar Network of Excellence.

I'm talking about eNTERFACE because I'm part of it now. Just to contextualize you, I'm working in an Electrical Engineering Lab at Université catholique de Louvain and my advisor, Benoit Macq, is the head of the Similar Network. Thierry Dutoit and him have been colleagues for a long time and Thierry is also part of the network. Thierry created the eNTERFACE model 3 years ago and he promoted the first eNTERFACE workshop in the Faculté Polytechnique de Mons in the summer of 2005. It was the beginning of a successful event on the field of Human Computer Interaction, which was hosted in Dubrovnik Croatia in 2006, Istanbul Turkey in 2007 and now we are in its 4th edition in Orsay-Paris, France.

eNTERFACE Workshop

A collegue from my lab, called Olga Vybornova, submitted a project to the workshop and I was invited to be the architect. The project was accepted at the end of 2007, which means that we were one of the projects that people can apply to work on. So, the second step was to analyze many CVs of people who were interested in our project. We chose 3 of them to work in our team during the workshop.

The title of our project is "Multimodal High Level Data Integration", which means we will fuse 2 different modalities in order to help people on their every day life. The two modalities are speech and human behavior, detected by a speech recognition tool and an image processing tool respectively. The fusion mechanism will combine speech and movements to predict what people are planning to do in a certain scenario and the computer should help them to complete their tasks as fast as possible. For instance: If you say something like "I would like to talk with Nick" and at the same time, or just a moment later, you walk on the direction of the telephone, the computer should tell you Nick's phone number. Then, you don't have to look for his number in your contact list. It is indeed a very challenging project, but we have all the elements to make it work until the end of August, including a plan B, C, D .....

The workshop started in August 4th and we finished the first week with good results. We also had a speech given by Lotfi A. Zadeh, the creator of Fuzzy Logic :O. It was great and he deserves a complete post just about him and his talk.

Lotfi Zadeh at eNTERFACE

Sunday, August 3, 2008

Java University Prize 2008

This Thursday, CEJUG announced the winners of the Java University Prize 2008 - PUJ (Prêmio Universitário Java). The winners are:

1. Daniel Valente de Macedo (Unifor)
2. Robson de Araújo Gomes (CEFET-CE)
3. Pedro Belmino Chaves Filho (Unifor)

Daniel won a trip to Antwerp, Belgium, to attend Javoxx 2008. Indeed, it is a great prize, never offered before by a Brazilian JUG for their members. This achievement was possible thanks to the great vision of the future of our sponsors, which are investing a lot on the local human resources through CEJUG's actions.

Watch my last production below, which shows everybody involved on this project.

Why the Multi-language Wave Changed my Mind

You can notice that I'm deeply involved with Java if you read my posts. Java is so powerful and complete that I haven't needed anything else in the last 8 years. I could develop everything, from academic works to widely distributed systems, thus I can consider me as a master in Java.

Suddenly, with a strong influence from the Agile Manifest and from the Domain-Driven Design, people started to program using many other languages outside the Java/.NET world. Groove, Ruby, PHP, Python, JavaScript, Scala, and many others won their own space and their adoption is growing every day.

Until some months ago, I was not yet convinced about the need for a language different from Java, since all my programmer abstractions are perfectly mapped to the Java technology. I realized my blindness when I saw how much I paid to use the infra-structure of my application service provider. Every single month I've paid something around US$30/month. It is too expensive for a very simple website. Then I realized that if I do the same thing using PHP or Ruby, instead of JSP running in a complex environment like Tomcat, I can reduce my costs to US$6/month! :O That's a good reason to scape from Java sometimes. Actually, I thought the same in the past, but I didn't do it because of a feeling of guilty, the guilty of developing a non-object oriented application, limited in terms of connectivity, extensibility, robustness, etc. The wave of learning multiple languages taught me that adopting a new language for a certain kind of problem could be more cost effective than forcing the use of Java technology.

Now, I'm learning PHP to develop the website of my company (small but still a company). I hope you don't mind. I have to say it's pretty annoying for me to migrate from a well designed language to a quite scaring and messy language like PHP, but it doesn't matter when the cost is a concern.

Because I'm still conservative, I do not recommend PHP for developing products, internal applications or when there is high availability of infra-structure. Believe me: you will need some level of integration with your existent applications and with applications of your partners and costumers. Adopting a new language is a matter of responsibility and common sense.