Hi everyone,
I’ve been having some discussions recently around how we can improve the alignment between our products and our users, and better enable the community (yes, you
) to be involved in collaborative development and testing processes.
I wanted to share some thoughts and ideas, and hopefully get some of yours in return ![]()
Some Context
Blue Robotics as a company is designed around providing components for others to integrate, and platforms for others to work with, modify, and expand. By nature that allows our relatively small team to have an outsized impact, but it also means the community we’re supporting is filled with use-cases that we can’t possibly know everything about, so we’re reliant on (often quite limited) user feedback to determine whether we’re moving in the right directions, and what we should focus on next.
We already try to capture feedback in various ways[1], but some of those mechanisms are not very transparent about our engagement or progress on requests, it’s often hard to estimate/aggregate levels of interest on popular ideas, and they fail to capture much around what we’re doing right, minor issues that arise during operations, and which features are critical vs just nice to have.
Some Thoughts and Ideas
- Transparency invites collaborative efforts, which help to foster community
- Changes and revisions are currently tracked to a limited extent, but not consistently provided via notifications
- Our recently introduced PCN system and our GitHub issues/pull requests provide this to some extent, but there are also longstanding issues around our software and firmware not announcing when new versions are available, or what has changed since the currently installed version
- It could be useful to provide an aggregated list of feedback submissions that can be voted on for prioritisation
- A virtual budget system could help to communicate and reflect resource constraints, while also encouraging genuine prioritisation
- As an extension, it may make sense to have some kind of bounty system for community members to encourage others to contribute particular features and fixes
- Feedback ideas should be trackable, ideally for general progress, but at least on completion (preferably with notifications of some kind, for people who want them)
- Changes and revisions are currently tracked to a limited extent, but not consistently provided via notifications
- Short term direction adjustments and prioritisation are easiest from actionable insights
- How feedback is collected/requested likely has a significant impact on which feedback gets implemented (first / at all)
- Feedback should be easy to submit, but not requested in annoying ways
- Long forms and regular repetitions of similar questions are best avoided where possible
- Feedback submission is often easiest when and where ideas and problems occur
- Vehicle operation may be in remote locations, so being able to submit feedback to a local system (e.g. within Cockpit) which then gets shared during the next internet connection could be helpful
- Consistency of information formats makes aggregation (and ideally submission) easier
- Checklists and polls trade nuance for ease of input
- Open-ended space for notes and/or discussion has the opposite tradeoff
- Both can be valuable, but they’re useful for different things
What Next?
If you’re still here, and have thoughts or feedback on these ideas, please feel free to share and discuss in this thread!
In the meantime, I’m actively looking into some ways we can better facilitate beta testing of upcoming software features. That seems like low-hanging fruit to pick first, and if done well could inspire some improved development practices and community engagement, while also serving to increase confidence that our software is well-tested for and suited to the applications you are actually trying to use it for. Stay tuned! ![]()
e.g. passively through our product/feature request form, this forum, GitHub Issues, and sales/support emails; and more actively through occasional community polls and surveys ↩︎