Friday, October 31, 2008

New gadget: Bryan Adams Radio

This post is to celebrate a new gadget that I'm adding in my blog. You can see it just on the right, with the title "To Inspire". This special gadget is offered by last.fm, which promotes music of many artists playing them in an aleatory way. All we have to do is to define the style of the radio, choosing a singer/composer with that style and all the music played will be very similar to that style. For instance, if I choose Mozart as the composer of my radio then many classical music will be played including music composed by Mozart, Bach, Beethoven, and others.

I'm following the example of my friend Vasco Furtado, who redefines his radio periodically in his blog. I'm starting this practice too with a talented artist, Bryan Adams, who sings a classic, All For Love (lyric), in the video below with two other stars, Sting and Rod Stewart. Enjoy it!



To listen to music similar to All For Love, just press play on the new gadget above.

Wednesday, October 29, 2008

Belgian-Oriented Company

Recently, I was involved in an European research project and I had to prepare and present a sustainable business plan for a set of open source products, produced during this project. The presentation was very good and the feedback too, but I can't give more details here. What I can say is that the meeting was hosted in a Belgian company located in Mons, very well structured and with an excellent support for the main beverage of the country: Beer. You can see below some pictures, not so good, but still visible.



I just admire a company that offers an infra-structure like this for their employees.



I am not with the best sense of humor to publish a post like this one. Don't take it as a joke, but it was written in recognition to the "why not?" thought of the company. Congratulations!

Sunday, October 26, 2008

Finding Inspiration on Movies

Some months ago the movie theater of the city was closed. Indeed, that is very sad news for the population of a small city like Louvain-La-Neuve. Looking for a plan B, we found a DVD rental shop in the local train station. Unexpectedly, it closed its doors, losing the opportunity to get a public of movie fans. Continuing to a plan C, we decided to buy some good movies in a local DVD store, but with a strong restriction in mind: we should be able to watch the movie many many times without getting bored. What movie could be so entertaining to get attention repeatedly for so long and still be interesting every time we watch it? For me there is a simple answer: when you want to be like the character in some moments of your real life, and watching the movie again works like a motivational experience.

That's the case of Gladiator, a movie that taught me to think about leadership and strategic planning for problem solving.



The other one is the Bourne Trilogy (Bourne Identity, Bourne Supremacy and Bourne Ultimatum), which taught me that when we really want something, we have to be focused on it, all possible problems are actually exceptions to be treated and there is always a solution for all kinds of problems.



They are both action movies with unbelievable scenes, but I remember the way they solved problems when I have a real problem in front of me. I just believe there is always a solution and it has always been true... until now. ;)

Friday, October 24, 2008

Visit to Aldebaran Robotics

One of the most exciting aspects of the work in a research lab is the constant contact with new technologies. We travel very often to scientific events, research labs, industries, etc. I had described how the eNTERFACE workshop was valuable for me (here and here) and now I will talk about a recent visit to the Aldebaran Robotics, a high tech company hosted in Paris focused on the development and production of a humanoid robot.

Aldebaran is a French company founded in 2005 by Bruno Maisonnier, who had the vision that the era of personal robotics is coming. He has been doing a hard work for many years and now a sustainable formula was found to produce a highly customizable robot with a low cost for a large public. Aldebaran produces Nao (video), a robot equipped with digital camera, speech recognition, voice synthesis, Wi-Fi communication, also able to express emotions through colored lights and 25 joints to enable complete freedom of movements. Nao is really cute, as you can see in the picture below.



The big differential between Nao and other competitors is his better cost-benefit. It is the cheapest one on the category of highly customizable humanoid robots. The Nao's kit includes a software to model the robot's behavior through a composition of predefined components related with the capabilities of the hardware. Two or more robots are able to communicate through wireless networking, enabling them to interchange movements, detected signals and any other kind of data. It also allows the development of customizable components using C++, Python, Java or any other language supported by the Nokia SDK.

This visit was really exciting. We brought an extensive and excellent feedback to our lab, where we visualize potential applications using our technology integrated with the robot.

Monday, October 20, 2008

Netbeans is 10 Years Old

The Netbeans IDE is becoming 10 years old these days and I'm particularly happy about that. This is the IDE that I have been using uninterruptedly since version 6.0, when I left Eclipse behind, after 5 years on it. Today I'm very happy with the version 6.1, and I know I will be even happier with the new next version, 6.5, which is coming out on the following days.

This is the list of posts I've written about Netbeans. I would like to invite you to revisit those posts if you don't mind. It was a love and hate story, with more love than hate ;) :

My Netbeans 6.1 Personal Issues

5/3 things that make me happy/crazy using Netbeans

Netbeans 6.1 will solve our pacience problem

Netbeans 6: Finally a good version to work better

Because of one of these posts, the Netbeans project sent to me a nice t-shirt that fit me very well. Take a look below.



I hope to celebrate this anniversary drinking some beers with the Netbeans Dream Team during the Devoxx Conference, in December.

Thursday, October 16, 2008

Initial Experiences with Project Kenai

A few days ago I decided to start a new open source project, as described in a previous post. Between many options of services to manage open source projects available on the web, I decided for a particular one, managed by Sun Microsystems, called Project Kenai. What about SourceForge, Java.net or Google Code? Yes, all of them are great too, but why not try out Kenai first and see what is gonna happen? I took the risk.

For now, to open a project in Kenai you will need an invitation from somebody that already has a project there. With this invitation you are able to create or donate until 5 open source projects. Donate means that if a friend of yours wants to move an open source project you can invite him/her to join, donating one of your project slots. Since Kenai is still in beta, maybe this model will change later, but I think it contributes to get more involvement from existent open source projects, before you convince a project leader to send an invitation to you. On the other hand, it might not work as expected and Kenai won't have so many projects like others. Let's see.

The most exciting idea about Kenai is that it gives you a great visibility since the beginning of your project. Just after creating the project it appeared in Recent Projects in the home page as shown in the figure below when you see "Meanings4Fusion".



The project is also very well positioned in the internal section Projects, where it appears with the full size logo and the complete description.



I created a new topic in the project forum, called "What is the fastest way to communicate through a TCP/IP network", and for my surprise, it also appeared in the homepage, which attracted more people to participate in the discussion.



Even the cloud of tags immediately showed up with a new tag that had been included in my project, such as "multimodality" in the figure below.



The logic is simple: your participation implies in more visibility for you and your project, more collaboration from the community and an increasing probability to succeed.



Project Kenai is still in beta and many features are missing right now. However, what we need to start off an open source project is already available, like version control system, forum, mailing list, bug tracking and wiki.

To get more information about our project visit:
http://kenai.com/projects/meanings4fusion
Get involved by clicking on Watch This Project.

Sunday, October 12, 2008

Platform versus Framework

In the last 30 days I had the pleasure to work in the context of the OpenInterface project, writing a document that delineates how the platform will continue after the project period. They thought I could help because of my long experience with the open source community. Actually, it was a great challenging experience with hard and pleasant moments. The most exciting one was in Porto, Portugal, on the border of the river, when I found inspiration to write some killer sentences.



During the elaboration of this document, many people from the project gave contributions, comments, critics, which was essential to get a better result at the end. But one of them called my attention. One of the contributors, asked to change the term platform to framework, which was funny because the name platform is spread through many other documents and on the website. So, the person had some fundamentals to propose this change. What are they? Then I decided to make a short research about the difference between both concepts and the best place to start is, of course, the dictionary.

The word platform has many meanings, including the computer science one. In the Cambridge English Dictionary:
"Platform describes the type of computer system you are using, in connection with the type of software you can use on it."
This is a very generic definition, which doesn't help me at all. So, I went to Wikipedia, where I found a definition without any alert about its sources or impartiality:
"In computing, a platform describes some sort of hardware architecture or software framework (including application frameworks), that allows software to run. Typical platforms include a computer's architecture, operating system, programming languages and related runtime libraries or graphical user interface."
Oh God! It mentions framework on the definition of platform. Is it some sort of recursive definition? Well, let's go to the framework's definition:
"A software framework is a re-usable design for a software system (or subsystem). A software framework may include support programs, code libraries, a scripting language, or other software to help develop and glue together the different components of a software project. Various parts of the framework may be exposed through an API."
Well, better! Let's analyze the differences. First: framework refers only to software and ignores hardware totally. So, if you work with hardware it will never have a framework ;-). Second: a platform allows a software to run, which is not a framework requirement, since it is more focused on design. For instance, Java is a platform because it has a virtual machine that allows Java applications to run in many operating systems. On the other hand, Spring is a framework because it simplifies the way you design software, taking the responsibility for a lot of things to reduce the effort and the volume of code needed to implement the application. So, a platform doesn't aim to save your time, but to give you one or more possibilities to run your application.

Going back to the root of the discussion, I had a long conversation with the main developer of the OpenInterface (OI), Lionel Lawson, and we concluded that OI is, at the same time, a platform and a framework. It means that, when platform, OI can run your application on it. When framework, your application can use the OI's API to access other components. Then, we concluded that OI is actually a technology, which is more generic and solves many integration problems between low level components.

Saturday, October 4, 2008

A Framework for the Future of the User Interaction

If you follow my blog, you may know about my interest on the extreme usability era (1, 2). You may also know that this interest was born during the eNTERFACE workshop in Paris. So, this interest has been growing every day in an intense manner that made me choose this subject as the theme of my PhD research project at UCL. More: I decided to start an open source project, first to share my knowledge and second, to get contributions from the community.

The project was published at: http://kenai.com/projects/meanings4fusion. It is hosted by the project Kenai, a Sun Microsystems initiative to support open source projects. I've just registered the project this morning, so you will not find so much information there. However, if you believe that extreme usability is a reality and it will directly affect you in a short-term, then I recommend to get involved from now on and participate on all discussions and initial implementations.

I'm not doing it alone, of course. David Gómez, Daniel Neiberg, Olga Vybornova and Ao Shen are also involved and they are founders too. Actually, we started everything during eNTERFACE and it is a continuation for consolidation. This is a challenging project and we really worked hard, as you can see in the picture below.


From the left to the right: Olga Vybornova, David Gómez, Daniel Neiberg, Ao Shen and me, holding the camera.


Some thoughts about the architecture.