2016年1月25日 星期一

「Coding for Fun」快樂學程式

「當你學會閱讀,你便能藉著閱讀學習更多知識,程式設計也是一樣的道理;如果你會撰寫程式,你能透過程式語言學到的事物將更為多樣」
- MIT 多媒體實驗室 米切爾.瑞斯尼克

什麼是 Coding for Fun?

Kids Coding Studio 建構孩子學習「程式設計」的第一哩路。無論城市或偏鄉,每個孩子都有機會,無壓力、快樂地學會新世紀的溝通語言「程式語言」。

       服務對象

對於電腦操作,以及文字理解具備基礎能力的學生。建議國小五年級以上自學,國小四年級以下親子共學。如果老師願意採用,我們提供「教學指導手冊」與相關資料,請參閱網頁

為什麼學 Scratch?

Scratch 是美國麻省理工學院媒體實驗室(MIT Media Lab)發展的一套「程式積木」,適合 8 歲以上小孩。像玩積木一樣,只要將「程式積木」做堆疊與組合,就能創造出動畫與遊戲。它的核心概念是為孩子設計一套利用「電腦運算」來實現「創意」的工具 :
  • 低門檻,容易學(low floor)
  • 可以創造出複雜的作品(high ceiling)
  • 支援廣泛、多樣性的創意(wide walls)

課程特色

Coding for Fun 教材是根據 ScratchEd 在 2010 年與 2014 年所發表的教材「Creative Computing」所改寫,融合 Kids Coding Stduio 的教學經驗 (請參考部落格),將課程轉化為線上教材。讓好的教材不受老師、地域的限制,無遠弗屆。
  • 100%影音教學與引導
  • 以 Scratch 為創作工具
  • 在探索中學習
  • 在創作中學習
  • 在解決問題中學習
  • 啟動學習動機
  • 增進自學能力

課程總覽


課程需求

桌上型電腦或筆記型電腦
  • Windows/OS X/Linux
  • 麥克風
  • 喇叭/耳機
  • 攝影機
  • 可以連上網際網路

課程使用方式


關於我們

課程網站:http://coding4fun.tw
email:coding4fun.tw@gmail.com

2016年1月14日 星期四

我們規劃的下一步

我們的孩子被考試綁架了,當然這跟教育制度有關係。

根據一般的國中考試制度(每 6 ~ 7 周段考一次),老師不是在趕進度,就是拼命複習考試內容。孩子只能戰戰兢兢、努力以對。如果花兩週來準備考試,剩下能探索自我的時間只剩下 4 ~ 5 週。

所以初期我們推動 Udacity CS101 的課程就發生這樣的問題。學生去準備考試了,兩週後回來又要花兩週把考試前的內容「撿」回來。來來去去,我覺得家長浪費太多學費。

後來就不以 Udacity CS101 課程為首要課程,而是以「寒暑假」集中式的「 Python 初級課程」來取代,將寫程式這件事「刻」到學生的腦海與行為裡。

初學者要跨進「程式設計」,其實要解決的都是小問題,卻是讓孩子卻步的大原因。但是老師必須為此花許多體力,因為每個學生雖然做翻轉學習,卻得到類似家教的方式。

規劃的下一步

為了再幫 Kids Coding Studio 省更多力氣,我們「規劃」「 Python 簡易入門課程」。讓孩子透過在家學習,也能突破寫程式的障礙。雖然免費的 Python 線上網路課程很多,「英文」仍是孩子進入「程式設計」的門檻。

我們目前推廣的「Coding for Fun 免費線上課程」,如果不自籌經費,其實辛苦、也很難推展。因為這攸關孩子全面性的學習,很重要、也不能停。

所以未來的「 Python 簡易入門課程」將酌予收費,適合有學習動機的孩子自學。未來先上過這門課,才能進入「 Python 初級課程」。如果學校願意以此授課,可以為學生申請免費帳號。

普及兒童程式教育,支持有天賦的孩子繼續走下去,是 Kids Coding Studio 不變的信念。

2016年1月3日 星期日

為什麼要做程式設計教材,還是免費的

許多人問我,為什麼要做程式設計教材,還是免費的。將 8 月底的這篇網誌再一次分享給網友。
看著一篇篇新聞報導,軟體革命一步步影響我們的生活形態,不僅是下一代,甚至就發生在我們這一代。
我只是不希望我們的孩子未來失業或是出走海外。至少,透過程式設計的學習,增加孩子的機會與可能性。

為什麼不自己教學?

嗯,其實我多年前就自行退休。三年前重出江湖,一方面是為了陪自己的小孩,一方面是為了賺前往印度「修行」的盤纏。後來發現台灣就有「明師」,所以不需再努力賺盤纏了。此外,一個人的時間有限,永遠滿足不了家長的需求,還是得靠更多老師的參與。
如果能讓大多數家長了解程式設計的重要,就算成功了。不論有錢沒錢上補習班,至少有個還不錯的免費課程可以自學。
如果沒成功呢?天佑台灣!

看見未來新趨勢:軟體吃掉全世界

軟體吃掉全世界,而且吃掉了工作市場

2011年華爾街日報刊出 Marc Andreessen 的文章「為什麼軟體吃掉全世界」。世界的新趨勢是:「幾乎每一個產業的龍頭公司,要努力轉型為軟體公司,或者,等著被新興的軟體公司吃掉。」文章中指出軟體正在改變我們的世界,從產業結構、製造過程、消費習慣,到品牌經營,愈來愈多大企業藉由軟體的運作,提供網路與智慧服務,來提升他們的價值。而軟體能力將遠遠超越硬體價值,成為商品獲利與成功的關鍵。企業不投資軟體,就等著被新興的軟體公司吃掉。

台灣全球化教育推廣協會(GEAT)理事長陳超明教授表示,未來白領階級恐會遭機器人取代,最快5到10年間,白領階級的工作,會因科技的衝擊轉為自動化,最後進而取代,而這些行業包括電話行銷、會計稽核、零售業銷售、房屋仲介經紀等,預估在2033年消失的比例會超過80%之多。

台灣的危機

新台幣正流入Facebook、淘寶、Apple、Line、Google、Dropbox、Evernote 等國外軟體公司的帳戶。Google 這家軟體公司在 2001 年至 2014 年營收成長了 7 百多倍。

在台灣,資訊產業多以代工製造為主。因為追逐製造成本的降低,不斷地將工廠向外移動,而造成了台灣製造人力的失業,卻似乎沒有從中得到省思。

未來,連製造人力都將被機器人所取代,台灣真的有所準備嗎?我們的孩子如何面對下一波的工業革命?

軟體工程師的機會

2014年,U.S News 報導「軟體開發者」躍升為全美最好的職業。美國勞動部預期 2022 年新加入職場的軟體工程師年薪將會高達 144,000 美元。排名第二的是從事數據分析的電腦系統分析師,平均年薪 83,800 美元,最高薪者 122,090 美元。美國勞動部預期 2022 年電腦系統分析師薪水將成長 24.5%。這些工作待遇將高過牙醫。

美國的工作機會和我們有什麼關係?「世界是平的」一書中提到:
只要有寬頻﹐只要有雄心﹐不管你在哪裡﹐都不會被邊緣化。 因為﹐競爭的立足點變平等了﹐小蝦米和大鯨魚可以平起平坐了。」「拜科技之賜﹐即使在家裡開一個工作室﹐一個人也可以和大企業搶生意。同樣的﹐大企業也可以比小公司更靈活﹐更細膩。
全球化是危機, 也是轉機!孩子的英文能力非常重要,有了好的英文能力,就可以站到全世界的舞台來接案子。

這幾年許多國家認知到「兒童程式教育」是國家未來的競爭力,政府或民間紛紛投入大量的資源來推動,像是美國、英國、芬蘭、愛沙尼亞,以及台灣鄰近的香港、新加坡與韓國。例如英國從2014年開始,提供五歲以上兒童各種階段的程式教育。

美國總統歐巴馬也對美國學生說「不要只是下載 App,去設計個 App 吧!」

兒童程式設計

美國麻省理工學院媒體實驗室為 8 歲以上小孩發展了一套稱作「Scratch」的「程式積木」。只要將「程式積木」做堆疊與組合,就能創造出動畫與遊戲。它的核心概念是為孩子設計一套利用「電腦運算」來實現「創意」的工具:
  • 低門檻,容易學(low floor) 
  • 可以創造出複雜的作品(high ceiling)
  • 支援廣泛、多樣性的創意(wide walls)。
Kids Coding Studio發展了一套免費的Scratch線上課程 「coding for fun」,讓孩子無論是身處都市或偏遠地區,都有機會學習優質的程式設計課程。

這個課程適合小五以上學生自學,也適合小四以下學生親子共學。如果以班級型態做教學,可以大大地降低對老師的專業需求,老師只要掌握教室秩序、解決問題、進行作業分享,就能開啟孩子對寫程式的興趣。

Scratch雖然是一種程式語言,但是在「coding for fun」的課程中,定位為一種創作工具,用來表達創意與想法。無論是動畫或是遊戲作品,孩子很快地就能掌握訣竅。

當孩子愈喜歡寫 Scratch,他們的思考力與邏輯能力會發展得更好。一般的學習比較屬於單向思考或記憶,只是按部就班地完成某件事;能掌握 Scratch 的孩子,他的思考是多面向的,思慮會愈來愈周密。如何啟動孩子做自發性的學習呢?「coding for fun」,讓孩子自發地喜歡寫程式。

「coding for fun」的課程網址在 http://coding4fun.tw。Kids Coding Studio 提供完全免費的線上課程,甚至提供老師們單機版的課程與指導手冊。

2016年1月1日 星期五

十二年國教未來在國高中加入程式設計課程,您知道嗎?

十二年國教未來在國高中加入程式設計課程,您知道嗎?但是可以教授程式設計的老師十分欠缺,更會擴大城鄉差距 ⋯⋯ 
Kids Coding Studio 發展了「 Coding for fun」 線上程式設計課程,讓孩子無論是身處都市或偏遠地區,都有機會學習優質的程式設計課程。

「 Coding for fun」 適合小五以上學生自學

小孩幾歲學比較適合呢?
請參考這篇:兒童幾歲開始學程式好呢?愈小愈好嗎?

家長/學生看這裡~

課程網站:http://coding4fun.tw

免登入/註冊,可以先讓孩子試試「Hour of Code」,有興趣再進入正式課程。第一個單元「1-0 Scratch 課程教戰守則」會說明如何進行課程。

學校/安親班老師看這裡~

如果以班級型態做教學,「 Coding for fun」 降低對老師的專業需求,老師只要掌握教室秩序、解決問題、進行作業分享,就能開啟孩子對寫程式的興趣。

索取「單機版」影音教材請註明學校/單位,請email 至 coding4fun.tw@gmail.com。

教學資源

http://shalley-classroom.appspot.com/product


Kids Coding Studio 需要您的贊助
Kids Coding Studio 推動「粉絲團達 1,0000 個讚,Kids Coding Studio 將提供線上免費影音師資訓練」。歡迎贊助粉絲團「讚」(https://www.facebook.com/kidscodingtw/或是贊助我們刊登廣告。

部分師資培訓課程

  1. https://www.youtube.com/watch?v=QI3VCsbkvTU
  2. https://www.youtube.com/watch?v=jN3OdnaH90k
  3. https://www.youtube.com/watch?v=CeabmCrzdmE

贊助廣告:http://goo.gl/IT7XxB





為什麼鼓勵孩子先學 Python,而不是 C、C++ 或 Java?

根據學術刊物 “Communications of ACM” 2014 年 7 月調查顯示,Python 超越 Java,成為美國大學課程中入門程式語言的主流:

  • 10 所美國頂尖的電腦科學系,有 8 所採用 Python 作為入門語言
  • 39 所美國頂尖大學中也有 27 所,使用 Python 作為入門語言
  • 3 個熱門的線上課程提供者:Coursera、edX 和 Udacity,都提供 Python 課程
  • 相較於 Java 和 C++,Python 語法簡單多了,學習者幾乎可以立刻上手,而且Python也適用於商業應用
Kids Coding Studio 認為上面所陳述的事實只有一個,就是「Python 語法簡單多了」,這應該也是各大學採取 Python 作為教材的根本原因。目的是要先引起學習者對程式設計的興趣,而不是築起「初學者」的高牆。

根據我們的經驗,學生後來也會自主學習 javascript、C++、Java 等等程式語言,一通百通,樂趣才是青少年拓展自主學習的最大動力。

從哪開始呢?

如果孩子有學習程式的狂熱,或是高中以上至社會人士,可以從 Udacity 的「Intro to Computer Science」開始, 或是 Kids Coding Studio 專為青少年設計的「Python 程式設計初級班」。(暫時停班中)

Udacity「Intro to Computer Science」

簡介

這門課的全名是「Intro to Computer Science:Build a Search Engine & a Social Network」,由美國維吉尼亞大學的 Dave Evans 教授主講,他是麻省理工學院(MIT)的電腦科學博士,曾獲得維吉尼亞州大學教師的最高榮譽。課程內容包括電腦硬體、軟體、以及網路的運作方式。其中軟體的部分,以製作「搜尋引擎」為目標,使用 Python 程式語言作教學,帶領學生進入程式設計的殿堂。

進行方式

如果學習目標並不在於拿到證書,請選擇「Access course materials」。這是免費的課程,但沒有修業證書與線上指導者。



如果想拿到證書,才選擇「Start free trial」。Udacity 會指派一位老師來協助您進行課程,並輔助學生完成證書所需要的「Social Network」專案。[需要付費]

這個課程有別於一般的課程,甚至與其他 MOOCs 的進行方式也很不一樣。課程分割成許多小單元,每個小單元以 1 ~ 6 分鐘的影片進行教學,中間穿插著許多的小測驗。


學生在瀏覽器中寫程式,「提交作業」(submit),執行結果馬上秀在右上角。如果答對了(Correct),進度表上的白點就會變成深藍色,學生可以自行檢視上課進度。遇到不會做的習題怎麼辦呢?只要點選「繼續回答」(Continue to Answer),老師會在影片中做詳細的解說。因為是線上課程,所以學生可以反覆點閱影片自我學習,適合學生在任何時間上網自學。


Kids Coding Studio 提供了課程地圖,歡迎初學者入內參考:http://shalley-classroom.appspot.com/viewclass



自制力不夠怎麼辦?

建議每週至少有 3 小時的學習,可以切分為兩個時段,各為 1.5 小時。比方說固定為每週五與每週日晚上進行課程(幾點開始,幾點結束請訂清楚)。

就像上補習班一樣,時間到了,您就會出現在補習班等著上課。除非必要,不會缺席,甚至還要求補習班補課。

抱著這樣的態度,這個課程就會不知不覺上完了,供大家做參考。

兒童幾歲開始學程式好呢?愈小愈好嗎?

就家長的觀點,「不要輸在起跑點」好像是學習的不二法門。若不以老師的身份發言,而是以家長的觀點來看,其實我並不贊成

我認為小學四年級以前,孩子要以閱讀為重心。無論孩子有沒有寫程式的天份,五年級開始學程式就綽綽有餘。在這之前,該做什麼準備呢?玩玩網路上的程式遊戲,例如 http://code.org/ ,訓練孩子的邏輯能力,這樣就足夠了。


為什麼呢?


以我的孩子為例,他在升國中的暑假開始學 Scratch,後來自學 Python 等等程式語言。之後,我們出門度假、旅遊,他都會帶著筆電。一進飯店,就是打開筆電寫程式。

如果他還是小學生,相信一般家長都不會接受,寧願他蹦蹦跳跳、開心地玩。但他寫程式真的很開心啊!如果家長能接受孩子在小學階段就這樣沈穩、早熟,就忘掉我的建議吧!


孩子的童年真的很短暫,還是多陪陪他們擁抱大自然、享受親情。


我很慶幸,我並沒有失去什麼,因為我擁有與孩子歡樂的時光!