Skip Navigation

Firefish is entering maintenance mode

info.firefish.dev Firefish (@firefish)

**Announcement: Firefish will enter maintenance mode** For those who have been supporting Firefish and me, I can’t thank you enough. But today, I have to make an announcement of my very difficult decision: As of today’s release, Firefish will enter maintenance mode and reach end-of-support at the e...

Announcement: Firefish will enter maintenance mode

For those who have been supporting Firefish and me, I can’t thank you enough. But today, I have to make an announcement of my very difficult decision: As of today’s release, Firefish will enter maintenance mode and reach end-of-support at the end of the year. The main reasons for this are as follows.

In February, Kainoa suddenly transferred the ownership of Firefish to me. This transition came without prior notice, which took me aback. I still wish Kainoa had consulted with me in advance. At that time, some people were already saying that “Firefish is coming back”, making it challenging to address the situation. Also, since there were several hundred active Firefish servers at that point, I could not suddenly discontinue the project, so I took over the project unwillingly.

Over the past seven months, I have been maintaining Firefish alone. All other former maintainers have left, leaving me solely responsible for managing issues, reviewing merge requests, testing, and releasing new versions. This situation has had a significant impact on my personal life.

Frankly speaking, there are numerous bugs and questionable logic in the current Firefish codebase. While I attempted to fix them, balancing this work with my personal life made it clear that it would take ages, and I’ve started thinking that I can’t manage this project in the long run. Additionally, vulnerabilities have been reported approximately once a month. Addressing vulnerabilities, communicating privately with reporters, and testing fixes have proven overwhelming and unsustainable. Moreover, a certain percentage of users have made insulting comments, which have severely affected my mental well-being and made me fearful of opening social media apps.

I will do my best to refund the donations made to Firefish via OpenCollective, but that’s not guaranteed.

firefish.dev and info.firefish.dev will remain operational until the end of February 2025, after which they will return a 410 Gone status.

Server admins may downgrade Firefish to version 20240206/1.0.5-rc and migrate to another *key variant, or may fork Firefish to maintain.

Downgrade instructions: https://firefish.dev/firefish/firefish/-/blob/downgrade/docs/downgrade.md

Thanks,
naskya

34
34 comments
  • I thought it was gone last February as mentioned in the post.

    Again, sad to see, but good luck to IceShrimp, Sharkey and all the others!

    55
    • Iceshrimp is also in a weird place right now, as it's currently also in maintenance mode while the ongoing iceshrimp.NET full rewrite is happening. Seeing the OP's comments about the Firefish codebase, that rewrite might be just what's needed - provided it's actually completed.

      32
  • It's very sad to see yet another great ActivityPub project disappear. Feel free to try Mbin, if you do not want to go back to Mastodon or something like that.

    Also this work/life balance issues seems to be a repeating pattern in the AP development scene, I wish we could do something about it to make it more sustainable for developers.

    42
    • How do you feel about Mbin in that regard? Do you feel like development is in a healthy place, with not too much of a burden on any one person?

      I guess similar situations as the one described here could occur, with an inherited code base and all it entails.

      12
      • Great question! I never shared this story. I can only answer this from my own perspective and NOT on behalf of the entire project or other devs if you can imagine. And you're correct every open-source project can have this similar situation.

        1. I try to make Mbin as decentralized as possible in terms of development, contributors and no single-maintainer. I hopefully advise that by putting time and effort in writing out the C4 specification: https://github.com/MbinOrg/mbin/blob/main/C4.md. This means that every contributor can become a maintainer. So even today, I'm not the only maintainer and hopefully I will never be the only maintainer. And this goes as far as full access on the git repo(s) as well as Matrix chats.
        2. Recently, a very dedicated contributor did left Mbin sadly without any announcement. This person is still being missed to this day (I hope he is doing well in RL). So bad things do happen, at the same time I hope we as a project will also attract new developers and contributors (even documentation, translation or picking up a simple UI change can already help a lot and often that is the best way to getting started).
        3. I believe it's important to also take some time off. Like in the recent holiday period I forced myself to take some time off. Even then, I also do feel the pressure sometimes. At the same time; nobody is actually pressuring me. Crazy right?. Nobody is paying me to contribute to Mbin. And nobody expect me to spend time on it daily. So it's important to be aware of this situation and know it's mainly in your own head, sometimes just let it go... But you're right, you do feel a kind of obligation.
        4. I also asked among the contributors if you should accept any form of money or NLnet funding or anything in that regard. Our common conclusion was: NO. Because we are doing it for fun, asking money will only create a situation were you might even feel more obligated.
        5. Luckily the state of Mbin is also getting better and better over time. I'm really glad about that. In the past year we really focused on stability and scalability. Mbin also inherited a lot of issues from /kbin to be honest, and we really did some major overhauls to get the stability we and the server admins want and need (thank you all for this!). I can say that we are now in a good spot at the moment, Hopefully we also stay focused on the quality of the code, so the project will still be alive for years to come. Since nothing is worse then inheriting technical dept on top of a huge pile of issues, that is no fun.
        6. Developing software for the fediverse is in general quite demanding work, no doubt about that. On top of the social media drama that often also happens. So the most important part of each open-source project is the community, the people, the interactions we have. The jokes we sometimes make. I can't thank the community enough and in the end we are all part of the fediverse community, so only we can make it fun and lead by example.

        ~Melroy

        #mbin #firefish #kbin #activitypub #developers #developers #developers #fediverse

        23
      • I think we are getting there. Currently the biggest problem I see is that melroy and I are currently the main contributors with other experienced contributors gone or at least not regularly active (which is of course their right, but its just how it is). I do have a whole lot of ideas and plans for features and I am working on a lot simultaneously, though I wouldn't say that it is a burden, more like a fun hobby. Admittedly this hobby takes a lot of time though 😅

        I am very happy that new contributors are currently dipping their toe in the water and I hope they do stick around. Also a lot of the server admins are active in the matrix chat to help others out. So in this regard we are not alone.

        I was honestly shocked that debounced left so suddenly and basically completely vanished... I didn't think that anyone would do that... So honestly we cannot promise anything, but I think melroy will stay around and I certainly will as well 😇

        12
    • Also this work/life balance issues seems to be a repeating pattern in the AP development scene, I wish we could do something about it to make it more sustainable for developers.

      Something needs to change in FOSS culture. Too many people actively oppose any sort of compensation model other than opening up a Ko-Fi or something. I imagine Naskya would be more than happy to maintain FF as a primary career, but they probably have a 9-5 and have to do this in addition to whatever they have to do to feed their family.

      I was never a big fan of the 'keys (way too much going on and still lacking basic features) but I appreciate the diversity of the fedi. Iceshrimp and Sharkkey are still kicking for the time being...

      6
  • I was on firefish's previous instance, known as calckey, before I migrated back to Mastodon.

    There were definitely warning signs that the project was facing maintenance issues in those days as well, and it felt that the Firefish rebrand was an attempt to "start a new".

    But just like my post on KBin's demise, it should be a warning to those who want to make the software and host a "big" instance: Don't do it. I think it's smart to host your own mini instance for testing, but you should probably solely focus on the code development side of things to make sure that you aren't over burdening yourself with managerial tasks. If your software is good, people will make spins inevitably. If people use it, then you will probably have enough people contributing that you can scale up your mini-instance if needed. But don't jump in without the finances in place, because you're essentially taking on two jobs.

    23
    • counterpoint: If developers aren't forced to "eat their own dogfood" it becomes difficult to see some issues and know what to prioritize.

      3
      • I do agree that developers should use their own software, but doing so on a smaller instance with strict active user limits is probably the right call -- at least until you are certain the software has a "stable" version, but even then you probably will want to run a master branch instance that is much less stable and prone to errors. Until you can afford it, it's probably not a good idea for developers to be spending a huge amount of time debugging in-progress features (which IIRC, firefish had a lot of those.)

        1
  • Loved the branding and was so hopeful, but like everyone else, I long thought the project was dead.

    22
  • Sad, but mostly awful that the project has gone down in such a messy way. That sounds like a tremendous personal load that was completely uncalled for.

    21
  • As with all things in life, as soon as I touch it, it explodes, lmao.

    I think this means I'm done with trying to host fedi-Twitter. Discoverability on a small instance sucks, maintenance on a small instance sucks, and the software available designed to do a reasonable small instance doesn't exist.

    That, and since relays are almost entirely required if you expect ANY useful content discoverability, you're just wasting a huge amount of resources on crap you don't want, don't care about, and can't really delete because all of these pieces of software expect you to keep everything from everywhere forever.

    Think I'll just do a rm -rf and get that ~25gb of disk space back and stick with Lemmy (which is my preferred interaction format anyways).

    11
    • Sounds like.. uncomfortable business? :)

      More seriously though, couldn't a.gup.pe help with discoverability? Tag a larger group, and the post is automatically forwarded to a lot of servers and shown to a fair share of users.

      But yeah, bring on a smaller fedi server for microblogging has obvious drawbacks that people tend to brush over. It does require more effort to become discovered.

      11
      • I'm going to get shit on, but outside of Lemmy, there are just... no active groups on the various fediverse group site aggregators that I'm remotely interested in.

        It's all news, politics, political news, and political peacocking. Which fine, if that's what you're after, but I'm here for nerd shit, and Lemmy is utterly completely awash in nerd shit.

        The other problem is an ActivitPub problem. Even if you follow someone, if you're not following every single human on fucking earth, you're not going to see all the replies to their posts on your server. So your clever post was already made 8 hours ago, and unless you click on another link that takes you to their instance you can't actually browse what replies actually exist before posting.

        Which is just stupid: if I have to visit someone else's shit in order to see if I should reply, I might as well just you know, use that server and save myself the trouble.

        IDK, I liked the UX and it was interesting while it lasted, but it was really just a massive resource drain and had far less interesting nuggets than other options did.

        15
  • Popular take, but I also thought it was dead. I was on Firefish and noticed it was seriously degraded in day to day use. I started with Mastodon, but the *isskey platforms just have a better ux/ui (IMO) and I really didn't want to go back to Mastodon. So now I'm on Sharkey, and hoping this one sticks around!

    10
    • there is a recent drama in sharkey now :(

      3
    • Same with me, I migrated from Firefish to Sharkey, I hope I'll not need to migrate software again, but oh well, who knows, if I'll have to, I'll prob still stick to *key

      1
You've viewed 34 comments.