So there was this thread about what "federated" means. It's old so I don't wanna revive it, but here's my take:
IMO, federation is about two things:
1. Administrative Scalability.
This means that different service providers participating in the federation can have different policies (eg. wrt. moderation) and it's fine. The policies can be enforced locally without impacting everyone else.
2. Neutralization of Network Effect.
This means that everyone can relatively easily spin up a new service provider and join the federation without anyone's permission, and without the uphill battle against network effect. IOW, you can switch to a different provider or spin up your own one, and still keep in touch with your old friends / channels / communities /etc. without convincing everyone else to also switch.
If something doesn't satisfy the two conditions above, I wouldn't call it federated.
If it has a graphical display, the name must match the wallpaper, and the wallpaper must match the desired aesthetics.
So eg. my current phone is red, so it has Selesia Upitiria from Re:Creators on a wallpaper, and hostname is selesia.
My thinkpad is dark and tough, so it has Batou from GitS on wallpaper, hostname batou.
My bigger laptop has blue backlight on keyboard and back-of-the-screen logo an has a spaceship-y look, so it has the Prometheus spaceship from Stargate on the wallpaper, and hostname is prometheus.
Now, things which don't have a screen, like servers, routers, switches, etc. I just name after any anime character.
Managed switch is tachikoma (from GitS)
OpenWRT router is integra (from Hellsing)
VPS used to be faris (from Steins;Gate) but she's dead now.
I was thinking it'd be cool if my faculty had all the blueprints of the building in a publicly accessible git repo, and then it occurred to me:
Infrastructure as Code is nice, but it's not applied broadly enough.
It shouldn't be limited to IT.
Idally, we'd have blueprints of roads, electric grids, buildings, etc. all in git repos, with build scripts which, when you run then, build the physical thing in front of you based on the blueprints.
@mewmew how hard would it be to add GLaDOS emoji?
Things you might not notice when using telnet as a client for your brand new protocol, but will annoy the hell out of anyone trying to write a proper client:
The client should be allowed to specify some (connection-local?) ID with each command it sends, and when the server replies with a result or error, it should include the id of the command it's replying to.
So that you know what the reply is for, if you've sent more than one command.
I was thinking about chat protocols.
Had a federated design in mind, where each channel had its authoritative server for metadata, and then mirror servers for redundancy and scaling out, with rules for complex netsplit/netjoin situations, etc., and then users had their homeservers.
But then I thought:
Why not have the authoritative server only host the list of members, and version it, and then have all the clients put a reference to specific immutable version of channel's member list as destination of the messages they send.
And then all the messages would bypass the authoritative severs, going directly between users' homeservers. And history replay would be much simpler because you wouldn't have to go back and recalculate past membership lists based on past joins/parts.
It seemed like such an elegant solution, making everything way simpler and more scalable at the same time. I didn't like it, but rationally it seemed like a superior solution...
And then it occured to me - either this is what Matrix did, or it has the same problem:
Just joining a room makes your homeserver receive new connections from every other homeserver in the room.
Join the biggest room, change your DNS to point to your enemy, and bam, that person gets DDoSed by all the other homeservers.
Get in the fucking calculator, Shinji
wow, busshi.moe has a higher character limit for poll options, yay!
(the poll is a joke btw. but I'm still curious what people think)
In case it wasn't obvious: this was a rant about Machine Learning
(I think I might've said this already, but it was on niu, which is going down soon, so...)
In this hostile world, in which everything is fuzzy and nebulous and imprecise, some of us humans have gone to a great length to create logic - a framework which we can use for precise reasoning.
We can use it in our brains alone, but we aren't too good at that, and we'll have to limit it to very simple tasks or risk making a mistake.
Or we can use tools, like pen and paper and mathematical symbols, which let us expand how much information we can store in its precise and logical form.
And then some of us went to even greater lengths to build machines which can do logic, and be precise.
These are computers.
They're good at the things at which we suck - logic and precision.
And they're bad at things we're good at - heuristics and fuzziness.
And then some funny crowd came along and said "we're gonna make machines for fuzzy heuristics".
But they didn't use naturally fuzzy neurons to make those machines. Nor did they use analogue circuits which also tend to be fuzzy.
Instead, they decided to emulate fuzziness on top of our precise and logical computers.
They went to a great length to undo the tremendous effort of computer hardware designers and make computers run fuzzy heuristics, which humans (and monkeys and lizards) were already good at!
Wtf I can't follow @nihl neither from here nor from mstdn.io... it appears as if I sent a follow request and never had it accepted...
@mewmew I like your character limit. Not as elite as niu's, but very generous. Seems perfect for long tech rants.
All your moe needs! A kind, generalistic instance where everyone is welcome! Important: if you sign up, be sure to check "spam" for your confirmation email if it does not appear.