Categories
程式開發

左耳朵耗子:二十年前編程環境和氛圍與現在有什麼不一樣?


昨天,覃超老師在極客時間部落裡問了我一個問題:“現在編程環境和氛圍與二十年前比主要變化是什麼?”

我還是把20年前的編程情況跟大家說一下,大家自己對比對比。

左耳朵耗子:二十年前編程環境和氛圍與現在有什麼不一樣? 1

20年前,能夠找到一家連上互聯網的公司是一件很不容易的事。大多數公司的辦公電腦都無法訪問互聯網。所以,寫程序時需要在桌面上摞一堆書和手冊。然後就是看MSDN和Unix下的man。記得有Google時候,大家奔走相告,說用Google找到技術問題的解決方案太容易了,一查就中!所以,到一個能上網的公司工作是頭等大事。

20年前,在家上網需要撥號,56.6Kbps的電話傳輸是你上網能得到的最大速度,一小時15元左右。電腦主流配置:奔騰133MHz,32M內存,2G硬盤,價格8000元左右。筆記本電腦,Thinkpad,需要2萬4以上。至於說程序員的月薪,大城市3000-5000元左右,小城市1000元左右。

20年前,主要的編程語言是C語言,用C寫所有端,包括前端。那個時候的程序員都需要了解很多的底層知識和基本數據結構。因為用C寫代碼基本上就意味著要重新發明一切(那時候,絕大多數程序員並不能寫出泛型的代碼,也不會分離控制邏輯和業務邏輯,而可用的框架和類庫不夠,所以,因為業務邏輯的侵入,需要重新發明各種輪子。)

20年前,Java剛剛開始,但應用不多,面向對像剛剛開始流行,Web編程剛剛開始(主要是PHP/ASP,IE3.0有Netscape),基本沒有JavaScript什麼事,主要是後端生成HTML。 Windows大行其道,Delphi/VB/PowerBuilder這樣的快速出GUI的編程IDE非常流行。

20年前,程序員不分工,要幹所有的事,前端、後端、測試、運維,全都是程序員的事,那時應該叫軟件工程師。溝通和表達能力好一些的程序員會被公司整成項目經理或售前售後。

20年前,基本上所有中國的公司還不會用(甚至不知道)源代碼的版本管理工具,代碼管理基本都是人肉備份。 Code Review基本沒有,測試和需求管理也沒有。如果哪家公司在用ISO9001的軟件開發標準,那就很牛逼了。

20年前,最有技術含量的公司是銀行,那時工行做全國大集中,無論是軟硬件,網絡和系統規模,還是業務量,都是整個國家最前沿的。

和今天有什麼不一樣?

20年前的程序員獲取知識的來源基本只有一個:讀書。今天的程序員則主要通過互聯網,不過少數還是在看書。 20年前,互聯網很不發達,程序員能沉得下心來就有大塊大塊的時間,今天的程序員被各種打斷,全是碎片時間,時間利用率不高。

20年前的程序員需要用C,所以對系統和底層知識和原理吃的比較透徹,但是生產力不高。今天的程序員有大量的框架和可重用的庫,包括開源軟件和StackOverflow等,所以,今天的程序員生產效率很高。

20年前的程序員分工不細要幹所有的事,所以比較全面。今天的程序員分工很細,所以知識面比較窄。

20年前中國的軟件工程非常非常不規範,今天的軟件工程還算比較規範(至少都會有軟件版本管理了)。

20年前的技術不多,程序員用幾個單一的技術幹所有的事,今天的技術非常多,程序員要用多種的技術來乾一件事[狗头]

20年前節奏不快,今天的節奏很快,快到有點不科學了。

左耳朵耗子今晚直播:
直面問題,咱談焦慮,談煩惱,談怎麼成長

作者介紹:

陳皓,網名“左耳朵耗子”,MegaEase 創始人 &CEO,資深技術專家,骨灰級程序員, QCon2020 全球軟件開發大會講師,極客時間《左耳聽風》專欄作者。本文首發自酷殼 CoolShell,InfoQ 獲得陳皓授權發布。