我一个普通程序员,光靠GitHub打赏就年入70万,

news2024/11/15 0:52:01

一个国外程序员名叫 Caleb Porzio在网上公开了自己用GitHub打赏年入70万的消息和具体做法。

在这里插入图片描述
Caleb Porzio 发推庆祝自己靠 GitHub 打赏(GitHub Sponsors)赚到了 10 万美元。
GitHub Sponsors是 GitHub 2019 年 5 月份推出的一个功能,允许开发者通过自己的项目获取报酬。
2018 年是Caleb Porzio做全职开发的最后一年,当时我的年收入大概是 9 万美元。
2019 年 1 月 11 日,我离开原来的公司开始「休假」,想要换种心情,做自己想做的一切。「休假」期间,受到这篇文章启发《Phoenix LiveView: Interactive, Real-Time Apps. No Need to Write JavaScript》(https://dockyard.com/blog/2018/12/12/phoenix-liveview-interactive-real-time-apps-no-need-to-write-javascript),发现自己也可以做出类似的成果
在这里插入图片描述
于是,他「决定开发一个类似 Laravel 的东西。我感觉这可能是个重大改变。」

现在看来,这确实改变了他的生活。然后,创建了一个非常流行的 JS 框架,叫做 AlpineJS,目前也是由我在管理和维护,做开源软件不能完全养活自己,所以他也接过一些小型的代码指导方面的需求,让 2019 全年的收入维持在一个稳定的状态。这张图是 2019 年通过自由职业方式获得的收入:
在这里插入图片描述
刚开始的这个收入,显然比作者上班时候是收入减少了 7 万美元,一路走来,有很多好心人联系作者,询问他们是否能够提供项目上的帮助。比如这种:
在这里插入图片描述

很长一段时间他没有更新 Patreon(一个众筹创作网站),那里会有一些人每个月给该网站五美元。如此也很好,但并不能环节作者的经济问题。
然后,2019 年 12 月 12 日,把项目直接托管在 GitHub 上即可。成为了 GitHub Sponsors 的一员。下面是作者的第一位打赏用户,

在这里插入图片描述
这么作者说:在开源社区里做开源软件,赚的钱比以往任何时候都多。有 535 位开发者每个月都打赏 14 美元。

赚到第一桶金,通过GitHub打赏赚钱的三个阶段:
阶段1:热心人士
最初,所有收入完全是来自那些友善热心肠的人们。和使用的总人数比,还是很少几个人打赏。
在这里插入图片描述阶段2:打赏软件
有一个很酷的主意,想要一个小小的laravel套餐,然后,他和他的兄弟 Daniel 录制了一期《No Plans To Merge》,然后发明了一个叫「打赏软件」的变现模式。

1、创建一个很棒的软件;

2、使其仅对打赏者开放,直到你积累了一定数量的打赏者;

3、然后将项目开源给全世界。

这是一种双赢。效果很好,几天之内收入就增加了 1.1 万美元。
另外一位朋友 Nuno Maduro 最近在他的 Pest 项目中复制了这一方法,同样取得了成功:
在这里插入图片描述

这种方法很棒,但是需要不断地提供新的想法,

阶段3:教学视频
大部分打赏金都是这个阶段来的,秘诀答案是:录制教学视频。构建有用的软件是一回事,但教别人怎么用完全是另一回事。尽力创建高质量的文档,但总有人需要更加高级的内容。为了满足这些需求,录了一系列教学视频。在这之后的三个月里,他的总收入从 4 万美元涨到了 10 万美元以上。
作者说:I released a free set of screencasts on the basics of using Livewire:并在文档的适当位置嵌入了这些视频的链接,以帮助大家找到它们
在这里插入图片描述
几个星期之后,又为 GitHub 打赏者专门建立了一个「私有」的视频小组:利用 GitHub 认证构建了一个 Laravel app 来调用 GitHub API,以验证用户是否为打赏者,看免费视频的人自然会遇到这些「私有」视频,如果他们喜欢前面那些免费的内容,他们就会打赏来获取后面的视频,具体做法是:每次有新特性出现,都会放出一批新视频。此外,还会给每位打赏者提供访问每节课源代码的入口。
现在有了连续的收入,可以用空出来的时间继续开发这个软件,同时放出新的视频。
作者赚钱第一桶金的心得分享:
1、做一个好的东西,
工作的人们只为高质量的软件打赏埋单,
2.构建观众
找到用户是赚钱的关键,粉丝和邮件订阅者都是潜在的挖掘对象

You can build the greatest tool on the internet, but it means nothing if no one’s paying attention to you. Building an audience is ESSENTIAL for any of this to work. Twitter followers and email subscribers are your most valuable asset. Again, no shortcuts here. Just hard work, and providing value to people publicly and consistently for a long time.

3、设置一个有效的打赏金额
金额太少,就难以形成维持生活的正向循环,The biggest mistake people make with GitHub sponsors is offering too small of a first tier.

4、给打赏等级取一个好名字
设置一个科学合理的赞助级别名称,举个例子,对于一个高级打赏等级来说,它的标签应该是「The Agency(代理)」或其他能够暗示一个公司高级应用的荣耀标签,而不是「Platinum(白金)」这种模糊的说法。

这样一来,人们看到这个标签首先想到的会是:「我的用途等级在什么层次」,而不是:「我每个月要花多少钱」。
5.谈钱不伤感情,
不要害怕谈论你的赞助以及你赚了多少钱,要为别人赚到钱感到激动和鼓舞,这才是是一个健康的心态现象。合理合法的赚钱也可以激励自己,直接告诉别人你完全依赖这笔钱生活也没什么不礼貌的,而且这笔钱帮你打造出了人们每天都在用且从中受益的软件。
6,不要因为赚了很多钱而感到内疚。
收入和劳动创作所带给别人的价值成正比,这没什么问题。

参考来源:https://calebporzio.com/i-just-hit-dollar-100000yr-on-github-sponsors-heres-how-i-did-it

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/399947.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

SpringBatch简介

参考:https://cloud.tencent.com/developer/article/1456757简介SpringBatch主要是一个轻量级的大数据量的并行处理(批处理)的框架。作用和Hadoop很相似,不过Hadoop是基于重量级的分布式环境(处理巨量数据),而SpringBatch是基于轻量的应用框架…

mac安装vue脚手架失败及解决方法

大家好,这里是 一口八宝周 👏欢迎来到我的博客 ❤️一起交流学习文章中有需要改进的地方请大佬们多多指点 谢谢 🙏最近想学前端的心又开始躁动了,于是说干就干,先搞个vue脚手架谁知道上来就失败了说说我的步骤吧&#…

2017年MathorCup数学建模A题流程工业的智能制造解题全过程文档及程序

2017年第七届MathorCup高校数学建模挑战赛 A题 流程工业的智能制造 原题再现: “中国制造 2025”是我国制造业升级的国家大战略。其技术核心是智能制造,智能化程度相当于“德国工业 4.0”水平。“中国制造 2025”的重点领域既包含重大装备的制造业&…

mybatis小demo讲解(详细demo版)

这篇是mybatis的demo演示版噢,如果要了解理论的可以参考这篇哈mybatis从入门到精通好了,我们开始咯 MyBatis小demo1.简单的mybatis小案例1. 创建项目、准备环境2. mybatis的两种实现方式2.1 映射文件Mapper.xml实现1.简单的mybatis小案例 1. 创建项目、…

ESP8266与手机App通信(STM32)

认识模块 ESP8266是一种低成本的Wi-Fi模块,可用于连接物联网设备,控制器和传感器等。它具有小巧、高度集成和低功耗的特点,因此在物联网应用中被广泛使用。ESP8266模块由Espressif Systems开发,具有单芯片的封装和多种功能&#x…

Linux--磁盘存储管理 分区工具 fdisk 了解

对于磁盘存储,既然要管理,要分区,那必然就少不了要 分区的工具对于分区工具,常用的有三个,fdisk 、gdisk、parted ~!!本次,先介绍下 fdisk 分区工具 在介绍 fdisk 工具之前&#xff…

【UE4 RTS游戏】05-自定义日期和时间

效果步骤打开项目设置,重新设置玩家状态类为“MyGameState”打开“MyGameState”,点击类设置,选中父类为“GameStateBase”接着创建一些变量:(1)“TimeUnit”,浮点型,私有&#xff0…

线程同步——管程

管程是允许线程具有互斥、等待(堵塞)某个条件为false的能力的同步结构。具有通知其他线程他们特定条件已经满足的机制。管程为线程提供了可以暂时放弃独占访问,以便在重新获得独占访问并恢复任务之前等待满足某些条件。 管程有互斥锁以及特定…

趣味三角——第15章——傅里叶定理

第15章 傅里叶定理(Fourier’s Theorem) Fourier, not being noble, could not enter the artillery, although he was a second Newton. (傅立叶出生并不高贵,因此按当时的惯例进不了炮兵部队,虽然他是第二个牛顿。) —Franois Jean Dominique Arag…

Mini Pupper在ROS中的仿真

Mini Pupper在ROS中的仿真 课程概述 在这个课程中,你将会学习Mini Pupper结合Rivz和Gazebo的实例应用。你将使用Rviz可视化机器人模型,并在Gazebo仿真环境中实现Mini Pupper的键盘移动控制,然后带着Mini Pupper在你搭建的虚拟世界中散步。 关…

dorcker与vlu靶场搭建

dorcker与vlu靶场搭建 dorcker安装 以kali linux 为例 安装必要的一些系统工具 apt update apt -y install apt-transport-https ca-certificates curl software-properties-common 添加Docker PGP key curl -fsSL https://download.docker.com/linux/debian/gpg | sudo gpg …

【JavaSE】数组的定义与使用详解

目录 1.数组的基本概念 1.1数组的好处 1.2什么是数组 1.3数组的定义及初始化 1.3.1数组的创建 1.3.2数组的初始化 1.4数组的使用 1.4.1访问数组中的元素 1.4.2遍历数组 2.数组的类型 2.1认识JVM的内存分布 2.2基本类型变量与引用类型变量 2.3认识null 3.数组的应…

(蓝桥真题)分果果(动态规划)

题目链接:P8746 [蓝桥杯 2021 省 A] 分果果 - 洛谷 | 计算机科学教育新生态 (luogu.com.cn) 样例1输入: 5 2 6 1 2 7 9 样例1输出: 0 样例2输入: 5 5 6 1 2 7 9 样例2输出: 2 分析:这道题的状态表…

第十二章 opengl之模型加载(Assimp)

OpenGLAssimp模型加载库构建Assimp网格网格渲染Assimp 我们不太能够对像是房子、汽车或者人形角色这样的复杂形状手工定义所有的顶点、法线和纹理坐标。我们要的是将这些模型(Model)导入(Import)到程序当中。模型通常都由3D艺术家在Blender、3DS Max或者Maya这样的工具中精心制…

备份时间缩短为原来 1/4,西安交大云数据中心的软件定义存储实践

XEDP 统一数据平台为西安交通大学云平台业务提供可靠的备份空间和强大的容灾能力,同时确保数据安全。西安交通大学(简称“西安交大”)是我国最早兴办、享誉海内外的著名高等学府,是教育部直属重点大学。学校现有兴庆、雁塔、曲江和…

strace 用法介绍

strace 是什么 strace 是一个可用于诊断和调试的 Linux 用户空间跟踪器。我们用它来监控用户空间进程和内核的交互,比如系统调用、信号传递、进程状态变更等。 strace 作为一种动态跟踪工具,能够帮助我们高效地定位进程和服务故障。它像是一个侦探&…

企业电子招投标采购系统源码之系统的首页设计

​​ 功能模块: 待办消息,招标公告,中标公告,信息发布 描述: 全过程数字化采购管理,打造从供应商管理到采购招投标、采购合同、采购执行的全过程数字化管理。通供应商门户具备内外协同的能力,为…

ThreadLocal解析

ThreadLocal是一个存储线程本地变量的对象,在ThreadLocal中存储的对象在其他线程中是不可见的,本文介绍ThreadLocal的原理。 1、threadLocal使用 有如下代码: Slf4j public class TestThreadLocal {public static void main(String[] args…

干货!设备管理包括哪些内容?

本文将为您介绍:1、设备管理的内容有哪些2、好用的设备管理软件; 设备管理在企业管理中非常重要:设备是企业安全生产的前提,没有安全生产,一切工作都可能是无用功; 而好的设备管理可以极大地提高生产效率…

【数据库】MySQL数据库约束(六大约束)

目录 1.数据库约束 1.1约束类型 1.2 非空约束(NOT NULL ) 1.3 唯一约束(UNIQUE) 1.4默认值约束(DEFAULT ) 1.5主键约束(PRIMARY KEY) 1.6外键约束(FOREIGN KEY &…