保持开源项目健康运行并减少压力的10件事

开发 项目管理
开源项目的工作是非常有意义的,它也是非常紧张。我知道这里有些事情看起来有点过分,但我很重视我的健康。我希望你看完这些方法后会让你重新思考你的工作,你的开源项目,你如何维护。我们都是热爱科技的人。下次见!

在2017的头几天,我开始研究我***的开源项目。它的设计和构建,是用来解决我的一个业务问题。该项目被称为bootparts,它的用途是简化网站建设的过程。

这不是我***次进入编码世界。这些年来,我以不同的方式为不同的项目做出了贡献。然而,这一次我负责一切事情。这给了我额外的压力。我不喜欢压力。但是与其简单地忽略它,我决定以健康的态度去管理和处理压力,下面是我怎么做的方法:

[[182499]]

(1)我决定什么时候开始这个项目

我从开源社区听到***的抱怨之一是,人们既期望维护人员夜以继日地工作。同时人们又对为了修复bug和极端情况下 而长时间的无薪工作行为感到羞愧。这容易造成工作倦怠并且伤害到整个团队的积极性。

从***天开始,我决定只在我想要的时候做这个项目。如果有人需要添加一些东西到项目里可以组队自己添加或付钱给我(Yelluw)来添加。我不反对个性需求。我反对的是所有开源工作都是免费的(如啤酒)。通过限制什么时候在项目工作,我减少压力的量。任何外来者的无理期望都是被这个规则简单处理掉的。

(2)休息

休息很重要。当你在一个项目上工作时,更是如此。我知道这对有些人来说是很难,但是工作过多会降低产量和质量。休息让我考虑实施并提出更好的解决方案。这也可以让我的思绪自由发散地去想想其他的代码。过分集中于一个代码往往是很累人的。

我的经验法则是,每两个星期的工作,我休息时间不少于连续三天。休息期间不写代码。

(3)提早设定期望

从一开始就设定期望,人们就不能让你做你不想做的事情。对我来说,期望很简单:

  • 我不会提供支持。
  • 我只会修复提出来的重要的错误代码(他们影响我或我的付费客户)。
  • 我不会接受贡献。
  • 我不会接受捐款。

这四个明确的期望赶走了人们。我确实失去了一些善意的开发商的兴趣,但这是付出代价的安心。

(4)从一开始就写文档

这很简单,但是有效。我写项目文档,来减少问题的数量和支持的要求。这一课是多年前学的。没有写文档的代码意味着其他开发者会在工作期间打扰我问我,我认为是愚蠢的问题。原来他们不是愚蠢的问题。我才是愚蠢的那一个–没有记录代码使实施变得简单。现在我从一开始就记录,并确保得到反馈的文件。

(5)迅速关闭问题

如果我不打算处理这些问题,就没有意义了。眼不见心不烦。

(6)不接受大家的捐款

并不是每个人都适合这个项目。我们可能无法合作。人们往往认为项目维护者都张开双臂迎接他们的贡献。不,一点也不。由我来决定你的贡献是否符合一般的项目路线图。不添加任何额外的工作开销。正确记录。这似乎太苛刻了吗?是的,这是严酷的。但它对我有用。我不想花我的时间处理BS。我就想写代码,然后得到报酬而已。

(7)不接受每个人的反馈

原来有大量的不良反馈。人们倾向于给予反馈但又不需要花时间去理解项目的背景。然而,每个项目都有它开发的上下文。没有它的反馈(建议)是垃圾。曾经有人告诉我,我应该解决这个问题,因为它使项目无法使用(虽然我自己在生产中就使用它)。有些意见就像混蛋。你会经常会遇到一些。学会恰当地处理它们吧。

(8)定义成功

这就是一些人失去动力的所在。拥有一个人们认为成功的项目需要花费大量的时间和精力。我不在乎人们是否认为这个项目是成功的,因为我定义了成功意味着什么。这个项目成功吗?对!它已经节省了我的时间和精力。但这不是巧合,该项目的成功是从一开始就定义为:如果我能减少我为客户在网站上工作的时间,这个项目将是成功的。成功不是建立在一些虚荣的基础上,就像它变得多么受欢迎一样。它是基于它对我日常生活的影响。成功的定义是什么,你永远不要让任何人说服你。

(9)我玩得很开心

我认为编码是有趣的(在大多数情况下)。有乐趣意味着我喜欢工作。即使我不太喜欢这样做的想法。

(10)收获

我们都会犯错。我发出的***个版本有一个大错误!但我发现它并从错误中学习。学习也意味着我不会为错误而感到羞愧。不,这意味着我会把错误当作生命的方式来指明我下一步需要学的东西。

结论

开源项目的工作是非常有意义的,它也是非常紧张。我知道这里有些事情看起来有点过分,但我很重视我的健康。我希望你看完这些方法后会让你重新思考你的工作,你的开源项目,你如何维护。我们都是热爱科技的人。下次见!

责任编辑:张燕妮 来源: 码农网
相关推荐

2015-05-13 09:21:27

开源项目管理项目管理

2012-09-24 09:42:26

开源地理空间软件

2020-05-08 15:30:42

PostgreSQL数据库数据

2020-03-08 21:17:45

Docker容器

2016-11-17 08:25:03

CentOS内核服务器

2010-11-01 11:23:16

2022-02-28 15:28:43

开源云时代软件

2022-02-23 11:19:14

开源软件软件开发

2018-08-01 17:39:17

LoRaWANNB-IoTIoT

2021-06-11 10:03:34

数据泄露网络安全网络攻击

2011-08-11 10:47:23

2013-11-08 10:42:31

Ubuntu 13.1

2012-07-22 15:22:17

加班

2009-09-29 13:25:04

Ubuntu操作系统linux

2011-05-26 11:13:36

Flex

2020-06-16 09:13:27

数据科学数据大数据

2009-04-17 09:32:35

IE微软浏览器

2010-03-01 10:20:27

Flex

2010-07-28 14:21:43

Flex

2019-08-02 15:50:38

点赞
收藏

51CTO技术栈公众号