2016年6月21日 星期二

進擊的全民寫程式!你今天coding了嗎?

  • 羅民諭 | 國立中山大學資訊工程學系
早在2012年,愛沙尼亞將程式列入義務教育後,英國、法國、奧地利、丹麥、波蘭、新加坡等世界各國亦跟上其步伐,均將程式設計納入課綱之中。而在台灣,預計將於107學年度開始實施的課綱草案內容中,程式設計屬於科技領域的一部分,在國、高中階段將列為必修課程,在國小階段,則依照學校資源條件與學生特性,進行融入性的教學,亦或成立社團提供學生學習。

另外,在2013年成立的美國公益組織Code.org更是發起了「一小時玩程式(Hour of Code)」運動,熱烈響應的企業包括微軟、臉書、亞馬遜、Google等國際知名公司。主辦單位表示,任何人只要有心,無需經驗,都可以在任何地方參與;不論你是4歲還是104歲,都歡迎來學習。至今,Code.org已在180多個國家,用45種語言,辦過近20萬場程式設計活動,參加人數超過22.5億人,堪稱史上最盛大的全球學習活動。這股「全民學程式」熱潮在全球逐漸發燒,「全民學程式」到底有什麼樣的魅力,使得全球各國如此重視,甚至列入國民教育課程呢?
微軟與Code.org合作,透過受到兒童歡迎的《創世神》(Minecraft)遊戲環境教小孩基本的程式設計。(圖片來源:iThome)
微軟與Code.org合作,透過受到兒童歡迎的《創世神》(Minecraft)遊戲環境教小孩基本的程式設計。(圖片來源:iThome)

化想像於現實,學習如何解決問題

在傳統教育中,較缺乏將學校所學的理論實踐於現實世界的教導,學童在最具想像力的階段無法實現心中所想的創意,反而將大部份心力放在如何背答案才能快又正確,卻忽略了真正重要的是答案背後所隱含的思維與邏輯概念,因此,也缺少讓孩子學習如何解決問題的能力。

程式的撰寫其實需要高度創意與邏輯思考能力,可以說,程式語言比大部份的語言都更具有邏輯性,透過寫程式不但可以實現各種創意,在寫程式的過程中還能了解到實現各種創意背後所需要的知識,進而認知到基礎學科的重要性。甚且為了要完整呈現最後結果,過程中需要克服重重難關,這時所培養出來解決問題的能力,則可以達到「做中學」的效果。

培養運算思維,使新一代接軌未來世界

大部份提倡者強調,程式課程並非要把所有人都變成工程師,「就像音樂、美術課程的目的,不是要讓全部的孩子長大都去當音樂家或畫家,而是培養人格特質,使孩子的競爭力能有所提升」。

寫程式是一種「解決問題」的過程,希望孩子在參與這個過程當中,能夠培養「運算思維(computational thinking)」的能力。美國知名的電腦科學家Jeannette M. Wing寫了一篇關於運算思維的文章,描述其重要性,並提出了對應的核心能力,以及如何透過運算思維解決問題。Jeannette M. Wing曾在2012年10月的訪談中表示,現實中針對問題的解決方案,其實有很多切入的角度,而運算思維則是其中一種。實際上,運算思維是在思考的過程中,將問題清晰、概念化地描述、分析出来,並將解決問題的方案以一個對應的流程來處理,其中,運算思維主要為四個解決問題的核心能力,包含將問題拆解(decomposition)成一系列將容易處理的小問題,且透過抽象化(abstraction)分析出要解決問題的重要資訊,接著找出過去已存在類似的問題(pattern recognition),並參考其解決方法來設計出能解決目前問題的演算法(algorithm design)。透過這四種能力的培養,不但能對撰寫程式有所助益,在生活應用方面,亦能讓我們更有效率地解決生活中各種可能面臨到的挑戰,並以不同的視角看待世界的運作。因此,若能從小培養運算思維的能力,相信更能幫助孩子面對瞬息萬變的未來世界。

近幾年,自動化工業已蓬勃發展,雖使生活更加便利,但也不禁讓人憂心,在未來的工作環境中,人類最大的競爭對象將是機器,計程車司機擔心被自動駕駛取代,保全擔心無法與機器人抗衡,基金經理人操盤績效拚不過電腦……等等。是故,若擁有無邊創意,能將天方夜譚化為可能,並具備運算思維能力,足以在實踐的過程中克服萬難,如此,才能在衝擊中屹立不搖。 (撰稿團隊另製有小動畫呈現於延伸閱讀中,歡迎點閱連結!) (本文由科技部補助「新媒體科普傳播:遇見無所不在的生活科學」執行團隊撰稿)

責任編輯:張尹貞
審校:張惠博


沒有留言:

張貼留言