Conversation
This fails to build for me (with
edit: to clarify, this is of course just the bit of the output that I thought was relevant. |
This is awesome, thanks for opening the PR. There are really only three things that jump out to me:
|
Thanks @black-puppydog I'll look into that.
Oh good point! Maybe "+ Join Server"? I like "Redeem invite", but based on the amount of wild tutorials out there that may say "open Patchwork and click Join Pub", it might be more conservative to change the text to "Join Server" and people might still understand that it's essentially the same as "Join Pub", whereas "Redeem invite" seems significantly far from "Join Pub", that people might feel lost. Updating the tutorials is always a possibility, but who knows, maybe there's a YouTube talk as a tutorial, those are harder to update.
See https://github.com/staltz/ssb-room/blob/master/FAQ.md#is-there-a-list-of-all-rooms-that-exist
Yes that announcement on the manyverse site is a good one, but also the basic Readme for Rooms is good as well: https://github.com/staltz/ssb-room |
Love it.
I understand where you're coming from, but I'm very hesitant to send people on a quest to find a room server. Patchwork's readme points to a list of pubs, which I'd like to remove, but I don't think I'd be comfortable removing the quick and easy pub list with a list of search engines to try. Note: I might be biased because I tried that list and after trying every option I found one server.
I'm thinking of room servers like DHT announce servers, so I'm much more comfortable with a list of known ssb-rooms nodes, but I'm open to new information. Are there concerns you have about the centralization of rooms that doesn't apply to DHT announce servers? Or would you feel the same about DHT announce node lists? I want to make sure I really understand your position fully. |
thanks @christianbundy that fixed it! :) |
I think I wrote a lot about this topic on SSB but I can't find the relevant cypherlinks right now. I'm very against the idea of a centralized list in a wiki or something, because it's centralization and brings all the problems of centralization with it, most concerning problem is that of power and moderation. For instance, this issue even though both of us agree with the outcome, is still power dynamics at play. The convenience of a centralized list is attractive, but it has a downside.
You mean bootstrapping servers? There is an important difference between rooms and DHTs: bootstrap servers introduce clients to a world-wide cyberspace with potentially thousands/millions of peers, but a room server introduces you to... one room. So a room is convenient to encapsulate a small amount of people (probably less than 100). This makes a room ideal for small communities, and because it has a similar size to the Dunbar number (150), it serves really well for one community at a time. Now if you make all rooms public to the wide internet on a centralized list, people will join the first room that has space, losing the semantics of one community per room. That's what they do currently with pubs. Only if all (or most) rooms have space will someone joining SSB pick a room of their interest first. So rooms only scale if they are utilized well within their limits, which means that rooms will not scale well if we cross that limit (which will easily happen if there are more than 100 people interested in the same topic). Now let me talk about the one type of centralization that is awesome: hashtags! A hashtag centralizes an interest into one word, and people can come together to the same word in order to find each other. But at the same time, a hashtag is decentralized concerning power, moderation, ownership. No one can own a hashtag, no one can force others (blocklist) to stop using a hashtag. This is why I'm betting on hashtags. If you want a centralized list of (public) rooms, then the hashtag Nothing stops people from building such list, though, and I'm sure that they will if this idea grows more. But it's worth starting it the right way, without any centralized moderation. Also, Patchwork could moderate such a list, but other apps might not. E.g. in Manyverse I don't plan to have any list. Update: actually, a hashtag-based DHT room would be really awesome, we should build that eventually (and it'll have some downsides regarding difficulty that some clients have to join the DHT), but that's a separate project, worth pursuing, but separate. |
Updated to have "+ Join Server" button. |
Oops, I think you removed my commits. I'll push another to get the tests passing again. Here's my concern: if we can't make rooms easy to use then people will continue using pubs, which centralize data, ruin the social graph, and aggravate the rando problem by putting everyone within replication distance of each other. I think we all agree that follow-back pub invites are sub-optimal, and we're all interested in deprecating them. I'd like to avoid making the onboarding harder, but I'd also like to try to make sure that you and I are aligned. I'd feel bad about using your awesome work and then making a list that you specifically asked me not to. I understand that maintaining a list of Good Rooms is wielding power, and that we do use that power to make sure everyone we link to is friendly and aligned, but I'm not sure that's worse than saying "look up this hashtag". My major concerns:
My take-away is that unless rooms are super easy and accessible, we'll have to keep recommending pubs, which I think is 100 times worse than the worst-case scenario from rooms. I share your vision of what the perfect system might look like, but I don't want "perfect" to get in the way of "better".
Yeah! I think we chatted about this a while ago when I was investigating discovery-swarm and trying to see if it was something we could staple onto the clients. |
Ouch! I didn't realize. Sorry.
Fair point 🤔
So here's a misunderstanding, let me explain. Don't worry about the length of this following text, I'm just trying to communicate richly. I don't believe in lists, but because it's impossible for me to prevent the internet at large from making such lists, I won't condemn anyone else from making lists. It's actually untrue that I specifically asked you to not make lists. I didn't! :) In fact, if there would be any list of rooms, I'd rather have you and other butts do it than (say) some stranger who advocates for
All I'm saying is that I myself won't maintain and promote lists. It's like not giving it an upvote, while simultaneously not giving it a downvote either. Perhaps it's hard to grok what my motivation is, so I'll put it like this: I have opinions (e.g. against centralized list) but I don't force others to have the same opinions, and I expect them to not force their opinions onto me either (e.g. in favor of lists), because I know that I have no power (and shouldn't!) in dictating what people should do, because given the current conditions of the internet and the scuttleverse, anyone who truly wants to build their opinion, can do it. I have embraced the fact that being dogmatic is totally fruitless, and prefer instead to influence, and whenever influence is insufficient, I support the disagreement and want to see what awesome things they will build with their own opinions and vision. So if your take-away is to make rooms super easy and accessible, please be my guest and go ahead with that! Note, though, that it doesn't mean I'll accept PRs to On hashtag-based DHT rooms: yep they are quite doable and quite exciting. I want to do it, but between all the other tasks to do in manyverse, I'm sad I can't find the time. |
I'd like to write a longer post, but I want to merge this before I go to bed so this might be short. Thanks for explaining your position, I feel like I understand it much more now. I'll reach out to some Patchwork butts regarding the pub / room list recommendation in the readme and release notes. If you'd like to be a part of that discussion I'd love to have your feedback, but I know Manyverse and SSB maintenance is keeping you very busy. Thanks a bunch for all your work on ssb-rooms, I'm excited to have this merged. |
I've been testing this branch for months for my main SSB account, it works. :)
Now I rebased it on master.
I think we can do a better job at the UI design of room connections, but the current design isn't too bad.