Requirements
- Community members can ask questions or proposed ideas, either technical or non-technical
- Searchable, structured knowledge-base
- Community members can report issues/bugs and follow progress
Types of communication
- announcements
- general questions
- technical questions
- bug reports, issues
- pull requests, contributions
Options
Chat
Chat services are generally used by distributed development teams.
Service | Pros | Cons |
---|---|---|
HipChat | Already use it Web or client-based | NCSA-internal How likely are NDS community members to be using HipChat? Manual process for approving new sign-ups |
IRC | Low-barrier Commonly used Web or client-based | Hard to use No backscrolling (if you're not present, you can miss things) |
Gitter | Anyone can join 2 weeks of backscroll Web-based Git/Docker integration | Requires Github account |
Forums/discussion groups/knowledge-sharing
Mailing lists, forums, discussion groups, and knowledge-sharing sites are intended to facilitate community knowledge-base construction.
Service | Pros | Cons |
---|---|---|
discuss@nds | Already used by NDS Easy/classic model | Requires email Not searchable |
Google groups | Supports sharing/discussions Public Widely used Can receive emails, but don't have to Searchable | Technical questions get lost No upvoting |
Confluence Questions | Great for technical questions Upvoting Searchable | NCSA-internal Not useful for general announcements or discussions |
Stackoverflow | Great for technical questions Upvoting Public Searchable | Not useful for general announcements or discussions Requires monitoring |
Bug tracking/Issues
Service | Pros | Cons |
---|---|---|
Github | We already use Github Natural workflow Publicly available | How do we integrate with JIRA for tracking? |
JIRA | Used by NCSA, so it fits our current workflow | NCSA-internal Requires an account Complex workflows |
Recommendation 1
Service | What for? | Who for? | Why |
---|---|---|---|
Git issues | Issue tracking | All stakeholders | NDS Labs is intended to be community driven, so external developers should be able to submit issues, track progress, and contribute code. Since we're using Github, this is a natural integration – and is external to NCSA. |
Google Group | Forums | All stakeholders | A Google Group would replace the function of the "discuss" mailing list. Mailing lists are inconventient, hard to search, increase email noise, etc. Google Groups are a nice alternative that are useful for all stakeholders. |
Gitter | Chat | Developers | Chat services (IRC, HipChat) are communly used for remote teams to enable fast communication. Unlike forums that might take days to receive responses, chat is for immediate needs. Gitter is nice since it's integrated with Github (requires an account) and would actually be helpful to us internally. |
Stack Overflow | Q&A | Developers | Stack overflow is great for Q&A – posting a question, usually technical, and upvoting the best answers. It is a lower priority and will be a natural progression when our user base gets big enough. (Requires no setup) |
Wiki |
Recommendation 2