I’m looking for contributors and more support in the maintenance of the awesome-robotic-tooling list. Over the past years I invested about one hour every day to search, analyse and install generic open source tooling that is useful in the robotic context. Unfortunately most of the commits are done by myself. Since my perspective got highly biased over the years I want to encourage the ROS community to support this effort. The main idea behind this list is to collect tools that could be useful in an robotic development environment. It does not need to be ROS specific but a good ROS interface and integration is always beneficial in robotics.
To achieve that I want to discuss with you the usefulness of open source tools to stop reinventing the wheel. The goal of the discussion should be to create a contribution guide that defines ‘awesome’ tooling in robotics.
So how can we measure the usefulness? Here some indicators that I used to define the usefulness of robotic projects:
- Reusability: Is a package useful in another context / domain and can be recombined with other packages?
- Activity: A tool / package that is been used has issues or a high number of downloads. That’s why the first thing I do is checking for an active issue board. Are issues created and closed on a regular bases? When was the last commit done on this project?
- Installability: Can the package easily be installed? I highly recommend to create a Dockerfiles for running your code since it it also the best installation instruction from my point of view. When testing many open source packages on your system people end up in an dependency nightmare without docker.
- Documentation: Is a package documented?
- Uniqueness: When you create an open source software that is equal to many other you have not understood the principle of “Stop reinventing the wheel”. So before investing a huge development effort check what other people did and if it is better to improve those projects.
- Performance: When your software outperforms others you should show that in your README by measurements that are reproducible easily by others.
So how do you think we can improve the visibility of useful robotic tools? What do you think can be used to measure usability? What are important indicators for you to measure the usability? How can I improve the order in the awesome robotic tooling list?
To make contribution more easy for the future I created an issue to simply post proposals for the awesome-robotic-tooling list:
Please keep in mind that we also have another awesome list in this community that is very good maintained by @fkromer with a much higher focus on ROS2.