「喔…親愛的,女孩子不做數學工作。」

我記得12歲的時候,我的數學老師總是在我問他“喜歡數學的人可以做什麼工作?”時那樣回答我;在很多年之後,當我12歲的女兒問我“喜歡數學是不是很奇怪?”的時候,我決定該有所行動。

那時我正要接受微軟(Microsoft)的某個工作,但因為我女兒問的問題,我發現有那樣一種未被滿足的需求,某些地方並沒有像是Digigirlz (編按:微軟針對中學女生所推出的一個科技人才種子培育計畫)這樣的專案,於是我開始盡我所能扮演一個新角色。

因為沒有現成的課程可以提供,在經過斷斷續續嘗試之後,我根據微軟的Small Basic開發了一套教育軟體,我女兒就是我的「測試員」。在任職微軟的四年期間,我負責執行美國南加州的Digigirlz專案;身為一個資深軟體開發工程師以及倡導者,我的日常工作也曾旅行世界各地教導小朋友們寫程式。我發現從高中開始還不算太晚,因為那個階段的很多孩子都已經自己決定要朝理工領域發展,特別是女孩們。

後來我離開微軟擔任顧問,與一個社工團體合作開設小朋友的Java課程,並決定把教學軟體開發成適合學校教室、而非課外活動的形式,因為只有單日的課外活動無法達到所需的影響力;但是在與老師洽談之後,他們說他們無法吸收到合格且對高中AP Java課程有興趣的孩子,而且缺少中學程度的教學軟體也是一個關鍵問題。

因此,「Teaching Kids Programming (教小朋友們寫程式,簡稱TKP)」這個計畫誕生了;該專案的主要目標是提供免費、開放源碼資源給全世界的中學老師使用,讓他們能引導10~14歲的孩子學習寫程式。TKP旨在利用Java將Seymour Papert (Logo程式語言共同發明人),以及Andrea diSessa與Hal Abelson (「Turtle Geometry-龜行幾何」作者)的工作現代化。

TKP專案的TKPJava教學軟體包含了70堂程式設計課,分成8套課程,每套課程會教1~3個核心運算概念,例如loop、conditional、event等等;該教學軟體可以在Github線上平台以*.java檔案格式下載(點此連結)。

此外TKPJava教學軟體還包括針對教師的教案撰寫以及課程螢幕截圖等內容,方便老師們備課;該教學軟體的設計是能利用社交程式設計(social coding)方法,例如成對(pair)、成群(mod)的程式設計。這套教學軟體是分等級的,並專為打好基礎的學習所設計。

TKP這個專案能夠不斷壯大,仰賴許多熱心的軟體開發工程師義工貢獻他們的私人時間,讓老師能擁有充分準備來教孩子們寫程式;如果你是在職的軟體開發工程師,知道怎麼寫程式、甚至有更多專業知識,也歡迎你成為我們訓練師資的義工,讓他們能去教小朋友──這是我們的下一代需要的模範!

如果你有興趣,請到Github下載教學軟體並試著教身邊的小朋友學習如何使用該軟體,你可能會很驚訝地發現他們學得非常快!而他們也會變成很棒的老師…像是我的女兒,她今年17歲了,已經學習了4年的TKPJava,現在也能當小老師,每年都帶領一群新入門學習的學生。

20160920 code NT02P1


本文作者Lynn Langit的17歲女兒也成為程式設計小老師

(參考原文: Why I Teach Kids to Code,by Lynn Langit;本文作者時常代表TKP在全球各地舉行的技術論壇上推廣兒童/青少年的程式設計教學)

編譯:Judith Cheng