What Programming Skills for the Nao Developer Program?
I would like to know the programming skills I must have to enter
the Nao Developer Program.
You need to know some basics about programming, if possible in Python.
A lot of people are scared by the test to enter the Nao Developer Program, although it is not that hard. In my opinion, the test is here to make sure you understand they expect you to program the robot, not just use it as a customer.
If Nao was ready to use by everyone as easily as plug-and-play, they would have made it available to the public (which is not the case today in April 2012). But it's not the case. When you get a Nao robot through the Nao Developer Program, you become part of the team. You have to create applications for the robot, you have to understand that not everything works because they are still building the whole system.
So you need some programming skills for the Nao Developer Program. I will describe what I think is the minimum, and then what is the best you can get.
The minimum programming skills you need for the Nao Developer Program are basic programming in Python, if possible with some Object-Oriented Programming. That's it. With that, you can use most of the resources from Aldebaran Robotics and other contributors, and even many resources from libraries available to everyone on the web. And you can build some pretty good things with just that.
If you want to create new libraries for the robot (new vision algorithms for example), you will need to know C++ and to compile in an Unix environment. You can even program the Real-Time routines of Nao if you what that means (needed if you want complex motions like a new walking algorithm for example).
That's pretty much it for the programming skills needed for the Nao Developer Program. Don't sweat the test, the hard part is when the robot arrives.