Plans for 2022
Added 2022-01-14 15:42:35 +0000 UTCHey Patrons,
we want to share our plans for 2022 and also have some big news for you.
Roadmap
The roadmap we promised a while ago is finally here. We put it up on the wiki at this link: https://wiki.cemu.info/wiki/Roadmap
This new roadmap page should give you a general idea on where Cemu is headed and some of the larger features we would like to add at some point in the future. The roadmap also contains subprojects that are "behind the scenes" and aren't really tied to any user-facing changes. We thought it was important to list those as well to communicate that development isn't just about adding feature after feature.
Also keep in mind that the roadmap is somewhat fluid. We will be adding more entries and adjusting things as we go.
To complement the roadmap we will continue to use our bug and feature suggestion tracker.
Going open-source
A very big change planned for this year is shifting Cemu from a closed development team to a more community driven project. For this we will be releasing the source-code sometime later this year and start accepting contributions from anyone willing to help.
Roughly, the plan is to finish modernizing and restructuring our code base (the roadmap has more details on this) and then, as the next step, release the source code. Whether we finish the Linux port before or after that is also not certain yet.
Rethinking Patreon & our release structure
For a while now we have felt that we are underdelivering on the bi-weekly Patreon releases. We understand the expectations and what most of our users would like to see, but getting meaningful and interesting updates ready in just two weeks has become quite a difficult, if not impossible challenge.
From a development perspective all the low hanging fruit are gone. What remains to be done are mostly features or complex bugs that take a significant amount of time to implement. From your point of view, 1 line of changelog is just a little bit of text. From our point, it can be many many hours worth of work.
So when we ship an update that is only a couple of bug fixes we occasionally get some amount of negative feedback for it. Even if the feedback is neutral or positive, we feel like we underdelivered on what people expect. This mentality is something we have subconsciously fostered in ourselves from the early days of this project and it's quite harmful for development.
The drive to create nice changelogs has an additional downside, it discourages work on anything that doesn't result in immediate user-facing changes. Take for example the Linux port, work is progressing slowly because the result is not visible until it's 100% done. We frequently run into the issue that we want to work on it, but the next Cemu update isn't substantial enough yet, pressuring us to find something that we can rush out in the remaining time. Unsurprisingly, the number of bugs has gone up too. We significantly cut down on testing time in order to meet our two-week deadlines.
In conclusion, to get away from this "changelog driven development" we will make a few changes:
First, the Patreon will be turned into a tipping-jar with no promises given, effective immediately. Backing our project should be 100% optional. This means there will be no more exclusive Patron releases. Instead every new update will be released on the main website and will be immediately available for everyone. If you backed for this month specifically to get the reward, drop us a quick note and we will refund your pledge for this month. It's only fair since you backed for a reward that no longer exists. We will keep the 10$ tier reward (name in about window) since it is very little effort to maintain and isn't really tied to the problem we are trying to solve.
Next, we will no longer adhere to a fixed bi-weekly release schedule and instead do releases when they make sense from a development perspective. We still want to have frequent updates, although they will be more irregular and we won't force updates as we have been doing.
Lastly, we will be separating public releases into experimental and stable releases. This is so we can get some feedback on bugs and fix them before we push the update out to everyone. The plan is to have one stable release every couple of experimental releases where we try to fix all the regressions introduced by the experimental releases, so that no stable release is worse than the previous one. Users can then opt-in if they want to update to only stable releases or stable + experimental.
I hope that you understand why we are making these changes and that, ultimately, Cemu will benefit from this. We are extremely appreciative of your support and we can understand if these changes make you lose interest in backing Cemu. We thought long and hard about these decisions and we truly believe this is the best course of action for the future of the project.
What's next
The plan for the immediate future is to release a bugfix update for some of the input problems introduced by 1.26.0. You can expect this update to drop within a few days. As explained above, it will be released directly to the public.
We will also give the Linux port a higher priority. With the Steam Deck right around the corner we think that interest in a native Linux version will rise quite a bit. It's not super likely we will have it ready in time, but we will try!
Finally, a big thanks to all of you for supporting us! Cemu has come a long way and it wouldn't have been possible without your support. Apologies if this post sounded a bit glum at times, but rest assured that we are still very dedicated towards Cemu.