已經不止一次有人提過這樣的觀點:“未來,每個人都要會一點編程”。不論是美國在線編程教育網站 code.org 發起的“編程一小時”活動,還是教育部召開新聞發布會,宣布在此次「新課標」改革中,正式將人工智能、物聯網、大數據處理劃入新課標的新聞,都有相同的中心思想:下一代教育里,編程可能跟英語一樣重要。
少兒編程教育源起于何時?現在又發展到了哪一步?國內的行業現狀又是如何?本文將為你一一解答。
1968 年,皮亞杰(編者注:皮亞杰是兒童心理發展學的奠基人,上個世紀最偉大的教育學家之一)的同事,MIT 人工智能實驗室創辦人之一的西摩爾·佩普特(Seymour Papert)從 LISP 語言的基礎里創立了 LOGO 程序語言。LOGO 語言是有史以來第一個專門為兒童設計的編程語言。在計算機極其復雜的年代,LOGO 語言把編程簡化到了極致。
Seymour Papert(1928-2016)
上世紀 90 年代,臺灣推出繁體版的 LOGO 語言,稱之為:【葛拉堡 /Gerlabau】,其后國內也推出了中文化的 LOGO 語言,分別是“易樂谷 /ELOGO”、“創新 CX-LOGO/ 微世界”和“Flash 版 Logo 語言”,發揚了中文編程的優勢。
Papert 提出兒童編程最重要的,不是學習所謂的知識,而是通過編程來改變思維模式。“不是 learn to code,而是 code to learn”。 這是他創立 LOGO 語言的初衷。
秉承著這樣的理念,在 Seymour Papert 創造了 LOGO 語言的四十年后,2007 年,當初他在麻省理工帶過的一個博士生 Mitch,創造了 Scratch。官方網址是麻省理工學院網站的一個分支,這個軟件的開發團隊稱為“終身幼兒園團隊”(Lifelong Kindergarten Group)。
Scratch 是一款由麻省理工學院(MIT) 設計開發的少兒編程工具。其特點是:使用者可以不認識英文單詞,也可以不會使用鍵盤。構成程序的命令和參數通過積木形狀的模塊來實現。用鼠標拖動模塊到程序編輯欄就可以了。
經年以后,少兒編程又有了長足的發展。
2013 年,美國在線編程教育網站 code.org 發起“編程一小時”活動,時任美國總統奧巴馬不僅拍攝了一段宣傳片支持,并且親身上陣寫了一段 JavaScript 代碼,這也讓他成為美國史上第一位會寫代碼的總統。奧巴馬之后,美國科技圈名人比爾蓋茨、扎克伯格等也紛紛發言,號召編程要從娃娃抓起。
2014 年,英國教育大綱規定計算機編程是 5-16 歲兒童必修課程。
2017 年,新加坡全面推動少兒編程教育,中小學考試中加入編程考試科目。
日本預計將在 2020 年將“編程教育”作為日本所有小學的必修課全面開設,至 2021、2022 年,日本所有初、高中也將按照新修訂的學習指導要領開設“編程教育”必修課程。
從 2000 年開始,計算機在中國逐漸進入家家戶戶,機器人競賽和信息學奧林匹克競賽逐步開展,少兒編程教育并未普及,市場玩家主要為地域化、個人化、短期化的賽事培訓機構,未產生全國性的培訓機構。
2014 年開始,STEM 概念在中國逐漸得到傳播與普及,STEM 是科學(Science),技術(Technology),工程(Engineering),數學(Mathematics)四門學科英文首字母的縮寫,少兒編程教育在此時期進入發展階段。2016 年開始國家大力度支持少兒編程,2017 年,浙江省試水少兒編程教育,將信息技術課提升為高考科目。
2017 年至今,國內的少兒編程教育已經進入飛速發展時期。據了解,2017 年一共有 16 家少兒編程公司半數已獲 Pre-A 及以上輪次融資,其中“編程貓”在 5 月 25 日宣布融資 3 億元,這筆融資距其拿到的 1.1 億元融資僅僅過去不到半年。
與少兒編程公司投資市場火爆相吻合,線下的少兒編程熱也是持續不斷。線下暑期少兒編程班異常火爆,在百度上以“兒童編程教育”為關鍵詞搜索,檢索出的結果將近 600 萬個。根據《2017-2023 年中國少兒編程市場分析預測研究報告》顯示,當下中國大陸少兒編程教育的滲透率僅為 0.96%,市場蛋糕規模正在逐漸擴大,未來五年有望出現頭部企業。
目前中國的少兒編程行業玩家,線上授課的代表有編玩邊學、編程貓、諾丁科技等公司,線下輔導的代表有童程童美、小碼王、立樂教育等。這些公司,既有完全面向少兒編程教育的創業公司,也有面向成人 IT 培訓所分離出的少兒編程子品牌,還有跟國際少兒編程教育公司合辦的品牌。
投資人、創業者們為什么如此看好少兒編程教育這個新興市場?
傅盛: 我讀初中是 91 年的時候,當時非常想玩游戲機,但是沒有辦法用這個理由讓我爸爸給我買一臺,我就說我想學編程。那個時候我爸帶著我跑了好幾家,用當時他兩個月的工資,七百多塊錢買了一個叫金字塔的學習機。當然這個學習機我更多是用來玩超級馬里奧了,但那也是我第一次接觸 basic 語言,我記得把 100 多行代碼打出去,看它打出一個小圖形的時候我非常非常的激動,我認為編程了開啟了我對這個世界的一扇門, 我能夠在大學里學計算機,有幸進入互聯網,做互聯網的安全工具的時候,我都能夠跟程序員交流,也就是因為我那個時候很小的時候就知道什么叫編程。我認為我自己有這樣的幸運,走到今天,和我兒時能夠接觸編程是有關系的。
張泉靈: 作為一個 12 歲孩子的家長,怎么看待未來的孩子需要有什么樣的能力?這是我在思考的問題。我小時候也學過 logo,歐美歷史已經證明了會有越來越多的孩子需要學編程,而編程需要賦予孩子的不僅僅是知識力,就是你不能把它當做一個技能。我們為什么要學英語,因為我們進入了一個全球化時代,我們突然發現如果你想有更高的眼界和視野的話你得學英語,否則你沒有全球化的能力。但是下一個時代可能是我們需要跟 AI 時代,需要跟機器時代溝通的時代,所以你需要學編程。編程是跨學科知識建構的非常好的工具。
許式偉: 回過頭來看,現代的教育教出來的東西可能有一天是完全沒有用的。你會發現也許你學的大多數知識,在學的時候還沒過時,但等到要用的時候就已經過時了。十年二十年后,其實編程就跟我們現在的小孩學習的電力、力學一樣,一定是未來生活非常基礎性的部分。而且互聯網遠比電力、力學等知識對人的影響更要深刻。我認為二十年后的小孩,不懂編程是跟文盲沒有什么區別的。編程要釋放社會的創造力,釋放下一代的創造力。
大部分人都是不愿意學習的人,成年人尚且難以做到自制自主學習,更何況是天性愛玩的孩子?
難以否認的是,應試教育在國內仍舊根深蒂固,幾乎所有的教育選擇、課外興趣班,最終目的都是為了升學考試而服務的。少兒編程教育,如果沒有國家政策的扶持,很難在中國形成趨勢和潮流。
編程相對其他興趣班來說,略微枯燥。年齡太小的孩子一方面很難理解原理,另一方面學習過程中也很難獲得成就感。等到孩子年齡漸長,適合開始學習編程時,課業壓力又太重了,連體育課都被挪用做文化課,還哪有精力去學 coding?
龔長江是微軟亞太研發集團的一名軟件工程師。2016 年 12 月 9 日,和往常一樣,他需要和代碼“親密接觸”。不過這一次:他的坐標,不在辦公室,而在農科院附小;他要做的,不是自己編寫代碼,而是要陪孩子“玩”代碼游戲;一起并肩協作的,不是平時的團隊成員,而是七位同司志愿者。
這次由龔先生發起的“陪玩”,從屬于全球一同發起的全球計算機科學教育周“編程一小時”活動。截止到 2016 年 12 月,微軟在全國 168 個城市、618 所大中小學校,共舉辦 3208 場“編程一小時”活動,參與青少年達 91362 人。
這個活動是由公益組織 Code.org 發起,微軟是積極響應者與重要合作伙伴。Code.org 的初衷是鼓勵每個人尤其是小學生學習計算機。創始人 Hadi Partovi 認為編程應該是必備技能,但是九成的美國學校都沒有相關課程;于是萌生了組織 Code.org 這樣的想法。
網站最初上線的是《Flappy Brid》可視化模塊編程游戲的一小時指導視頻,后來陸陸續續添加了《憤怒的小鳥》、《植物大戰僵尸》的改編版,甚至基于迪士尼《冰雪奇緣》創建新的游戲。上文中提到的《我的世界》是微軟成為 Code.org 合作伙伴之后上線的游戲。
微軟認為,讓小朋友很早地通過接觸計算機編程能夠建立這樣一種思考和解決問題的思路都是有好處的,這是一個層面;另外一個層面,隨著計算的普及,無論是云計算還是大數據還是周圍的人工智能,今后計算機語言也可能普及到像今天說話和讀書這樣普及的模式。
林詠華博士,IBM 研究院 AI 系統全球研究負責人,技術總監。在北京 IBM 中國研究院的總部,經常會舉行 AI for Kids 的活動,林詠華博士經常會出席給孩子們講解人工智能方面的有趣故事和知識。
“我希望可以把 AI 這一種新的、未來可能影響我們幾十年甚至上百年這樣子的知識,從今天開始可以幫助我們的孩子、青少年萌芽。我今天對 computer science 這么感興趣,到了今天我還很愿意去做很多 coding 的工作,是跟我小時候就有機會去接觸那些知識密切相關的。所以我希望可以盡自己的微薄之力去幫助他們,讓更多孩子有機會走進這扇門。”
得到的反饋是:「變態,六一居然教孩子編程」、「我兒子敢學編程,腿給他打折了!」、「我閨女以后要是干編程,就逐出家門。」、「你會教孩子編程嗎?」「你要是敢學編程就當沒有我這個爸爸!」。
雖然知道這都是自黑的戲謔,我們還是有點難過。就像文章開頭 Paper 發明 Logo 語言的初衷一樣,教孩子編程,不是 learn to code,而是 code to learn。不是學習所謂的編程知識,而是通過編程來改變思維模式。
InfoQ 堅信,編程一定是未來生活基礎的組成部分,也許不會編程也能過得很好,但是會編程一定會過得更好。
今天我們再次提出這個問題,「你會教孩子編程嗎?」
期待您的答案!