1
$\begingroup$

Over the summer, I have configured ROS navigation stack on a mobile robot (with radar and Kinect) so that it can autonomously navigate in the unknown environment. I also wrote a python program that allow the robot to track human motion, also using the open source library.

Currently, I am applying to software job. I thought this experience is very relevant to software programming. But, I am actually stuck on how to explain what ROS is. And when I use the packages (eg, navigation stack) on a robot, am I actually doing coding? Can I say ROS is just an API?

$\endgroup$
1

2 Answers 2

1
$\begingroup$

Compare it to a message bus connecting different services through publish/subscribe mechanism. All enterprise software engineers should be able to understand this comparison.

If you write source code you are coding. If you do not write source code you are not coding. Please note that coding can also cover graphical languages like Function blocks or similar. Coding is not necessarily only the implementation of complex algorithms, writing source code that glues together different libraries or just calling them is also coding.

ROS is not just an API.

$\endgroup$
2
  • $\begingroup$ thanks for the reply. If they ask me, how much I code, should I say none? (I pretty sure I did a lot of reading on the ROS code) $\endgroup$ Oct 30, 2016 at 19:45
  • 1
    $\begingroup$ If you read about code, but did not write any...then say that... $\endgroup$
    – 50k4
    Oct 30, 2016 at 20:33
0
$\begingroup$

ROS is a framework to do component based development of software for robotics.

Component based development has been around for a while in software engineering. One advantage is that you can split the process of developing components - self sustained modules that perform a specific task - and how a bunch of them are applied together in a system quite well. It creates different roles in the development process.

In your case you have used the components to get a running system. The skills you acquired seem to be in the area of python programming (I would consider this a form of coding), robotics and of course ROS.

$\endgroup$

Not the answer you're looking for? Browse other questions tagged or ask your own question.