2024-05-11 Addressing recent controversy
Names have been omitted.
Preamble
Just a few definitions since I’ve been asked about them!
- CLA: Contributor License Agreement License agreement between us and contributors that grants us the copyright of their contribution.
- FLA: Fiduciary License Agreement Like a CLA, but the outbound license (what is published) of the contributions is restricted to free and open source licenses only.
- FOSS: Free and open source software Software licensed under an FSF/OSI recognised software license
So what happened exactly?
Let’s just first establish the series of events:
-
December 2023 - January 2024: an inquiry is put forwards regarding the state of development with the mobile apps and the presence of the CLA, no further reply is received through this communication channel by anyone involved after my (current) final response.
My final response can be read here currently and clearly states my intentions to make it right. Even at this point I clearly state my burnout / lack of time due to university, but nevertheless my commitments stand.
With regards to the controversy:
- Response mentions that I will be looking into publishing any auxiliary non-core projects as libre software.
- It asks for help putting together an alternative to the CLA. (I ended up having to do this research myself, the primary contenders were switching to just a DCO or a (potentially optional) FLA, more on this later)
- Response clearly states that a libre license had been chosen for the mobile apps and at the moment we were continuing with the original plan to publish the source code at the time that the mobile apps were released. (more on this later)
-
Late January - 10th May 2024: (provided for context) my second university semester, which is unusually busy to the point that a significant portion of people on our course is falling behind, myself included. Overall, very stressful experience as towards the end of it we pretty much had coursework stacked on a huge individual project stacked on exams (2 week gap from project to exams). My last exam was on the 10th.
-
9th February 2024: I proposed to team members that we should instead adopt the FLA as it provides the benefits of a CLA while retaining guarantees for developers that their contributions will stay libre. Again, busy period so this was just put on the backburner.
-
21st April - 5th May 2024 (provided for context) I came down with the flu, most symptoms have gone away but I still have a persistent cough. This was on the back of a really full-on month and just before exams, which meant any time I would’ve had was gone just like that.
-
8th May 2024: a slightly heated, albeit eventually civil conversation goes down in Revolt Discussion regarding why the Android app’s source code is still not available.
Rough summary of conversation:
-
A set of people are not happy that the Android app’s source code is not yet available.
For context, the app is still in a closed beta stage managed by the developer of the app, but the app itself has been teased on our blog and various places.
The main arguments are:
- Revolt has always been promoted as an open-source platform so if we are promoting an app we are building, it should be built in an open manner. (more on this later, further discussion has been had in this space)
- The app has not been released by Revolt itself and there is one developer behind the project so they don’t owe it to anyone to be forced to release their code. (however, a commitment is present that upon release the app would be libre)
-
A proposal is made (by me) to sort out all promised projects/licensing by the end of May.
-
-
10th May 2024: an individual enters chat, begins to insult one of the team members for their perceived ‘allegiance to tech companies’, and then continues to (out of nowhere) passively aggressively complain about “still waiting for revolt actually going foss”.
The conversation should have been shut down at this point but I was trying my best to explain our current point of view, but alas that went nowhere.
Rough summary of conversation:
-
‘Revolt promised FOSS, [we] don’t think CLA is FOSS’ - repetition of prior complaints that I was already taking steps towards solving
-
A complaint is raised that the open source statements on the website have been watered down. - this was certainly not intentional and would’ve happened over a year ago at this point, we did however intentionally strip the privacy oriented branding since I thought it was unfair to market it when we still don’t have e2ee
-
A brief conversation about Revolt’s R&D from one of the team members, this doesn’t go to further the conversation much. However, a complaint is raised from one of the team members with regards to design in open source software, and how it often fails.
-
Further argument continues about licensing, specifically a comparison of Revolt to Blender. Semantics are argued here (never a good thing), while the specific definitions of the Revolt software and platform are correct, I don’t think this was an appropriate time to include as to me it appears as intentionally confusing. - team member has been addressed about this in private
-
At this point the licensing conversation comes up again, just because I could: I added the AGPL license to the new admin panel because at that moment in time nothing was blocking me from doing so.
I want to go on a quick tangent to explain again why certain things are not available:
- Admin Panel: (the rewrite has been source-available for a few weeks and is now licensed under AGPL) my main qualm with releasing the admin panel is because the code quality is in the gutter and that I need to ensure any sensitive data is stripped, such as keys or whatever. It was ultimately easier to just rebuild the thing since I was already unhappy with the actual user interface too, and it is overall clunky and counterproductive to use.
- Anti-spam: I mean this is quite obvious. BUT I have thought of a plan to make the actual service open source while ensuring the rules themselves are not public.
- Discover: while I will argue this is still a separate website in it of itself, I am not necessarily against releasing it but some work needs to be done to ensure that people don’t accidentally just re-use our branding, potentially confusing users. As before, most of these are just down to time, or lack thereof.
-
And then there is a long conversation about the Android app specifically: There are reasonable arguments put forwards, and I try to help move the conversation in the right direction, unfortunately some individuals just continue to resort to toxic behaviour. I probably could’ve tried to mediate the discussion a bit better but it was already really late and I was just simply tired.
-
Conversation cools off for a bit.
-
At some point around 10:30pm a post is made to the Mastodon network :tm:
- The thread begins with a screenshot of the semantics discussion from earlier, though it still confuses me why this screenshot was chosen in particular because it doesn’t actually say anything but show a pointless discussion.
- At some point, the team member in question also posted they do not wish any contribution to their project. Which I interpreted as a sign of frustration really, I don’t have any reason to believe that this was even a final/true statement because given the context it felt like they wanted to let off some steam. - especially given my private interaction with them later but obviously I am not going to say that X or Y is what someone’s opinion is
- Replies don’t really have anything of interest, it mostly just implies that people will leave and not come back.
-
And a bit later everything calmed down again. Though the post did spark a bit more argumentative encounters in chat, nothing of note came out of them though. At most I just vented my frustration with how concerns were not directed towards me or otherwise people ignored that concerns were being dealt with by me.
-
What are you doing about it?
Well first of all, let me just mention that I already had a discussion with the aforementioned team member w.r.t Android, and I believe I made a solid argument towards publishing sooner than later, and that commitment has been published by them personally online.
I personally came to the conclusion that we should:
- Ignore the drama completely going forwards † (at most just provide documentation of what happened) (note: this is not to say that you cannot raise a valid complaint or question, I intend this to mean that we will not entertain any troll / goading comments in our spaces or any further unproductive conversations, i.e. those that just repeat everything that has already been addressed)
- Follow through on all commitments, ensure all parts of the project ‘follow libre principles’ ¶ (which would’ve happened irrespective of if any of this happened the past two days!)
- Double down on FOSS branding (this is mostly just me being chaotic)
What commitments are there?
- Release auxiliary projects under libre license. (confirmed earlier this year)
- Switch from the CLA (confirmed earlier this year) to the FLA. (decided a few weeks ago)
- Release the Android app under a libre license before the release. (as opposed to at release)
- I am also working towards delegating out large parts of the project to remove as much reliance on me as possible and allow things to run autonomously.
† People involved have made it clear that they are permanently dropping their association, which is a shame, but I’m not going to personally chase after people, they can make up their own minds.
¶ Dropping CLA in favour of FLA among other things.
I have a question! (or I disagree)
Feel free to email me at [email protected] or message me directly (though I am more likely to miss it this way, just confirm with me that I’ve seen the message) and I will add it to the list below along with my answer.
- Nothing here yet.
My personal qualms with this situation
My biggest gripe with this whole situation is that this community appears to prefer talking behind people’s backs, fanning the flames of drama, and not really bothering to check why things are the way they are before coming in to start flame wars, etc.
My second biggest gripe with this whole situation is that all of these commitments were already made but nobody seems to understand that it has been almost impossible for me to work through these or that they were even made in the first place (way before this happened). Yes, it is a fair argument to say that this whole project shouldn’t rely on me, but I only identified this issue when I became over-stressed from this specific semester from hell. Suddenly, time I had to manage these things went away completely. I’m sorry for not planning this ahead but hindsight is 20/20.
I have made it very clear to those involved that if they have further concerns that they can email me at [email protected] (official direct inquiry email).
I really just want to stress I will always listen to and address feedback.
It might take a while for me to do so sometimes, and I apologise, but I cannot do much about that.