What’s Next for Riot Web?

It’s a roadmap!

After February’s release of Riot Web 1.0, it was time to take a step back, take some deep breaths, and to think big thoughts about the future. And then (ultimately) to write the very best of those thoughts on day-glo post-its and stick them to a large glass wall: the roadmap was born.

What’s a roadmap and why is it useful?

The roadmap is a set of visible product changes (mostly big ones) that we want to make, laid out in the order in which we want to make them.

Is it set in stone?

Far from it. The order of roadmap items is based on the best information we have today, but as that information changes we’ll change our plans accordingly. It is fair to say that the items to the left of the board represent a firmer commitment than those on the right.

Our roadmap doesn’t have any dates, either — it represents a relative ordering rather than a precise delivery calendar.

So how is it useful?

Firstly, it’s useful if you want to understand what we’re doing. Obviously the roadmap shows what we’re planning to work on, but hopefully it also sheds some light on why we’re not doing the things we’re not doing. There are a million important changes to make to Riot Web — hopefully you can see why we think these are the most important 😁

Secondly, if you’re using Riot.im Web commercially and would like to see something that’s particularly valuable to you be tackled sooner than it’s currently expected— roadmap positioning can be negotiable, for a fee 🤑. Please get in touch at https://vector.im/contact-us.

Finally and foremost, the roadmap helps us all to visualise the impact of our decisions. If we make a new commitment, what impact will that have on the future?

This road is easy to visualise

How did we agree the roadmap?

Once 1.0 was out the door, we gathered the whole team — product, design, dev + representatives from Synapse, Spec and the mobile teams — to talk about what’s next.

We sourced ideas from our own experience of the platform, feedback in community rooms, and upvoted GitHub issues, and (heavily inspired by the Backend team’s approach) mapped all of those ideas into a giant matrix. Each item was positioned according to its relative value and difficulty:

Then we haggled amongst ourselves to try and make sure everything was in roughly the right relative position (if you’re unhealthily interested in our thought processes you can check out the Google Sheets we used to collaborate: one for product features and one for platform stability items).

Like the Backend team before us, we found this approach made it very easy to identify relative priority, and once we were done it was easy to extract the high value, tractable targets and pull them together into the roadmap:

The electronic version of the board, powered by GitHub projects

That’s too much to read! Show me a video instead.

All right! Here’s Matrix Live S3 E19, staring yours truly (as “man with cold”) and Matthew (appearing as “man soon to have cold”) taking you through all of the items currently on our roadmap. Watch it!

Is this everything you’re doing?

No! The roadmap is mostly meant to represent large, visible changes to the product. There’s still plenty of work to do alongside these changes: quick enhancements too small to track, and adjacent activities like refactoring or improving our testing and our build/release processes.

That’s all for now

I hope you enjoy reading our roadmap! If you have any feedback or questions do please share in #riot-web, or message me directly on @tom:lant.uk.