為什麼人人都要學程式設計

2021-06-28 00:40:15 字數 2565 閱讀 2446

如果你對《猩球崛起》這部電復印象深刻,你一定不會忘記黑猩猩凱撒是如何一步一步從猩猩變成和人類相似,甚至智力超越大部分人類的智慧型生物。其中人類是如何判斷出猩猩的智力達到和人類相似的水平呢?那就是漢諾塔的遊戲,如果在一段時間內,可以達到了15步就完成遊戲,那麼就認為猩猩的智力已經達到人類的水平。

為什麼這樣判斷呢?因為對於動物來說,人與之最大的不同在於「人懂得思考」,會思考的生物意味著具備了「智慧型」。

還有乙個故事曾經引起許多人討論:中國的孩子擅長數學,尤其是心算,大部分國外的同年齡層孩子則連簡單的計算都要使用計算器。能否說中國的孩子真的比較厲害呢?這個故事最後提出了乙個有趣的事實:大部分中國的孩子雖然數學很厲害,但創新能力並不如國外。

且不說這個事情究竟是什麼原因。至少讓我想起自己小時候的一件事:讀書時期,我非常鄙視使用計算器的人,盡可能地打草稿筆算和心算。當年覺得自己算數太厲害,但今天看來,卻是頗有傻呆萌的屬性。條條大路通羅馬,但總是會有最佳的一條路,而這條路並不是不假思索走出來的,是先經過完善的思考才能選出最佳的決策。

我的表弟現在正在死背九九乘法表,但總是記不住,我問他,你知道九九乘法的意思嗎?他回答:11得1,12得……99得81。很顯然,他並不真正理解乘法表的意義。我甚至想說基礎教育的教師太失職,但這不是今天想說的觀點。從教學角度來看,如果做成乙個金字塔圖或者樹形圖,或者運用更為簡單得故事,可能小孩子會更理解九九乘法表的意思。

「理解」和「思考」是至關重要的。此外,不得不吐槽一句,九九乘法表不過是古人的算數口訣,在計算機盛行的今天,這個乘法表的價值除了啟蒙,意義不大。

所以人在從小到大的認知過程中其實很容易遇到一些學習的誤區,比如重視下苦功,而忽視思維的培養,這是非常奇怪的一件事情。但我身邊有一群人卻與之相反,他們「懶得要命」,不願下苦功,怎麼方便怎麼來;但他們又非常謹慎,邏輯嚴謹,這就是一群聰明的程式設計師。

請注意我用了「懶得要命」這樣的形容詞,其實我想表達的是「效率」。對於人來說,可以最快地提高效率,關鍵因素之一就是使用工具。程式設計就是這樣的工具,但程式設計的問題在於,任何程式都是基於人的思考。

凱撒變成智慧型生物在於思考,不同孩子的創新能力在於思考。思考的重要性,不需要我多闡述,但大部分時候,人類其實是懶得去思考問題的,甚至是缺乏有效的思考方式去解決問題——而程式設計是培養思考方式最好的方式之一。因此,我說:人人都要學程式設計。

程式設計本身是人腦思維方式的對映。如果沒有經過專業訓練的人,大部分時候很難發現自己的思維缺陷和問題。如果學習程式設計,則可以有效地提高自己思維的完整性和邏輯性,這種思維方式的培養,是非常立桿見影的。大部分高校都會開設邏輯學的課程,但傳統的教育方式過於文字化,而不是通過實踐去培養。程式設計本身就是這樣乙個培養思維的方式,甚至可以看成是乙個有趣的大腦遊戲,更容易幫助人掌握邏輯思考的能力。

阿基公尺德曾經說過,給我乙個支點,我可以蹺起地球。程式設計對於大部分人來說,就是這樣乙個強大的支點。隨著網際網路不斷地深入人心,大部分人都看到了網際網路的力量。這種力量並非不可掌握。如果你還沉浸在**大肆宣傳的9歲少年自主開發出了一款ios遊戲並實現盈利,那麼請不要驚訝,而是嘗試去學習程式設計。相信6個月後你也可以做到。

就算你不想學程式設計,覺得自己不夠聰明,不適合學習也沒關係。至少要懂得最基礎的程式設計原理。正如多年之前許多人都不知道開車是一項多麼容易的事情,大部分人總是這樣告訴自己:「我學不會開車」。但隨著經濟發展,汽車作為一項貼近生活的產品逐漸成為人人必備。當這個時候到來,你可以不懂開車,但一定要了解交通規則。

除了功利的目的之外,其實我更想談談程式設計帶來的樂趣

知名積極心理學家公尺哈里在ted曾提到這樣乙個有趣的想法:人的幸福感從哪兒獲得?大部分時候,人的幸福感其實源自一種滿足,而這種滿足其實來自一種叫做「心流」的體驗。何謂心流?就是當你全程專注到乙個目標上,享受在專注做事情不斷帶來的滿足和激情,這會讓人感受到做事情的樂趣——這種樂趣也帶來高效的工作效率。

程式設計是我經歷過最容易讓人陷入「心流體驗」的事情。我曾經茶飯不思,只為了思考一段**為什麼沒有執行成功。當經過多次思考和嘗試,最後解決問題時,內心有極強的滿足感。這真的是一種非常棒的體驗。

程式設計還是乙個非常高效的,用於實現想法的工具,對於小孩子來說,樂高是他們塑造世界的玩具;對於**來說,程式設計其實就是乙個更加具備拓展性的「樂高」。比如我的朋友劉嘉俊就寫了乙個「天使與魔鬼」的小遊戲,真酷!感興趣的朋友可以看看他寫的《實踐出真知:零基礎小白學程式設計做遊戲的 14 周歷程》。

作為一名產品經理,我日常最多的時候都是在處理文件,這個事情非常讓人頭疼。相信大部分坐在辦公室,需要通過電腦辦公的文職人員也有這樣的煩惱。如果你略懂程式設計,就可以學習git,實現有效的文件管理——比如我在寫書的過程中,通過markdown和github,進行寫書和存檔的活動,不僅可以看到每一次的修改,還可以避免誤刪、遺失文件等意外。

隨著計算機,我或許應該稱之為具備高效能計算能力的裝置,不斷地影響到人的生活和工作,了解網際網路並可以通過程式設計加入到這個「新潮」的活動中,是一件值得人思考的事情。比如工業化時代,人被機器取代,過幾年,人是不是會被機械人取代?避免這種「逆襲」的途徑之一就是了解程式設計,學習程式設計,成為思考者,而不是純粹的執行者。

此外,因為懂得程式設計,提高了工作和生活的效率,解放了大腦,其實也是一種「幸福感」。

人人都應該學程式設計。當你掌握了這個工具,至少你擁有了一把鑰匙。這把鑰匙可以開啟一扇通過「自由」「平等」「高效」的大門。我相信,凱撒如果學會了程式設計,那真真切切地有可能改變世界,成為真正的智慧型生物,而猩球崛起的第二部絕對不是那樣的結局。

為什麼人人都要學程式設計

如果你對 猩球崛起 這部電復印象深刻,你一定不會忘記黑猩猩凱撒是如何一步一步從猩猩變成和人類相似,甚至智力超越大部分人類的智慧型生物。其中人類是如何判斷出猩猩的智力達到和人類相似的水平呢?那就是漢諾塔的遊戲,如果在一段時間內,可以達到了15步就完成遊戲,那麼就認為猩猩的智力已經達到人類的水平。為什麼...

為什麼人人都愛黑產品經理?

葉韻度 我贊成 張大壯 說的今年產品經理大行其道導致魚龍混雜。大家愛黑產品經理個人覺得有以下原因 1 產品經理是乙個無冕之王。產品經理最悲劇的事情是拿著太監的權利去做皇帝的事情,這種事情相信沒有太多人喜歡。大多普通的產品經理沒有實權,只對產品有管理的許可權,但對人一般是沒有管理權利的,但產品最終都說...

為什麼人要抑鬱

乙個博士畢業,要經過多少道坎啊!讀書報告 開題預答辯 匿名評審 答辯無論哪乙個環節出錯,都會讓人抑鬱。尤其是開題和預答辯,導師一句話,沒有創新性 納悶意味著,你的期望和打算,一切都完了。3年 4年 5年 6年,延期,再延期。什麼時候是個頭啊 女生於是開始痛哭流涕,男生開始睜著帶血絲的眼睛,作崩潰狀。...