Two thumbs up dev(s), hope you’re doing okay and getting some sleep in between. Had some rough production upgrades in my life, and this sounds like a pretty bad one. 😖
They have had similar difficulties before.
As someone who jumped on the calckey/firefish bandwagon relatively early (like earlier this year) and as someone who wishes all the best for the platform and lead dev …
I have to warn anyone thinking of committing to it that it is still basically beta software and the main dev isn’t really interested in making that clear or even realising it. There’s a lot of hype and excitement around the platform (it is refreshingly cool, along with its base, misskey) that doesn’t accurately reflect the difficulties the platform will put you through as a user.
Last I checked, they were pretty much out of their depth on database engineering. As in the lead dev openly admitted to this with their personal account. So another database upgrade going bad without any reasonable estimates of down time completely tracks. It happened a few months ago and that’s why I no longer use firefish. The main problem being that the dev doesn’t actually know how long things will take and is clearly hacking things together the best they can.
Which is all fine, I hope things come together. But you’re not getting a stable platform with firefish or a lead dev that is completely on top of what they are doing. It might all come together soon! But I can’t help but suspect moving off of Postgres to another DB isn’t gonna fix their problems however much they think it will.
Going through firefish taught me that when it comes to offering software to users, your first job, before any features or aesthetics or design ideas, however awesome they might be, is to make sure it works well and reliably. Fail at that and you’ve failed as a developer.
At points this year, I’m afraid to say, firefish failed as a piece of software, which was simultaneously easy to understand as a FOSS indie Fedi project, but also sad to see as a FOSS indie Fedi project.
It’s a fine balance. A service like this needs so many talents, it’s very difficult for one to know all of them. You need 1. a infrastructure engineer/linux sysadmin, 2. an API/backend software dev, 3. a Frontend/GUI dev and a 4. Database Engineer/Administrator. These 4 are very very difficult to do well in one person, since almost each of them has infinite depth.
It seems like Firefish developer is good at 2 and very good at 3. That helps attract people to the software because it seems to fancy. But that sets up for failure, as its popularity becomes its own undoing, as the infra and/or the database cannot cope, and then the hapless developer is left running around like a headless chicken. I feel like similar issues are affecting kbin at the moment.
But the opposite is also not great. I’m great at 1 & 2, can kinda handle 4 but I absolutely suck at 3 (UI). As a result, while I can run a custom service with 200K accounts reliably, I can’t make it look good for shit. To cover my failings, the backend and the API are completely open, and I’ve invited anyone who wants to make an frontend, no questions asked. It’s not perfect, but it works.
The scope of building a large webservice is so large, it’s impossible for one person to handle it alone. But it’s also very very difficult to find competent and trustworthy people to cover the aspects you cannot. Especially DBAs! DBAs could be considered like the healer in a “Holy Trinity” game (Tank/Healer/DPS). It’s the role everyone needs but very few enjoy playing.
I wish firefish luck, but I doubt moving to a different DB is going to solve this issue. I’m honestly surprised this is the approach they went for, instead of just tuning postgresql.
DBAs could be considered like the healer in a “Holy Trinity” game (Tank/Healer/DPS). It’s the role everyone needs but very few enjoy playing.
Perfect analogy! Though I did play a healer for a bit and enjoyed it, it was therapeutic and calming.
Seems like it’d be good for DB expertise to be spread around the fedi a bit more.
Otherwise, great breakdown … thanks!
Firefish definitely seems like it’s overly concerned with aesthetics over anything else. Nearly every instance I checked out had a ton of custom CSS which frankly reminded me more of something like Tumblr than what it really is (Mastodon with a coat of paint.) I don’t mean this as a slight since it’s obviously attracting a community, but it’s completely inscrutable to users not familiar with the platform its based on and seems to be very taxing to maintain (my experience mirrors yours somewhat.)
If they can get more people on board to keep it together then I’d definitely be willing to spin up another instance.
If they can get more people on board to keep it together then I’d definitely be willing to spin up another instance.
Yea, from memory, the big stumbling block they had was that they were going to rely on a single DB expert who didn’t come through and went MIA, so they were left with no DB expertise and trying to hack their way through. Then there was some split amongst the contributors. Don’t know where they are up to know, but the team has lacked some baseline expertise.
is there only the one dev?
ive been watching the kbin development pretty closely, and they seem to have some contingency in case the lead dev gets burned out.
There’s one clear lead dev for sure with other contributors. I’d bet that it’s mostly the lead dev managing the db update right now.
There was a fork of firefish made (iceshrimp … yea not a great name but somehow better than firefish?) and part of the motivation was friction with the lead dev, so they clearly have a lot of influence.
They probably need to do their database migration on a computer with more memory.
I had a migration that was still running after 16 hours. Finally just for fun I tried it on another server with 64 GB of RAM and it was done in 15 seconds.
What is firefish.social?
Federated microblogging platform, like Mastodon.
To add to scytale’s description, it’s a fork of misskey that was formerly known as calckey
The list of improvements does seem like a nice thing to wait for!
I was really excited for firefish. Ditched my main Mastodon account in place of it and tried it out for a month. Aside from the slowness, and the constant downtime, I found the dev’s attitude off putting. I get it, you’re doing most of this yourself, you’re under pressure, and you have a regular life. But the constant negativity with the user base trying to figure out how this site worked was a turn off. Not sure how people are supposed to get excited about your project when you yourself seem to be annoyed by it.
I moved to firefish.social from Mastodon partially because of how firefish boasted how superior they were over Mastodon and the lack of features. But there’s one feature Mastodon has working for it: Uptime
deleted by creator
…Misread that as two years and had a double-take.
The fish drawing is so cute
hopefully he has some back-ups