日本小學必修編程
日前,日本文部科學省公布了新的教科書鑒定結果,全日本所有小學要從2020年起開始使用這些教科書,其中,在算術和理科方面,編程教育作為新的必修內容加入了理科教科書中。
援引日本經濟新聞消息,日本小學開展編程教育的目的,是培養孩子在信息應用方面的基本能力和邏輯思維能力。日本政府希望讓孩子們從小學義務教育中,就開始接觸編程,誰對此感興趣,并且還有天賦,今后就會被培養成IT領域的專家或技術人才。
據了解,按照新修改的小學6年級理科教科書,日本孩子將學會使用“點亮”、“熄滅”、“反復”等指令,讓發光二極管(LED)按照預想的次數點亮熄滅。
日媒評論稱,IT與社會的聯系越來越緊密,相關行業的國際競爭正在不斷激烈化。但日本在IT教育方面很滯后,希望通過修改教科書來培養短缺的IT人才。
對此,日本某編程教育推進團體代表理事利根川裕太表示:“考慮到教師的教學負擔,(編程)目前在小學里就教到接觸導入部分的程度比較合適”。
但是,日本東洋大學信息合作專業的坂村健院長則對未來形勢表示了擔憂,“現在日本雖然把編程列為了小學必修內容了,但是和國外的教育比起來還遠遠不夠。如果不把編程專門列為一門學科,并不斷充實內容,日本還會在世界上落后。”
據環球網科技此前報道,早在去年5月17日,日本政府在未來投資會議上確認了在“大學入學共同考試”中引進編程等信息科目的方針。為了推動第4次工業革命,熟練使用人工智能(AI)等技術的IT人才是不可或缺的。日本政府預計未來可能出現人才不足,將加快人才的培育。
日本已經決定到2022年度將包括編程在內的“信息I”科目加入到高中階段的共同必修科目。今后,將以文部科學相林芳正為中心,以2022年度入學學生參加的2024年度大學入學共同考試為大體目標,進行引進信息科目的討論。
據日本經濟產業省2016年公布的數據顯示,如果IT市場保持中等水平發展,到2020年,日本國內的IT人才短缺規模將達到約29萬人,到2030年將達到59萬人。
一、為培養IT人才,日本把編程列為小學必修內容
據《日本經濟新聞》3月27日報道,日本文部科學省3月26日公布了全國小學從2020年度起使用的教科書的審定結果,共164本教科書通過審查。在算術和理科方面,作為新的必修內容加入了編程教育。IT(信息技術)與社會的聯系越來越緊密,相關經濟的國際競爭正在激化。日本在IT教育方面的滯后被指出,希望借助此舉培養短缺的IT人才。
小學開展編程教育的目的是,培養孩子在信息應用方面的基本能力以及通過試錯來培養邏輯思維能力。本次審定合格的教科書中多半提到了2個課題,即新學習指導要領中示范的▽小學5年級算數中提到的正多邊形畫圖和▽小學6年級理科教科書中提到的亮度控制。
關于小學6年級的理科教科書,登載了使用“點亮”、“熄滅”、“反復”等指令,讓發光二極管(LED)按照預想的次數點亮熄滅的編程課題。
日本的編程教育推進團體“大家的代碼”的代表理事利根川裕太表示,“在教師教學負擔增加的背景下,目前在小學里僅限于接觸導入部分程度的內容較為現實”。
2016年日本經濟產業省發布的推算結果顯示,在IT市場保持中等水平增長的情況下,日本國內IT人才短缺規模到2020年將達到約29萬人,到2030年將達到約59萬人。鑒于這一情況,日本政府的產業競爭力會議2016年在增長戰略中寫入了把編程作為必修課的內容。
韓國在2007年修改教育課程,在初等、中等教育階段正式開展編程教育。英國從2014年起在5-16歲的義務教育中引入了編程教育等,不少國家都在積極采取應對措施。
日本東洋大學信息合作專業的坂村健院長充滿危機感地表示,“在小學的(編程)必修化取得一定進展,但是和海外比起來還遠遠不足。如果不把編程列為一門學科并充實內容,日本將在世界上落后”。
日本從2012年度起在中學里把技術·家庭學科的編程教育作為必修,預定從2021年度起進一步擴充內容。在高中階段,將從2022年度起新設包括編程在內的“信息I”必修科目,所有學生都要學習。
盡管日本終于開始調整編程教育體制,但如何確保授課中使用的電腦、完善網絡環境、提升教師的知識和力量等,目前還有不少課題亟需解決。
培養專業的技術人才,很大程度上要依靠企業和個人的自身努力,這也是不爭的事實。日本慶應大學1990年設立的湘南藤澤校區(SFC)向IT相關行業輸送了眾多人才等,出現了私立大學新設置專門的研究生學院和學科的動向。另一方面,受限于定員變更審批手續等,日本國立大學的動作比較緩慢。
讓孩子們在中小學義務教育中接觸編程,對此感興趣且有天賦的人今后將被培養成IT領域的專家和技術人才。日本能否為此構建一貫的體制將備受考驗。
二、明年起,編程將成為日本小學必修課,中國是否應該效仿?
隨著新一代人工智能出現,目前計算機科學教育已經在許多國家深入展開,雖然中國也沒有落在他人之后,但步伐可能還需要加快一些。編程是國外許多相關領域成功人士極力推薦的一門學科。其中包括比爾·蓋茨、國外知名網站Reddit的創始人。西方國家已經開始對孩子編程能力逐步重視。在亞洲,日本也已經開始跟上。明年四月起,計算機編程將成為日本小學的一門必修課,因為日本正在努力培養新一代高度受歡迎的信息技術技能。
從五年級開始教授編程基礎。例如,日本教育部發布了的新教材,要求學生們懂得使用數字編碼繪制多邊形,并使用簡單的命令讓LED燈閃爍。隨著科技在社會中的扎根越來越深,科技領域的國際競爭也越來越激烈。日本認為自己在編程教育方面起步較慢,但現在的目標是創造一個更廣泛的潛在技術工作者群體,讓日本從小學生開始盡早接觸編程,以便那些有興趣和技能的人能被培訓成專家。
根據日本政府為五年級數學和六年級科學制定的指導方針,“多邊形挑戰”和“LED挑戰”分別被納入了這兩門課程的大部分教材中。其目的是灌輸使用代碼處理信息的基本原理,以及通過反復試驗來教授邏輯思維。非營利教育機構Minna no Code的負責人表示:日本的老師們面臨著越來越大的負擔,所以現在,讓日本學生對編程的初級階段有個感覺是很現實的。該機構的初衷是“為所有人編寫代碼”。負責人提到,首先需要推出讓學生感興趣的課程。
日本經濟產業省很早就計算得出,如果IT市場以溫和的速度增長,到2020年,日本將缺少約30萬名技術工人,到2030年則將缺少約60萬名。所以不用等到那個時候了,日本政府產業競爭力委員會發誓要讓編程成為小學教育的必修課。整個亞洲對此引起足夠重視的似乎目前只有日本和韓國做到了,人們不禁要問,中國是否需要進行效仿?是否有這個必要?此前,編程就成為日本中學技術和家庭經濟學課程的必修課程,課程設置也將從2021財年開始擴大。在高中階段,編碼將成為將于2022財政年度引入的一門必修課。日本的義務教育止于中學。
中國在這方面確實需要開始重視了,因為許多國家在教授孩子們編程方面都走在了前面。韓國在對其教育體系進行評估時,早已開始將這一主題更多地納入中小學課程。緊隨韓國之后的是英國,該國也將編程引入5至16歲學生的義務教育當中。
日本東洋大學計算機科學教授坂村健表示,將編程納入日本的小學課程是向前邁出的一步,但與其他國家相比仍然不夠,我們必須充實內容,比如讓其成為自己的主題,否則我們將落后于世界其它地區。不過,讓所有學生都接受強制性編碼教育只是這場戰斗的一部分。實際的障礙仍然存在,包括獲取和聯網課堂電腦,以及培訓教師。
許多日本的專業IT技術人員要么接受公司的培訓,要么通過自己的努力接受培訓。越來越多的私立大學也在開設這一領域的研究生院或院系,比如久負盛名的慶應義塾大學于很早之前就設立了相關的校區。但是,公立學校的努力被繁文縟節拖慢了。日本都覺得自己落后了,中國還在討論是否需要深入學習此類知識。當然,是否應該效仿,還要根據自己國內的大環境和實際需求情況。這是需要進一步思考的。
三、如何給孩子選擇編程課
7月8號,教育圈出了一個爆炸新聞——國務院發布文件,要“舉全國之力”發展人工智能,并要求全國中小學全面開設人工智能相關課程——“實施全民智能教育項目,在中小學階段設置人工智能相關課程,逐步推廣編程教育,鼓勵社會力量參與寓教于樂的編程教學軟件、游戲的開發和推廣。”
近兩年,少兒編程教育如雨后春筍般冒了出來,從Scratch、樂高機器人,到來歷可疑的各種編程課程,林林總總,沒有技術背景的家長,往往會被海量的信息淹沒。如何在海量內容中選擇出合適自己的編程課程、節約交易成本,是首要解決的問題。
那么,今天就來跟大家聊一聊,如果想讓孩子學習編程,究竟應該怎么選擇。
1
我們需要明確,給孩子上編程課的目的是什么
我想,對于中小學年齡段的孩子,編程課的主要目的應該是啟蒙——讓孩子接觸編程知識,在編程學習中強化邏輯思考能力、系統思維能力以及組織協調能力,進而激發孩子的創造力,而不是現在就為了職業考慮,去掌握一門技能。
2
如果明確了這個目的, 那我們看看應該如何選擇編程課
對于中小學年齡段的孩子,首先不要去考慮編程語言,先明確課程設計是否做到兩個前提:
1
學習編程的過程能否做到所見即所得——輸入指令,立刻能夠看到效果;
2
能否從項目式學習入手,并建立快速反饋機制,給孩子成就感。
如果在教學設計中滿足這兩個前提,我們基本就可以判斷,這個課程是可以考慮的。
3
那接下來,我們就需要選擇學習的體系
在這方面,我個人的建議很簡單:如果你的孩子年齡偏小,還不能記下26個英文字母、沒有使用過鍵盤,那么毫無疑問,scratch是首選。國內也有很多類似的編程工具,我自己就見過四五個開發團隊在做類似的產品,但基本上還是以借鑒(或者說抄襲)scratch為主,加上一點所謂的微創新。抄襲往往只能抄到皮毛,而那些所謂的微創新更是危險的。所以,認定了方向,最好就選擇一個有系統、有積淀的工具。
scratch的優點有很多:
首先,出身好——麻省理工學院媒體實驗室開發,這保障了它的完整性和持續迭代能力;
其次,學習門檻低——不認識英文字母、不會使用鍵盤,也完全不構成障礙;
第三,所見即所得——整個“編程”的過程,是以鼠標拖拽的形式操作的,像在玩積木,容易引起孩子的興趣;
第四,適合PBL式教學——通過scratch可以快速實現一些小游戲、程序的開發;
第五,便于分享——完成的作品可以發布在官方網站上,可以分享給朋友,增加成就感;
第六,使用門檻低——scratch本身是一款免費軟件,下載和使用,都無需付費。
另外還一些優點,比如多語言支持、功能強大等等,據說有一些大神可以用scratch做光學程序。
缺點是目前市面上的Scratch編程課多如牛毛,良莠不齊。
因為軟件的下載和使用是免費的,所以開設課程的門檻很低,這就導致了不同培訓機構之間的課程質量相差巨大,需要家長認真考核,耐心挑選。在我有限的眼界內,成都的“西瓜創客營”,是scratch教學做得比較好的一家機構。另外,“博雅小學堂”也在開設相關的scratch課程。
當然,如果希望得到更直觀的反饋,樂高機器人也是一個非常好的選擇。
如果你的孩子年齡稍大一些,可以使用簡單的文字、語句,可以使用鍵盤,認識26個英文字母,那么依然可以選擇scratch作為編程的啟蒙課程。不過,這時我更建議選擇一門真正的“語言”,進行真正意義上的“編程”學習。畢竟,scratch學到底,如果想繼續學習編程,也還是要接觸真正的編程語言的。
但是從1954年第一個完全脫離機器硬件的高級語言“Fortran”誕生到今天,已經有數百種高級語言被設計、研發出來,最常用的也有幾十種,那么如何在這么多計算機語言中,選擇最適合孩子入門學習的呢?
我們縱觀計算機語言的發展史,從機器語言到匯編語言到編程語言,可以發現一個規律,那就是編程語言的發展趨勢,是使編程語言越來越貼近自然語言的過程——更容易開發、更容易維護、更簡單,但同時又要能彌補自然語言在表達邏輯和關系中不規范、不標準的缺陷。
換句話說,高級語言的發展目的,是把我們的思想從編程語言的細節里解放出來,更關注實際要解決的問題。
所以,孩子學習編程語言的選擇,也應該符合這一規律。
從這個角度出發,對于中小學年齡段的孩子,我推薦以Python作為入門的編程語言。當然,前提是滿足我上面提到的兩個先決條件——所見即所得、項目式學習。
Python是目前最容易理解的編程語言,非常貼近自然語言,很少強調傳統的編程語法,容易入門、上手快、效率高,所以程序員經常會自嘲說:“人生苦短,我用Python”。而且Python的代碼便于閱讀,它的強制縮進原則,使得代碼更工整、更美觀,很多老程序員對這一點反而不適應。
另外,Python可以用來做幾乎所有的事情:從web開發、科學計算到機器學習、人工智能,你能想到的,幾乎都可以用它來實現。
而且,Python有大量的第三方功能庫,在這方面沒有任何一門語言可以與它相比,開發人員無需再把時間浪費在造輪子上。
同時,Python也是免費的——任何人、組織、機構都可以免費使用。你可以自由地發布這個軟件的拷貝、閱讀它的源代碼、對它做改動、把它的一部分用于新的自由軟件中。
三年前,“誰會成為AI和大數據時代的第一開發語言”還是一個爭論不休的問題,那時候,Scala、Matlab、Java、Python還各有機會,而今天,Python已經被公認是代表未來的語言,AI時代頭牌語言的位置已經確立,未來的懸念僅僅是誰能坐穩第二把交椅。從2012年開始,Python在“編程語言排行榜”里的位置就是一路爬升,在今年IEEE Spectrum發布的第四屆頂級編程語言交互排行榜里,Python一躍成為第一。
我們目前大學里的計算機課程,往往都是從C語言開始學習,以我過去自學Python的經驗來看,我個人感覺,Python是給人設計的,C/C++更像是為機器設計的,而Java則介于兩者之間。而且JS、CSS、Html體系不適合入門,整體比較雜亂,對剛剛入門的孩子來說太復雜,不如Python唯一、直接。
業內流傳一種說法:C++之父說,他發明C++只是因為發現程序員門檻太低, 導致工資也低,所以發明一個晦澀難學的語言,為的是讓程序員能夠由此多拿些工資。
對于編程語言的選擇路徑,下面這張來自于Carlcheo的圖,可以讓我們一目了然:
我們可以看到,左上角“for my kids”的選項后面,就是scratch和Python。
Python是人工智能領域中使用最廣泛的編程語言,它可以無縫地與數據結構和其他常用的AI算法一起使用,而且,Python有大量的在線資源,所以學習曲線也不會特別陡峭,這也就是為什么,Python成為了美國中小學編程入門課程的首選教學語言。
但我們國家目前的少兒編程課程,還是scratch的天下,因為Python的教學需要一定的技術能力和課程設計能力,這造成了一個不低的門檻,如果沒有一個優秀的課程設計,Python的學習容易變成“始終在黑框框里演練”的很枯燥的一門課程。但以我們和歐美國家技術普及的滯后周期來看,我相信,不久的將來,Python會成為孩子學習編程的必學語言。找到所見即所得的解決方案、提供優秀的Python課程會逐漸成為趨勢。
讓孩子學會一門代表未來的優雅的語言,在編程學習中培養興趣、強化邏輯思維能力、系統思維能力、組織協調能力,讓孩子們成為能夠面對未來的人,我想,這才是一門優秀的編程課程應該提供的。
四、小學開展編程課 現在不學編程,以后會不會像“文盲”?
臨近圣誕節,濟南市小學生王崢收獲了一份“大禮”——近日,山東省在其最新出版的小學信息技術六年級教材中,加入了Python(一種面向對象、解釋型計算機程序設計語言)的內容。這使原屬“課外活動”的Python名正言順地成為“課堂內容”,讓喜歡“捯飭”編程的王崢喜出望外。
堪稱人工智能“網紅”的Python已經超越C++等成為最受歡迎的編程語言,但很多人不明白,它究竟好在哪兒?何以“登堂入室”進入小學教材?低幼化滲透究竟會帶來什么樣的效果?孩子們能接受嗎?
假如現在不掌握編程
以后會不會像“文盲”?
很多人對2016年蘋果全球開發者大會年齡最小的程序開發者安薇塔·維賈伊印象深刻。
這位來自澳大利亞的9歲女孩已經開發了兩款IOS應用。“應用開發有很多步驟,包括原型設計、線框繪制、用戶界面設計以及編碼和測試等。”這位小女孩透露出的成熟讓人驚嘆。而在中國,13歲的清華附中學生汪正揚成為中國年齡最小的黑客——他8歲上小學二年級便玩游戲,玩得沒意思了開始嘗試編寫一些小程序,甚至是找專心網站漏洞。
接受科技日報記者采訪時,王崢的指導老師、信息技術碩士陳芳老師提到上述兩個例子。她指出當今社會、家長們透露的憂慮:未來屬于“軟件+硬件”的機器人時代,當“人類主宰機器人,還是被機器人主宰”的類似話題一再被提及時,家長們普遍擔心,編程可能成為未來社會的通用技能,假如現在不掌握,以后會不會像“文盲”一樣?
致力于推動小學生學習編程,短短三四年間,創業者李天馳已經擁有了近五十萬小學生“擁躉”。他向記者表示,在人工智能時代,教育和工作會發生翻天覆地的變化,“未來一代的孩子,不僅需要與人交流的能力,也要有和機器對話的能力。編程,正是連接人與機器世界的橋梁。”
在李天馳看來,工業時代培養的人才叫“硬盤型人才”,試圖把所有的知識都放到腦子里背誦、掌握,“但現在互聯網已經有了海量信息,當你想查清楚哪一個國家、哪一年發生了什么事情的時候,只要利用搜索引擎就能獲得海量信息。所以新時代我們更需要培養人才,利用已知內容、手中工具去去創造性地解決問題、學以致用,做出東西來。”
今年7月份,國務院印發《新一代人工智能發展規劃》,提到中小學要設置編程教育。陳芳認為,人工智能時代需要新的人才,而編程就是AI時代的基本工具,因此學習編程需要“從娃娃抓起”。她認為,這和中國加入WTO以后順應全球化時代、把英語納入基礎學科邏輯相似。
“人工智能時代的教育,玩法不一樣了,這應該是Python‘登堂入室’的大背景。”濟南歷城二中科技創新教育的專職教師高月峰向記者總結到。
Python是什么?
它是一門新的“英語”
Python是什么?
在程序員的世界里,相比C++或Java等語言,Python是一種代表簡單主義思想的語言。閱讀一個良好的Python程序就感覺像是在讀英語一樣。它使你能夠專注于解決問題而不是去搞明白語言本身。
但在推廣者李天馳的心目中,Python像其它編程一樣,并不是像程序員一樣單純地寫代碼,“編程不僅是一項技能,最重要的不是你背會了多少語法、會用多少種語言,重要的是你用它創作了什么。”
他認為,少兒編程就像一條路,指引著我們通向另一種思維、另一個世界。我們要學會的不是如何修路,而是如何利用腳下的路,去更遠的地方,看更多的風景。這就是我們要教會下一代的東西。
曾經多次獲得優秀科技輔導員的高月峰認為,如果說奧數的本質是國家為了選拔有精確計算能力的學生,那么編程特別是Python是為了培養學生的思維能力。兩者的區別在于前者強調專業性,針對少數學生;后者強調普惠性,針對大多數同學。
山東將Python納入新教材之中,得到了本次受訪者的一致認可。記者也了解到,重視編程教育,山東省并不是唯一的踐行者。
在今年的浙江省新高中信息技術教材改革項目中,也提到了Python。教育部考試中心更祭出“大招”:10月份,該中心決定自2018年3月起,在計算機二級考試中加入“Python語言程序設計”科目。
李天馳在國外留學多年,了解世界各國的編程教育情況。在他看來,早在2014年,英國就已經把圖形化編程納入了5歲以上小朋友的必修課;在法國,編程被納入了初等義務教育的選修課程;在北歐國家如芬蘭、愛沙尼亞也把編程作為了一門非常重要的義務教育學科。
“在中國,少兒編程教育剛剛起步。但在政府和市場的合力推動下發展較快。”李天馳說。
學編程為何從娃娃抓起?
孩子的“程序性”記憶最敏銳!
小孩子的認知能力和智商水平是不是還無法理解編程這樣看似深奧的話題?Python需要小孩子有特別的天分嗎?
接受采訪的專家、教師表達了謹慎的樂觀——“前途是光明的,道路是曲折的”。
長期從事信息技術教育的陳芳老師認為,年幼的孩子在學習語言上的天賦,因為年輕的大腦更容易形成“程序性”記憶——一種深深烙印在我們神經中的記憶,調動時只是一個條件反射而無需意識參與。
她提到喬治城大學醫學中心大腦與語言實驗室的主任邁克爾·烏爾曼的一個觀點:偉大的小提琴家、歌唱家都不是在二十多歲才開始學拉琴、唱歌的,他們通常始于三四歲,那正是“程序性”記憶最敏銳的時候,編程也是一樣。
這個觀點也符合李天馳的觀察。“小孩子在學習算法和計算機上潛力突出,如果等他們十幾歲再學這些就太可惜了。”但他認為,相對于潛力和天賦,興趣才是最好的老師。
“如何讓小孩子對編程感興趣、又如何讓他們對編程保持興趣,這里面涉及到很多兒童心理學的門道。比如電視、課業、戶外活動、游戲都會占據小孩子的注意力,但是他們注意力時間是有限的。如何吸引小孩子去學習?可以從游戲化教學入手,采用項目任務的方式來讓小孩子學習,回歸到游戲場景里中熟悉的畫面——為了通關去學習多種技能。”李天馳說。








