PeerTube integration
As far as I understand, UserTest aims to provide to floss contributors, among other things, a tool to record them and their screen when testing softwares, and allow developers to watch these test sessions.
This is a very good idea! Now let's try to anticipate some future needs concerning these videos:
- at some point, developers, ux-designers or other contributors would like to be notified when a user posts a new testing video;
- at some point it could be interesting to record a video in high definition but see it in a lower definition, in order to allow contributors with a low-speed internet connection to watch them;
- at some point, project developers would like to improve inclusion by contributors from all over the world, including those who don't speak the language used in the project (ie. english), and they will need the ability to add subtitles to a testing video;
- at some point, contributors would want to share links that points to a very specific video time-code in order to list and discuss about UX problems;
- at some point, hosting videos will be an expensive task for small projects, and their contributors would be interested to host their videos to bigger infrastructures managed by an other person or non-profit organization;
- at some point, these organizations would need some administration tools in order to give quotas and to check video contents.
The list continues but you get the idea: hosting and viewing videos can lead to heavy and complicated tasks, which could move the development away from the initial goal.
That being said, it can be good here to follow the Unix philosophy: do one thing and do it well.
It turns out that there is a software that do all these video-related tasks very well, PeerTube.
With this approach in mind, UserTest could interact with a PeerTube instance, so a typical workflow could be:
- A very nice contributor records a user test via UserTest;
- This video stream go to the server hosting the UserTest instance;
- When the video record is finished, UserTest sends the video to a PeerTube instance, eventually dedicated to user tests (that can be on the same server or not), using the peertube API;
- When the video is sent on PeerTube, the video appears in the UserTest interface, using the PeerTube ability to embed a video to an other website, so the PeerTube part is almost invisible to a common user;
- If hosted on a different server, the video is then deleted from the UserTest server;
- For all more complicated tasks related to video (such as adding subtitles, etc.), contributors can use the actual PeerTube instance.