巴巴騰兒童機器人——中國孩子的良師益友,智慧好夥伴
美國總統川普的長女伊萬卡·川普(IvankaTrump),帶5歲的女兒Arabella參加了一個計算機編程課程。
伊萬卡被採訪時說,我們很高興一起學習非常重要的新語言,編程是一種真正的未來語言。
那幾歲應該開始學機器人和編程?一位澳大利亞的研究者說,4歲的小孩就要開始學習基本知識了。
4歲的孩子正式上幼兒園的年紀,在家長和老師的幫助下,開始學習認字,而要認識「編程」倆字,早一點也得到二年級了。
那孩子不認字可以學編程嗎?
在上海大學舉行的一場面向孩童的教育機器人比賽上,千餘名小選手同臺競技,其中學齡前兒童達100人,最小的選手是4歲的戴坤成。網友驚呆:我4歲的時候,"編程"倆字都不認識。
當記者問戴坤成:「這四個字你認識?」「認識。」「會寫嗎?」「不會。」他回答得倒也爽氣。「我才上幼兒園中班,媽媽還沒教過我識字呢。不過電腦遊戲上的字基本上我都能認識,機器人編程上的字,老師教過後,我也認得,像主程序、引用變量,還有時間設定……」他指著電腦屏幕補充道。
「本次比賽有100個學齡前兒童,比例最多的是一二年級的小朋友,最小的只有4歲。」裁判張老師介紹說。
對於該現象,他表示,學習機器人從學齡前開始比較適合。「因為一開始需要學習的是機械結構,大一點的孩子會覺得太簡單,不想學。但這會導致基礎欠缺。」
4歲是孩子學習編程一個可選的起點,太小了思維達不到,不能揠苗助長。
為什麼不認識字就要學習編程、編程能鍛鍊哪些能力
編程是一件很有趣的事情,一位程式設計師父親覺得主要能培養五個方面的能力:策劃構思能力、邏輯分析能力、模式識別能力、問題分解能力、測試糾錯能力。這些重要的思維能力,不光在編程上很重要,也適用於各行各業。
1、構思能力
編程是一種「先寫劇本,後看結果」的活動,這要求孩子先在腦子裡進行構思並模擬出結果,然後再實際驗證結果是不是符合預期。
這是一個「異步」的過程,對於這種「都得事先想好」的方式,孩子一開始是不適應的,因為這違背他們的直覺。
我見過很多父母給孩子買「迷宮書」,其實走迷宮也包含這個要素,有的孩子會先在腦子裡走一遍,然後一次性下筆把路線畫出來,這就是一種構思和模擬能力的體現。
2、邏輯能力
編程需要考慮到各種情況,根據不同的情況作出不同的選擇(分支),而且各個分支之間不能重複,也要避免遺漏某一種可能性造成程序的異常行為。
在邏輯思維中有個詞叫做MECE(Mutually Exclusive and Collectively Exhaustive),意思就是「相互排斥且整體完備」,也就是「不重複,不遺漏」。這是邏輯思維中的一個重要原則。
舉個例子,交通信號燈有紅、黃、綠三種狀態,如果你在寫程序的時候只考慮了紅燈和綠燈的情況,沒考慮黃燈的情況,那就不「完備」了。
此外,條件還會涉及到「與」、「或」、「非」等邏輯操作,比如說,「當信號燈為紅色或黃色時」和「當信號燈不是綠色時」這兩個描述應該是等價的,這對於孩子來說都是非常好的邏輯訓練。
3、模式識別能力
在編程中,我們經常需要發現一些「可以重複」的單元,然後讓計算機去重複它。
舉個簡單的例子,計算(1 5)×4相當於(1 5) (1 5) (1 5) (1 5),其中每一個(1 5)就是一個可重複的單元,或者說是一種模式(pattern)。
在解決實際問題時,模式並不都是顯而易見的,有些模式是隱藏的,或者需要一定的變換才能出現的,這些都考驗孩子觀察力和識別力。
4、分解問題的能力
一些複雜的問題都可以分解中等的問題,中等的問題還可以進一步分解成小問題。在解決複雜問題時,問題的分解是非常重要的,編程中我們也經常需要使用這樣的方法。
舉個例子,比如要造一輛汽車,我們先要把汽車分解成很多小的部件,比如發動機、變速器等,這些部件還可以繼續分解成更小的部件,我們需要先造好每一個小部件,再把他們組合起來變成一輛汽車。
5、調試糾錯能力
任何工作都無法一蹴而就,是人總會犯錯誤,程序運行起來發現不對有問題,這時就需要孩子能夠找到出錯的地方在哪裡,並且將它改正。這裡面包含的能力很多,比如抗挫折力、觀察力、專注力等等。
總之,通過學習編程所培養的能力並不只是適用於編程,而是可以在很多方面派上用場。
關於不同年齡段的孩子怎麼開始學編程,這是我的建議:
4 - 6歲:編程小遊戲
入門階段,可以先帶孩子玩一些編程小遊戲,國內兒童機器人領導品牌巴巴騰經過一年多的規劃、研發,最近要上線的巴巴騰小叮編程機器人,用圖形化程式語言,把原來英語的代碼程式語言轉成圖形模塊化、指令化,以遊戲、情景動畫、積木構建的形式呈現。當然以兒童智慧機器人見長的巴巴騰,此款機器人出了編程還有更為豐富的功能和內容,等著小朋友去發現呢。
7 - 9歲:可視化編程工具
這個階段,可以讓孩子用一些可視化編程工具來完成一些複雜的任務,比如Scratch、App Inventor等。也可以挑戰一些複雜的編程遊戲,比如Cargo-Bot、Human Resource Machine等。
Scratch是一款由麻省理工學院(MIT) 設計開發的一款面向少年的簡易編程工具。這個軟體的特點是:使用者可以不認識英文單詞,也可以不會使用鍵盤。構成程序的命令和參數通過積木形狀的模塊來實現,用滑鼠拖動模塊到程序編輯欄就可以了。
10歲 :學習程式語言
這時候,孩子們可以開始學習一種真正的程式語言,比如Swift、Python等,嘗試編寫一些軟體,初步學習算法、數據結構以及面向對象編程。
Swift,蘋果於2014年WWDC(蘋果開發者大會)發布的新開發語言,可與Objective-C*共同運行於Mac OS和iOS平臺,用於搭建基於蘋果平臺的應用程式。Swift是一款易學易用的程式語言,還是第一套具有與腳本語言同樣的表現力和趣味性的系統程式語言。
Arduino是一款便捷靈活、方便上手的開源電子原型平臺,包含硬體(各種型號的Arduino板)和軟體(Arduino IDE)。它構建於開放原始碼simple I/O介面版,並且具有使用類似Java、C語言的Processing/Wiring開發環境。只要在IDE中編寫程序代碼,將程序上傳到Arduino電路板後,程序便會告訴Arduino電路板要做些什麼了。
我認為對於接受度好的孩子,可視化編程的部分可以跳過去,那個不是學編程的必經階段。或者這麼說,如果你是7~9歲才開始入門的,那麼用Scratch之類的東西沒問題;如果你4歲時已經入門了,那麼7-9歲時可以不必按部就班地上Scratch,直接奔著Swift、Python這種正經程式語言去就可以了。就好像學自行車不是一定要用輔助輪一樣,有些孩子不用輔助輪反而學得快。
還記得我小時候,正是鄧小平提出「教育要從娃娃抓起」,老實說大家要學會計算機,否則就是新時代的文盲。
那麼不會編程會不會成為新時代的文盲,這不好說,但是世界即將進入人工智慧的時代,小朋友的學習,自然要與時俱進。
巴巴騰兒童機器人——中國孩子的良師益友,智慧好夥伴