大部分的家長可能都會讓自己的孩子至少學習樂器,運動或棋類中的一項甚至幾項。但你有沒有想過讓你的孩子盡早(5-7歲)開始學習編程呢?相信很多家長都會有這樣的疑惑:為什么要讓那么小的孩子學習編程呢?編程對孩子有些什么好處?如果孩子連數學、語文、英語這些基礎都沒掌握好,他們能學好編程嗎?我暫且不談我的觀點,而是試著讓你了解那些你可能更信任的人是怎么說的:
編程應當與ABC字母表和顏色同時得到教學,所有人都應該更早地學習如何編程。——美國總統奧巴馬。
人人都應該學習一門計算機語言,因為它將教會你如何思考。——蘋果創始人 喬布斯
比爾蓋茨和扎克伯格等一界科技大佬們更是直接通過在線視頻教授孩子學習編程。
這些在各個領域最優秀的人物為什么會不約而同地認識到編程對于每個人的重要性呢?我想,或許是因為他們比我們大多數人都更早地意識到了社會正在經歷的變革以及它的發展方向。
人工智能將取代所有簡單重復腦力勞動 —— 百度CEO 李彥宏
未來20年,美國可能被機器人取代的職位比例為47%,英國為35% —— 牛津大學研究報告
富士康正在實施百萬機器人計劃,替代目前大量使用的一線工人 —— 富士康總裁 郭臺銘
回到我們的主題,為什么應該讓你的孩子盡早學習編程呢?
學習編程能讓孩子們變得更好
我幾乎每周都會和一群朋友聚一聚,當然也包括我們的孩子(都在5-7歲),我是我們這個圈子里唯一會寫程序的,所以每次我都會被要求花上1個小時,通過一些有趣的實例去教這些孩子們學習編程。我對于朋友們安排的這個任務很感興趣,雖然不收取任何費用,但每次我還是會提前做一些準備,并為我的課程制定一些中長期的目標。就這樣,通過一段時間的教學,我發現幾乎每個孩子都有了不同程度的進步,而這種進步不僅僅體現在編程方面,應該說這些孩子比他們學習編程之前變得更好了。
- 孩子們通過編程制作出了包含家人照片的簡單網頁,他們覺得這是一件很酷的事情,朋友們看到后都很羨慕他們的這個新技能,孩子們變得比以前更加開放,更有自信了。
- 通過一次次的動手開發,我看到孩子們變得更有耐心,也更有專注力了。而更重要的是在這個過程中,他們會嘗試著去自己解決遇到的問題。
- 在完成我布置的一個個任務之后,孩子們往往會自己想著用掌握的這些很基礎的編程技巧,去實現出他們想象的更復雜的東西來,他們將自己的創意通過編程轉化為了現實。
- 更多好的想法,隨著他們編程技能的增長不斷地被激發出來,你會發現他們的好奇心和求知欲都變得比以前更強了。
以上是我親眼看到孩子們的一些變化,但你可能會問,讓孩子去學習畫畫、彈琴不一樣也是激發他們的創造力嗎,跟編程相比又有什么不同呢?其實,我也經常思考這個問題,這可能更像是“授人以魚,授人以漁”的區別:當你教授孩子畫畫、舞蹈時,你教給他們的只是一項技能,它們當然也能使你的孩子變得更好,但一般來說這種技能對孩子的幫助相對有限。而當你在教授孩子編程時,你其實是在教孩子學會使用一個重要的工具,這個工具能夠以更快的速度擴展你孩子各方面的能力,并在將來為孩子創造出更多的可能性,這也將大大增強孩子在未來科技社會的競爭能力。
學習編程非常簡單而且快樂
若不是從小玩游戲,我絕不會學編程。 —— Facebook CEO 扎克伯格
我經常看到孩子們因為被家長逼著練習鋼琴、舞蹈、奧數而悶悶不樂,垂頭喪氣。但卻幾乎看不到那些不愛玩iPad上各種游戲的孩子,當我嘗試著對這樣的孩子進行一些引導,并采用我自己認為比較好的方式去教他們編程時,我發現他們同樣會愛上編程,并從中得到了很多快樂。
我曾和一些家長談論關于如何教孩子編程的話題,也經常會聽到他們的一些顧慮:
- 教孩子編程的培訓機構相對較少,并且費用往往很高。
- 我們都不會編程,所以很難去指導孩子,并衡量孩子是否學得好。
對于培訓班,我一直持比較反對的態度,很多小孩擠在一起參加統一的課程(我曾看到20,30個小孩在一起學習使用Scratch編程),而一些小班制的(4-5人一個班級)課程費用又高得離譜。其實我覺得根本沒有必要讓孩子去上什么培訓班,而且我也不認為Scratch是唯一適合用來教孩子編程的語言。我的建議是由家長親自來教,而且可以邊學邊教。編程實際上是非常簡單的,就像我寫的《[好奇心]什么是機器學習》一文中提到,我只用5分鐘就學會編寫了我的第一個用于分辨蘋果和橙子的人工智能程序。同樣的,所有的家長都可以通過自學,來教孩子編程,這樣能夠產生很好的互動,一對一的教學甚至是和孩子一起學習,效果是最好的。
另一個問題是教什么,有很多小孩是從編程語言(比如 C、JAVA、Python等)學起的,但我覺得這往往會讓孩子覺得枯燥,而失去了學習的興趣。我的建議是教孩子們那些能夠直接產生交互并確實有用的東西(比如從HTML開始,接著加入JavaScript來產生可交互的網頁,最終使用Ionic包裝成一個在App,這會是一個不錯的嘗試)。當孩子們每一節課都能看到自己的作品在進步,并且最終做出能在電腦甚至手機和iPad上跑起來的App時,他們會覺得很酷,并為此感到興奮和自豪。而在這個過程中,他們會由這一個個小任務驅動著,主動地去學習什么是條件,什么是循環,什么是函數這些編程的概念,而家長真正要做的,就是幫助孩子建立起學習編程的興趣。
對學校教育有很好的促進作用
國內的學校對孩子基礎課程的教育都是非常重視的,比如:語文、數學、英語這些,有些更是走在了世界的前面,但卻在另一些在我看來非常重要的方面缺乏足夠的重視,比如美學教育(Art and Design),計算機教育(Computer Science)。下面這張圖顯示英國要求5歲以上的孩子必須學習電腦編程。
對國內的孩子來說,我也建議盡可能早的開始學習編程,只要他們已經有了比較好的語言表達和理解能力,以及一些最基本的邏輯思維能力作為基礎就可以開始學習編程。和學習語言一樣,學習編程也是越早越好。通過學習編程,能夠非常有效地拓展孩子的思維,你會發現孩子們思維的邏輯性與延展性變得比之前更好了,另外他們也會自己創造出一種更好的學習和處理問題的方法,這對閱讀、算術、寫作等幾乎所有學科都會產生很好的促進作用。
更好地適應未來的科技社會
可以想象,未來的社會一定會變得非常有趣,但首先它一定會是一個充滿科技社會。小到控制各式各樣的科技設備來為自己服務,大到創造出新的科技來彰顯自我,這些可能都需你熟悉并掌握編程。我們今天看到的許多職業會因為科技的進步而漸漸消失,但同時會有更多新興的職業產生,而他們中的大部分可能都需要具備編程能力,這可能也是有人預測程序員可能是未來最后一個被人工智能取代的職業的原因。總之,我相信編程已不僅是信息行業對人才的需求,而將成為所有行業的需求。各行各業需要的也不僅是軟件專業人才,而是掌握編程技能的行業專業人才,我們會需要更多掌握編程技能的人。今早地讓孩子學習編程,能夠讓他們更好地適應未來的科技社會,并在未來具備更強的競爭力。
我猜很多家長或朋友可能并不贊同我的觀點,但可以把這作為一個話題,在文章下面發表你的意見或評論。如果你對我是如何教小孩編程的感興趣,也可以關注我的簡書賬號,我會在后面帶來《教孩子學編程》的系列文章。
簡書簽約作者:技匠,以上內容歡迎大家分享到朋友圈/微博等。