8 种在你没有时间的时候为开源做贡献的方式
贡献 开源项目

> 
> 在忙碌的生活中抽出时间回馈给你关心的项目。
> 
> 
> 


![8 ways to contribute to open source when you have no time](/data/attachment/album/201707/14/163236fdn6xb6v01ssqbqm.png "8 ways to contribute to open source when you have no time")


人们不给开源做贡献（或不能做更多贡献）的[最常见的原因](http://naramore.net/blog/why-people-don-t-contribute-to-os-projects-and-what-we-can-do-about-it)之一是缺乏时间。人艰不拆，有这么多的优先的事情争夺你有限的注意力。那么，如何才能在忙碌的生活中为你关心的开源项目抽出时间呢？


为了充分披露，我需要提醒你，我延误了把这篇文章给编辑的时间，因为我抽不出时间写它，所以是否接受我的建议，请自行承担风险。


### 找出你所关心的


贡献的第一步是弄清楚你正在做些什么。你有一个你自己的为之努力的项目吗？有没有一个你想要帮助的具体项目？或者你只是想做*某个事情*？弄清楚你正在做的事情将帮助你决定你的生活中的优先事项。


### 找出其他的方法贡献


编写新功能可能需要数小时的设计、编码和测试。这对于那种只有几分钟时间就得离开，然后再从原来的地方重新开始的情况下并不容易。如果你没有办法进行长于 30 分钟的无中断工作，当你试着完成一个大的任务时，你或许会感到沮丧。


但还有或许可以满足你的需求的其它贡献方式，可以让你利用起来空闲的时间。其中一些可以通过智能手机快速完成，这意味着人们可以避免在通勤上浪费时间，并将其用于开源贡献。以下是可以在小块时间中完成的一些事情列表：


* **Bug 分类：** 所有的 bug 报告都有必要的信息来诊断和解决它们么？它们是否妥善提交（给出正确的范围，正确的严重程度等）了么？
* **邮件列表支持：** 用户或其他贡献者在邮件列表中提出了问题？也许你可以帮忙。
* **文档修补：** 文档经常（但不总是）可以比代码用更小块的时间来处理。也许有几个地方你可以补充一下，或者也许是时候浏览一下文档并确保它们仍然准确了。
* **营销：** 在社交媒体上谈论你的项目或者社区。写一篇快速入门博文。在新闻聚合里投票和评论。


### 与你的老板交谈


你可能会认为在上班时间里你不能在开源项目上工作，但是你有*问过么*？ 特别是如果这个项目以某种方式与你的日常工作相关，那你或许可以和你的老板谈谈，让你可在工作时做出贡献。请注意，这可能存在一些知识产权问题（例如，谁拥有你在工作时间内提供的代码的权利），因此首先做一下研究并以书面形式获得授权。


### 设置最后期限


我所学到的最佳时间管理建议可以归纳为两个规则：


1. 如果要完成，它必须有一个截止日期
2. 可以更改最后期限


这篇文章有一个最后期限。它没有特别的时间敏感性，但最后期限意味着我定义了什么时候想完成它，并给编辑一个什么时候可以提交的感觉。是的，如上所述，我错过了最后期限。但你知道发生了什么事么？我设定了一个新的期限（二手才最棒！）。


如果有些事*是*时间敏感的，在你需要返工一两次时，设置最后期限也可以给你一些空间。


### 将它放到你的日程上


如果你使用日历安排你的生活，那用它安排一些时间来开展你的开源项目，可能是完成此项工作的唯一方法。你计划多少时间取决于你自己，但即使你每周只用一小时作为开源时间，这仍会给你每周一小时的开源时间。


这有一个秘密：有时候，如果你需要时间去做别的事情，或者什么都不想做，那么可以自己取消它。


### 开拓未使用的时间


你在通勤中感到无聊吗？你晚上睡觉困难么？也许你可以利用这个时间来贡献。现在我认为“每周完全投入工作 169 个小时”的生活方式是一件非常可怕的事情。也就是说，有些夜晚你不能入睡。也许你已经意识到了可以做贡献，而不是躺在床上看看你的 Twitter 上的朋友在世界的另一边做了什么（如我做的）。但是不要养成放弃睡眠的习惯。


### 停止


有时，贡献最好的方式是一点不贡献。你是一个忙碌的人，不管你是多么的棒，你不能避开你的生理和心理的需要，它们会找上你。花点时间来休息，这也许可以提高你的生产力，使你的工作更快，突然间你就有时间去做那些你一直想做的开源贡献了。


### 说“不”


我不擅长这个，所以我做的并不好。但是没有人能做到任何想做的事情。有时候，你可以做的最好的事情是停止贡献，就像以前一样，或者没有贡献（参见上文）。


几年前，我领导了 Fedora 文档团队。团队的传统是，在每次发布结束时, 领导会主动提出下台。我已经做了一两次，没有人想要替代我，所以我继续保持着这个角色。但是在我的第二或第三次发布之后，我明确表示，我不会继续担任团队领导了。我还是很喜欢这份工作，但我有一份全职的工作，而且在研究生读到一半时，我的妻子怀了我们的第一个孩子。我没有办法做到始终如一的努力，所以我退出领导了。我继续做出贡献，但是在要求较低的能力的位置中。


如果你正在努力抽出时间来满足你的义务（自我强加的或者不是），那么也许现在是重新考虑你的角色了。这对于你自己创建的或者已经大量投资的项目来说很困难，但有时你不得不这么做——为了你自己好以及项目本身。


### 其他还有什么？


你如何找到时间作出贡献？ 让我们在评论中知道。


（题图： opensource.com）




---


作者简介：


Ben Cotton - Ben Cotton 是一个培训过的气象学家和一个职业的高效计算机工程师。 Ben 在 Cycle Computing 做技术传教士。他是 Fedora 用户和贡献者，合作创办当地的一个开源集会，是一名开源倡议者和软件自由机构的支持者。他的推特 (@FunnelFiasco)




---


via: <https://opensource.com/article/17/6/find-time-contribute>


作者：[Ben Cotton](https://opensource.com/users/bcotton) 译者：[geekpi](https://github.com/geekpi) 校对：[wxy](https://github.com/wxy)


本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创编译，[Linux中国](https://linux.cn/) 荣誉推出


OK
One of the [most common reasons](http://naramore.net/blog/why-people-don-t-contribute-to-os-projects-and-what-we-can-do-about-it) people give for not contributing (or not contributing more) to open source is a lack of time. I get it; life is challenging, and there are so many priorities vying for your limited attention. So how can you find the time in your busy life to contribute to the open source projects you care about?

In the interest of full disclosure, I should warn you that I was late getting this article to the editors because I couldn't find the time to work on it. Take my advice at your own risk.

## Figure out what you care about

The first step in contributing is to figure out what exactly you're making time for. Do you have a project of your own that you want to work on? Is there a specific project that you use that you want to help with? Do you just want to do *something*? Figuring out what you're making time for will help you decide where in your life's priorities it belongs.

## Find alternate ways to contribute

Writing a new feature can take many hours of design, coding, and testing. It's not always easy to work on that for a few minutes, step away, and then pick up where you left off. If you never get more than 30 minutes of uninterrupted effort, you might find yourself pretty frustrated if you try to take on a big task.

But there are other ways to contribute that might satisfy your need to give back within the time you have available. Some of them can be done in quick spurts from a smartphone, which means you can take the time you used to spend avoiding people on your commute and put it toward your open source contributions. Here's a list of some things that can be done in small chunks:

**Bug triage:**Do all of the bug reports have the information necessary to diagnose and resolve them? Are they properly filed (to the right area, with the right severity, etc.)?**Mailing list support:**Are users or other contributors asking questions on the mailing list? Maybe you can help.**Documentation patches:**Documentation can often (but not always) be worked on in smaller chunks than code. Maybe there are a few places you can fill in. Or maybe it's time to run through the docs and make sure they're still accurate.**Marketing:**Talk about your project or community on social media. Write a quick blog post. Vote and comment on news aggregators.

## Talk to your boss

You might think you can't work on open source projects during the workday, but have you *asked*? Particularly if the project somehow relates to your day job, you might be able to sell your boss on letting you make contributions while at work. Note that there may be some intellectual property issues (e.g., who owns the rights to the code you contribute during working hours), so do your research first and get the conditions in writing.

## Set deadlines

The best time management advice I ever received can be summarized with two rules:

- If it's going to get done, it has to have a deadline
- It's okay to change a deadline

This article had a deadline. There's no particular time sensitivity to it, but a deadline meant that I defined when I wanted to get it done and gave the editors a sense of when it might be submitted. And yes, as I said above, I missed the deadline. You know what happened? I set a new deadline (second time's a charm!).

If something *is* time-sensitive, set the deadline well ahead to give yourself some space if you need to push it back a time or two.

## Put it on your calendar

If you use a calendar to schedule the rest of your life, scheduling some time to work on your open source project may be the only way to get it done. How much time you schedule is up to you, but even if you block off only one hour once a week as open source time, that still gives you an hour a week of open source time.

And here's a secret: It's okay to cancel on yourself sometimes if you need the time to do something else—or do nothing at all.

## Reclaim unused time

Are you bored on your commute? Are you having trouble falling asleep at night? Maybe you can use that time to contribute. Now I happen to think the "work 169 hours a week at full tilt" lifestyle is a terrible, terrible thing. That said, some nights you just can't fall asleep. Instead of lying in bed, seeing what your Twitter friends on the other side of the world are up to (which I do), maybe you can work on that contribution you've been meaning to get around to. Just don't make a habit out of forgoing sleep.

## Stop

Sometimes the best way to contribute is to not contribute for a little bit. You're a busy person and no matter how awesome you are, you can't avoid your physiological and psychological needs. They will catch up to you. Taking a little time to refresh yourself might improve your productivity enough that you get stuff done faster, and suddenly there's time for you to make those open source contributions you've been meaning to get around to.

## Say "no"

I am bad at this. So very bad. But none of us can do everything we'd like to do. Sometimes the best thing you can do to contribute is to stop contributing in the same way you have been—or not contribute at all (see above).

Several years ago, I led the Fedora documentation team. The team's tradition was that the leader would offer to step aside at the end of each release. I had done that a time or two and nobody stepped up, so I remained in the role. But after my second or third release, I made it clear that I would not be continuing as the team lead. I still enjoyed the work, but I was working full time, in graduate school half time, and my wife was pregnant with our first child. There was no way I could consistently give the level of effort that was required, so I stepped aside. I continued to contribute, but in a less-demanding capacity.

If you're getting to the point where you struggle to find the time to meet your obligations (self-imposed or not), then perhaps it's time to reconsider your role. This can be especially hard with a project that you founded or have made a considerable investment in. But sometimes you have to—for your own good and that of the project.

## What else?

How do you find time to make your contributions? Let us know in the comments.

## 2 Comments