cabal-cli icon indicating copy to clipboard operation
cabal-cli copied to clipboard

Deemphasize seeders in peer name list UI

Open nikolaiwarner opened this issue 7 years ago • 8 comments

If there is a way to tell if connected peers are seeders, it would be nice to change the color of their nick or place them at the end of the list so that real user nicks are more prominent.

nikolaiwarner avatar Aug 07 '18 14:08 nikolaiwarner

Good idea. On the initial handshake, we could include a bit in the userdata (where we currently pass in the peer's key) that says "I am a seeder". We could expose that through the cabal-node API so clients can choose how to render them.

hackergrrl avatar Aug 07 '18 16:08 hackergrrl

(BTW I would say emphasize seeders, since, as a non-seeder it's a relief to know that someone is keeping the cabal alive.)

On 08/07 07:42, Nick Warner wrote:

If there is a way to tell if connected peers are seeders, it would be nice to change the color of their nick or place them at the end of the list so that real user nicks are more prominent.

-- You are receiving this because you are subscribed to this thread. Reply to this email directly or view it on GitHub: https://github.com/cabal-club/cabal/issues/51

hackergrrl avatar Aug 07 '18 16:08 hackergrrl

Yeah! I'm not interested in seeing seeder's names though. But I really care about who's online at the moment. I think it would be really cool to just show a count of the seeders to give the user some confidence. Then in another screen, show a named list of seeders and also their uptime.

It also would be interesting if there was an indicator shown when coming back online telling you that there were no seeders around when you were gone... to give you a clue that there may be gaps in your history.

nikolaiwarner avatar Aug 07 '18 16:08 nikolaiwarner

Showing seeders feels meaningful to me. People who dedicate hardware and network bandwidth to helping a cabal stay alive and well resourced.. that feels significant to me. I'd personally like to know who's putting in that effort to keep things running. These are probably individuals running seeds, not some nameless corporate cloud.

Maybe a compromise could be putting the peers above the seeders on the list?

On 08/07 09:46, Nick Warner wrote:

Yeah! I'm not interested in seeing seeder's names though. But I really care about who's online at the moment. I think it would be really cool to just show a count of the seeders to give the user some confidence. Then in another screen, show a named list of seeders and also their uptime.

It also would be interesting if there was an indicator shown when coming back online telling you that there were no seeders around when you were gone... to give you a clue that there may be gaps in your history.

-- You are receiving this because you commented. Reply to this email directly or view it on GitHub: https://github.com/cabal-club/cabal/issues/51#issuecomment-411124303

hackergrrl avatar Aug 08 '18 00:08 hackergrrl

That's a great point! I'm with you.

What about showing an icon or symbol along with the name indicating if a peer is a seeder or regular peer?

I suppose my real goal here is inform the user if another peer has a human behind it who can respond. A set of symbols could also be useful to identify bots when we get to that 🤖

nikolaiwarner avatar Aug 08 '18 12:08 nikolaiwarner

+1. Since we don't have roles like irc, we could use & or + or ! or some other sigil to signify seeder.

On 08/08 05:33, Nick Warner wrote:

That's a great point! I'm with you.

What about showing an icon or symbol along with the name indicating if a peer is a seeder or regular peer?

I suppose my real goal here is inform the user if another peer has a human behind it who can respond. A set of symbols could also be useful to identify bots when we get to that 🤖

-- You are receiving this because you commented. Reply to this email directly or view it on GitHub: https://github.com/cabal-club/cabal/issues/51#issuecomment-411389126

hackergrrl avatar Aug 08 '18 16:08 hackergrrl

+1 to sigils/runes

Le 8 août 2018 à 18:04, Stephen Whitmore [email protected] a écrit :

+1. Since we don't have roles like irc, we could use & or + or ! or some other sigil to signify seeder.

On 08/08 05:33, Nick Warner wrote:

That's a great point! I'm with you.

What about showing an icon or symbol along with the name indicating if a peer is a seeder or regular peer?

I suppose my real goal here is inform the user if another peer has a human behind it who can respond. A set of symbols could also be useful to identify bots when we get to that 🤖

-- You are receiving this because you commented. Reply to this email directly or view it on GitHub: https://github.com/cabal-club/cabal/issues/51#issuecomment-411389126 — You are receiving this because you are subscribed to this thread. Reply to this email directly, view it on GitHub, or mute the thread.

cblgh avatar Aug 08 '18 21:08 cblgh

If anyone is interested in working on this, I'd be happy to help mentor! Here's the TODOs I see:

  • [ ] in cabal-cli, pass argv.seed into cabal-client
  • [ ] in cabal-client, pass that seed variable into cabal.swarm()
  • [ ] in cabal-core, edit the initial handshake hypercore extension to include whether the peer is a seed
  • [ ] in cabal-core, edit the _addConnection() function to accept something like opts.isSeed and emit that in the peer-added event
  • [ ] back into cabal-client, edit that event listener in src/cabal-details.js to set something like user.seed = true if it's a seeding peer
  • [ ] back into cabal-cli, edit views.js's renderNicks function to check for user.seed and render a sigil next to their name
  • [ ] bonus: sort seeds to the bottom of the online peers list! this is in util.js's cmpUser

At a high level, it's

  1. thread the --seed argument down to cabal-core, and then
  2. thread the user.seed property back up the stack to the frontend so it can be displayed

hackergrrl avatar Apr 08 '20 00:04 hackergrrl