💯 We've come to the same conclusion.
Software can be freely shared, without much loss to the originator, as they are simply documents (that's why they're free speech). But services (including relays) that are "free and public" are prone to being
* short-lived (due to running costs and longer-term effort),
* of low quality or with a small userbase (size matters, to this discussion, because it effects the amount of cost or effort involved),
* heavily subsidized (so, controlled by third parties, rather than the users),
* or overrun by scammers and spammers.
nostr:nevent1qqs0e49ym96uu9nf0v9hllcteep0l0jytajyhrgaezdsnew6qldyzpspzemhxue69uhhyetvv9ujumn0wd68ytnzv9hxgqg5waehxw309aex2mrp0yhxgctdw4eju6t0qgs9df4h2deu3aae83fmet5xmrlm4w5l9gdnsy3q2n7dklem7ezmwfc79qypk
This is why grain was built. Not to be a mega relay that I can run, but to be a highly customizable relay any individual can run to suit their own personal needs.
This was one of the first things I wrote about when I joined nostr. naddr1qvzqqqr4gupzqat9vaqzpxtqca87xulxjslc5gdt395gnkrfzfm2vrux4tdu37f2qy88wumn8ghj7mn0wvhxcmmv9uqq6vfk8qunwwfc8yerzdp5xy3swc0enaddr1qvzqqqr4gupzqat9vaqzpxtqca87xulxjslc5gdt395gnkrfzfm2vrux4tdu37f2qy88wumn8ghj7mn0wvhxcmmv9uqq6vfk8qunwwfc8yerzdp5xy3swc0e
Relays are a failure point in nostr because they are effectively global and only really work as intended in a delivery by default manner. I.E. since they must accept all inputs they will succumb to spam.