ALPHA Camp Demo day 心得報告

Fred Hung
開發者特攻隊
Published in
9 min readApr 24, 2018

距離上次發一則有關大航道計畫的前文 ALPHA Camp大航道計畫 兩個月自我盤點過了五個月,最近 Demo day 順利結束了,就留下一些感想吧。

專案啟動

我們的隊名叫做賣紅蛋,Max Hsieh李威辰和我三人暱稱的開頭。到底在賣什麼…真的是很白爛,但是隊友們好像也蠻喜歡這種痛調。

一開始完全不知道如何啟動,雖然跟 AC 開了 kick off 會議,還是摸不著頭緒。專案管理真是門學問,好在有 Max 專業老司機帶領我們快速進入狀況。以下是不負責任協作工具分享:

Github

這應該不用解釋是什麼。不過 Max 幫我們團隊建置了一個 Github 團隊帳號,讓我們三個都權限可以管理,並且事先協調好在 Pull Request 內大家互相 Code review,最後一個人就負責 merge。

Trello

專案管理使用的 Kanban Board 工具。網路上很多關於看板專案管理的文章,實際上工作沒使用過,但是我建議這種像是 Demo day 短期的專案,一開始可能還不太知道專案會長成什麼樣子,在 Backlog 先把所有需求「細節」開一張張出來,到了後期需求收斂後,其實漸漸就知道有些卡是不需要開的。

過程中想到什麼重要的功能或者 Bug 要修改,跟隊員討論一下就自己去開一張卡。另外就是測試的部分,本團的測試王 Egg 就根據大家寫完的卡去撰寫自動化測試。

Draw.io https://www.draw.io

推薦免費繪製 UML 、ERD 等圖的平台。如果專案類型是資料關聯很複雜的,ERD 一定要畫。

Zoom https://zoomnow.net/

我們都用zoom來進行每週小組視訊會議。免費帳號可以有40分鐘的視訊會議、共享桌面。

Quip https://quip.com/

本來是 AC 的同學推薦使用,我看介面不醜就拿來做些個人筆記,但經過本次專案後,才了解 Quip 的好在哪。對於遠端協作的團隊來說,如何做共筆其實是件很困難的事情。本來要使用 slack 和 google drive,但是 Quip 完全取代了他們的功能 — 支援 markdown、code block 還有試算表等等功能外,最強大的就是可以針對每一行留下 comment,大量的減少溝通和開會的時間。

缺點就是如果判定為企業使用收費蠻驚人的,但是不知道在什麼狀態下 Quip 才會判斷你是企業使用,至少我們專案結束後還沒被通知要繳錢就是了。

開發過程

這次 Demo day 專案,我們是做一個「遊戲化的程式學習平台」,有點像是一個「程式教學版的臉書」:注重在社群、人際關係的互動上面。

剛開始起跑沒多久我就發現這是個很硬的專案,原因在於這種類似社群行平台「做好是應該」,只要稍稍有個流程不對勁,就會覺得是個難用的東西。所以我們花了幾天弄出了一個功能,好像只是多加了一塊磚頭上去;而要砌出一棟房子,你需要上千塊的磚頭。

專案啟動第一週,真的有種被時間追殺的感覺。

有次壓力大到,我作夢夢到 Egg 突然說要出國念書所以 Demo day 放我們鴿子,現在想起來真的很好笑。

很幸運賣紅蛋小隊都是神隊友,大家都很認真負責、各自有不同的技能樹。這個月來我們沒有太多開發有重疊的地方,大家看到哪個部份自己想做,討論一下就著手,Max 想要做篩選系統,Egg 想要寫測試,我想要弄即時通知,在 Line 上稍微討論一下,自己在 Trello 開張票後就各自默默的做掉了,並且直接在 Quip 上留下開發這個功能的筆記。大概到第二週開始大家就很有默契地照著這個模式運作下去,我們的專案也就越來越完整。

另外也要感謝我家的神隊友(親愛的腦婆歹林),辛苦的當了一個月的偽單親,讓我能專心的寫 code。

ALPHA Camp 很明確的提出這個專案的首要目標:建置一個可以邀請的機制,基本的邀請功能我們大概1週就兜出來了,但是總覺得鳥鳥的不知道少什麼。然後校長 Bernard 在第二次 meeting 過後提供了一些很寶貴的參考資料,包括 Air bnb如何讓人與人建立起信任關係,還有遊戲化學習是怎麼一回事是怎麼一回事,提點開發一個產品需要注意的部分。

所謂的遊戲化

所以我們開發的方向就逐漸明朗:

  1. 著重在挑選對象、媒合、人與人間的互動
  2. 遊戲化設計:積分、review rating 等等

好隊友真的是會互相激勵,當你看到隊友生出一個不得了的功能,你就覺得千萬不要拖累他。Max 不斷的在順 UI/UX 的部分,掌控專案方向不至於跑歪掉,Egg 幾乎把我們主要 feature 的 testing 全部都做完了,然後開始兜一些我覺的超好用的api,麻煩的 deploy 也處理的妥當妥當,我也只能用身體(力行寫程式)來報答他們。

過了一個月,我們的一磚一瓦終於蓋得稍稍像一棟房子了(流下男兒淚)。

大神們的 Code review

圖片來源:ALPHA Camp

這次ALPHA Camp請了三個評審,ihower大神、六角學院的校長洧杰、honestbee 的帥氣工程部頭頭 Sam。他們每個人都很仔細的看我們每一組的程式碼(雖然當下我覺得很像在裸奔)、花很多時間使用我們每一組的產品,然後在 Github 的 repo 留下了很多建議和評語,覺得揪甘心。

到底有誰願意耐心地看小嫩嫩寫的 code 啊!有這種機會真的是太寶貴,以後如果去上班被前輩 code review,一定是教學夾雜髒話的…

Demo day 當天

圖片來源:ALPHA Camp

活動當天聽到大家分享這一個月的成果,還有 AC 校友們分享創業的歷程,很像是一個 Party。

我想大部分想寫程式的人,應該都不擅於表達吧,聽說 Demo day 前的兩次彩排大家都蠻慘的?神奇的是在 Demo day 當天整場看下來,我覺得所有團隊簡報的內容都超屌(真的感謝校長燃燒生命給我們這十組工程團隊簡報上的指導…)。

上台前 Egg 好像蠻緊張的(還打卡以示緊張),本人神經比較大條一點覺得還好會爆就爆啦,果真上台 Demo 的時候因為網路的關係程式就爆掉了,等待網頁回應的那十幾秒真的是我人生中最漫長的一刻 哈哈哈…

我得到了什麼

做完 Demo day 之後,我真的感激 ALPHA Camp 的夥伴爆肝舉辦這種吃力不討好的活動。

一開始覺得,誰要來看小嫩逼表演寫程式啊,這不是感覺跟高中社團成果發表一樣嗎?但是結束過後覺得真的滿懷感恩的心,AC 不是要讓我們開發一個完全創新的 Bussiness Model,也不是要我們寫出多厲害的系統,而是設定一個目標,建立一個舞台,讓大家燃燒自己的生命逼出自己的潛力,擁有一個可以實踐前幾個月學習內容的機會,最後開發一個不是照本宣科的todolist、不是每個人都做過的購物車,而是自己消化、發想、設計出來的一個作品。

而開發的過程中,ihower 的 Ruby on Rails 實戰聖經每天都要來來回回讀個幾十遍,有時候英文資料看半天,發現Ruby on Rails 實戰聖經裡面都有寫。開始自學Rails一兩年來,每次去看這個站都覺得內容實在很硬,但不知道為什麼我突然就看懂了?

因為實作上有需要,所以就要去查,越碰壁就查越多,然後學的就越來越多。真的是法喜充滿啊!所以 Demo day 超級重要啊!

「線上學習資源那麼多,其實最重要的我們能做的就是陪伴,陪伴你們成長」

Demo day 的賽後總講評,六角學院的洧杰老師在台上這樣說。

當下聽到蠻感動的。以前在教吉他的時候,網路上的免費學習資源已經非常多,那為什麼學生還要花錢來找你學?就是因為「陪伴」啊!乍聽之下很像是幹話,但事實就是這樣:有人可以自已看著 youtube 的免費教學,自己一個一個音硬練起來練到很厲害,可是絕大部分的人其實是需要陪伴的,老師為你設定 milestone,然後陪著你成長。

大航道計劃在啟航的時候其實不太順利,我當時是覺得不需要那麼快的放棄治療,因為從一開始 AC 推薦的書籍就能體會,他們真心的希望學生不是一個從程式補習班出來的碼農,而是一個可以全面思考持續進步的程式人。之後他們的確也在教材的修正和一些 office hour 上改良很多,也體會到很多部分的課程設計的用心。

一路到做完 Demo day,心中的滿足與感動不知道該如何形容。

最後附上我們的專案 Repo:ERM 暗碼局

原專案名稱是「ALPHACamp 程式學習魔獸爭霸」,後來因為要故事化,所以想了一個蠻爛的梗,用我們賣紅蛋三個人英文字首拼出來的一個故事背景,有點瞎不太想講,請自己點進去看。

也分享一下兩位可愛隊友的心得網誌

--

--

Fred Hung
開發者特攻隊

當過吉他老師和公務員,現在努力當個 1 x Web 工程師。