學計算機,最好不要讀博士

來源: 2021-03-05 18:38:38 [博客] [舊帖] [給我悄悄話] 本文已被閱讀:

聽說一個來美國讀計算機博士的小留因為做不下去了,自殺了 

今天剛剛我回答網友什麽是Data Science的:

古希臘Pythagoras說過,萬物皆數。

早期計算機語言,Fortran和lisp,介於不同的理念。Fortran認為最基本的是number,而LISP認為是函數公式function。所以產生了2種不同的語言,Fortran以變量為基礎,任何結果從基本的幾個變量得到,而LISP以function為基礎,任何結果都從不斷調用函數得到。

後來發現,這些都不能解決實際問題。最重要的是Data,所以產生了Set language,以Edgar Codd的Relational 數據上的SQL把幾乎所有的應用程序都是建立在 Data driven之上的。但是SQL的問題在於一是速度慢,二是不能處理非結構性數據,所以NoSQL的大數據開始興起,Data mining從cube分析轉向大數據。人工智能從以前以為的算法問題,轉化成數據問題。現在的人工智能,machine learning, deep learning,都可以囊括在data science裏麵。data science概念的外延不斷擴大,幾乎無所不包了。

另外,大學裏麵的data science學不到什麽,頂尖的都在工業界。Data science的重大進展幾乎都是工業界做出的

R不是革命性的語言。而SQL是!

Simula是革命性語言一樣,因為是第一個OO語言。不是單純的把世界看成number,或者function。而是看成一個組合Object。裏麵有member, 有function,有各種acess level

然而,如何整合relational database(SQL)和OO object(C++,Java)成了關鍵,加上文件從 XML到 JSON。

R基本上不重要,就像SAS不重要。他們能做的,Python也可以做,而且做的更好。學習data science,不是學習一門語言,而是學習從語言(Python也好,R也好),到技術(從statistics,到數據分析,到machine learning),到平台(從 RapidMiner到Anaconda, 到Matlab,,,)到構架(從TensorFlow到Hadoop),到Visualization(2D到3D模擬,從 surface rendering 到 volume rendering)....

上麵這些技術,基本上全是工業界的發明創造,老實說,大學落後工業界幾個年代,大部分大學教授根本跟不上工業界的步伐。前麵我講過這個觀點,受到不少網友嘲笑。但我還是要說,在大學攻讀什麽計算機博士,完全是在浪費金錢和生命 (除非極個別的幾個大學計算機大拿教授)