4 ms·
I tried to use ROS2 twice in my professional career. Both times ended up with massively bloated build pipeline code, significantly longer build times, and massi
by inetknght 2y ago
I tried to use ROS2 twice in my professional career. Both times ended up with massively bloated build pipeline code, significantly longer build times, and massively bloated Docker images.
Don't use ROS2. The benefits just aren't worth it. It's great for school but it's terrible for production.
- pattycakes 2y agoSounds like your build system is the problem, not ROS.
- markisus 2y agoLast time I used ROS, it forced you to use its build system. Catkin or something? It was a layer on top of Cmake.
- rubicks 2y agoMy colleagues and I used to joke that any build system issue you encounter will be addressed in next year's build system. * https://wiki.ros.org/rosbuild https://wiki.ros.org/rosbuild * https://wiki.ros.org/catkin https://wiki.ros.org/catkin * https://docs.ros.org/en/jazzy/Tutorials/Beginner-Client-Libraries/Colcon-Tutorial.html https://docs.ros.org/en/jazzy/Tutorials/Beginner-Client-Libr... * https://docs.ros.org/en/jazzy/How-To-Guides/Ament-CMake-Documentation.html https://docs.ros.org/en/jazzy/How-To-Guides/Ament-CMake-Docu... It doesn't feel like a joke anymore.
- rubicks 2y agoI have worked in two failed and failing startups that invested heavily in ROS. I could fill several volumes with "ROS Gotchas". Everything in the ROS stack is either a useless curio or an on-fire clown car. Using ROS is a great way to turn your project and business into a cautionary tale.
- patrick451 2y agoRos2's colcon will build the packages in your workspace individually, in topological order of the dependency DAG. This is a completely insane way to structure a c++ build because it destroys the innate parallelism of the compilation process. The build system for ros1, catkin, didn't have this problem because it turned all your packages into a single cmake build. Just one of the many ways that ros2 was a regression from ros1.