2015年12月24日 星期四

044-站在巨人的肩膀,也試著當別人的肩膀

學期末快到了,我們的code.org課程也即將告一段落!不過歡樂是不會終止的,思考也是。這學期上完code.org,下學期我們要來上Scratch和Arduino,也會讓學生繼續手腦並用。在code.org快結束前的最後一個課程其實蠻好玩的,因為它並不是要讓學生去過關或是偵錯,而是去觀摩、去改寫、甚至重新打造出一個程式來!


其實這個能力很重要喔!不管你以後做甚麼事情,觀察是很重要的,在觀察中找出重要資訊也是。至於在寫程式方面,多觀摩程式的寫法,思考別人為何這樣寫,也會有很多幫助,這個台大資工的老師也有專文論述,如果家長或是老師有興趣的話,也不妨看看,所以我覺得這個設計真的是太精采了~


只不過對於一個社會教育出身的老師來說,我們要的可不只如此。技術很重要,可是哩!心也是。如果你有技術,卻是自私自利,或是只求快,不去認真思考想辦法把事情做到最好的方式,那麼空有技術也很難突破人際與態度的門檻。(這個想法的形成跟我喜歡看的職人漫畫有關係,如果你想跟小孩一起探索職人的世界,我推薦我最近喜歡看的一本漫畫 BARISTA咖啡師,這是我跟我小學六年級的女兒都蠻喜歡的一本書)

基於這個思考,在講完一些故事後,我開始引導學生說:「如果你很會寫程式,有沒有可能用你這個能力做一些事情呢?」接著我就開始介紹了GitHub。我跟他們說,這個網站提供了很多的程式碼,你可以拿來參考,如果你覺得寫得很好,給他們一些鼓勵。如果你用了發現一些問題,給他們一些回饋,另外如果你覺得可以一起做點事,加入他們。如果最後你想,其實我也可以自己做一個,那.....自己開個小專案,吸引跟你對同樣問題有興趣的網友,也是件有趣的事啊!

在我們傳統的價值體系下,或許會有人說,這個事情好像蠻笨的,特別是後面那段,自己傻傻地寫程式,給別人免費用,不合邏輯啊!可是我發現學生對這種觀念接受度還蠻高的,因為在網路上分享、揪人一起完成任務是他們習以為常的事情,所以我跟他們講這個只是在強化他們這種行為。另外,多做點分享未必吃虧啊!像這一位,就是經常在GitHub發表作品,發表到被GitHub聘請去,所以做這些事的人傻嗎?那可未必,更棒的是,他們都是真心喜歡自己目前做的事情的人。既可以作喜歡做的事情,可以幫助別人,又可以增加國際能見度,增加自己謀職的資歷,天下有比這更棒的事情嗎?


講完這個後,為了讓它們與真實狀況連結,我跟他們說了一個實例。下學期我們要上Arduino,其中有一項是我們希望讓學生控制PM2.5的傳感器,了解環境變化的狀況。這樣的程式如果完全自己寫會花上很多時間,那麼......我們可以利用GitHub找找看嗎?

我去查PM2.5 Arduino的關鍵字,查到下面的結果 

後來我們再把搜尋範圍變小,就可以找到我們買的SHARP傳感器的程式

點入後會看到一些檔案,到時候便可以下載回來參考



透過這樣的一個做法,我們可以看看別人寫的程式,並且以這個人寫的東西為基礎。如果學生不具程式設計能力,那麼就把程式看懂,更改需要更改的部分,讓它們可以執行自己的需求便是。如果學生具備程式設計能力,那麼看懂並且自己想辦法重新寫過,也子可以讓自己更清楚程式語言的應用方式,對自己的能力會很有幫助。(小學生要求不多!看懂,知道一些需要控制的程序即可,重點在於程序分析)

等到有一天,你練功完成後。不要忘記,你踏過別人的肩膀前進,所以不妨也可以貢獻一下自己的肩膀,讓別人踏著你的肩膀前進,人類社會,不就是透過這樣的「以善意換取善意」來逐漸進步的嗎? ^_^





沒有留言:

張貼留言