金灣雜文

不計利害,但問是非
正文

胡思亂想錄十一 -- 下一代還需學編程嗎?

(2024-03-15 21:18:40) 下一個

馬斯克和黃教主都說下輩子沒必要學編程了, 他們的理由很充分: 一來人工智能已經幫你做了,還需要學它作甚?二來,編程語言已經變成自然語言,要人工智能幹啥,自然對話即可。我不是大V,但編程二十餘載,多少有些心得, 我倒覺學校應該把編程例如基礎教學大綱(cirriculum),讓每個孩子都學一下。我的理由如下:

 

其一,如同很多高科技,我們往往遠遠低估科技的生命力,就如當年科技大佬對電燈,對PC,對互聯網的判斷一樣, 將來需要用到編程的地方隻會越多,不會越少。用電如此,半導體芯片的用量如此,軟件的代碼行數亦如此。

 

其次,用自然語言指使大模型實現某一不太複雜的任務的效率永遠不可能比寫幾十行代碼來的高,如果你會編程的話。就像用自然語言描述一個數學定理,永遠不如一個等式來的簡潔,如果你會數學。我判斷仍然會有足夠多的場景,會編程依然給你一個更高的效率。當然又會編程又會大模型prompt,肯定在效率上加分更多。

 

第三,編程的訓練會強製學生學會邏輯思維,這種對邏輯思維的強調比數學更直接明了,對數學不強的文科生反而更適合。

 

總的來說,我更喜歡喬布斯的那句“programing is like a liberal art”,在二十一世紀的今天,讓孩子們多上這麽一門“liberal art”,此生隻會受益。

 
[ 打印 ]
閱讀 ()評論 (13)
評論
魔都斬妖 回複 悄悄話 就算編程不需要人,設計算法邏輯在幾百年裏還是需要人,所以學好數學是必須的。
GuoLuke2 回複 悄悄話 自然語言比編程語言難多了
泥川 回複 悄悄話 當然可以把一切都定義成自然語言。但這麽說,在他們看來,是混淆概念。他們認為兩者是有嚴格區分的。否則,說用自然語言代替編程語言,就是誤導大眾。
voiceofme 回複 悄悄話 自然語言本身就是符號係統,和數學公式,化學公式,沒有本質的區別。

自然語言本身是有歧義的,但用在某特定方麵的時候,歧義會消失。

特別是,可以被人類在某些領域的特定符號係統,比如數學公式,看成是自然語言的擴展。

實際上,現在GPT4可以理解和產出數學公式。編程也是同樣的道理。
泥川 回複 悄悄話 自然語言是古代發明的,描述人的活動和簡單自然界。雖然近代有擴展,但是它的描述能力實在是太有限了。所以數學物理要用符號係統,幾何用圖形,化學用反應式,分子結構圖。計算用編程語言。

AI也無法超越自然語言的局限。
cowwoman 回複 悄悄話 現在孩子們學編程就是以後看著AI編程。就跟看護機器生產線的操作工類似。
iask 回複 悄悄話
“怎樣描述問題,從而讓AI去尋求正確答案” 才是關鍵問題!隻要是中等規模的應用程序, AI根本無法理解人們究竟想幹什麽

編程語言不是主要問題。
GoBucks! 回複 悄悄話 馬黃的說法是對的。程序肯定不會死亡,各種應用都需要程序在背後,包括AI,除非找到更好的辦法。比如人腦沒有程序編碼,但可以做不少事情,這個人類還無法用製造。 將來程序肯定不需要那麽多人去寫,完全可以自動完成,但是算法設計應用還需要靠人。將來的程序語言也會減少,大規模模塊化,能夠互相操作,增加重複使用率。總之,程序不會死亡,但界麵會非常友好,比如你通過語言,背後就可以自動組成需要的程序,當然這部分需要維護,比起用戶則少很多。
forer 回複 悄悄話 本人是程序員,不看好眼下使用的各類程序語言。
我認為AI取代程序員的過程,並不是讓AI去寫各種各樣的程序語言,再使用目前各種語言的編譯器來編譯,而是直接生成目標二進製代碼,或是各種圖形(芯片版圖,各種CAD的輸出圖形),或是各種波形(實時控製)等。
數學語言是自然語言的子集,它足夠精確和抽象,用來描述任意一個程序功能一點都沒問題。AI完全可以理解一個用數學語言描述的過程,然後跨過所有中間形式的代碼,達到所要的目標。
誠信 回複 悄悄話 "將來需要用到編程的地方隻會越多,不會越少。"

完全同意。

馬斯克和黃教主都是在為了公司股票和商業利益,博取媒體話語權,而胡說八道而已。

voiceofme 回複 悄悄話 編程語言是需要,但不是說一定要人去用編程語言寫程序,AI 也可以用這編程語言寫程序。 程序員就不需要了。
泥川 回複 悄悄話 所以不是不要編程語言,而是需要新的編程語言。
泥川 回複 悄悄話 完全同意。

古代自然語言表達勾股定理:“求邪至日者,以日下為勾,日高為股,勾股各自乘,並而開方除之,得邪至日”。 用符號表達:x2+y2=z2。哪個簡明?

為什麽數學要用符號,不用自然語言?當然因為自然語言繁瑣,不精確,歧義,說不清。符號係統發明出來,就是讓數學能更簡明,精確,有效地表達。

用自然語言編程,類似,也很難把一些算法簡明,準確說清楚。因為本來就不是幹這個用的。

所以還是需要作為符號係統的一種編程語言。隻是有AI協助,這種編程語言可以在更高層次描述編程意圖。
登錄後才可評論.