從教育看開發者研討會:iPlayground 與會心得(上)


照片來源:iPlayground

去年十月份,我參加了一個 iOS 開發者大會,iPlayground。事過數月,拖到現在才寫心得也蠻好笑的。但原本就想做點紀錄,再經過一些反思的時間,遲來總比不來好。

基於背景和興趣,我想試著從教育與學習的面向來回顧這次的經驗。iPlayground 這類專業研討會不只是好玩,還突顯了人際互動對於學習的重要性。參加這個活動再次提醒了我,教育有很大一部份難以用科技去取代或自動化。另外,未來的「個人化學習」必需小心不要成為「孤獨化學習」。

怕篇輻過長,我會把分享拆成上下兩篇。雖然是個人感想,但如果你是軟體開發者,也許這裡有些觀察能幫助你加速提升自己的能力。如果你是體制內的教育者,不知你看了會不會有所啟發?希望大家若有什麼想法也能不吝分享。

關於 iPlayground,iOS 開發社群與我

iPlayground 是一個 iOS App 開發者的研討大會。有幾位開發者朋友們,從國外的幾個大型研討會回來後,感慨這些這麼棒的活動還要出國才能參加,便決定自己在臺灣辦一個。

在臺灣,以 iOS 為主的大型研討會很少(另參加過 iOSDC),而 iPlayground 應是第一次完全由社群成員主導籌劃的。組織團隊很有想法,他們試著集結其它研討會的經驗,擷取好的元素來融入這次活動。雖是第一次舉辦,但我覺得整體體驗很棒,偶有不順亦瑕不掩瑜。

我 2015 年開始寫 iOS,後來試著往機器學習 & 教育科技的方向發展,近兩年已經沒有在寫 App 了。不過,我還是持續注意 Apple 每年推出的新技術。這次參加 iPlayground 也是因為想瞭解 iOS 業界最近的發展。

不,其實真的說起來,會去參加的更大理由,可能是因為我仍心繫這個社群,想來和朋友同樂,一起聊技術宅的話題吧。之前全職寫 iOS 時,參加數個開發者聚會,結識了好些朋友。這個社群給我的感覺是友善且非常有凝聚力的。也許因為成員大多是 Apple 粉絲,所以倍感親切?

相信在軟體開發界,如 iOS 這樣的社群必非特例。可惜我近來用的技術類別較雜,比較沒有接觸到個別技術的相關社群,無從比較。不過可以確定的是,如果我再次專注於某個領域的開發,我會試著複製在 iOS 領域的經驗,主動投入該領域的社群。

歸屬感 (Belonging)

我很內向。我雖不畏懼表現自己,也不怎麼害羞,但與人互動會消耗我大量的精力。若是如此,為何不多享受愉悅的獨處時光,跑去參加什麼開發者聚會和 iPlayground?回想起來,可能是因為我在其中得到了歸屬感。

The ABCs of How We Learn 一書中寫到,在學習科學領域,有許多研究顯示「歸屬感」對學習有顯著的影響。歸屬感指的是一個人是否感覺被一個團體接納、肯定,並身為那團體中的一員。同時,這也關係一個人的自我認同。所以,其他的 iOS 開發者是否接納我?我能自稱是個 iOS 開發者嗎?這些問題看似與我的專業能力無關,但其實不然。

歸屬感對學習造成的影響可以從兩個方面來看。首先,歸屬感讓人更願意努力投入學習。另外,它能減少會防礙我們進步的負面思維,如自卑和疏離感。

舉例來說,假設我在寫 iOS App 時遇到一個技術難題,而我必需決定要用草率的 workaround 解決,還是試著深入探索問題核心,來找出一個比較漂亮的解法。那麼這時,如果我自認是一個貨真價實的 iOS 開發者,或是我知道在必要時,有人能助我一臂之力,那我會有更高的意願投入心力、接受挑戰,並選擇後者。而這樣的選擇,會讓我在專業上成長更快速。反之,如果我覺得自己稱不上是個 iOS 開發者,並感覺孤立無援,那我追求卓越的動力會相對薄弱。

至於減少負面思維,一個絕佳的例子是 Imposter Syndrome。Imposter Syndrome 是當你覺得其他人都遠勝於你 — 畢業於 X 大學本科系,有 Y 年經驗,開發過有名的 Z 程式 — 而在他們之中,你只是個不自量力的冒牌貨。這種認知會帶來不必要的壓力與挫折,或是令人放棄自我成長的好機會。此時若能得到同儕的接納與肯定,就會降低這類負面情緒。

整體而言,我覺得 iOS 社群的接納度很高,在其中並不難找到歸屬感。我遇到許多謙遜的資深開發者,不擺架子,樂於分享知識,也不吝談論自己的歷程和失敗。大家似乎都明白,新朋友們需要知道每個人都是這樣走來的,也都在學習,也常做蠢事。在 iPlayground,不論是議題分享中,或是在講堂外的互動,這種風氣都顯而易見。

我接下第一份 iOS 工作時,幾乎所有軟體開發的知識都是自己在網路上拼湊自學的,真的很菜。做了幾個月後,偶然參加了 iOS @ Taipei,其後就視社群參與為我的專業成長上重要的一部份。從 iPlayground 創辦人之一的 Ethan 寫的推坑文看來,我的經驗並不特殊。說起來,歸屬感不容易由自己產生,高接納度與包容度的社群也不見得會自然形成,所以這需要大家一起努力。

雙軌議程

iPlayground 為期兩天,主要場地是一大一小的會議廳/講堂,其外則有交流空間,贊助商攤位,和提供飲料的休息區。

大會的主軸是在會議廳舉辦的議題分享。主題十分多元,有許多是偏向軟體的設計模式,方法,開發或求職的經驗等等,而針對程式語言、framework 等技術性的內容倒比我預期得要少。

議題分享是雙軌同步進行,所以參加一個就會錯過另一個,但多半都會有現場錄影,可以等上線後補看。事實上,既然議題有錄影,你也可以兩個都不去,在外面跟人聊天。我感覺 iPlayground 主辦方的態度是,這不但被允許,甚至值得鼓勵。原因是在研討會交新朋友和面對面互動,可能比聽課還要有價值。

不過,大部份的參加者還是會盡量去聽議程。除了為了有興趣的主題,能現場一睹業界名人的風采其實也蠻有趣的。我自己另有個小規則,就是只要有認識的朋友上臺就去捧場。

雖然有錄影,但現場聽講顯然還是有很多益處。一方面,iPlayground 的講者都是業界朋友無償的來分享,如果能有一群友善而投入的聽眾,倒也不失為很好的鼓勵。另外,議程能讓大家有一些共同話題。你聽了哪一場?對剛才講的 testing 原則有什麼想法?有試過 Redux 架構嗎?像這樣的互動交流,能留下比聽課更深刻的印象。況且,對很多工程師來說,結識新朋友並不容易,但用一個技術話題來破冰,難度就降低許多。

Ask Speaker

為了不阻礙行程,每場分享結束後,講者會移動到會議廳外的一個 Ask Speaker 區,在這裡回答聽眾的問題。

我很喜歡這個區域的概念。講臺分享主要是單向的,且講者和聽眾之間有很大的距離。就算在現場預留問答時間,能做的互動仍很有限。在 Ask Speaker 區,講者和聽眾可以坐下來對話,讓聽眾更容易把自己的問題說清楚,講者也因此能得到即時的回饋。我想像如果我是講者,我會十分期待觀眾來分享他們聽後的感想。

比較可惜的是,就我的觀察,Ask Speaker 區的使用率偏低,可能在場地安排及說明推廣方面還有改善空間。

小結 & 待續

我有時會想,如果教育的目的之一是培養未來所需的人才,那麼透過觀察軟體工程師,也許可以帶來一些啟發。

軟體技術翻新的速度極快,所以工程師們必需為「autodidact」,善於自學的人。這群人天天都在線上找資料解決問題,並規律性的自修,以提升專業能力。許多人認為像這樣的模式,在未來會愈來愈廣泛。另外,軟體圈內還有個共識,就是工程師應該常找 side projects,即個人有興趣的小型專案,做為學習新技術和展示能力的媒介。換言之,就是 Project-Based Learning。如此說來,軟體工程師們好似走在教育改革的最前線。

雖然如此,軟體工程師並不會把學習的管道侷限在數位世界裡。如 iPlayground 這類的實體技術研習,在各個軟體領域裡都十分受歡迎。雖說主因可能是好玩、可以拓展人脈,但我想同樣不容小覻的,是因實體活動能滿足學習所需的社會要素,而對專業成長所帶來的幫助。

下一篇我想紀錄關於這次議程的個人評價,第二天的 secret party,和其它學習相關的想法。

5 thoughts on “從教育看開發者研討會:iPlayground 與會心得(上)

  1. Pingback: 從教育看開發者研討會:iPlayground 與會心得(下) | Automorphism

Leave a Reply to Paul Cancel reply

Your email address will not be published.