IRC is distributed and federated. Not only are there countless networks, each network has countless servers, and each group of servers that are up and can see each other can operate on their own, all the way down to a single server, or up to any subset up to all.
When a peering connection goes down and the network splits, maybe some people in the group disappear, or maybe from your point of view everyone else disappears.
Maybe the remaining subset of other users is already good enough because it's enough to continue what you were tallking about and who you were talking with, or if not, you have the option to just try some other servers until you find where everyone alse is. Were "server" is an actual seperate instance of the server software operated by an independant person, hosted on whatever kind of hardware or vm they set up, connected to whatever network they are on, not what Discord calls a "server".
Even if the entire group of say freenode servers goes down somehow (even though that's not really possible) there is still undernet and 400 other nets. Even without prior coordination it would be essentially trivial for the users to all just go looking for, or create on the spot, the same channel on some other net, and basically everyone finds each other again almost effortlessly. And that's if something unbelievable actually happens, let alone the normal minor breaks that actually happen once in a while.
This is entirely different from being wholly at the mercy of the single entity Discord.
Freenode had full-network outages periodically. ddos attacks, infrastructure failures etc. and when those happened, the practical experience was the same... people waited it out. Nobody coordinated a mass migration to undernet or stood up alternative servers for a few hours. (It took much bigger issues - social/organizational/political, not technical - to catalyze the mass migration.)
You're making an argument about the virtues of decentralization - and I agree, decentralization is great! Just in practical reality, freenode (not IRC itself) had exactly the same failure mode as we just saw today.
There was always oftc...
:P
The 00's were an interesting time in internet culture.
Internet slang like this disappeared almost completely once the whole world got access and platforms rooted out all the weird and niche communities.
Common IRC servers were not without problems. I think it was just more common to shrug it off and do something else until the problems went away.
Now, aws or cloudflare gets a hickup and half the internet is nuked.
The old internet was far more federated so doing something else meant to me "Welp, anandtech is down, let's go to pcper, digg, tomshardware, slashdot, etc"
Sure stuff would go down, but it would be just that small community rather than most of chat for the internet.
The more I sit down and try to remember how it actually was to use internet in late 00s, the only thing that always comes up is "there is no way people today would tolerate it nearly as well as we did back then".
Simple services recover faster. Federated infrastructure is much more resilient. We had slower computers, more considerate coders, and simpler software; so everything was snappier, even with 56K modems.
For example, navigate to https://git.sr.ht/~bayindirh/. No scripts, pure HTML. running on a single server. Served instantly.
This is possible. We, as in the world, just ignore it for shinier stones.
Now, a small VPS in an AWS server lapses for 5 seconds, and half of internet is toast. Centralization for the PWN!
I think the centralisation is the issue, I could connect to a different IRC network with a community around the same topic/game. When Discord is down there's nowhere else to go.
In the earlier days of IRC, netsplits were sometimes used for channel takeover. If someone was on a split off part of the net where there were so few people in the channel that they could obtain op status, they could kill and ban the "legitimate" ops when the nets joined back together.
We're hoping to do better than discord, hopefully you get some use from it!
Backend is written in go, frontend is vanilla html/js/css, TOS and PP are readable in one breath each.
edit: looks like nobody can see this unless it's vouched. I guess because of the link and VPN.
It seems to me these day people are OK with AWS going down and just blaming it on AWS rather than on themselves for not being prepared for big outages.
"Oh, nothing we can do because AWS/Cloudflare is down"
What does transparent mean here? AWS is super clear what resources are zonal and provides tons of guidance around making things multi-AZ. AZ outages aren't exactly frequent but they're reasonably likely.
Being susceptible to AZ (or region) outages is very much an architectural decision. Or a bug that needs to be fixed (I'm sure Coinbase didn't YOLO single-AZ, they've undoubtedly learned about some edge case that needs to be fixed). Sure it may not be worth the cost/complexity for some systems but resiliency is like job one for anything in the cloud that costs money when it's down.
Transparent as a system/box can be, meaning that you can't see / know about it. (Yeah, I guess you can read that not transparent as obscure in disclosure of how their system works, but it shouldn't make much sense)
> AWS is super clear what resources are zonal and provides tons of guidance around making things multi-AZ.
Yeah, they allow people cheaping out for zonal resources and then going down with their zone.