[ros-users] [Discourse.ros.org] [Next Generation ROS] Design process of ROS 2
Geoffrey Biggs via Discourse.ros.org
ros.discourse at gmail.com
Sat Feb 9 02:28:26 UTC 2019
Maybe Im just tired from a long week (yay Saturday!) but I dont seem to be as worried about this as I was yesterday. :) Also I kinda agree with all but the first half of the last paragraph of Dirks post. I like an agile, iterative approach to development like that ROS2 is following (or at least trying to).
My post above was an amalgamation of the points raised in the navigation WG meeting, so I dont want to speak out of turn for all those points of view. I think for me the main problem is that although we expect and need to iterate on features, that iteration is not necessarily happening. Dirk alluded to this in his last paragraph. For example, the life cycle nodes implementation is still mostly unchanged (in terms of how it is implemented) from the first implementation 2 (?) years ago. Yet now tools, libraries and major projects are starting to be built on it. The larger the mass of users the greater the force against major changes, and at some point each feature will reach a critical mass of use where the pushback against change is greater than the push for change, and we end up stuck where we are. Isnt this why ROS2 began in the first place?
But as everyone keeps pointing out, this lack of iteration likely comes from a lack of resources. As each feature gets done, developers move on to the next feature being demanded by the community and lose track of something that they probably originally intended to go over again. I know Im guilty of this over the years. (Doing new stuff is always more fun than reworking old stuff!)
In regard to what kind of forum might be needed, I dont like the way it is hard to see into the thought processes of why a feature is implemented the way it is, and where it is intended to go. We are not all in the same office so it is hard to just roll over in my chair (too lazy to walk) and ask. Yes, we have many textual forums available, but text is slow and easy to misunderstand while simultaneously hard to correct. This is why I like the idea of having a regularly scheduled teleconference where we can ask about something and get a rapid, easily-clarified answer. A question for the TSC, perhaps?
Another improvement could be to introduce epics into the feature management process. That might make it easier to track how a feature is being iterated on, what the current end goal is and how far along towards that goal we are. There are some issues that track major features with a checklist of smaller issues, but these are usually implement large feature X for next release. Epics are traditionally used across many release cycles and take a longer-term view. Im not sure how easy it would be to get epics into GitHubs or Waffle boards facilities, but I feel like this could be a relatively low-resource way to improve visibility of the longer-term development goals and process. Ive added a task to my list to look into if it is technically possible with our current tools in the next week.
[Visit Topic](https://discourse.ros.org/t/design-process-of-ros-2/7782/5) or reply to this email to respond.
More information about the ros-users