kysely icon indicating copy to clipboard operation
kysely copied to clipboard

Poll: Replace Discord by github discussions?

Open koskimas opened this issue 2 years ago • 3 comments

Originally requested here.

What do you think? Please click thumbs up or down on this message.

thumbs up: Replace and remove Discord thumbs down: Keep Discord

(I know github discussions also has polls 😄)

I think having issues, discussions and Discord would spread things all over the place. If we enable github discussions, I think we should delete the discord server.

koskimas avatar Sep 21 '22 14:09 koskimas

I feel like discord, when the link works, provides great means of informal communication and quick response times. It seems people are more comfortable with asking questions, being vulnerable there.

igalklebanov avatar Sep 21 '22 18:09 igalklebanov

I think that google searchability is overrated in this context. Its a time sink.

Most people find it hard to pick the right keywords for their questions/issues. Especially when being new to a library.

Many times the engine leads you to outdated discussions/answers. Nobody really cares enough to maintain old discussions.

igalklebanov avatar Sep 21 '22 20:09 igalklebanov

@bestickley Could you also click thumbs down on the first message if you support @igalklebanov's view?

koskimas avatar Sep 22 '22 08:09 koskimas

I think issues are for serious stuff that need to be tracked. Discord is for building a community and for questions and it works better on these aspects than discussions. Searchability is needed for issues, but discussions are only (almost never) searched for similar questions in order to avoid making the same question over and over. This could be easily solved on discord with the new forum channel and a bit more organization there (if that's desired to be done).

kristiannotari avatar Sep 23 '22 18:09 kristiannotari

Can't we enable the forum threads in the discord channel?

thelinuxlich avatar Sep 23 '22 18:09 thelinuxlich

Similar thought than @kristiannotari . I think there is value and space for both:

  1. Chatting allows for more 'easy' questions to be asked and answered, which as @igalklebanov points out its quicker, and allows people to be more open and comfortable asking for help. In addition, it provides some feedback of where are the pain points for newcomers (like me) so that you're able to build a knowledge base that provides value (or maybe change something if you feel like it).
  2. Some kind of issue tracker is needed for more complex problems which cannot be solved in a matter of a couple hours, or if there is a need to defer the resolution. It's a way of communicating that the problem has been found and what is the state towards it resolution

If the problem is the context switching between platforms and both of points cannot be done, I would much rather have 1 than 2 hence my vote :)

fbergeret95 avatar Sep 23 '22 20:09 fbergeret95

What do you all think about having both? Am I the only one that thinks it'd leave people wondering which is the correct place for their question/issue/feature request? I haven't seen other OSS projects having both either.

koskimas avatar Sep 24 '22 05:09 koskimas

@fbergeret95

Some kind of issue tracker is needed for more complex problems which cannot be solved in a matter of a couple hours, or if there is a need to defer the resolution. It's a way of communicating that the problem has been found and what is the state towards it resolution

We have the issues for uhmm.. issues. What is being discussed here is the github Discussions which is a newish feature and not yet enabled for Kysely.

koskimas avatar Sep 24 '22 07:09 koskimas

Interested people are always going to ask you or the community around questions, on discord or on discussion is not a great difference. On discussion you lose some of the quick&dirty questions but maybe it's valuable to lose those, since often a too quick to ask action is prone to have more silly or banal questions, which could be solved by just reading better the specs.

I think, since issues are not disappearing since they concentrate much of the technical work, issues (hence the name) and long term resolution of major bugs and so on, that having discord in place is something up to you to evaluate given the question: would I like to create and maintain a community out of this?

If the answer tends to be "yes" then having Discord will be 100% more beneficial than discussions, even if you have to switch from platform to platform. A lot of people use Discord (and more should IMO) and a lot of other programming communities are already there.

If the answer tends to be "no" then having Discord is only giving you more silly questions and another platform to check and take a look at, which I personally would rather not do (if the answer tends to "no").

kristiannotari avatar Sep 24 '22 09:09 kristiannotari

What do you all think about having both? Am I the only one that thinks it'd leave people wondering which is the correct place for their question/issue/feature request? I haven't seen other OSS projects having both either.

I know about the fp-ts ecosystem of libraries, that also have a discord server. It serves another purpose, as I said, since they're questioning how to properly use the libraries. There are great "discussions" (pun intended 😄) happening there on their discord server. (btw check them out, they're great).

kristiannotari avatar Sep 24 '22 09:09 kristiannotari

@koskimas

@fbergeret95

Some kind of issue tracker is needed for more complex problems which cannot be solved in a matter of a couple hours, or if there is a need to defer the resolution. It's a way of communicating that the problem has been found and what is the state towards it resolution

We have the issues for uhmm.. issues. What is being discussed here is the github Discussions which is a newish feature and not yet enabled for Kysely.

Well, I cannot read 😆. My vote is the same though but for other reasons. In my opinion Discord facilitates quick & ephimeral conversations, fast response times and a 'warmer' space to ask and answer. Then when something is frequently asked or needs follow up it can be moved to a more permanent place like docs or issues. Also its one dashboard/app for all interactions and not one per project.

Moving to Discussions would mean having to open a specific page for a specific project to engage and constantly coming back to check if there is something new, which I'm certain that's something I will be doing less often

fbergeret95 avatar Sep 25 '22 11:09 fbergeret95

Well, I cannot read

Actually I changed my original message after answering you and realising I wasn't very clear. So it's more like I can't write 😄

koskimas avatar Sep 25 '22 13:09 koskimas

Thanks for notifying me of this poll @koskimas. I would like to apologize in advance and for my past discussions if my writing style annoys anyone! My wife and others have certainly informed me of my lack of social grace at times. :smile:

Here are some thoughts on topic. From the point of view of maintainers, I think this is important:

  • Inevitably, people will create Issues which are actually discussions here on GitHub (GH).
    • With GH Discussions, you can easily convert the Issue to a Discussion without deleting anyone's input.
    • With only Discord in place, there is no(?) easy way to transfer that Issue into a Discord channel and if you want to keep things tidy, you will have to delete the Issue and risk offending your potential community member.

For maintainers and community I think the following apply:

(Disclaimer: I use Discord for connecting with Twitch acquaintances, but I am not an expert user.)

  • Discord notifications are annoying.
    • There's too much setup.
      • They don't default to just sending you an email. Instead they want to ping your phone or desktop OS notifications system.
      • On my phone I have completely disabled Discord notifications because it's too hard to fully disable notifications for communities that I don't want to be constantly notified about. (On desktop, I just use it in the browser, no notifications.)
    • I can't subscribe and unsubscribe from a single topic, I have to do a whole channel or server. (I think?)

Other general issues that I see with using Discord to host any potentially useful conversations:

  • Discover-ability of Discord conversations, even outside of Google, is not great.
    • I don't think I've seen any GH repo where contributors or users link to a Discord conversation.
    • With GH Discussions, it's easy to put links to relevant discussions in READMEs and Issues.

and

  • GH user names do not match up with Discord user names.
    • This makes it difficult to know who is speaking.
    • If I weren't already a user, I'd have to sign up and then learn how to deal with Discord so there's more friction.

Finally, I would like to add one point of disagreement about spreading things around:

  • I think that the benefits of leaving open all avenues of approach will far outweigh the confusion that some potential participants may experience when attempting to interact.
    • Consider a building's entryways. Stairs are difficult for a wheelchair to navigate.
    • Likewise, since Discord is a completely separate non-integrated system, non-Discord users may have a tough time and others might just not like the way Discord works.

I think of Discord kind of like a pub. In the past you might have had an IRC channel to fulfill this role. However, the existence of a town pub would not preclude the same town from publishing a newspaper or having a town square.

Outside of what's good for community - my main point, is that I think it will be less work and less annoyance to open up GH Discussions due to the fact that you will easily be able to convert Issues to Discussions when you inevitably get questions in Issues.

ghost avatar Sep 27 '22 16:09 ghost

Some notes on @waynebloss insightful reply:

There's too much setup.

  • They don't default to just sending you an email. Instead they want to ping your phone or desktop OS notifications system.
  • On my phone I have completely disabled Discord notifications because it's too hard to fully disable notifications for communities that I don't want to be constantly notified about. (On desktop, I just use it in the browser, no notifications.) -I can't subscribe and unsubscribe from a single topic, I have to do a whole channel or server. (I think?)

You can actually change this settings fairly easy, muting or disable notifications per server, channel or even only disable push notifications (or desktop notifications), also in general, server or channel. You can also enable email notification if that is something you prefer!

GH user names do not match up with Discord user names.

  • This makes it difficult to know who is speaking. -If I weren't already a user, I'd have to sign up and then learn how to deal with Discord so there's more friction.

You can actually connect your github account and display it in your profile fairly easy (Connections > Add accounts to your profile). You can also suggest people to rename themselves as their github profile (you can do that per Discord server as well).

Even with those notes I agree that if you're not used to Discord, it might be hard to start chatting. I still think that is definitely the better place to grow and maintain a community.

If going for both is in consideration you can integrate them via a webhook. You can do that manually or using a service like Zapier which has connectors for both built in. I currently use the free tier to push PRs in a private repo to a discord channel and it works great 😄

fbergeret95 avatar Sep 27 '22 20:09 fbergeret95

@waynebloss thank you for sharing!

Inevitably, people will create Issues which are actually discussions here on GitHub (GH)

People also open issues in discussions, it's confusing to people.

With GH Discussions, you can easily convert the Issue to a Discussion without deleting anyone's input.

What's the gain (to any of the stakeholders)? sounds like more things for maintainers to do, while consumers are annoyingly strong armed around and made to feel stupid.

With only Discord in place, there is no(?) easy way to transfer that Issue into a Discord channel and if you want to keep things tidy, you will have to delete the Issue and risk offending your potential community member.

Sounds like a flow in which we close an issue and tell the consumer to repost on Discord. Very bureaucratic experience imho.. nobody likes bureaucracy.

With GH Discussions, it's easy to put links to relevant discussions in READMEs and Issues.

Sounds like bad documentation, if you're pointing your consumers to unstructured conversations.

I look at Discord as a hallway talk between co-workers (our consumers are another team trying to use our microservice).. if something needs to be raised in an official communication channel, we'll document it properly / talk about it in sync meeting (aka "issue").

GH user names do not match up with Discord user names. This makes it difficult to know who is speaking.

Why is it even a thing?

The anonymous nature of Discord (by default) gives many people more confidence to ask, participate, shed the uber-professional skin they wear in github where their (next-)employer is lurking.

I think of Discord kind of like a pub. In the past you might have had an IRC channel to fulfill this role. However, the existence of a town pub would not preclude the same town from publishing a newspaper or having a town square.

You're suggesting that maintainers should be in a pub, at town square and in a newspaper print house all at the same time for free.

Outside of what's good for community - my main point, is that I think it will be less work and less annoyance to open up GH Discussions due to the fact that you will easily be able to convert Issues to Discussions when you inevitably get questions in Issues.

Trust me, I'm a freak of organization. OCD's upon OCD's. What you're suggesting seems, to me, of very little value to all stakeholders and a pile of more work.

igalklebanov avatar Sep 27 '22 20:09 igalklebanov

Appwrite on "Discord over Discussions".

https://dev.to/appwrite/why-discord-is-a-must-have-for-oss-2jpj

igalklebanov avatar Sep 27 '22 22:09 igalklebanov

@igalklebanov Thank you. No, I'm not recommending anybody to do anything. I fully advocate for maintainers doing whatever they want and I'm attempting to give my feedback and opinions as well as I can.

I can sum up my whole position on the topic of this issue: I think the context switching can be annoying for any type of participant (maintainers, users) and as per my vote, I would err on the side of just using GH Discussions because of that.

Beyond that, I added some observations of bad Discord UX (imo), and that I don't think closing doors is great for community building (in general). For an example of a community which actively uses both, see Deno:

Kysely isn't quite this large with as many maintainers... So, given that the burden is more the maintainers (or others who would manage the community), then I would prefer that they do things exactly as they please.

With that - I am going to excuse myself from the rest of this conversation because I don't think I'll have much else to respond with.

[0] - I had no clue where to look to find the link to Deno's Discord...

I was already in Discord and I tried to search there but there's no obvious way to search for public servers, so I just googled it.

The discord link icon that I finally found at https://deno.land/ and at https://github.com/denoland/deno are also extremely annoying to me as they only want to open an app and not just use the Discord app in my browser. Every time I click it, Discord wants to open a native app that isn't installed instead of just running in the browser. I guess I just think the whole Discord ecosystem is somewhat overrated, it's very clunky to work with, I can't link to things to reference them easily at any point and I can't imagine that it's easier to work with than GH on the maintainer side. (IMO - not a directive)

ghost avatar Sep 27 '22 22:09 ghost

@igalklebanov Thank you. I didn't see that before.

In a previous issue I mentioned this article Discord is a black hole for information but perhaps it will change my mind.

ghost avatar Sep 27 '22 22:09 ghost

Discord is a black hole for information](https://news.ycombinator.com/item?id=30311982)

Feedback from a loud minority of anonymous users in a message board should be taken with a grain of salt imho. Heck my opinion is very unimportant in this matter.

If anything we should look for opinions of other successful repositories and what and how they use their communication channels.

Here's a list of some of them..

Beyond that, I added some observations of bad Discord UX (imo), and that I don't think closing doors is great for community building (in general). For an example of a community which actively uses both, see Deno:

Deno's discord looks good. Their help channel has a forums look and feel with search and filtering. Compared to their github discussions, the discord help channel is very active today (many threads, many comments) vs. a single thread in discussions (between 2 people who are probably sad they're not on discord 😃). Would love to see some numbers on response times between the two - I see many threads getting a first response 2 minutes in.

deno

Angular uses discussions for RFCs, while discord is for everything else.

angular1

angular2

igalklebanov avatar Sep 27 '22 23:09 igalklebanov

Discussions FTW, much easier to keep things on topic (less noise) and it's usually much faster to search than wait for an answer (timezones, weekends). Discord works if it's someone's job to be on top of it 24/7 but otherwise questions go unanswered and/or repeated which defeats the purpose and is a huge turn off.

homerjam avatar Oct 23 '22 19:10 homerjam

I'm in favour of GitHub Discussions in the vast majority of cases.

The "instant messaging" nature of Discord leads to watered down, fragmented and noisy discussions.

Granted Discord does now have the "forum"-style boards but they are still worse than GH Discussions in a multitude of ways:

  1. Require a Discord account to even view them (GitHub Discussions can be viewed by anyone).
  2. To contribute, you need to have a Discord account, find the server link, join and then post in a separate app. Everyone with GitHub can join Discussions with zero extra steps.
  3. GitHub Discussions are indexed by search engines and are more SEO friendly. The only way to find the Discord "forum" entries is to search within Discord itself. This means, if I am having an issue, I now have to search in multiple different places to find potential answers or people experiencing the same issues.
  4. People will inevitably use GitHub regardless and there will be "forum"-style discussions in GitHub issues.

Glazy avatar Nov 23 '22 11:11 Glazy

I feel like discord, when the link works, provides great means of informal communication and quick response times. It seems people are more comfortable with asking questions, being vulnerable there.

I think that google searchability is overrated in this context. Its a time sink.

Most people find it hard to pick the right keywords for their questions/issues. Especially when being new to a library.

Many times the engine leads you to outdated discussions/answers. Nobody really cares enough to maintain old discussions.

Both of these points would be better addressed by improved documentation and examples, this would prevent repeat questions. Often an example will crop up in an issue/discussion and therefore become searchable by default and easier to incorporate into the docs.

homerjam avatar Nov 23 '22 11:11 homerjam

I think I can summarise and close this now.

Both Discord and GH discussions are good tools but for different uses.

  • Discord is great for building a community and for simple quick questions. It's much easier for many people to ask questions and be vulnerable in an anonymous setting like Discord.
  • Discord is not good for finding information. Most discussions get lost in the sea of random chitchat. We could improve on this by configuring Discord, using fancy bots etc. but ultimately, that's just not what Discord is built for.
  • GH discussions is great for larger questions and discussions. It's easily searchable and "built in". People already have access to it.
  • GH discussions is not great for creating a friendly atmosphere or for random discussions. You'll probably never laugh and have fun reading GH discussions 😄. The bar for starting a discussion is as high as opening an issue.

I've also read a lot of arguments that GH discussions will make it easier for the core contributors since "the users will answer each other's questions". I've been an active OSS maintainer for 8 years now, and I haven't seen that happen yet. Sure, that's the case for large communities like Deno, Vue and Flutter, but not for small or medium sized like Objection or Kysely. Vast majority of answering is done by a few core contributors.

I don't really see how much better GH discussions would be over issues. If the point of the discussions is to get a professional answer to a problem, how's that any different from an issue? Except that you get to mark the best answer as a winner. We could get some benefit from discussions by carefully organizing and configuring it to fit our needs, but guess who'd need to do that? The core developers. I personally have zero interest in using my time doing that. I can't even find time to configure Discord. I don't want to have three places to constantly watch, configure and moderate.

So, deleting the Discord server is not going to happen. If we get an active contributor that wants to spent their time configuring and managing GH discussions, we can enable it. Until that, just use issues.

koskimas avatar Dec 10 '22 10:12 koskimas

I don't know if you guys signed up for this or not but I was happy to find my first answer about Kysely today without using that hideous Discord UI via https://www.answeroverflow.com/m/1096055570563334244

So thanks for enabling that if you did and if not, I'm glad at least that my personal issue with it has finally been solved :)

ghost avatar Feb 06 '24 19:02 ghost

@waynebloss we did. It indexes specific posts from specific channels, only after getting the author's consent (to align with discord's privacy policies).

igalklebanov avatar Feb 07 '24 08:02 igalklebanov