編程是技能導向的,不是知識導向的

第一節,編程入門。

回顧我掌握編程技能的過程,大部分時候,真正掌握實戰技能的時候,都是在解決實際工作需要的問題中發生的。

早期在學校的時候,我學習編程也硬着骨頭啃過一些書,但是那些更像是把一些要訣和口訣硬記憶在腦子裏作爲線索,在以後用到的時候能想到這些線索再去查。

所以,我的感覺是編程並需要像數學一樣,從小學1年級開始,體系化的逐級爬格子學習。這更多是體系化知識的學習需要的。

而編程,更多的是一種技能。什麼是技能?技能就像學自行車一樣,你一輩子只需要學會一次騎自行車就學會了,以後過多久你都會知道如何讓身體保持平衡。當然,如果你要練習騎自行車的雜技,那是需要進一步練習。正如編程裏面刷 Leetcode 一樣。

回到解決問題這個主題。編程大部分時候是面向機器解決問題的過程。這也意味着解決問題不只是面向機器這一面。很多時候,當涉及到多人協作,解決問題就涉及到如何有效協作解決問題。在公司裏面,解決問題又和公司的組織架構有關係,例如你要找其他組的人協調解決問題是否需要先讓你的上司找他的上司打個招呼。

操作系統、算法、數據庫,網絡,雲計算,以及GPT式AI。計算機提供了一層又一層的抽象,這些抽象都是我們解決問題的工具。面向機器解決問題,總是不斷重複着如何把資源虛擬化,包括存儲資源、計算資源、以及其他各種可虛擬化爲單位格子的資源,虛擬化之後,有個調度器(例如操作系統就是硬件虛擬化後調度器,K8S就是雲資源容器化後的調度器)。在這個基礎上,就有了服務的能力,服務就是背後的調度器+一組超買的虛擬化資源提供的API。API將資源的能力數字化成可無限切割的編程接口。

第二節,does make money is a programable problem?

即然編程是解決問題。make money 算是一個問題麼?如果這是一個問題,也在 problem solve 的範圍內。但是 make money 是否是可編程解決的問題呢?curios

典型的編程解決問題。proram = data structure + algorithm。 對於 make money, data structure 是什麼? algorithm 是什麼。
程序需要有一個 CPU/GPU 來反覆運行編寫好的指令。make money 的過程中,我們設計了可以反覆被執行的程序了麼?例如上班-獲得工資,是一組O(N),N=996的一種算法。其他時候我們似乎沒有遵循這樣的問題解決方案。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章