A Personal Perspective on Managing an Open Hardware Project
I'm sure you must have noticed by now that during these last months I didn't put many projects on this blog. This is mainly because I'm currently working on the Mooltipass project, an offline password keeper idea I launched last december.
I've written articles on Hackaday about the technical aspects of this project, but none about my personal experience managing a team of contributors from all over the globe. I feel it's something that only has its place on my blog, so here we go...
Obviously I was very lucky to have Hackaday let me use their name/brand and more importantly their website to launch this project. HaD has an enormous visibility on the web given it is the reference when it comes to discovering electronic projects from hobbyists and professionals. If you're curious to know, our signed agreement states that HaD (the legal entity) doesn't bear any liability and can choose at any time and for any reason to stop its association with Mooltipass.
I'll detail my experience in a chronological order so you may discover how things evolved during this on-going adventure. Please note that Mooltipass is not my first rodeo as I've already launched several commercial projects in the past (you may remember the whistled), even though none of them involved asking people to give me some of their spare time.
So right from the start you may have guessed what was the main challenge of organizing such a project: building a team of non remunerated contributors. Everyone has his/her own schedule, and spare time is something usually rare (money is transferred, only time is spent). It was therefore essential to identify what may motivate people to work on this project.
At the beginning of the Mooltipass story, my first guesses were:
- working on a Hackaday-sponsored project
- contributing to the open source community
- learning something new, which can be put in one's résumé
- helping to build a device that one would like to use in the future
When the project was first announced we got a ton of feedback, most of it being positive. Unfortunately Hackaday's popularity on the web also attracts few individuals that write a lot of non-productive criticism, which may create not-so-interesting discussions. Anyway, from the beginning we wanted to include Hackaday readers as much as possible in the development process. The Mooltipass name and the case design were chosen by them, as we organized several polls for major decisions.
During the first week of this project, my inbox was flooded by people wanting to either join the main mailing list or the contributors' team. It took me many days (don't misunderstand me... it was fun!) setting up the project infrastructure so everyone would be able to know what we were up to and what the next tasks were. I was contacted by students, young fathers, experienced programmers, much older (and wiser!) persons. On a side node, it is important for me to mention that I wouldn't have started this project if I didn't know that I could finish everything myself (you always need a plan B right?)... even though it wouldn't have been as nice looking and professional as it currently is.
I decided to take care of the schematics and layout, given that they were not so hard to make and didn't really need several people working on them. However, the project needed mechanical designers, firmware and software code writers. I set up several dedicated google groups so people may bounce ideas off each other and ask for help when needed. We ended up with more or less a dozen persons for each category, which is nice when you consider they're +/- working for free. The contributors were/are from all over the globe. It was impressive to see that something we take for granted (Internet) enabled that. The discussions that took place during the first weeks mainly were about the main components that we'd use and how the firmware architecture should be. Everyone has his/her own opinion and is usually very eager to express/enforce it in the google groups.
We eventually settled on the core components that would be used for the platform. After getting the contributors to agree on some common ground rules, I hand soldered 10 platforms and shipped them. In the mean time, the mechanical contributors were busy making their own designs. We tried using open source CADs but it seems none of them were up to the task (which was a shame). As already mentioned, once everyone had a design to show we asked the Hackaday readers to vote on their favorite one.
Olivier's design (which was made at the last minute) won 40% of the votes. Even though I would have preferred continuing to work on 2 or 3 designs in parallel for the next steps of the development process, it seems the other mechanical contributors decided to stop pursuing their ideas. Which leads me to the main thing that one open source project manager should always worry about: lack of activity in the mailing lists. A project is like a massive ball you'd like to get rolling: it has an immense inertia and you always have to keep pushing to get to where you want to go. You however meet great people along the way.
In my opinion, the word "management" can't really be applied to a non-profit open hardware/software project. I rather tried to orchestrate the Mooltipass development process. There are several software development processes documented out there and I think that the one we setup was similar to Kanban. In short, I assigned individual tasks to contributors (USB/Encryption/GUI/Flash management/...) by asking them what they preferred and I trusted them with it. I wanted to create a pressure-free environment while still keeping everyone motivated by this project (which is more challenging than it appears).
For Mooltipass, we have very active contributors but also people that stopped answering emails after a few weeks. Some of them also realized that they had less spare time (motivation?) than first thought but were kind enough to ship their prototypes to new contributors. This was no problem as I was expecting it to happen, but it is still time that you end up loosing.
On the Hackaday website, me and the other writers had the impression that the readers were (understandably) more interested by the project launch than the "slow" progressing development process. Another factor may be that people are generally more responsive to visual project steps than code-related and general discussions.
So here we are now, a small team of contributors actively working on making the Mooltipass a reality. Every push request is a small step in that direction and hopefully we'll get to a point where the device we produced can please everyone. So stay tuned for future updates and be sure to check out Hackaday !