Hacker News new | past | comments | ask | show | jobs | submit login
Ask HN: How do you talk to your GitHub community?
57 points by ljw1001 on April 9, 2018 | hide | past | favorite | 66 comments
I work on an open source project with a small community. https://github.com/jtablesaw/tablesaw

I want a place for our users to hold discussions, ask questions, etc, that aren't bug reports or feature requests. We'd be lost at Stack Exchange, as the community is too small. I'm looking for an app like Discourse that is integrated with github. I've used gitter on other projects, and found the endless stream format awkward. What do you use for your projects? The only 'must haves' are sign-on-with-github-account, and asynch communications.




Create a #tablesaw IRC channel and promote it with a kiwiirc link (webchat).

freenode is the home of most software related channels but I prefer Rizon that I find more benevolent to newcomers.

The channel I'm always on (as example of kiwiirc url): https://kiwiirc.com/client/irc.rizon.net?channels=#/g/dpt


The biggest communities are on Freenode and OFTC compared to stuff like slack & co.

Using FLOSS services that are federated/decentralized or at least run by no profits is necessary to keep a healthy community.


I'm surprised nobody's mentioned Google Groups, no it doesn't have any deep integration with GitHub, but plenty of very active projects hosted on GitHub and elsewhere use it, and it's a great free forum provider with an easy web UI for those that want it, and E-Mail for power-users.

Keep in mind that most of the value people get out of such forums is being able to search possibly years old posts after the fact, and something like E-Mail is much more likely to be useful in that fashion than some glorified IRC client.


The main thing I really dislike about Google Groups is that it doesn't provide any reasonable export option.

Disclaimer: I work for Discourse.


> I'm looking for an app like Discourse that is integrated with github. [...] The only 'must haves' are sign-on-with-github-account, and asynch communications.

So, Discourse? It supports OAuth logins, what you need for GH.


I might go with discourse but I can’t afford the saas version ($100/mo) and was hoping to avoid having another thing to maintain.


You should be eligible for the 50% non-profit discount and could maybe even get it for free as an open source project: https://blog.discourse.org/2016/03/free-discourse-forum-host... (you don't exactly meet the threshold criteria yet but look at the top comment on that post).


It's 100% open source, there's a very nice Docker-based install. You can host it yourself on AWS or Digital Ocean for very little money.

Make a free Mailgun account and put your credentials into the Discourse installer and delivery is free up to 10,000 messages.


This can entirely depend on the type of project and how many active contributors there are - if you have a lot of contributors then you may find more cross-user communications in which case gitter really does help (they answer each others' questions). If there are just a few people able to answer questions or just one (you), then using issues as Q&A would be good enough for now. The latter is quite common with apps rather than libraries. It is also more searchable which helps others.

Curious to know, how are you defining small community? I see you have ~100 watchers, ~900 stars, ~200 forks. Are you basing it on that, or some other criteria (# issues per week etc)

My project - I have a project with roughly same numbers as you. I did set up a gitter but everyone ignored it and emails me directly or just uses the issues. Despite not being actual issues, and despite its awkwardness, it's back to what I said earlier - searchable for people with similar problems in the future. I'll be sticking to issues until I reach hyper-popularity and then the gitter may revive itself.


I see 19 contributors, which do look small.


19 is very good. Recruiting active contributors is extremely difficult.


Boy oh boy is that an understatement. One of the ~15 year old ~70kloc projects I help maintain only has a handful of active contributors at any point. Even with efforts put into marketing it there's not a large pool of people to pull from.

I wish there was a formula for making things more attractive to contribute to (in both the short and long term), but it's a fiddly process.


> I wish there was a formula for making things more attractive to contribute to (in both the short and long term), but it's a fiddly process.

I'm trying to elaborate something for that. On way I see is to reduce the entry level as much as possible.

I deduce that a project aiming a lot of contributors should be heterogeneous (contributors can choose their favorite language)and shouldn't have a single build system (interfaces exists at runtime with a middleware, vms, or files).


That might work or it could backfire. With more build systems and more languages, then you can easily end up in the category that someone needs to know all of them to make meaningful changes. If you have people staying in their own part of the codebase it's easy to imagine significant bitrot occurring over time.


I imagine software isolated in vms.

Many people could do the same thing or overlap with someone's else project. It would allow projects to compete.


Interesting. That's a radically different view on what a project should strive for than my own. My own FLOSS work focuses on getting work closer to the system's metal in order to have a responsive low-latency/realtime configuration (realtime being in the realtime signal processing sense).

In this area in particular people doing the same things results in reasonable breadth of work, but insufficient depth. So plenty of options, but all of them not good enough to compete with larger development teams.


I've seen your website. It's really fascinating.


Unfortunately in this case only 3 of them are active contributors.


What is that project?


I suggest Discourse too. Users can login with their Github account and you can deploy a small instance very cheaply in Digital Ocean. It's better than a chat and the content will be indexed in google quickly.


We at StackStorm now do a combination of SAAS Discourse (https://forum.stackstorm.com/) and Slack (~1200 members). Discourse allows newcomers to search for relevant issues and allows us to do async support well. With 3000 members in slack, a paid version would be unimaginable in terms of cost. Plus, even if we pay (which we do for the team itself), the search is unbelievably bad in slack. Discourse seems to be doing well for us so far. We'll know more in a few months now. BTW we also allow people to file bug reports in github. It's a lot of tooling around customer engagement and support but people like that they can hop on slack, get pointed to forum if the question they ask cannot be answered by larger community. Core engineers answer discourse questions and point people to github issues if there is a legit issue. Sometimes people ask support questions straight on github.


A major characteristics that you need to decide upon is how searchable/disposable are you expecting the conversations to be. Coarsely you have forums, mailing lists, and chat options. My own open source projects are split between the different mediums. Chat via something like IRC on freenode (+ matrix if you want extra features) is easy to setup and great for casual discussion or very bursty conversation (time-zone permitting). Mailing lists make for decent multi-day and searchable conversation, but they can pose signal-vs-noise issues (freelist would be a good option). There are various options for forums (e.g. discourse) and they work well for longer lived, but marginally more disposable conversations compared to mailing lists.

As long as you can pick something that the community is interested in using any option should be reasonably viable.


Most of the time through http://gitter.im


Gitter for dev communities, for broader communities a lot of projects also use Slack and Discord, perhaps Rocketchat.


IRC channels. Accept no substitutes.


I use https://gitter.im, I think it would be what you're looking for.


Would team discussions be an option? https://help.github.com/articles/about-team-discussions/

Might mean having to bring people into the project as outside collaborators though if I read that correctly.


If you’re willing to add people to your org, you can make use of the team discussions in GitHub itself. It’s like a stripped down forum and is fairly hidden in the UI, but you can get to it from your org profile (or the team page for it).


omg... I released this a few months ago...

https://www.producthunt.com/posts/elseif

without much fanfare... and I quickly moved onto another project.


That looks really nice and cleaned up, is there a GitHub URL instead? That post leads to a URL that is down.


A bigger project that I have been working for a long time is HelloBox

https://www.hellobox.co


Any project that dog-foods is a good sign, in my view. Good luck with it.


100% recommend discourse for this. It is what Hugo uses, and I find it very useful and well laid out.

Example: https://discourse.gohugo.io/


I use the free version of slack for https://github.com/nanohop/sketch-to-react-native

I mostly chose it because it was free (despite the 10k message limit - which I don't see us hitting anytime soon), and people already know how to use it. I know about the limitations and problems with it - but it was basically the easiest thing to get started.


Use Reddit! Create a public/private subreddit (whatever suits you). It's a perfect place for discussions, and you can use IFTTT to provide you with webhooks.


> It's a perfect place for discussions

Reddit is terrible for discussions. It is perfect for current, forgotten-tomorrow consumation of things.


I used to have a community that was on facebook before. What a terrible mistake it was. Besides many bad things, it is what you described. There was no way to search for anything.

Reddit isn't perfect, but it's much less intrusive than facebook and people can search for past discussions. I know it is a low bar, but then I don't have to worry about spams, registrations, etc. Plus, if I don't have time to read/deal with it today, the discussion and the person isn't gone tomorrow which chat services tend to do.


If you want serious discussion, Reddit is the worst choice.


Reddit the software seems fine. /r/rust works well enough.


There's some new thing called Spectrum that looks really interesting.

https://spectrum.chat


There used to be messaging within GitHub. You could simply message any other user. Now you have to look at someone's profile to hope to see if they have some form of contact there.

Im not sure why they removed it - they could have extended this into more discussion and community space. They say they are social, after all.


Keybase has a github integration via browser extension. Not sure how many people on github actually use keybase, but iam a fan.


Have a look at Talkyard, it's like open source Stack Exchange, + Discourse topic list, and Slack like chat topics.

https://www.talkyard.io

Yes there's GitHub login and async communication. (I'm developing it.)


Issues tagged as discussion would work, no? Many projects use the bug tracker for almost any discussion.

If you would want sth. like a mailing list, there's http://librelist.com/ .


I briefly considered Librelist, but their UI is a disaster.

To create or subscribe to list, you... send a message to the list. It's beyond me why would anyone want it like that.

I ended up using https://groups.io/ for my pet project.


Disaster is too heavy of an adjective there. You may not like it. But interacting with mailing lists using mail is common practice, possible also with mailman and majordomo, and probably with most other mailing list software. You should also be a bit nicer when talking about an open source project hosted for free for everybody.


I think some people don’t feel like it’s appropriate for asking questions. Also, you end up with a ton of open issues if you want the topics to be easy to find


There is tagging for that. Though that may end up requiring some discipline to be really effective.


I'm building an OSS thing just for that; simple, built on top of GitHub, doesn't require any hosting, has Q&A...

Shoot me an email and I should be able to direct you to the repo in the next week or two.


Is it not possible to just use GitHub? I mean, by creating a second repo which would be only for discussion, like tablesaw-support. I have no idea if is it again their ToS however.


Why do you think stack-exchange is not the right place for questions and user support ?

I'm asking because I am building a tool for tracking mentions on stack-exchange. I need your opinion. ;)


I haven’t looked in a while but I don’t believe there was a way to get notified on a mention. With a small community that would be key


A little XMPP chatroom, there's plenty of clients out there and there is a nice native Github integration (to have the PR, commits… notifications) :)


Gitter looks like what you're looking for.


Trello.

On another note, if i’ve ever seen a startup idea, this has to be one!


There is little money in this.


My favorite is gitter


Like them is my dawgs!


What about Slack?


The free plan allows you only to keep the latest 10K messages. And it tends to be messy


And (IMO) it's sooo annoying that everything is hidden behind a login screen. I usually don't signup, just to see what might be behind.

Here're open source Slack alternatives for public communities, no login screens: https://spectrum.chat and https://www.talkyard.io (I'm developing it).

(Rocket Chat & Mattermost & Zulip are other alternatives, all require login to see what's there? )


Many organization and companies don't want outsiders to see what is happening due to privacy and security issues. Anyway, there is a PR opened for Zulip which allows people to see the content of public streams without logging in. It's up to the administrators to decide which streams would be public to users which are not logged in.

https://github.com/zulip/zulip/pull/8135


Interesting to know, thanks for mentioning :- ) B.t.w. I like Zulip's threads.

A thought: What if Zulip, during installation, let the admin choose if things should be public or hidden-behind-login, by default? E.g. useful for open source projects


We're actually working on something like this in Zulip; it's advertised as "coming soon" at http://zulipchat.com/for/open-source


We moved the Open Data Kit community from Google Groups to a Discourse forum at https://forum.opendatakit.org and it's been awesome. Over the last year, we doubled in size (now up to 7,000 members and growing) and a lot of that growth has been enabled by Discourse.

We use the forum for exactly what you described, longer conversations that aren't necessarily tied to a closable issue. And we also use it for all our support requests. Handling support is great on Discourse because the new topic interface shows users (a lot of them non-technical) similar questions and it has great search and SEO.

I think for a small community, Google Groups would work, but my gut says Google Groups is not long for this world. Also, while mailing lists are workable for support, but I find them miserable (e.g., you can't move posts from one topic to another, you can't easily prevent duplication questions).

Anyway, I'd say try Discourse. And if you have any questions about started with Discourse or using it for open source projects, I'm glad to help! My handle is "yanokwa" on Gmail and HN and Twitter and GitHub and pretty much everywhere.

And I guess while I have HN's attention, I can give a quick blurb on Open Data Kit!

Open Data Kit (ODK) is a set of tools that replace paper forms. Our tools are mostly used by social good organizations to collect mission-critical data in difficult environments (e.g., collecting polio vaccination data on 1 million kids in Mogadishu [1], monitoring elections in emerging democracies [2], protecting forests in Indonesia [3]).

I love working on ODK because the project has a measurable positive impact on the world and we have a very kind and welcoming community. As one of the project founders, I'm a little biased, but if you are looking to get into open-source software, ODK is a great project to contribute to.

To get started, go to http://github.com/opendatakit, find a pinned repo, read the readme, and claim a "quick win" issue. Oh, and sign up on the forum http://forum.opendatakit.org and introduce yourself!

[1] http://www.emro.who.int/som/somalia-news/somalia-to-conduct-...

[2] https://www.youtube.com/watch?v=O-CGzo3m4PA

[3] https://www.youtube.com/watch?v=f7rJCgwV3-g


Would you pay for a service like this if it existed and worked well?

If so, please email me! I'd love to discuss the concept and may have the the time and inclination to build it if a great answer doesn't already exist.




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: