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

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

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

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

确实,很多人都可以在 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. 洛谷 P4401 [IOI2007]Miners 矿工配餐

    题意简述 有两个矿洞,已知食物的种类(≤3)和顺序,将他们送往任一矿洞, 若一个矿洞3次食物相同,贡献1:若有2种不同食物,贡献2:若有3种不同食物,贡献3 求最大贡献 题解思路 food[i] 为当 ...

  2. 关于事务,事务的特性,spring事务的传播特性

    1.什么是事务: 事务是程序中一系列严密的操作,所有操作执行必须成功完成,否则在每个操作所做的更改将会被撤销,这也是事务的原子性(要么成功,要么失败). 2.事务特性: 事务特性分为四个:原子性(At ...

  3. 16.XML语法、CDATA、约束(DTD、Schema)讲解

    xml主要用来描述数据,比如配置文件,网络之间传输数据等,并且在android中也经常用xml来布局,,接下来便来学习xml常用的东西 1.XML语法 xml语法分为: 1.1 文档声明 必须位于文档 ...

  4. Memcached的原理分析与配置

    一.Why Memcached? • 高并发访问数据库的痛楚:死锁! • 硬盘IO之痛:本机:AspNet:HttpRuntime.Cache • 多客户端共享缓存 • Net+Memory>& ...

  5. netty无缝切换rabbitmq、activemq、rocketmq实现聊天室单聊、群聊功能

    netty的pipeline处理链上的handler:需要IdleStateHandler心跳检测channel是否有效,以及处理登录认证的UserAuthHandler和消息处理MessageHan ...

  6. 利用WxJava实现网站集成微信登录功能,核心代码竟然不超过10行

    最近网站PC端集成微信扫码登录,踩了不少坑,在此记录下实现过程和注意事项. 本文目录 一.微信开放平台操作步骤1.创建“网站应用”2.获取AppID和AppSecret二.开发指南三.开发实战1.po ...

  7. 实战jmeter入门压测接口性能

    什么是Jmeter? 是Apache组织开发的基于Java的压力测试工具. 准备工作: 一.安装配置好环境及压测工具 Jmeter下载地址:http://mirrors.tuna.tsinghua.e ...

  8. 游戏客户端面试(Egret)

    推荐阅读:  我的CSDN  我的博客园  QQ群:704621321 一.朋友面的一家公司 1.说下let,var,const.       var定义的变量,没有块的概念,可以跨块访问, 不能跨函 ...

  9. unity之初级必备知识

    C#中有两种常见类型:值类型,引用类型.值类型存放在内存中栈里,引用类型在内存中栈里存放引用,实际存放在内存中的堆里.值类型继承自System.ValueType.System.ValueType继承 ...

  10. Leetcode之二分法专题-744. 寻找比目标字母大的最小字母(Find Smallest Letter Greater Than Target)

    Leetcode之二分法专题-744. 寻找比目标字母大的最小字母(Find Smallest Letter Greater Than Target) 给定一个只包含小写字母的有序数组letters  ...