自從建了這個公眾號,大部分人就默認我是個數學教授,可事實上我是正宗的計算機教授,從本科到博士一直是計算機專業,畢業後至今已經從事了十幾年的計算機教學與科研工作。
前年,我參加了由全國高等學校計算機教育研究會提出的《青少年編程能力等級》系列團體標準的制定,提了許多建議(比如扭轉重算法輕結構的教學傾向等)並被採納,後來又給國內大型編程機構做過圖形化編程的課程評測,之後就有不少人諮詢我青少年編程的問題。今天,我就按自己的理解,並結合去年中國計算機大會關於青少年計算思維培養的專題研討(文中的PPT都來自於這個研討會),回答一下這幾個問題。
問題一:孩子要不要學編程?
其實,這個問題我很難回答。家長在問這個問題的時候首先要想清楚讓孩子學編程的目的是什麼?根據我的觀察,大致有三類:
盲目跟風型。這類家長對編程基本沒什麼了解,要麼是看到身邊的孩子在學編程,要麼是禁不住鋪天蓋地的廣告宣傳轟炸。他們讓孩子學編程的目的只有一個:我的孩子不能比別的孩子差!如果家長是抱著這樣的心態,那誰也拉不住。你讓他別學,他還以為你懷揣不良居心。
對這類家長,需要了解一下編程教育的作用。下面這張PPT應該能給出部分答案。編程其實不僅僅是寫代碼,更多的是對計算思維的培養,特別是抽象、分析和解決問題的能力。
功利型。很多家長讓孩子學編程其實都帶有很強的功利性,即通過參加信息奧賽讓孩子獲得升學資格或加分。畢竟在很多地區,信奧還屬於新興事物,分母比較小,孩子成功的概率相對較高。對於這類家長,其實他們心中已經有了答案。問這個問題也就是希望得到肯定的答案。下圖給了長沙市小升初和初升高的現狀說明。
思維培養型。不少家長問編程對於培養孩子的邏輯思維有沒有幫助。作為一個計算機科班出身的,我的回答必須是可以,而且是非常可以。但如果僅僅是為了培養邏輯思維,那可選擇的載體有很多,棋類、數學、編程,甚至包括寫作,都可以培養孩子的邏輯思維,編程只是一種載體而已。關鍵還得看孩子的興趣和長處。一般而言,喜歡動手的男生會比較喜歡編程,相對而言,女生一般對編程的興趣要小一點。
但需要注意的是,與數學培訓一樣,現在的編程培訓也充滿了誇大和虛假宣傳。如果看到類似於「七天學會人工智慧」、「小學學完網絡流」之類的宣傳,那一定要慎之又慎之。
問題二:什麼時候學編程合適?
小學二年級之前,建議不要學編程,因為這個階段,孩子基本的邏輯思維都沒有建立。現在鋪天蓋地的幼兒編程宣傳無非是各個機構向下搶生源的市場策略。
但與奧數一樣,在商業資本的驅使下,編程培訓的低齡化發展趨勢非常迅猛。不過有一個現象值得關注:頂級選手的培養與起步時間無明顯相關性。可以看到,湖南的省隊成員中有一大部分是初中以後才開始接觸編程的。這個結論其實與奧數也有類似之處。我一直強調的是,在合適的時間做合適的事,可以起到事半功倍的作用。
小學三四年級,有條件的可以接觸一下圖形化編程。我知道有些地區的小學信息課裡已經加入了圖形化編程的內容,但課時比較少。圖形化編程能讓孩子初步理解電腦程式是怎麼工作的,並初步培養孩子的計算思維,更重要的是所見即所得的方式容易讓孩子對編程產生興趣。
如果孩子確實對編程感興趣,那五年級以後,就可以開始純代碼的編程了。這個階段,這一部分孩子的邏輯和數學基礎應能支撐他們對程序邏輯的把握。
問題三:應該學什麼程式語言?
如果是要走這信息奧賽這條路,那C++是必須的。其實為應付競賽所學的C++,只是一點最基本的過程性語言的語法,面向對象的部分基本不涉及。
而如果不想走競賽路線,只是希望孩子能接觸一下編程,學習計算的思維,並期待很快見到編程的成果,那Python是不錯的選擇。
當然,如果要對計算機體系結構有比較深入的了解,立志於以後當系統程式設計師,那C語言是最好的選擇。
問題四:學奧數好還是學編程好?
有不少家長糾結,到底是該學奧數還是學編程。其實這歸根結底是個實用主義問題:到底是學奧數還是學編程更容易達到家長期望的目標?
這麼說吧,兩者都不容易。目前來看,信奧在優錄方面更容易一點,但要最終進入國家集訓隊達到免試入清北的目標也非常難。雖然目前看,信奧的分母小一些,但我預計,這其中存在的投機機會會讓這個分母在未來幾年迅速變大。
有些相對理性的家長擔心學信奧的風險。奧數如果學不好沒達到升學的目標,至少對中高考的數學是有幫助的。但是,如果學信奧最後沒有達成升學的目標,家長就會認為付出全都泡湯了。從升學的角度看,確實是這樣。學信奧對中高考數學的幫助可以說微乎其微,甚至會因為佔用了大量的時間而起到負面作用。但如果孩子確實喜歡編程,那麼大學以後,之前的所學就會發揮作用。而反觀奧數,除了雞娃,很可能在以後的學習和工作中就用處不大了。
記得有個家長說自己家娃高一,非常喜歡編程,立志以後要當一名優秀的程式設計師。但考了幾次,距離省隊的門檻還是有一段距離,問我該怎麼辦?我的建議是可以再給他一個學期的機會,如果還不行,那就把這個興趣愛好暫時先放一放,等考上理想的大學後再充分釋放自己的能量。這其實也是一種折中和無奈之舉。我們要尊重理想,也需要在理想和現實之間做好平衡,這並不容易。
數學培訓歷史比較悠久,各大機構一般都對普通校內提升和奧數做了明確的班型區分。而編程培訓市場發展時間短,在這方面還不完善。現在的許多家長談到編程就會跟信奧掛鈎,一方面是家長的功利性驅使,另一方面則是市場並沒有將編程普及教育和信奧有效脫鉤。但與奧數一樣,適合信息奧賽的永遠只是那麼一小部分人,家長不要期望過高。
對於編程普及教育存在的問題,研討會上也進行了很好的總結。其中,與數學培訓類似,超前教育與師資缺乏的問題是教學本身中極為嚴重的問題,而且這兩個問題比數學培訓市場更為嚴重。
如果文章對你有一些幫助,
請 你 優 雅 的
點 贊、 轉發