尝试自己翻译了FreeCodeCamp的文章,技术方面多认识了几种技术,文章标题:Transparency in Action Free Code Camp is Now Open Source

这是FreeCodeCamp其中一篇文章,趁着学习英文的时间,翻译这篇文章,其中讲到作者创建FCC过程,本文属于原创,第一次翻译,翻译还有诸多不足之处,请大家包含。

原文地址:https://medium.freecodecamp.com/transparency-in-action-free-code-camp-is-now-open-source-9dae1985d925?gi=a0f3f763f735#.gzz9xmlvl 

 

透明行动:Free Code Camp 现在开源了

  现在我们非常激动地宣布Free Code Camp完全开源了。你可以fork我们的代码库,用它来创建一个属于你自己的交流学习网站。如果你发现一个bug或者想到一个提升FCC的方法,你可以即刻行动,提交你的请求。

 

我们的代码

       我最初是用Ruby on Rails建立FCC的,因为用着它很舒服。但是现在很明显javscript才是未来。Node.js和Express.js这些新工具已经可以把FCC整合到一个完全javascript的栈了,确切来说,很多学校和公司正在做这件事。FCC正在帮助勤奋的人们消除杂念,集中精力于学习一个自用的工具集。如果一个代码库不支持javascript,它会发出错误,因此我们学习了全栈的javascirpt。之后我如在刀尖漫步中废除了Rails 应用,学习足够多的异步Node.js知识,来开始搭建FCC。

 

图片1:我建立FCC 0.1.0 的小办公室

 

       我评判了Meteor.js 和 Mean.js ,(在Mean.io分支出现之前这样做是正确的),甚至考虑只使用angular.js来做Google App Engine的后端。但是由于Hackathon Starter App的认证套件、集成API和本身的框架,最终我决定使用它。

       不久后,我启动了FCC,那时候里面没有超过五个编码挑战,还有一个叫HipChat 聊天室。慢慢地,人们开始访问我的网站。我很吃惊,因为大部分人都选择驻足观看。

      

图片2:从开始搭建到10周后,FCC长成这个样子

 

       FCC是我的第一个Node.js应用。我将代码展示给一位js大牛看,他翻阅我的代码库后,嚷嚷对我说,“你在想什么鬼?” 。不过老司机说FCC也不是太糟糕,毕竟它一天内打开上千个页面不崩溃。

       所以我们安装了Helmet.js来增加安全性,把API密钥放入a.nev文件中,来清理git的历史线。看,精准化的代码现在可以免费使用了。

 

我们的基础设施

       之前我们只是使用一个免费的Heroku dyno云平台,直到网站偶尔出现超过20个并发会话后,我们增至两个,需要35刀一个月。我们通过amazon S3来服务图片、视频、音乐、文档这些资产,为我们有发言权的论坛实现一个小小的AWS实例。我们每一年花费在Vimeo Pro和Screen Hero 上是240刀,一个独立的企业级Google Apps 是60刀。所有的这些基础设施,每年花费不超过2000刀。

 

我们的志愿者和训练营的指导员

       我们是一群热衷学习代码的人,我们自称“代码训练者”。其中一部分人甚至更加勤奋,因为我们志愿用自己的时间来积极改进FCC上。我们的训练营的指导员团队会逛聊天室、论坛,会尽我们最大努力欢迎新同学和回答各类代码问题。我们唯一的目标是想让更多像我们一样,用自己方式通过挑战的人加入我们,共同创建一个非营利性的投资项目,然后获得一份工作。

      

图片3:提问者们以及热心的指导员

 

       没有人会获得报酬。如果我们最终接受投资或者通过项目合作来赚钱,我们会找出一条公平、公开的方式给我们的志愿者发行股票、给他们发工资。我们大部分交流通过聊天室和频繁地组对来编程。虽然我们身处异地,但是只要有可能,我们就会见面。我们的指导员会提出新的特点和内容、讨论其优先级和细节,然后配对,开始建立。举个例子,这篇博客帖子,已经被几个辅导员编辑和校对过了。

 

我们的目标

       不到3个月的时间,我们发展到接近5000个成员。但是真正让我们自豪的是成员的质量而不是数量。将宝贵的时间投入到编码上的他们,有的是参加工作的,有的是学生,有的是孩子,有的甚至是孙子女辈的。在三周前,我们彻底颠覆我们的课程,从那以后,成百上千的人通过我们的小时挑战。我们将所有公共有用的指标放在这里。作为边注,如果你对分析匿名数据感兴趣,或者想帮助我们更好地显示它,欢迎你来推动它。

 

我们的展望

       不要期望任何形式的秘密启动仪式或者宏大的的开幕式。我们更感兴趣的是在公共场合中进步,就像互联网一样 ,然后像原子弹爆炸一样做一个爆炸性的登场。我们相信开源的副歌说的,“给予足够多的眼球,所有的错误都是肤浅的”,并且欢迎任何能让FCC更好、更有效率地学习编码的建议。

       最后,我更喜欢把FCC的哲学与Ubuntu的哲学进行比较。不是促进了互联网的Ubuntu Linux发行版,而是跟它同名的非洲南部的Ubuntu 哲学。Ubuntu是一个祖鲁语,大致意思是,“我就是我,因为我们都是”。

 

莱伊曼·古博薇,利比里亚和平活动人士和诺贝尔和平奖得主,负责最被广泛接受的Ubuntu的英文定义。

 

       FCC就是FCC,因为我们都是代码训练者。勤奋的人帮助其他人学习编程,使得我们不断进步。

   

posted @ 2016-11-06 20:08  xiang_little  阅读(413)  评论(0编辑  收藏  举报