一次 freeCodeCamp 会议上的合照,地点:多伦多
人们花在 freeCodeCamp上的总时长已经超过了十亿分钟(相当于2000年)。换句话说,如果这时长是由一个人累积出来的话,那么他可以和耶稣共餐了。
过去的四年对于我们这个小非盈利组织和我们周围涌现的大型开发者社区来说就像是一场旋风。
我们正在帮助上百万的人学习编程,其中有数千人由此找到了他们第一个软件开发者工作。
几周前我参加了一个会议,去见我的一些偶像,其中有像Wes Bos、Scott Tolinski、Jessica和Chris Coyier这样的开发者大牛。
他们之前认为FreeCodeCamp只是个博客或者YouTube频道,完全没想到我们已经发展成了一个如此庞大的社区,对此他们感到十分的惊讶。
我很不擅长宣传FreeCodeCamp的规模,因此想写下这篇文章来作为补偿。
初来FCC的朋友,你们知道FreeCodeCamp.org的访问量比Codecademy(一个自成立到现在已集资4700万美元的在线编程学习网站)的还要多吗?
Similarweb上FreeCodeCamp.org和Codcademy.com的流量分析对比。(译者注:SimilarWeb是 免费提供网站排名和竞争性数据分析的网络平台,。其用户只需输入域名信息,就可以评估相应网站的人气,并实时监控该网站的表现。)
我们的访问量也多于Udacity(一市值十亿美元的公司)的访问量。
Similarweb上FreeCodeCamp.org和Udacity.com的流量分析对比。
请记住,FreeCodeCamp 2018年的预算费用仅为200,000美元,这与其它大型教育网站每年花的上千万美元相比微乎其微。
在这篇文章里,我会分享一些关于FreeCodeCamp全球影响力的数据,探究在众多社区志愿者参与和上千人资助下,我们是如何取得这些成绩的。
请你想象一下,如果FreeCodeCamp有更多的预算的话,会取得多大的成绩。
这里我不拐弯抹角——我们希望你成为FreeCodeCamp的资助者。
花比一份三明治的价格还少的钱,你能帮助你自己和成千上万的人学习编程。
“资助FreeCodeCamp。” “啥?你自己去资助吧” “Sudo资助FreeCodeCamp。” “好的。” (《义务三明治》——XKCD)
十亿分钟是怎么来的
FreeCodeCamp社区分布于几个平台:论坛、在线课程区、技术指南区、YouTube和Medium。
我没有拿YouTube浏览量、文章浏览量和课程完成量来进行统计,而是计去计算用户们在那些平台上所花的总时间。
Google Analytics能精确地测出这些数据。
(译者注:Google Analytics是谷歌为网站提供的数据统计服务)
但是这种测法存在两个问题:
1.很多人都用广告屏蔽器,而广告屏蔽会屏蔽Google Analytics,所以这些人的使用时长不被纳入统计数据。
2.编程项目是FreeCodeCamp中最耗时的部分,但人们通常是在Giltch、CodePen或是自己的电脑上编写他们的项目,而不是在FreeCodeCamp,所以花在编写项目上的时间也不被纳入统计数据。
由此可见,人们花在FreeCodeCamp上的时长实际上是比下面要展出的数据要大得多的,不过我还是喜欢保守一点。
过去四年有多少人使用了FreeCodeCamp
过去四年人们花在FreCodeCamp上的时长统计,单位:分钟
现在就让我们回顾FreeCodeCamp过去的几年,去了解这些数据的背景。
2015:我们开创了免费在线编程学习课程
2014年,我在我的小房间创建起FreeCodeCamp的时候,FreeCodeCamp只是哈佛和斯坦福相关课程的列表和一个群聊室。
2015开始有全新的改变,我们开设了所如今所谓的1800小时全栈开发者课程。
当时网上已有数不清的免费编程学习资源,但与此相比,FreeCodeCamp的课程有两大优势:
1.我们的课程是完全交互式的,你能用你的浏览器通过一个个编程挑战来学会编程的基础知识。
2.我们的课程是开源的,任何人都能对其改进(目前已有上千人参了与改进)。
通过开源贡献,课程的广度和功能都得到了质的飞跃。
现在我们的课程内容涵盖了从HTML、CSS、Javascript基础到一些更高级的开发工具的使用,如Node.js、React和数据库,甚至还有像无障碍、信息安全、测试框架等更深层的内容。
越来越多的人通过FreeCodeCamp来学习编程,并为他们的第一份开发者工作做准备。直至2018,已经有上千名FreeCodeCamp社友持有FreeCodeCamp的证书并正在就职软件开发者。
我们Linkedin页面上的截图
(译者注:LinkedIn中文名为领英,是全球最大职业社交网站,用户完成注册后会自动产生和带入电子名片,面向为商业人士使用。)
2015年,人们花在FreeCodeCamp上的时长为3700万分钟,相当于七十年或一个人的一生。70年前,联合国通过了《世界人权宣言》。
2016:FreeCodeCam Medium专栏和FreeCodeCamp论坛的诞生
大多数FreeCodeCamp早期的博文是我写的,但社区里有很多人也能写出质量不错的章,Medium则给了我们机会让那些文章在能同一个平台上分享。
目前已有数以百计的人在我们的Medium专栏上分享关于编程学习、计算机科学或是他们编程学习之路的文章。
最开始这些文章的编辑都是由我一个人完成的,但在编辑了上千篇文章后,我承认得去找些帮手了。
我们组建了Medium编辑团队,同时有众多志愿者参与进来,帮助提高文章的可读性。
之后我们依旧有选择性地发表文章,并且在保证高质量的前提下发表了更多的文章。
你可以在我们的Medium专栏中按话题、月份、年份来浏览FreeCodeCamp的热门文章。
已经有许多FreeCodeCamp Medium上的作者,凭借他们的文章积攒而来的名气找到了工作或接到了付费请求他们帮助的客户。
感谢那些优秀的作者和编辑,因为他们,我们的Medium专栏展成了Medium上最大的专栏,目前已拥有500,000名以上的关注者。
FreeCodeCamp社区论坛
同样,2016年我们创建了论坛,以便人们遇到问题时寻求帮助。
感谢那些经常逛论坛的热心网友,因为他们,大多数问题能在一两个小时内得到解决,这速度几乎和在我们的群聊区得到解答的速度一样快。
论坛也成为了一个能提供项目建设反馈的好地方。
“寻找发者工作”是论坛里最受欢迎的板块之一,在那里人们可以分享找工作的经验和方法,以及相互鼓励。
“寻找开发者工作”板块的截图
论坛不需要登录就能访问。大约80%的人的进论坛的时候选择不登录,他们只是想在论坛上找到想要的答案,然后继续敲他们的代码。
2016年,人们花在FreeCodeCamp上的时长为1.9亿分钟,相当于310年,这和自列支敦士登成立到现在的时间一样长。(译者注:列支敦士登是欧洲内陆国家,位于瑞士与奥地利之间,以阿尔卑斯山美丽风光、低税率和高生活水平著称。)
2017:我们创建了FreeCodeCamp技术指南区
至2017年,已经有数千人完成了FreeCodeCamp的大部分课程并找到了开发者工作。现如今他们和其他开发者一起工作,其间会经常碰到一些不熟悉的技术相关概念和术语。
他们不想花一个下午的时间浏览维基百科的脚注,他们想要快速获得足够好的答案。所以我们创建了freeCodeCamp技术指南区。
指南区提供可搜索的参考资料,旨在涵盖所有与软件开发相关的概念。
指南区的文章用语很简单,对于母语不是英语的人也很好理解,同时也很简短,足以让人在繁忙中抽身喝咖啡的时间里读一读。
FreeCodeCamp技术指南区的截图。
像FreeCodeCamp的其它内容一样,技术指南区也是开源的,开发人员正在不断扩充它的内容。
该技术指南区是连续两届黑客大会上最受欢迎的开源项目。
目前它包含了近5000篇关于各种技术和计算机科学概念的文章。
2017年,人们花在FreeCodeCamp上的时长为3.16亿分钟,大约为600年。而北京紫禁城就建于约600年前。
2018:经过4年的努力,我们的YouTube频道终于火了
从一开始我们就在YouTube上直播和上传视频了,但YouTube从未真正向别人推荐过我们的视频。
我怀疑这可能是因为我们的频道不开广告,YouTube从我们的频道赚不到钱。
不管怎么样,我很高兴YouTube给了我们一个免费的平台上传和管理我们的视频。(上传高清视频是很贵的!)
但是在今年发生了改变,FreeCodeCamp成为了增长速度最快的编程频道。
今年到目前为止,我们的频道观看时长增长了1100%。
YouTube的算法是一个黑匣子,所以我们只能猜测为什么YouTube突然开始把所有人都招来我们社区的频道。
或许是因为我们发布了一些关于Python、数据库设计、SQL和Java等主题的长而深入的教程。
又或许是因为过去四年里,我们几乎每天都在上传视频。
FreeCodeCamp频道播放列表截图
不管发生了什么,人们似乎能从我们的YouTube频道学到很多东西。因此,我们将继续做我们正在做的事情,并发布高质量的教程、谈话和编程直播。
2018年始至今,人们花在FreeCodeCamp上的上的时长为4.93亿分钟,约为937年。如果我们穿梭回这么多年以前,兴许能听到英国牛津大学的第一场讲座。
2019年的计划:支持更多语言、开发课堂模式、给各城市社区提供更好的工具。
这是个很大的计划,我觉得我们可以实现,预算足够的话。
我们的目标是拥有10,000名资助者,这能使我们的年预算由微薄的$200,000涨至更可控的$500,000。
以全球非政府组织的标准来看,这并不算多,但它能使我们帮助到更多的人,更快地扩充我们的学习资源。
以下是我们2019年的目标。
1:多国语言的FreeCodeCamp
我们已经将FreeCodeCamp的课程和技术指南翻译成了世界几种主要的语言:
-
阿拉伯语
-
中文
-
葡萄牙语
-
俄语
-
西班牙语
我们希望这些语言的FreeCodeCamp前端基于同一个数据库平行运作,我们也希望给这些语言的用户提供其单独的论坛。
这些语言拥有各自的版主团队,数百名贡献者正在改善和扩展这些翻译。
该目标达成后,地球上约80%的人可以以他们的母语免费学习编程。
并且他们不会碰到尴尬的机器翻译,因为所有的翻译都由其对应语言为母语的人审核过。
但是要达到这个目标,服务器和其维护成本会剧增,更多的资助能抵消这些花销。
2.课堂模式
freeCodeCamp有为成人学习者考虑而进行设计,我们社区人口的平均年龄是30岁。
我们收到了大量来自世界各的老师的请求,他们想要FreeCodeCamp引入他们的教学当中。
在高中、大学、职业培训中心甚至监狱,已经有数百名老师将FreeCodeCamp的教程纳入他们的教学内容。
但这对老师来说不够方便,甚至乏味。他们必须告诉他们的学生让他们把自己的freeCodeCamp档案设置为公开模式(默认情况不公开),然后手动检查学生在FreeCodeCamp的学习情况。
为了让老师更方便地使用FreeCodeCamp。我们想开发课堂模式,让教师能够分配FreeCodeCamp的部分课程,并能轻松地检查学生的学习进程。
凭借更多的资助,我们能分配出更多的资源让课堂模式在2019成为现实。
3.给城市社区提供更好的工具
FreeCodeCamp在全世界有超过两千个城市社区,其中大部分城市社区每周都会聚到一起敲代码。有的城市社区还会开会议或举办黑客马拉松。
这些城市社区是分散的,每个社区都策划活动和找赞助商的领导人。
我们想更好地支持这些社区领导人、社区成员还有他们的赞助商。
目前我们通过Facebook群组来组织这些城市社区,因为这是免费的。但Facebook的功能有限,透明度有限,也缺乏可靠的方式与社区成员取得联系。
有些城市社区使用Meetup.com,它比Facebook更加专业。但如果大规模使用,即使有非盈利机构的折扣,每年也会花费10万美元。
过去三年里,我们试验了所有可行的工具,最后发现最合适的是Facebook。
所以我们决定建造我们自己的开源工具去管理那些城市社区。这样的话各城市社区就能完全地管理他们的数据了,我们还可以根据他们需求来开发相应的功能。
建造自己的开源工具有另一个好处:其它非盈利组织用该工具能配置他们自己的服务器,以协调他们当地的分会和活动。
我们不抱任何幻想——这需消耗大量额外的开发时间,还会增加服务器成本。而更多的资助能对其提供有效的帮助。
下一个十亿分钟
希望这篇文阐明了以下几点:
1.FreeCodeCamp正在帮助数百万的人
2.以低成本高效益的方式
3.我们已经精心拟定了能帮助更多人的计划
4.但我需要你们的资助
如果有你们的帮助,我们能达到10,000名资助者的目标。
2019可能会成为FreeCodeCamp有史以来最重要的一年。
我不会说:“资助FreeCodeCamp,否则我们会永远地垮掉!”,或者其它吓人的话。
现实是:妖怪已经从瓶子里出来了,我们不会走的。我们是开源的,即便情况变得更糟糕,我也会把FreeCodeCamp当作所热爱的项目继续兼职运营下去的。(“妖怪已经从瓶子里出来了”的原句是“the genie is out of the bottle”,俗语,意思为某些已经发生了但无法改变或停止的事情,特指令人遗憾的事)
所以与其说一些悲观的话,我更想说:
我们有极好的势头,我们正在改善数百万人的生活和事业,但我们可以做得更快更好,帮助更多的人。
可以说之前从未有过像FreeCodeCamp这样的社区。我一些在金融圈的朋友曾私下告诉我说他们觉得FreeCodeCamp是“近代历史上资本效率最高的组织”。
我们有个五人小团队,他们要门写代码,要么做学习资源。用非营利组织的话说:我们100%的预算用于“项目”,没有一分钱用于“筹款”或“管理成本”。
我们在财务和运营方面一直是透明的,我们最近还获得了GuideStar.org的白金认证。(译者注:GuideStar是一个存储有大量关于非营利组织的信息数据库,是世界上最大的非营利组织信息提供站)
(译者注:该图为GuideStar官网上FreeCodeCamp页面的截图)
我们是一个拥有成千上万名开源贡献者帮助我们完成使命的活力社区。我们的5名员工最初都是freeCodeCamp高产的开源贡献者。
我们不需要花钱去招聘开发者,我们可以看到那些已经在空余时间为freeCodeCamp做贡献的人,我们会付钱让他们全职为freeCodeCamp工作。
我们在服务器方面也非常节俭。我们已经从几个服务提供者那里获得了实物赞助,并且我们已用尽可能低的成本构建了我们的服务结构体系。
FreeCodeCamp服务结构体系的示意图,该结构已由开源工具和收到的实物赞助进行了优化。
FreeCodeCamp可能会成为下一个维基百科。我们可以让技术教育大众化,就像维基百科让历史文献大众化一样。目前我们这四年的发展旅途与维基百科过去17年的发展轨迹十分接近。
不同的一点是,维基百科每年得到一亿美元的捐款,是我们每年的到的捐款的500倍。所以让我们去改变它吧。仅拥有每年$500,000的捐款(维基百科每年所得捐款的1/200),我们能极大地促进技术教育的发展。
帮助我们实现10,000名资助者的目标,建立一个你可以担负得起的免税捐赠,成为一名资助者。
再次感谢FreeCodeCamp的所有成员。
庆祝我们帮助人们学习编程的第一个十亿分钟。
让我们一起迎接下一个十亿分钟吧。