What is ROS ?
The Robot Operating System (ROS) is regarded as the leading open-source framework and meta-operating system in the realm of robotics applications. It exists as a fruit of a tight collaboration between developers, hobbyists, and engineers who believe in both enhancing robots and their availability and accessibility worldwide.

The purpose of ROS’s existence lies in its support for code reusability in both robotics development and research. While ROS processes, also labeled as Nodes, enable executables to be both designed individually and coupled loosely during run-time, they can also be bundled into stacks and packages, which makes the process of
distribution and sharing easily achievable. ROS supplies developers with the services of a typical operating system, from message-passing between processes, implementations of frequently-used functionalities, hardware abstraction to package management, and low-level device control, with additional libraries and tools to guarantee writing, building, obtaining, and running code over multiple computers. For instance, ROS’s message passing interface is considered as the de facto standard for robot interoperability, which justifies the public availability of packages that generally do not necessitate additional code to be integrated.