Open Collective
Open Collective
March 2023 update
Published on March 5, 2023 by Andre Staltz

Dear backers,

This is the most important newsletter update we are writing so far. Manyverse is at an inflection point, and things have to change. We need to take a break from building UI features and fixing bugs, and focus on the core of SSB. I'll explain more in this email, but before that, let's see what's new from last month.

  • ğŸŽ‰ Feature: hashtag suggestions when composing a post
  • ğŸŽ‰ Feature: Search screen recent hashtags autocompletion
  • ✅ (Android) Bug fix: initial mention suggestions
  • ✅ (Desktop) Bug fix: dark mode mention suggestions
  • 🔷 Require EULA acceptance for Store installations
  • 🔷 Improve Activity tab to look less spammy
  • 🔷 Improve Russian translation

Andrew Chou worked on some sweet improvements, mostly related to hashtags. You can now have an autocomplete menu for hashtags when you are typing a new post in the Compose screen. This is great for discovering commonly used hashtags in the community.

Additionally, if you go to the Search screen and type only #, you will see a list of recently used hashtags.

Google Play and our EULA

I'm happy to announce that Manyverse is back on Google Play Store. Users who install it from Google Play have missed the last couple of updates because Google rejected our updates, saying we violated their policies. We tried to appeal, but they insisted that our app needs a Terms of Service.

We are fortunate that helped us (pro-bono!) to investigate the matter for us, and after a long chain of emails, we came up with the Manyverse End User License Agreement. This may spook some of you, but:
  • It's only for the Google Play and iOS App Store cases, doesn't apply to Manyverse desktop neither Manyverse Android APK nor F-Droid
  • We only did it because Google forced us to, and I predict that Apple would eventually do it too
  • If you read the whole EULA, it becomes clear that it's just spelling out common sense when downloading a standalone open source app. Plus some provisions to clarify that you shouldn't use it for illegal purposes
  • wrote this EULA to match exactly our situation. It's not copy-pasted from some template
The app now also asks for you to read and accept this before creating an account. All things considered, I'm glad we made this because it serves as a reference for other open source apps that might run into the same problems on Google Play and iOS App Store. For users who don't want to accept the EULA, we provide alternative download methods, as we always have.


Now let's talk about the elephant in the room. Some of you may have read my #strategy2023 post on SSB. It's a bit pessimistic about the current state of SSB.

To summarize, we are getting a lot of reports of crashes due to the device running out of memory. In other words, there is too much data in the SSB network, and for some devices (especially mobile) it's too much to handle, and crashes. So I'm here looking at all these crashes, empathizing with the users, but dreading it because there is no comprehensive solution to this problem. Worse, this problem won't naturally go away, because the network will keep on growing. And I'm sure you know what it is like to try to join SSB with Manyverse, but be forced to download gigabytes of data and wait for the app to build database indexes. That's also a huge problem.

When I started working on Manyverse (that was 53 newsletter emails ago), I was just focused on building a mobile UI for the existing SSB tech stack, and relied on the amazing backend work from developers such as Dominic Tarr, Mix Irving, Mikey, Mafintosh, Matt Mckegg, cel, and many others. But most of those people moved on to work on other things, and today I'm spread thin between maintaining Manyverse (on five platforms!) and maintaining the SSB stack. We suffer from a lack of contributors, and I suffer from a lack of focus, which is how we gradually let this storage sustainability problem get out of hand.

Now it is such that the problem cannot be ignored anymore, and I was considering quitting. This could have been the last newsletter update I would send. But SSB is special, there are few networks out there like it (even though new alternatives keep coming up, like Nostr and BlueSky), and I don't want to give up on it. After days thinking about it, I came to the conclusion I want to work on the core of SSB, redesigning it for storage sustainability. Then ultimately, when that is ready, come back to Manyverse and adapt the UI for this new core. But it will come at a cost.

In practice, that means I'll take a break from fixing Manyverse bugs, fixing crashes, building new UI features, and instead I'll focus on research and development for the new SSB core modules. I'm calling this "SSB2". I don't want to rewrite everything, and I don't want to do this alone. I'm fortunate to have arj's great ideas and direction, and most of the SSB components are working fine and will remain in place.

I already started working on this. arj, Geoffrey (a new contributor I met in p2p-basel in January!) and I have discussed a bunch of potential solutions, and we are starting to map out the experiments we want to do. The image above is a map of the potential solutions ranked by how complex they are to build, and by the severity of the problems they solve. Our next step is to code a prototype of minibutt and study the tradeoffs it makes.

New contribute page

As for the Manyverse app itself, I will limit myself to just making the releases and overseeing the project. Contributors are welcome to submit small fixes, and in fact I prepared a new website page specifically for contributors: I hope this is a helpful guide! And a big thanks in advance for those who volunteer.

Important: I intend to use your donations to work on SSB2 and light Manyverse coordination. If this is not what you want, OpenCollective provides the option to refund a donation if it hasn't been used yet. Contact me if you want to do that. These newsletters will largely consist of updates on SSB2 work from now on.

🥂 Here is to new beginnings!

– @andrestaltz