IT仍然執行在Java 8上 ·Vicki Boykis

banq發表於2019-05-11

在2011年的某個時候,我偶然發現了一個名為Hacker News的不起眼的網站。當時,我是一名主要使用Excel和SAS工作的資料分析師,幾乎所有的頭條新聞對我來說都很陌生。Git差異?PyPy?實時API?
然而,我很快意識到,HN是科技行業的心跳,這裡討論了很多線索和興趣點。
我仍然給新手提供每天閱讀駭客新聞的建議,點選他們感興趣的連結,以及谷歌他們不知道的東西,直到認識到它有意義。
但是,一開始,我讀的越多,我對自己(為什麼我不知道一切?)以及我工作環境中的所有事情都變得越厭惡。
我們為什麼還在使用Oracle?為什麼我有一臺糟糕的Windows機器?為什麼我們不使用Gmail而不是Outlook?為什麼我們的團隊不被稱為“資料科學”團隊,為什麼我們不做“資料科學”呢?
我學到的越多,我就越生氣,我個人知道越得多,就意識到我的公司多麼可怕。

我沒有意識到的是,我正在成為認知的犧牲品,今天的世界有各種可能被稱為過濾泡沫,錨定,可用性或框架效果的各種組合形式,使您相信您最瞭解整個世界的實際運作方式。
Hacker News教給我的是整個IT行業的全新研究,使用Go和Rust,Docker和CI來構建令人驚歎的產品。

轉變
經過十多年的技術,在各種不同的環境中,從財富500強公司到創業公司,我終於意識到大多數業務和開發人員根本不會圍繞HN的趨勢。
大多數開發商 - 和公司 - 都是Scott Hanselman 之前稱之為99%的一部分:

我的同事達米安·愛德華茲和我假,被稱之為Dark Matter Developers(暗物質開發者)。不會閱讀很多部落格,他們從不寫部落格,他們不會去使用者群,他們不會發推文或Facebook,而且你不經常在大型會議上看到他們。
許多技術不會以這種速度迭代,也不應該。嵌入式開發人員仍在使用C和C ++。兩者都是非常成熟和易於理解的語言,在社交網路上不需要大量的流失或恐慌。
暗物質開發者在哪裡?也許在當地市政府或小型辦公室使用ASP.NET 1.1。也許在VB6的墨西哥裝瓶廠工作。也許他們正在大型晶片製造商處編寫PHP日曆應用程式。


雖然有些公司正在使用Spark和Druid以及Airflow,但有些公司仍在使用Coldfusion.

Java8
在我工作的一家公司,我們經歷了SVN到Git的遷移。在許多行業中,監管仍然是一個重要的考慮因素,開發人員無法對自己的計算機進行管理訪問。由於升級安全問題,我在Java 8仍然是最新版本的環境中開發。
根據2018年的JVM生態系統報告, Java 8 仍然是主要的開發環境
如果您認為這很糟糕,請檢視Oracle

Oracle資料庫12.2。它接近2500萬行C程式碼。這是一個難以想象的恐怖!您不能在不破壞現有測試1000次的情況下更改產品中的單行程式碼。


首先,技術不像人們想象那樣快速前進,公司有政治。有不更新的理由。在某些情況下,這是國家安全問題(如NASA),在其他人中,人們習慣了他們所知道的。

在某些情況下,這既是安全問題,也不是優先事項。這就是許多政府機構以PDF格式或XML格式返回資料的原因。但是,不僅政府機構正在執行XML。

出於各種原因以及更多原因,大多數處於美國成功巔峰的公司都在幕後悄悄地執行Windows Server 2012。

而且,他們不僅在Windows 2012上執行Java,而且還沒有進行機器學習,AI,或者你聽說過的任何性感流行語。大多數業務規則仍然只是:硬編碼hardcoded的案例是由業務決定,傳遞到業務分析師,並在Excel表格中完成,一半是因為bureacracy和intraction,有時,因為你只是不需要機器學習。

最後,第三部分是“暗物質”效應,大多數開發人員根本不會談論他們正在做的平凡工作。當每個人都在做Tensorflow.js時,誰願意在銀行系統之間分享他們的C#事務交易?

在今天的數千名開發人員線上的線上經濟中,聲音最響亮的人獲得的權重最大。而最響亮的人肯定不會是那些使用遺留系統的人。

我擔心的是駭客新聞,程式設計,技術新聞和會議等地方讓我們看到了許多關於我們行業的技術前瞻性偏見,這些偏見對新技術的承諾過於熱烈,而沒有談論權衡。

最響亮的聲音獲得最大的可信度,因此,我們正在聽到我們公司也許不需要的分散式網路和佇列以及無伺服器微服務以及機器學習平臺的複雜設定和過度工程系統,以及大多數接受我們工作的其他開發人員都無法與之相關,甚至無法與之合作。

如果技術實際上是陳舊的和過時的,並且替換它的代價低於保留它的代價,我們當然不應該跳過用最新和最好的替代它。雖然我們應該公平地評估新工具,但大多數情況下,Postgres工作得很好

無論好壞,世界仍然在Excel,Java 8和Sharepoint上執行,我認為對於我們來說,技術專業人員要記住並注意這一點非常重要。

HN點評
有趣的是,從純粹的技術角度來看,Java(甚至是5年前的Java 8,當然還有最新版本)遠遠領先於大多數其他在HN上大肆炒作的東西(以及不那麼大肆宣傳的東西)。事實上,沒有任何其他平臺能夠與最先進的Java最佳化編譯器相比,它有最先進的GC和低開銷,以及能生產中進行分析/監控/管理相結合。關於這些問題的許多前沿開發和技術突破繼續在Java中進行發展中(披露:我在OpenJDK全職工作)。就在過去的幾年裡,我們已經看到了開源GC的釋出,最壞情況的停頓時間不到2毫秒(ZGC和Shenandoah),這是最佳化編譯器(Graal / Truffle)的一次革命,而且 即將釋出的低開銷深度剖析(JFR)流媒體訪問版本。因此Java不僅是嚴肅的伺服器端軟體的安全選擇; 這也是前沿。

相關文章