community project funding,
I want to briefly talk about a problem that I've been seeing pop up a lot over the past couple of years.
It goes something like this: someone sets up a community thing (own project, Mastodon instance, whatever), follows 'DevOps principles', pays for it out of pocket, and then something happens to their income and suddenly there's a massive bill that cannot be paid.
The problem here is that a community is not a company, the budget is extremely finite, and that's something you should be accounting for from the start.
Yes, you might be okay with paying the costs out of pocket, but at some point something *will* go wrong, and you won't be able to afford it, and now your community needs to cough up the costs - and they often won't be able to.
Many of the "modern DevOps" practices exist not because they make things so much better, but because they are extremely profitable on the provider side. Companies can afford this tax; your community cannot.
A brief and non-exhaustive list of such things, some of which are additionally also fragile:
- Nickle-and-dime cloudycloud services (AWS, Azure, Google Cloud, etc.)
- Microservices (including 'serverless')
- Zero-downtime deployments
- Extensive performance monitoring or tracing infrastructure
- Kubernetes and the like
These are all things that you should *avoid* by default. They can very easily inflate your hosting bill by 10x (or more) compared to a bog standard "rent a cheap Linux server/VPS" approach; and none of them are really going to matter for your community project, even those that might have legitimate benefits in other situations.
Your project will almost certain fit on a standard Linux server. It'll cost you <$50 per month instead of $500 per month. Low enough that even if disaster strikes, it's easy to cushion the blow collectively. The availability and performance will be completely fine for a community project.
(Background: I have a decade+ experience in running non-commercial things on a shoestring budget, including high-traffic ones, also advising others on it. I promise you that it is entirely possible if you're careful about where you spend your money.)
community project funding,
community project funding, :boost_requested:
@joepie91 As someone working in "devops" my experience 100% backs this advice.
Although we run entirely in our own data center we do follow a lot of devops principles and they're ingenious.. if you're 30 people managing 2 million websites on thousands of servers. It makes so much sense.. if you're automating hundreds of weekly tasks and spending thousands of hours a week testing every change to make sure you don't break everything.
At home? I run ~70 containers in plain docker on a single headless desktop machine. Dozens of websites, tens of TB's of storage. It's literally just an ubuntu machine with some extra disks shoved in. I don't even have testing or "continuous delivery". I ssh into the machine and run docker-compose commands.
community project funding, :boost_requested:
@joepie91 on the topic, for @EICAS I'm looking for a newsletter setup (about 1800 subscribers, monthly posting)
The people writing the newsletter really like being able to use a 'block editor' to add pictures etc.
For the software side the main thing I found so far is https://github.com/Mailtrain-org/mailtrain , which does not look thrilling but might be fine. For actually sending the emails I'd really like to avoid hosting my own mailserver...
Any recommendations?
community project funding,
@joepie91 Big love to Hetzner here for that kind of provider. I’ve had times where for reasons I couldn’t pay the server bills on time and they’ve been nothing but reasonable in allowing me to pay it back in the same month.
Also I generally recommend people to not use Mastodon specifically because of this. It’s a Rails dinosaur that even ignoring it’s many other issues just plainly isn’t written with that sort of thing in mind (because it’s a Rails dinosaur). You just straight up can’t run it or scale it in the “cheap selfhosted” sense without adding massive fees. (Not to mention that it’s quite inefficient since it’s again, Rails).
Personally I use Pleroma instead but that’s specifically because it works for me. It might not work for you.