Skip to content

Commit c0e35dc

Browse files
committed
Merge remote-tracking branch 'upstream/gh-pages' into gh-pages
# Conflicts: # CONTRIBUTING.md
2 parents 555d8aa + d5696de commit c0e35dc

File tree

235 files changed

+2377
-5209
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

235 files changed

+2377
-5209
lines changed

.github/PULL_REQUEST_TEMPLATE.md

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,6 @@
1+
- [ ] Have you followed the [contributing guidelines](https://github.com/github/opensource.guide/blob/gh-pages/CONTRIBUTING.md)?
2+
- [ ] Have you explained what your changes do, and why they add value to the Guides?
3+
4+
**Please note: we will close your PR without comment if you do not check the boxes above and provide ALL requested information.**
5+
6+
-----

.github/stale.yml

Lines changed: 21 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,21 @@
1+
# Configuration for probot-stale - https://github.com/probot/stale
2+
3+
# Number of days of inactivity before an Issue or Pull Request becomes stale
4+
daysUntilStale: 60
5+
# Number of days of inactivity before a stale Issue or Pull Request is closed
6+
daysUntilClose: 7
7+
# Issues or Pull Requests with these labels will never be considered stale
8+
exemptLabels:
9+
- pinned
10+
- security
11+
# Label to use when marking as stale
12+
staleLabel: stale
13+
# Comment to post when marking as stale. Set to `false` to disable
14+
markComment: >
15+
This issue has been automatically marked as stale because it has not had
16+
recent activity. It will be closed if no further activity occurs. Thank you
17+
for your contributions.
18+
# Comment to post when closing a stale Issue or Pull Request. Set to `false` to disable
19+
closeComment: false
20+
# Limit to only `issues` or `pulls`
21+
# only: issues

.gitignore

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -4,8 +4,9 @@ _site/
44
.jekyll-metadata
55
.sass-cache/
66
bin
7-
node_modules
7+
test/node_modules
88
/vendor
99
Gemfile.lock
1010
css/main.scss
1111
.asset-downloads
12+
package-lock.json

.travis.yml

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -4,6 +4,7 @@ node_js:
44
- 6
55
before_install:
66
- rvm install 2.3.3
7+
- npm install -g npm@5
78
install:
89
- npm install
910
- bundle install
@@ -13,10 +14,15 @@ notifications:
1314
env:
1415
global:
1516
- NOKOGIRI_USE_SYSTEM_LIBRARIES=true
17+
addons:
18+
apt:
19+
packages:
20+
- libcurl4-openssl-dev
1621
cache:
1722
bundler: true
1823
directories:
1924
- node_modules
25+
- test/node_modules
2026
# Tell Travis to build gh-pages branch
2127
# https://docs.travis-ci.com/user/customizing-the-build#Safelisting-or-blocklisting-branches
2228
branches:

CONTRIBUTING.md

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -27,7 +27,11 @@ There are also many ways you can directly contribute to the guides (in descendin
2727
* Add stories, examples, or anecdotes that help illustrate a point
2828
* Revise language to be more approachable and friendly
2929
* [Translate guides into other languages](docs/translations.md)
30+
<<<<<<< HEAD
3031
* Propose a new guide (please open an issue to discuss before writing!)
32+
=======
33+
* Propose a new guide ([here's how](./docs/new-guides.md))
34+
>>>>>>> upstream/gh-pages
3135
3236
Interested in making a contribution? Read on!
3337

README.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -17,7 +17,7 @@ We've shared our vision and priorities for this project in our [roadmap](docs/ro
1717

1818
## Contributing
1919

20-
Our goal is for this project to reflect community best practices, so we'd love your input! Got a question or an idea? Check out our [contributing guidelines](/CONTRIBUTING.md) for ways to offer feedback and contribute.
20+
This site is powered by [Jekyll](https://jekyllrb.com/). Our goal is for this project to reflect community best practices, so we'd love your input! Got a question or an idea? Check out our [contributing guidelines](/CONTRIBUTING.md) for ways to offer feedback and contribute.
2121

2222
## Licenses
2323

_articles/en-US/best-practices.md

Lines changed: 9 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -12,6 +12,9 @@ toc:
1212
its-okay-to-hit-pause: "It’s okay to hit pause"
1313
order: 5
1414
image: /assets/images/cards/best-practices.png
15+
related:
16+
- metrics
17+
- leadership
1518
---
1619

1720
## What does it mean to be a maintainer?
@@ -64,8 +67,8 @@ Here are a few rules that are worth writing down:
6467

6568
* How a contribution is reviewed and accepted (_Do they need tests? An issue template?_)
6669
* The types of contributions you'll accept (_Do you only want help with a certain part of your code?_)
67-
* When it's appropriate to follow up (_ex. "You can expect a response from a maintainer within 7 days. If you haven't heard anything by then, feel free to ping the thread."_)
68-
* How much time you spend on the project (_ex. "We only spend about 5 hours per week on this project"_)
70+
* When it's appropriate to follow up (_for example, "You can expect a response from a maintainer within 7 days. If you haven't heard anything by then, feel free to ping the thread."_)
71+
* How much time you spend on the project (_for example, "We only spend about 5 hours per week on this project"_)
6972

7073
[Jekyll](https://github.com/jekyll/jekyll/tree/master/docs), [CocoaPods](https://github.com/CocoaPods/CocoaPods/wiki/Communication-&-Design-Rules), and [Homebrew](https://github.com/Homebrew/brew/blob/bbed7246bc5c5b7acb8c1d427d10b43e090dfd39/docs/Maintainers-Avoiding-Burnout.md) are several examples of projects with ground rules for maintainers and contributors.
7174

@@ -120,7 +123,7 @@ If you don't want to accept a contribution:
120123

121124
You shouldn't need more than 1-2 sentences to respond. For example, when a user of [celery](https://github.com/celery/celery/) reported a Windows-related error, @berkerpeksag [responded with](https://github.com/celery/celery/issues/3383):
122125

123-
![celery screenshot](/assets/images/best-practices/celery.png)
126+
![Celery screenshot](/assets/images/best-practices/celery.png)
124127

125128
If the thought of saying no terrifies you, you're not alone. As @jessfraz [put it](https://blog.jessfraz.com/post/the-art-of-closing/):
126129

@@ -237,7 +240,9 @@ There are a [variety of tools available](https://github.com/showcases/tools-for-
237240
* [mention-bot](https://github.com/facebook/mention-bot) mentions potential reviewers for pull requests
238241
* [Danger](https://github.com/danger/danger) helps automate code review
239242

240-
For bug reports and other common contributions, GitHub has [Issue Templates and Pull Request Templates](https://github.com/blog/2111-issue-and-pull-request-templates), which you can create to streamline the communication you receive. You can also set up [email filters](https://github.com/blog/2203-email-updates-about-your-own-activity) to manage your email notifications.
243+
For bug reports and other common contributions, GitHub has [Issue Templates and Pull Request Templates](https://github.com/blog/2111-issue-and-pull-request-templates), which you can create to streamline the communication you receive. @TalAter made a [Choose Your Own Adventure guide](https://www.talater.com/open-source-templates/#/) to help you write your issue and PR templates.
244+
245+
To manage your email notifications, you can set up [email filters](https://github.com/blog/2203-email-updates-about-your-own-activity) to organize by priority.
241246

242247
If you want to get a little more advanced, style guides and linters can standardize project contributions and make them easier to review and accept.
243248

_articles/en-US/building-community.md

Lines changed: 9 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -9,6 +9,9 @@ toc:
99
resolving-conflicts: "Resolving conflicts"
1010
order: 4
1111
image: /assets/images/cards/building.png
12+
related:
13+
- best-practices
14+
- coc
1215
---
1316

1417
## Setting your project up for success
@@ -21,7 +24,7 @@ A welcoming community is an investment into your project's future and reputation
2124

2225
One way to think about your project's community is through what @MikeMcQuaid calls the [contributor funnel](https://speakerdeck.com/mikemcquaid/the-open-source-contributor-funnel):
2326

24-
![contributor funnel](/assets/images/building-community/contributor_funnel_mikemcquaid.png)
27+
![Contributor funnel](/assets/images/building-community/contributor_funnel_mikemcquaid.png)
2528

2629
As you build your community, consider how someone at the top of the funnel (a potential user) might theoretically make their way to the bottom (an active maintainer). Your goal is to reduce friction at each stage of the contributor experience. When people have easy wins, they will feel incentivized to do more.
2730

@@ -30,7 +33,7 @@ Start with your documentation:
3033
* **Make it easy for someone to use your project.** [A friendly README](starting-a-project.md#writing-a-readme) and clear code examples will make it easier for anyone who lands on your project to get started.
3134
* **Clearly explain how to contribute**, using [your CONTRIBUTING file](starting-a-project.md#writing-your-contributing-guidelines) and keeping your issues up-to-date.
3235

33-
Good documentation invites people to interact with your project. Eventually, someone will open an issue or pull request. Use these interactions as opportunities to move them down the funnel.
36+
[GitHub's 2017 Open Source Survey](http://opensourcesurvey.org/2017/) showed incomplete or confusing documentation is the biggest problem for open source users. Good documentation invites people to interact with your project. Eventually, someone will open an issue or pull request. Use these interactions as opportunities to move them down the funnel.
3437

3538
* **When someone new lands on your project, thank them for their interest!** It only takes one negative experience to make someone not want to come back.
3639
* **Be responsive.** If you don't respond to their issue for a month, chances are, they've already forgotten about your project.
@@ -81,7 +84,7 @@ Try to be responsive when someone files an issue, submits a pull request, or ask
8184

8285
Even if you can't review the request immediately, acknowledging it early helps increase engagement. Here's how @tdreyno responded to a pull request on [Middleman](https://github.com/middleman/middleman/pull/1466):
8386

84-
![middleman pull request](/assets/images/building-community/middleman_pr.png)
87+
![Middleman pull request](/assets/images/building-community/middleman_pr.png)
8588

8689
[A Mozilla study found that](https://docs.google.com/presentation/d/1hsJLv1ieSqtXBzd5YZusY-mB8e1VJzaeOmh8Q4VeMio/edit#slide=id.g43d857af8_0177) contributors who received code reviews within 48 hours had a much higher rate of return and repeat contribution.
8790

@@ -131,7 +134,7 @@ Good documentation only becomes more important as your community grows. Casual c
131134

132135
In your CONTRIBUTING file, explicitly tell new contributors how to get started. You may even want to make a dedicated section for this purpose. [Django](https://github.com/django/django), for example, has a special landing page to welcome new contributors.
133136

134-
![django new contributors page](/assets/images/building-community/django_new_contributors.png)
137+
![Django new contributors page](/assets/images/building-community/django_new_contributors.png)
135138

136139
In your issue queue, label bugs that are suitable for different types of contributors: for example, [_"first timers only"_](https://medium.com/@kentcdodds/first-timers-only-78281ea47455#.g1k01jy05), _"good first bug"_, or _"documentation"_. [These labels](https://github.com/librariesio/libraries.io/blob/6afea1a3354aef4672d9b3a9fc4cc308d60020c8/app/models/github_issue.rb#L8-L14) make it easy for someone new to your project to quickly scan your issues and get started.
137140

@@ -159,11 +162,11 @@ See if you can find ways to share ownership with your community as much as possi
159162

160163
* **Resist fixing easy (non-critical) bugs.** Instead, use them as opportunities to recruit new contributors, or mentor someone who'd like to contribute. It may seem unnatural at first, but your investment will pay off over time. For example, @michaeljoseph asked a contributor to submit a pull request on a [Cookiecutter](https://github.com/audreyr/cookiecutter) issue below, rather than fix it himself.
161164

162-
![cookiecutter issue](/assets/images/building-community/cookiecutter_submit_pr.png)
165+
![Cookiecutter issue](/assets/images/building-community/cookiecutter_submit_pr.png)
163166

164167
* **Start a CONTRIBUTORS or AUTHORS file in your project** that lists everyone who's contributed to your project, like [Sinatra](https://github.com/sinatra/sinatra/blob/master/AUTHORS.md) does.
165168

166-
* If you've got a sizeable community, **send out a newsletter or write a blog post** thanking contributors. Rust's [This Week in Rust](https://this-week-in-rust.org/) and Hoodie's [Shoutouts](http://hood.ie/blog/shoutouts-week-24.html) are two good examples.
169+
* If you've got a sizable community, **send out a newsletter or write a blog post** thanking contributors. Rust's [This Week in Rust](https://this-week-in-rust.org/) and Hoodie's [Shoutouts](http://hood.ie/blog/shoutouts-week-24.html) are two good examples.
167170

168171
* **Give every contributor commit access.** @felixge found that this made people [more excited to polish their patches](http://felixge.de/2013/03/11/the-pull-request-hack.html), and he even found new maintainers for projects that he hadn't worked on in awhile.
169172

_articles/en-US/code-of-conduct.md

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -10,6 +10,9 @@ toc:
1010
enforcing-your-code-of-conduct: "Enforcing your code of conduct"
1111
order: 8
1212
image: /assets/images/cards/coc.png
13+
related:
14+
- building
15+
- leadership
1316
---
1417

1518
## Why do I need a code of conduct?
@@ -35,7 +38,7 @@ Wherever you can, use prior art. The [Contributor Covenant](http://contributor-c
3538

3639
The [Django Code of Conduct](https://www.djangoproject.com/conduct/) and the [Citizen Code of Conduct](http://citizencodeofconduct.org/) are also two good code of conduct examples.
3740

38-
Place a CODE_OF_CONDUCT file in your project's root directory, and link to it from your README, so it's visible to your community.
41+
Place a CODE_OF_CONDUCT file in your project's root directory, and make it visible to your community by linking it from your CONTRIBUTING or README file.
3942

4043
## Deciding how you'll enforce your code of conduct
4144

_articles/en-US/finding-users.md

Lines changed: 8 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
---
22
locale: en-US
3-
title: Finding Users For Your Project
3+
title: Finding Users for Your Project
44
description: Help your open source project grow by getting it in the hands of happy users.
55
class: finding
66
toc:
@@ -12,6 +12,9 @@ toc:
1212
build-a-reputation: "Build a reputation"
1313
order: 3
1414
image: /assets/images/cards/finding.png
15+
related:
16+
- beginners
17+
- building
1518
---
1619

1720
## Spreading the word
@@ -28,7 +31,7 @@ Remember that people get involved as users, and eventually contributors, because
2831

2932
For example, @robb uses code examples to clearly communicate why his project, [Cartography](https://github.com/robb/Cartography), is useful:
3033

31-
![cartography readme](/assets/images/finding-users/cartography.jpg)
34+
![Cartography README](/assets/images/finding-users/cartography.jpg)
3235

3336
For a deeper diver into messaging, check out Mozilla's ["Personas and Pathways"](http://mozillascience.github.io/working-open-workshop/personas_pathways/) exercise for developing user personas.
3437

@@ -61,15 +64,15 @@ If you don't wish to set up these channels for your project yet, promote your ow
6164

6265
If your project is hosted on GitHub, you can use [GitHub Pages](https://pages.github.com/) to easily make a website. [Yeoman](http://yeoman.io/), [Vagrant](https://www.vagrantup.com/), and [Middleman](https://middlemanapp.com/) are [a few examples](https://github.com/showcases/github-pages-examples) of excellent, comprehensive websites.
6366

64-
![vagrant homepage](/assets/images/finding-users/vagrant_homepage.png)
67+
![Vagrant homepage](/assets/images/finding-users/vagrant_homepage.png)
6568

6669
Now that you have a message for your project, and an easy way for people to find your project, let's get out there and talk to your audience!
6770

6871
## Go where your project's audience is (online)
6972

7073
Online outreach is a great way to share and spread the word quickly. Using online channels, you have the potential to reach a very wide audience.
7174

72-
Take advantage of existing online communities and platforms to reach your audience. If your open source project is a software project, you can probably find your audience on [Stack Overflow](http://stackoverflow.com/), [reddit](http://www.reddit.com), [Hacker News](https://news.ycombinator.com/), or [Quora](https://www.quora.com/). Find the channels where you think people will most benefit from or be excited about your work.
75+
Take advantage of existing online communities and platforms to reach your audience. If your open source project is a software project, you can probably find your audience on [Stack Overflow](http://stackoverflow.com/), [Reddit](http://www.reddit.com), [Hacker News](https://news.ycombinator.com/), or [Quora](https://www.quora.com/). Find the channels where you think people will most benefit from or be excited about your work.
7376

7477
<aside markdown="1" class="pquote">
7578
<img src="https://avatars1.githubusercontent.com/u/169328?v=3&s=400" class="pquote-avatar" alt="avatar">
@@ -91,7 +94,7 @@ If nobody pays attention or responds to your initial outreach, don't get discour
9194

9295
## Go where your project's audience is (offline)
9396

94-
![public speaking](/assets/images/finding-users/public_speaking.jpg)
97+
![Public speaking](/assets/images/finding-users/public_speaking.jpg)
9598

9699
Offline events are a popular way to promote new projects. It's a great way to reach an engaged audience and build deeper human connections, especially if you are interested in reaching developers.
97100

0 commit comments

Comments
 (0)