開源免費 低代碼平臺開源_行動透明:免費代碼營現已開源

開源免費 低代碼平臺開源

by freeCodeCamp

通過freeCodeCamp

行動透明:免費代碼營現已開源 (Transparency in Action: Free Code Camp is Now Open Source)

We’re thrilled to announce that Free Code Camp is now fully open-source. Now you can fork our code base and use it to set up an educational community of your own. If you notice a bug or think up a way of improving Free Code Camp, you can now take action directly by submitting a pull request.

我們很高興宣布Free Code Camp現在是完全開源的 。 現在,您可以創建我們的代碼庫,并使用它來建立自己的教育社區。 如果發現錯誤或想出一種方法來改善Free Code Camp,現在可以通過提交拉取請求直接采取措施。

我們的守則 (Our Code)

I originally built Free Code Camp in Ruby on Rails, because I was comfortable with it. But it’s been clear for a while now that JavaScript is the future. New tools like Node.js and Express.js have made it possible to move to a fully JavaScript stack, and that’s precisely what lots of schools and companies are doing. A big part of Free Code Camp is eliminating noise and helping busy people focus on learning one opinionated set of tools. Since we were learning Full Stack JavaScript, a non-JavaScript codebase sent the wrong signal. So I scrapped the Rails app, learned enough asynchronous Node.js to be ‘dangerous’, and started building.

我最初在Ruby on Rails中構建了Free Code Camp,因為我對此感到滿意。 但是,很明顯,JavaScript是未來。 諸如Node.js和Express.js之類的新工具使遷移到完全JavaScript堆棧成為可能,而這正是許多學校和公司正在做的事情。 Free Code Camp的很大一部分是消除噪音,并幫助忙碌的人們專注于學習一套自以為是的工具。 由于我們正在學習Full Stack JavaScript,因此非JavaScript代碼庫發出了錯誤的信號。 因此,我廢棄了Rails應用程序,了解了足夠多的異步Node.js使其“變得危險”,然后開始構建。

The closet office where I built Free Code Camp Version 0.1.0.

我在其中建立了Free Code Camp版本0.1.0的壁櫥辦公室。

I looked at Meteor.js and Mean.js (this was right before the Mean.io fork), and even considered just using Angular.js with a Google App Engine backend. But ultimately, I decided to go with the Hackathon Starter App. With its authentication suite and API integrations, it’s practically a framework in itself.I launched Free Code Camp a few days later, with nothing more than five coding challenges and a Hipchat room. Slowly people started to come by. Miraculously, many of them stayed!

我查看了Meteor.js和Mean.js(就在Mean.io分支之前),甚至考慮僅將Angular.js與Google App Engine后端一起使用。 但最終,我決定使用Hackathon Starter App 。 憑借其身份驗證套件和API集成,它實際上本身就是一個框架。幾天后,我啟動了Free Code Camp,無非是五個編碼挑戰和一個Hipchat房間。 慢慢地人們開始過來。 奇跡般地,許多人留下了!

What Free Code Camp looked like when we launched about 10 weeks ago.

大約10周前,我們推出了Free Code Camp。

Free Code Camp was my first Node.js app. I showed the code to one experienced JavaScript developer who kept shouting “What the hell were you thinking here?” as he flitted through the codebase. As hacky as it was, he conceded that since it was serving thousands of page views a day without incident, it wasn’t a total embarrassment and I should go ahead and open source.So we installed Helmet.js for added security, moved the API keys to a .env file, and purged them from Git history. And voila, the exact same code Free Code Camp uses in production is now freely available here.

Free Code Camp是我的第一個Node.js應用程序。 我向一位經驗豐富JavaScript開發人員展示了該代碼,他不斷高喊“您在這里到底在想什么?” 當他瀏覽代碼庫時。 他坦率地承認,由于它每天可以提供數千次頁面瀏覽而沒有任何事件,所以這并不是完全的尷尬,我應該繼續開源。因此,我們安裝了Helmet.js來提高安全性,指向.env文件的API密鑰,并將其從Git歷史記錄中清除。 瞧,現在可以在這里免費獲得與Free Code Camp在生產中使用的完全相同的代碼。

我們的基礎設施 (Our Infrastructure)

We were using just one (free) Heroku dyno, but since we occasionally exceed 20 concurrent sessions, we kicked it up to two, for $35 a month. We serve assets through S3 and have a small AWS instance for our Discourse-powered forum. We pay a combined $240 per year for a Vimeo Pro account and a Screen Hero account, and $60 for a single Google Apps for Business team account. This brings the total cost of all our infrastructure to less than $2,000 per year.

我們只使用了一個(免費的)Heroku dyno,但是由于我們偶爾會超過20個并發會話,因此我們將其增加到兩個,每月35美元。 我們通過S3為資產提供服務,并為基于Discourse的論壇提供了一個小型AWS實例。 我們每年為Vimeo Pro帳戶和Screen Hero帳戶支付的費用總計為240美元,對于單個Google Apps for Business團隊帳戶則需要支付60美元。 這使我們所有基礎架構的總成本每年不到2,000美元。

我們的志愿營輔導員 (Our Volunteer Camp Counselors)

We’re a community of busy people learning to code. We call ourselves “Code Campers”. Some of us Code Campers are even busier than others, because we volunteer our time to actively improve Free Code Camp. Our team of “Camp Counselors” hangs out on our chat room and our forum. We do our best to welcome newcomers and answer various coding questions. Our single goal is to maximize the number of busy people like us who are able to work their way through our challenges, build a portfolio of projects for nonprofits, then get a coding job.

我們是一個忙碌的人們學習編碼的社區。 我們稱自己為“代碼露營者”。 我們中有些人甚至比其他人更忙,因為我們自愿花時間積極改善免費代碼營。 我們的“露營顧問”團隊在我們的聊天室和論壇中閑逛。 我們竭誠歡迎新來者并回答各種編碼問題。 我們的唯一目標是最大限度地增加像我們這樣的忙碌的人的數量,這些人能夠應對挑戰,為非營利組織構建項目組合,然后獲得編碼工作。

Some of our patient, enthusiastic Camp Counselors.

我們一些耐心,熱情的營地輔導員。

Nobody gets paid anything. If we eventually accept funding or make money through a job board, we’ll figure out a fair, transparent way to distribute equity to our volunteers or start paying them. Most of our communication takes place through our chat room and our frequent pair programming sessions. We’re geographically distributed, but we meet in person when possible. Our Camp Counselors propose new features and content, discuss the priorities and details, then pair up and start building. This blog post, for example, has been edited and improved upon by several Camp Counselors.

沒有人得到任何報酬。 如果我們最終接受資金或通過工作委員會賺錢,我們會找到一種公平,透明的方式來向志愿者分配股本或開始向他們付款。 我們大部分的交流是通過聊天室和頻繁的配對編程會議進行的。 我們地理位置分散,但在可能的情況下我們會面。 我們的營地輔導員會提出新的功能和內容,討論優先級和細節,然后配對并開始構建。 例如,此博客帖子已由多個Camp Counselors進行了編輯和改進。

我們的指標 (Our Metrics)

In less than 3 months, we’ve grown to nearly 5,000 Code Campers. But what we’re really proud of is not the quantity of our Code Campers, but the caliber of their work ethic. A bunch of people with work, school, kids — and even grandkids — are investing their precious time toward learning to code. We completely overhauled our curriculum three weeks ago, and since then, we’ve had hundreds of people work through our hour-long challenges. We’ve made all these metrics publicly available here. As a side note, if you’re interested in analyzing our (anonymized) data, or helping us better visualize it, we’d love to facilitate this.

在不到3個月的時間里,我們已經成長為將近5,000個Code Camper。 但是,我們真正引以為傲的不是Code Camper的數量,而是他們的工作道德素養。 一群有工作,學校,孩子, 甚至孫子孫女的人正將他們寶貴的時間投入到學習編碼中。 三個星期前,我們徹底改革了我們的課程,從那時起,我們已經有數百人在應對一個小時的挑戰中工作。 我們已在此處公開提供所有這些指標。 附帶說明一下,如果您有興趣分析(匿名)數據或幫助我們更好地可視化數據,我們很樂意為您提供幫助。

我們的未來 (Our Future)

Don’t expect any stealth initiatives or grand unveilings from us. We’re more interested in evolving out in the open, like the internet did, than making an explosive debut, like the atomic bomb did. We believe the Open Source refrain that “With enough eyeballs, all bugs are shallow”, and welcome any ideas you have for making Free Code Camp a better, more efficient place for busy people to learn to code.

不要期望我們有任何隱秘舉措或隆重揭幕。 與像原子彈那樣進行爆炸性首次亮相相比,我們更喜歡像互聯網那樣在公開場合發展。 我們相信開放源代碼應該避免“只要有足夠多的眼球,所有的bug都是淺薄的”,并且歡迎您提出任何使Free Code Camp成為忙碌的人們學習編碼的更好,更高效的地方的想法。

In closing, I’d like to compare Free Code Camp’s philosophy with that of Ubuntu. Not the Ubuntu Linux distribution that powers much of the internet, but its namesake, the Ubuntu philosophy of Southern Africa. Ubuntu is a Zulu word that translates roughly to “I am what I am because of who we all are.”

最后,我想將Free Code Camp的哲學與Ubuntu的哲學進行比較。 不是提供大部分Internet功能的Ubuntu Linux發行版,而是其同名的南部非洲的Ubuntu哲學。 Ubuntu是祖魯語中的一個詞,其大致翻譯為“我就是我,因為我們都是誰。”

Leymah Gbowee, the Liberian peace activist and Nobel Peace Prize laureate responsible for Ubuntu’s most widely accepted English-language definition.

利比里亞和平運動家,諾貝爾和平獎獲得者Leymah Gbowee,負責Ubuntu的最廣泛接受的英語定義。

Free Code Camp is what it is because of who our Code Campers are. Busy people helping each other learn to code. And that’s who we’ll continue to be going forward.

Free Code Camp是因為我們的Code Campers是誰。 忙碌的人們互相幫助學習編碼。 這就是我們將繼續前進的方向。

Originally published at blog.freecodecamp.com on December 29, 2014.

最初于2014年12月29日發布在blog.freecodecamp.com上。

翻譯自: https://www.freecodecamp.org/news/transparency-in-action-free-code-camp-is-now-open-source-9dae1985d925/

開源免費 低代碼平臺開源

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/news/396529.shtml
繁體地址,請注明出處:http://hk.pswp.cn/news/396529.shtml
英文地址,請注明出處:http://en.pswp.cn/news/396529.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

vc mysql init 崩潰_故障分析 | 崩潰恢復巨慢原因分析

作者:xuty本文來源:原創投稿*愛可生開源社區出品,原創內容未經授權不得隨意使用,轉載請聯系小編并注明來源。一、現象有個 MySQL 5.7 開發庫異常掛掉后,奔潰恢復一直處于如下位置,且持續了 2 小時左右才起來…

surfaceview結束后怎么處理_污泥壓濾機處理后的污泥怎么處置

在污泥處理處置中,污泥壓濾機處理污泥只是對污泥進行脫水,并沒有實現污泥資源化處置。再進行污泥“減量化、無害化、資源化”處理時,許多企業用污泥壓濾機對污泥脫水處理后就不知道怎么繼續處置了,從而使污泥餅無處可去&#xff0…

js數組詳解

1,什么是數組數組是值得有序集合,每個值叫做一個元素,而每個元素在數組中有一個位置,以數字表示,稱為索引。js的數組是無類型的,數組元素可以是任意類型,同一個數組中的不同元素可能是對象或數組…

[轉載]linux內存映射mmap原理分析

轉自:http://blog.csdn.net/yusiguyuan/article/details/23388771 內存映射,簡而言之就是將用戶空間的一段內存區域映射到內核空間,映射成功后,用戶對這段內存區域的修改可以直接反映到內核空間,同樣,內核空…

判斷一個指針有沒有free_Free Code Camp的每個人現在都有一個檔案袋

判斷一個指針有沒有freeby freeCodeCamp通過freeCodeCamp Free Code Camp的每個人現在都有一個檔案袋 (Everyone at Free Code Camp now has a Portfolio) Note: we originally published this on our now-defunct blog in January of 2015.注意:我們最初是在2015年…

冒泡、快速排序小結

1.冒泡排序 (1) 比較領近的兩個數 (2) 如果左邊的比右邊的數字大,則交換位置 (3) 向右移動一位,繼續比較相鄰的兩個數 排序示例: 一輪排序結束后,最大值的位置已經移動最右端,再次如此循環,最終經過n-1次則…

python中until函數_等待應用程序窗口:python中的pywinauto.timings.WaitUntilPasses

我試圖在pywinauto中使用waituntilpasses來給應用程序時間打開一個新窗口.我已使用SWAPY識別窗口詳細信息.為了進行測試,我手動打開了子窗口,因此WaitUntilPasses應該立即看到該窗口,但是沒有看到.語法顯示為OK,因為我可以找到并打印find_windows的輸出,如下所示:xx…

synchronized 異常_由淺入深,Java 并發編程中的 Synchronized

synchronized 作用synchronized 關鍵字是 Java 并發編程中線程同步的常用手段之一。1.1 作用:確保線程互斥的訪問同步代,鎖自動釋放,多個線程操作同個代碼塊或函數必須排隊獲得鎖,保證共享變量的修改能夠及時可見,獲得…

mysql正則通配符全解_mysql正則表達式與通配符

擴展正則表達式的一些字符是: “.”匹配任何單個的字符。 一個字符類“[...]”匹配在方括號內的任何字符。例如,“[abc]”匹配“a”、“b”或“c”。為了命名字符的一個范圍,使用一個“-”。“[a-z]”匹配任何小寫字母,而“[0-9…

dos常用文件操作命令

1、DIR 含義: 顯示指定目錄下的文件和子目錄列表 類型: 內部命令 格式: DIR[drive:][path][filename][/p][/w][/A[[:]attributes]][/O[[:]sortorder]][/S][/B][/L] 舉例: DIR DIR D:\px2 DIR D:\px2\*.txt DIR /A:D /O:D 2、COPY…

使您的Java代碼聞起來很新鮮

by Marco Massenzio由Marco Massenzio 使您的Java代碼聞起來很新鮮 (Make your Java code smell nice and fresh) A few years ago I joined a startup working on a cloud enterprise service that was originally built by an offshore team.幾年前,我加入了一家…

MySQL時間戳與日期格式的相互轉換

MySQL時間戳與日期格式的相互轉換,PHP時間戳與日期格式的相互轉換 MySQL: 獲取當前時間SELECT NOW(); // 2018/10/11 14:22:51 時間日期格式轉換成時間戳格式,UNIX_TIMESTAMP()SELECT UNIX_TIMESTAMP(NOW()); // 1539238930 時間戳格式轉換成時間日期格式…

Linux內存分配機制之伙伴系統和SLAB

轉載請注明原文地址:http://www.cnblogs.com/ygj0930/p/6539590.html 內核內存管理的一項重要工作就是如何在頻繁申請釋放內存的情況下,避免碎片的產生。這就要求內核采取靈活而恰當的內存分配策略。通常,內存分配一般有兩種情況&#xff1a…

this.$modal.confirm 自定義按鈕關閉_自定義函數,讓你玩轉Excel得心應手

讓“自動更正”輸入統一的文本,你是不是經常為輸入某些固定的文本,如《電腦報》而煩惱呢?那就往下看吧。1.執行“工具→自動更正”命令,打開“自動更正”對話框。2.在“替換”下面的方框中輸入“pcw”(也可以是其他字符,“pcw”用小寫),在“替換為”下面的方框中輸…

php mysql 排名算法_MySQL PHP:優化排名查詢和計數子查詢

這是原始數據,并希望根據得分(count(tbl_1.id))對它們進行排名.[tbl_1]id | name1 | peter2 | jane1 | peter2 | jane3 | harry3 | harry3 | harry3 | harry4 | ron因此,制作臨時表(tbl_2)來計算每個id的分數.SELECT id, name, COUNT( id ) AS scoreFROM tbl_1GROUP BY idORDER…

CCF-CSP 最大的矩形

問題描述在橫軸上放了n個相鄰的矩形,每個矩形的寬度是1,而第i(1 ≤ i ≤ n)個矩形的高度是hi。這n個矩形構成了一個直方圖。例如,下圖中六個矩形的高度就分別是3, 1, 6, 5, 2, 3。請找出能放在給定直方圖里面積最大的矩…

Stack Overflow 2016年對50,000名開發人員進行的調查得出的見解

Today, Stack Overflow released the results of their 2016 survey of more than 50,000 developers.今天,Stack Overflow發布了他們2016年對50,000多名開發人員進行的調查的結果。 I’ve combed through this big document to bring you the most surprising ins…

web管理

1.站點根目錄下查找是否被放置webshell***根據語句判斷是不是PHP***腳本# find /storage/www/ -name "*.php" | xargs grep-in --color "eval("# grep -i --include*.php -r system\s*\( /storage/www/2.統計訪問日志中來自同ip出現的次數分析盜鏈、***、機…

MySQL的主從復制云棲社區_MySQL-主從復制

前言前篇說了作為運維在數據庫塊最起碼要會兩大技能,今天來說說第二技能--主從復制隨著業務的增長,一臺數據庫服務器以滿足不了需求了,負載過重,這時候就需要減壓,實現負載均衡讀寫分離,一主一從或一主多從…

數據存儲(SharedPreferences存儲)

SharedPreferences是通過 鍵值對 的方式存儲數據SharedPreferences是通過鍵值對的方式存儲的 將數據存儲到SharedPreferences中有3種方法:1.Context類中的getSharedPreferences()方法2.Activity類中的getPreferences()方法3.PreferencesManager類中的getDefaultShar…