IRALAB habits

This page introduces some habits and requirements of IRAlab to prospective students.

  • As we had a few bad experiences in the past, we ask prospective students to pass a very simple test in order to be allowed to work at iralab; the test is analogous to the famous FizzBuzz test for programmers, although it is biased towards robotics. Students not passing the test will not be admitted to work in iralab. The test requires knowledge of roto-translations, therefore prospective students that did not attend / did not pass the exam of the course "Robotics and Automation" or of the course "Machine Perception and Robotics" should contact D. G. Sorrenti in advance, in order to be given a few pages about roto-translations to study before taking the test.
  • Representing roto-translations is quite intrinsic to robotic projects; if you do not master this topic you have to spend some time for learning it. Having passed the exam of the course "Robotics and Automation" or "Machine Perception and Robotics" usually suffices. In case you did not attend a robotic - related course, i.e., you do not have access to the elearning material about roto-translations, feel free to ask D. G. Sorrenti for the material.
  • Most of the programming activities in iralab are performed in C and/or C++, often under ROS + Linux/Ubuntu; if you do not master C/C++ or you do not master the basics of ROS or you do not master Linux, you will have to spend some time for getting proficient with them. If you are new to Linux, you may find it helpful to first take a quick tutorial on common command line tools for linux. A good and quick one is here.
  • We ask our students to plan their activities, and to document their planning on our project management system, which also includes software versioning, issue tracker, etc. We believe this to be a very useful professional habit, and we are happy to "force" our students to follow it.
  • Frequently, prototypes of systems are first developed in Matlab®, because this makes it quicker to check the effectiveness of ideas; if you do not master Matlab® be prepared to spend some time for learning it.
  • In this lab you need to be very cautious! You might end up soldering your finger while soldering an electronic component,
    drilling a bar and your hand that was handling the bar, etc. etc. Most important: before launching your code on one of our robots consider what if your code would be controlling your body.