ROS Resources: Documentation | Support | Discussion Forum | Index | Service Status | ros @ Robotics Stack Exchange
Ask Your Question

Is ROS only for Computer Scientists?

asked 2011-02-15 11:12:45 -0500

Alex Bravo gravatar image

updated 2011-02-15 11:14:24 -0500

Eric Perko gravatar image

I see ROS is being used by several top-level universities.

Do I have to be a computer scientist to use ROS?

edit retag flag offensive close merge delete


I'm a mechanical engineer and I use ROS everyday at work and even use it at home for hobbies. I think I learned C++ because of ROS! (I use to only use Matlab).

Airuno2L gravatar image Airuno2L  ( 2014-09-12 14:53:53 -0500 )edit

5 Answers

Sort by ยป oldest newest most voted

answered 2011-02-15 11:21:18 -0500

mjcarroll gravatar image

While ROS is used in many research laboratories and universities, you don't have to be an academic to use it.

I would say as a general guide, you will want to have some background in the following.

  • Linux: You should be aware of how the Linux operating system is put together and how to navigate it's file system. You should also be able to install and uninstall packages, as well as follow tutorials written for Linux software.
  • Command Line: You will want to have a basic fluency in using the Linux command line. Much of this can be learned as you go, but without some basic knowledge, you will struggle to get to the higher-level concepts that ROS has to offer.
  • Python and C Programming: You don't have to have a degree in computer science to dabble in programming, and I would say that most hobbyists (or undergraduates) have the skill set necessary to create their own ROS nodes.

If you have some basic working knowledge of these things, then you should have no trouble using ROS. Some of the higher level concepts are more mathematically rigorous (or rely more heavily on computer science and control systems knowledge), but most of these things can be learned from Wikipedia or other sources of information on the web. I am currently mentoring a group of undergraduates on a robotics project, and they have had no trouble attaining the skills necessary to work in ROS.

edit flag offensive delete link more

answered 2011-02-15 11:14:28 -0500

joq gravatar image

No. Even electrical engineers can use it! :-)

edit flag offensive delete link more


This is funny.
Alex Bravo gravatar image Alex Bravo  ( 2011-02-15 12:11:29 -0500 )edit

answered 2011-02-15 11:22:17 -0500

Chad Rockey gravatar image

No, in fact, I'd say it's especially useful for non-CS types. I'm an electrical engineer, so instead of networking, my classes focused on signal processing. ROS takes care of all the networking and allows me to get straight to processing data without having to create packets and struct up everything or share memory. The publisher/subscriber foundation of ROS is extremely useful and I would use it even if none of the existing libraries existed or were useful!

edit flag offensive delete link more

answered 2011-02-20 09:33:38 -0500

No you don't need to be a computer scientist to use ROS. Although ROS does seem to be quite popular in academic research there are also a growing number of robotics hobbyists using it, of which I am one. If its popularity continues then it should eventually be quite easy for non-experts to assemble working robot software from pre-written modules (stacks).

edit flag offensive delete link more

answered 2011-02-21 11:08:04 -0500

Yongqiang Gao gravatar image

Our project is now turn on ROS, to be honestly, I like Ubuntu more than Windows.I would love ROS, when I first contact it. To key point, I major in mathematics,rather than CS(computer science).

edit flag offensive delete link more

Question Tools

1 follower


Asked: 2011-02-15 11:12:45 -0500

Seen: 1,641 times

Last updated: Feb 21 '11