今天我想谈一谈,为什么我们很少去感谢开源项目维护者:

一、这样的项目我也可以做啊

“蛤?这项目对我来说也太简单了吧。”

“我一周之内就能做一个更好的版本出来。”

确实,很多人都可以在 Hackathon 或者其他小比赛,或者业余时间建一个小工具,但是维护一个项目比建立一个项目要困难得多。开源项目维护者需要做的不仅仅是写代码,更多时候还需要:

  • 写项目文档;
  • 检查 Pull Request;
  • 看看大家提的 Issue;
  • 为项目增加新功能;
  • 在 Stack Overflow 等平台回答关于项目的问题;
  • 在 QQ、微信等用户群里和用户讨论,回答问题。

一个开源项目维护者,必须一年到头无偿地做这么多复杂且繁琐的工作。

二、当我们便捷地使用开源项目时,太容易忘记项目维护者的辛苦付出了

我们一般怎么使用一个开源项目:

当我们遇到问题时,去 Google 或者百度相关的解决方案

在一些博客或者其他相关网站上进行搜索

嘿!找到了一个开源项目,点开链接,读项目的 README。安装并进行测试。哈哈哈!问题解决了

我们转而看向了遇到的下一个问题

开源项目就像水和空气一样,很多人只知道享受它带来的好处,而且习以为常!我们不会对空气或者对水说感谢,因为我们不知道那是谁造的。

但是我们知道这些非常棒的开源项目是谁创造的啊!但是我们知道这么棒的开源项目是谁在维护啊!

三、使用者认为开源项目维护者不在意别人的感谢

开源项目使用者可能会想:

“他们不需要这些,他们需要的是 pull request 和能够修复 bug 等实质性工作。”

“我想他们更喜欢收到捐款。”

但是他们真的很在意,有时候,开源项目维护者真的需要你对他说一声谢谢。当然,如果你能为项目捐款再好不过了,但是我知道的大多数开源项目维护者目的并不是赚钱。他们最终可能赚了钱,但与开发项目的动机相比,顶多算是一个副产品。

我注意到,开源项目常常比非开源项目要好。因为最出色的开发者是出于激情和利他主义来开发产品的。如果你没能力或者不想捐钱,你可以给他们写句感谢的话。

四、我们真的太“忙”了

“我们正在用双手改变世界。”

“我的项目必须在一周内启动。”

“我们每天都有数百封邮件需要回复。”

“我们只是没有时间。”

这些开源项目有更大的潜力去改变世界;或许其中的哪个项目已经改变了世界。

Instagram 使用 django 我们很多服务器都在运行着 Linux

可能没有这些开源项目,就没有我们现在的这些项目了。

希望当我们在便捷地使用开源项目的时候,能够对项目维护者表示感谢,并且尽可能地让项目维护者知道我们为什么感谢他们的付出,他们的项目怎么帮助了我们,我们这些发自内心的感谢也是维护者们继续付出的强大动力之一。

最重要的是,我们欢迎所有对维护项目感兴趣的人的加入,因为这确实是一件很棒的工作。一旦你成为了维护者,你也会在收到很多人对你付出的真诚的感谢。我建议在 GitHub 上加一个感谢的标签,不仅仅是感谢和激励维护者,更是邀请更多的人加入到其中。

五、最后的一点想法

开源项目维护者是我们交朋友的好选择,也是公司雇佣员工时的明智之选。他们有激情,愿意分享,能够坚持。他们是真正的 MVP,他们应该得到真诚的感谢

Android开发:为什么我们从来不去感谢开源项目维护者?的更多相关文章

  1. 学Android开发的人可以去的几个网站

    学Android开发的人可以去的几个网站 1.<IT蓝豹>Android开源项目分享平台国内非常好的一个Android开发者分享站,分享android所有特效,每天都有最新的Android ...

  2. Java Android 注解(Annotation) 及几个常用开源项目注解原理简析

    不少开源库(ButterKnife.Retrofit.ActiveAndroid等等)都用到了注解的方式来简化代码提高开发效率. 本文简单介绍下 Annotation 示例.概念及作用.分类.自定义. ...

  3. Android 常用炫酷控件(开源项目)git地址汇总

    第一部分 个性化控件(View) 主要介绍那些不错个性化的 View,包括 ListView.ActionBar.Menu.ViewPager.Gallery.GridView.ImageView.P ...

  4. SNF快速开发平台MVC-集成了百度开源项目echars

    百度开源项目echars图表样式非常丰富,而且开源免费.非常好.所以在我们框架当中也进行了集成echars完成图表任务. 我们进行了两次封装,利于我们开发使用.我也看到过有些架构师 按echars里的 ...

  5. Android开发——网易云音乐使用的开源组件集合

    前言 网易云音乐Android版从第一版使用到现在,全新的 Material Design 界面,更加清新.简洁.同样也是音乐播放器开发者,我们确实需要思考,相同的功能,会如何选择.感谢开源,让我们有 ...

  6. Android 开源项目维护者宣布退出

    Android开源项目(Android Open Source Project,AOSP)的长期维护者Jean-Baptiste Quéru在Google+上宣布退出,他退出AOSP项目的原因被认为与 ...

  7. 2014年国人开发的最热门的.NET开源项目 TOP 25

    原文地址:http://www.cnphp6.com/archives/72213 1 奎宇工作室 / DotNetCodes C# 一些常用的功能性代码,可以减少许多开发时间,而且类与类之间没有什么 ...

  8. [APP] Android 开发笔记 002-命令行创建默认项目结构说明

    接上节:[APP] Android 开发笔记 001 4. 默认项目结构说明: 这里我使用Sublime Text 进行加载.

  9. Android开发 无法导入ViewPagerIndicator或其他开源框架无法导入

    这个问题又花费了好长时间,其实就是很简单的问题,因为各种开源框架的库名称都叫liberary,如果上次导入其他开源框架没有更改名称的话,你再导入其他第三库的时候,系统发现重名,就提示无法导入现象. 解 ...

随机推荐

  1. 防止sql注入:替换危险字符

    在用户名或者密码框中输入“11‘ or ’1‘ = '1”时,生成的sql语句将为“selec * from userInfo where name = '11' or '1' = '1' and p ...

  2. 安装VMware14虚拟机,centos7版本的linux 软件地址

    首先下载虚拟机软件和centos7的linux系统的镜像软件系统, https://pan.baidu.com/s/1cJfzpaLwB4dfe2W8gGEAPQ 两个文件 非常好用 虚拟机安装 很简 ...

  3. 自己动手实现MQTT协议

    写在前面 前段时间弄IoT相关的东西,系统学习了一下 MQTT 协议,在此分享出来. 本文先是对 MQTT 协议做了简单的介绍:接着是对 MQTT协议的内容做了较为全面的解读:最后使用 Python ...

  4. 为何Spring MVC可获取到方法参数名,而MyBatis却不行?【享学Spring MVC】

    每篇一句 胡适:多谈些问题,少聊些主义 前言 Spring MVC和MyBatis作为当下最为流行的两个框架,大家平时开发中都在用.如果你往深了一步去思考,你应该会有这样的疑问: 在使用Spring ...

  5. Arranging Your Team HDU - 3720 【DFS】

    思路 题意:此题大意是指首先给你23个队员的信息,包括他们的名字,能力值,在赛场上的职位.然后给出几个若能满足某两个队员同时在球场上就额外加上一定的值.最后让你从23个队员中选出11个人,使得最终的v ...

  6. Console也要美颜了,来给Console添色彩

    我们在开发过程中,经常需要将不同的信息用颜色标记出来,这可以让我们快速关注到重点信息.想必大家都知道,可以通过Console. ForegroundColor设置输出文字的颜色,背景颜色可以通过Con ...

  7. Leetcode 5. Longest Palindromic Substring(最长回文子串, Manacher算法)

    Leetcode 5. Longest Palindromic Substring(最长回文子串, Manacher算法) Given a string s, find the longest pal ...

  8. 【在 Nervos CKB 上做开发】Nervos CKB 脚本编程简介[1]:验证模型

    CKB 脚本编程简介[1]: 验证模型 本文作者:Xuejie 原文链接:Introduction to CKB Script Programming 1: Validation Model 本文译者 ...

  9. CAD数据分块,偏移校准,加载到百度地图、高德地图、谷歌等地图上

    前面分享过一篇如何将CAD海量数据显示在百度地图上(百度地图Canvas实现十万CAD数据秒级加载),但是很多开发者在CAD数据提取时遇到了问题,所以接下来的文章将介绍如何将CAD数据提取. 准备软件 ...

  10. JavaScript 防抖

    JavaScript 防抖 在前端开发中会遇到一些频繁的事件触发,比如: window 的 resize.scroll mousedown.mousemove keyup.keydown...   防 ...