Flarum 的故事:我為什么開發Flarum

2015-09-29 13:44:00 來源:justjavac 作者:佚名 人氣: 次閱讀 220 條評論

我叫TobyZerner,是一個22歲的澳大利亞人。去年我完成了第三年的醫學院本科學業。今年,我有了學業以外的休息時間,來從事我的一個愛好:構建簡潔的論壇軟件。這個故事...

022503_D2Jm_113490

我叫 Toby Zerner,是一個 22 歲的澳大利亞人。去年我完成了第三年的醫學院本科學業。

今年,我有了學業以外的休息時間,來從事我的一個愛好:構建簡潔的論壇軟件

這個故事是關于我為什么要做這些,以及 Flarum 的未來。

論壇軟件爛透了

在我的成長過程中,我的哥哥 Simon 教會了我編程(從某種意義上來說)。

Simon 非常聰明開朗。即使不談技術層面,雖然當時我們都知道 PHP4 面條式代碼,然而 Simon 卻能領悟到別人領悟不到的事:簡潔 Simplicity

論壇軟件在當時非常的不簡潔。即便是使用“設計”這個詞形容這些論壇,都是奢侈的。他們真的算是很粗心的迭代的產物:為了滿足一些需求,就要添加一個功能,但卻帶來了額外的復雜性。然而這個過程會重復上百次,軟件就會復雜上百倍。你無法做一個簡潔的論壇用戶——你必須是一個超能用戶,花費你寶貴的時間去適應——這簡直就是場戰斗——和這些凌亂的功能戰斗,和這些不違和的界面戰斗。

Simon 想退一步,以使論壇保持簡潔。回歸到最基本的對話。為什么我們就不能在網上與人簡簡單單的交談嗎? 所以我們就構建了 esoTalk。

我們研究了所有論壇中關于討論列表的層次結構,并交換了各自的意見。我們擺脫了識別標志,而是實現了一個強大的 gambit 搜索系統(一個簡化版的 GitHub's search tokens)。我們使用短輪詢,因此在論壇中所以人可以幾乎實時對話。esoTalk 是有別于其他論壇的,人們對此很感興趣。

esoTalk 視頻:esoTalk: a simple fast free web-forum

不幸的是,Simon 在 2009 年去世。世界失去了一位杰出的人。

這是一個悲傷的時刻,帶著對他的回憶,我竭力地繼續為完善 esoTalk 而工作。然而,我畢竟是一個年輕的開發人員,編寫的代碼不知不覺地重新發明了輪子。當我開始關注生活中的其他領域時,發現 esoTalk 已經逐漸變得陳舊。

但我沒有停止思考。

構建更好的東西

盡管 esoTalk 已經停滯,可人們仍然喜歡使用它。甚至有些人愿意贊助它,希望它進一步發展。通過所有的錯誤、教訓、迭代、和反饋……我開始堅信:人們期待好的論壇軟件,也許我有能力設計出來。

為了鍛煉我的想象力,我開始嘲笑“esoTalk 2.0”。一些審美的想法最終隨著 esoTalk 的新版本發布了。但這些設計也僅僅是頭腦風暴的一部分——而這些想法,最終導致了 Flarum 的概念版。

2013 年,在朋友 Stephen 的幫助下,我帶著 Flarum 的想法參加了我們學校的創業者競賽。首先我們開始構建一個原型,并設想一個商業模式。其次,一些現金,還有很多鼓勵性的問題:我們可以做這個嗎?

也許不是。原來,在現實世界中新的論壇軟件是很難的。我們在 Kickstarter 的競選活動 generated interest, but not traction。投資或孵化也許已經成為了一種選擇,但是我既不想放棄學醫,也不想放棄這個社區型項目的想法。

看來最好的辦法是啟動它。我還有一年的時間才能離開學校,并把它的構建過程開放。然后我可以市場化,構建一個小型的基于服務的業務。 開源第一,賺錢第二。

事實證明,你需要達到一定階段后開源協作才變得可行。這比我希望的時間要長一點。但 8 個月后我們做到了: Flarum beta 發布了。我相信它實現了一個很強的愿景,而這個愿景,是從 Simon 和我一起發布 esoTalk 第一版時就一直夢想的,如今它實現了。

Flarum 的目標是:

快速、簡單 沒有混亂,沒有膨脹,沒有復雜的依賴關系。Flarum 使用 PHP 構建,因此它很容易部署。界面使用 Mithril,它是一個高性能 JavaScript 框架。

漂亮、響應式 Flarum 由我們的設計師精心設計,它是跨平臺的、開箱即用的。界面布局使用了 LESS,所以主題風格只是小事一樁。

強大、可擴展 為了滿足您的社區需求,您可以定制、擴展和集成 Flarum。Flarum 的架構非常靈活,它擁有非常全面的 API 和文檔。

自由、開放 Flarum 基于 MIT license 發布。

讓 Flarum 更穩定

沒有任何慶功會,因為還有很多工作要做!

我從 esoTalk 學到了一件事:如果一個軟件沒有建立良好的基于擴展的生態系統,那么這個軟件必將失敗。我不打算 Flarum 犯同樣的錯誤。我的計劃是擴展市場,任何人都可以購買和出售擴展——配有簡單的安裝和更新。然而,只有 Flarum 發布了穩定版,這一切才會有可能。

與此同時,我真的不知道自己該做什么了,而 Flarum 無疑是這一事實的化身。我做了大量的開發,從 Franz Liedke 獲得了一些幫助。getting it done的精神,導致我迄今為止都忽視了編寫測試和審計性能。 沒有團隊的反饋,我創造了一些低質量的代碼和 API,而這些都需要修訂。

如今我的重點變成了:Flarum 需要你們的幫助!

beta 版的目標是讓開發人員可以從代碼庫中得到完整代碼。現在,已經激發了很多潛在的貢獻者,我們寫了許多 GitHub issues 的詳細描述。它們包含一些忠告,需要做什么和在哪里查看。看看有哪些是你想要做的!

特別是,我們想要一個關于擴展 API 的深入討論。你可以閱讀初版文檔來學習擴展是如何工作的。這里有一個在 GitHub 的問題反饋。

如果你不是一名開發人員,可以考慮捐贈。所有捐款將用于支付服務器費用和支付專用的開發時間。(如果你有興趣為開源項目做一些有償工作:告訴我們你能做什么貢獻!)

在接下來的幾個月里,讓我們慢慢地工作,以便 Flarum 順利走向穩定版。

鳴謝

在此次敘述中我談到了很多關于自己的事。但是到目前為止我們取得的所有成就,不可能沒有別人的幫助。

Franz Liedke 是 FluxBB 的開發者,在今年早些時候加入了我的團隊。他分享我的激情,超過我的才華,并一直工作至今。謝謝你!

感謝那些熱情地跟隨我一起開發的人,特別是 BerloDominionStephen。你們讓我有動力,通過你們的測試和反饋,Flarum 有了明顯的改善。

Matthew McKinlay 是我在創業競賽的導師,也已經成為了我的好朋友。他讓我有了寶貴的建議并驗證這些想法(Just Do It™)。 謝謝 Matt。

我的父母和兄弟姐妹 支持我追求我的夢想。為此我非常感激。我有一個相當 cool 的家庭。

最后,我的哥哥,Simon,他把種子種了下去,直到他生命的最后一天。Flarum 是獻給你的,我希望我已經讓你感到驕傲。

最后一段,我保留一下原文:

Finally, my brother, Simon, who planted the seed and watered it right up until his last day. Flarum is dedicated to you; I hope I have made you proud.

Flarum 是一款優雅、簡潔、強大的輕論壇軟件。地址:https://github.com/flarum/core

您可能感興趣的文章

相關文章