Categories
程式開發

美國多州老舊失業保險系統告急,開搶退休COBOL程序員


退休 COBOL 程序員說:扶我起來~

穆罕默德·賽義夫·伊斯蘭(Mohammed Saiful Islam)可算是嚐到紐約州失業保險系統陳舊與低效的苦頭了。新冠疫情爆發之初,他按照要求前往斯台普斯的一處機構,把工資單傳真到奧爾巴尼。

伊斯蘭是一名 Lyft 司機,住在皇后區。自從 35 年前從孟加拉國移民到美國以來,這是他第一次申請失業救濟。雖然自己不懂什麼高科技,但聽說需要用傳真機發送自己的申請時,他還是被驚到了。

美國多州老舊失業保險系統告急,開搶退休COBOL程序員 1

但他還是戴上口罩和手套,步行前往斯台普斯的這個辦事機構。在過去三週內,已經有超過 45 萬紐約民眾申請失業救濟但卻無功而返——而伊斯蘭也不幸淪為其中一員。直到上週末,他仍然在等待著可能永遠不會到來的系統回應。

老舊失業保險系統告急

伊斯蘭跟其他想要申請失業救濟的紐約州居民們發現:陳舊的失業保險系統根本無法支撐起突如其來的訪問峰值。這還不包括繁瑣的流程:伊斯蘭花了四天才弄明白靠譜的申請流程。

早在去年夏天,州政府官員就坦言:紐約州的失業保險系統還停留在上個世紀,相關應用程序存在技術問題。這套系統是啥時候編寫的呢?編寫於上世紀七十到八十年代,距今有 40 多年了。

今年 3 月,隨著成千上萬突然失去工作的人開始登錄勞工部網站並撥打熱線,這套失業保險系統瞬間陷入癱瘓。

由於系統一直無法登陸、熱線電話連續幾天無人接聽,部分福利申請站點甚至開始彈出提示消息,要求用戶使用網景瀏覽器(一款早已滅亡的瀏覽器)!

紐約州的失業保險系統雖然不靈了,但是他們還真不是沒有想過解決辦法。該州曾在 2017 年就對老舊失業保險系統進行了公開招標,並於去年與總部位於孟買的塔塔諮詢服務公司簽下了一份為期五年、價值 5600 萬美元的合同。只不過面對這樣一個“過時且成本高昂的大型機”系統,州政府沒想到改造起來會這麼複雜。

紐約州州長安德魯·科莫(Andrew M. Cuomo)週二承認,該州的失業救濟申請程序確實存在問題:“我對此感到抱歉,我們必須盡快拿出解決方案。”

懂 COBOL 的退休程序員成了香餑餑

當然,在應對失業救濟申請方面遭遇困境的絕不僅僅紐約一個州。

上週四,佛羅里達州經濟機會部門執行主任在該州失業網站發生故障後公開道歉。事實上,審計人員早在去年就曾向州長羅恩·德桑蒂斯(Ron DeSantis)通報過關於該網站的問題。

此外,康涅狄格州勞工部發言人南希·史蒂芬斯(Nancy Steffens)表示,該州積壓的申請可能需要五個星期才能處理完成——順帶一提,他們的計算機系統也已經是擁有40 多年曆史的老古董了。

史蒂芬斯還表示:康涅狄格州不得不求助於退休程序員,因為只有他們了解如何使用 COBOL(去年剛剛過完 60 歲生日,是一種幾乎已經消亡的計算機語言)進行編程。她解釋道:”康涅狄格州及其他四個州已經啟動一個對現有系統進行修復的聯合項目,但項目至少要在明年才能全面完成。“

無獨有偶,在求助懂 COBOL 的程序員方面,這個尷尬還不是孤例。前兩天新澤西州州長菲爾·墨菲( Phil Murphy )也在新聞發布會上表示政府急需懂 COBOL 的程序員,幫助修復他們已經使用了 40 多年的失業保險系統。時薪為 55 美元至 85 美元。

美國多州老舊失業保險系統告急,開搶退休COBOL程序員 2

COBOL 為什麼可能比我們所有人都要長壽?

當很多人聽到 COBOL 的時候,第一印象就是:都成化石了吧?事實並非如此。正如Steven J. Vaughan-Nichols 所寫,這門去年 10 月迎來自己 60 歲生日的古老編程語言甚至可能“比我們所有人都要長壽”。

閱讀這篇文章的大多數人在1959 年還沒有出生,那一年Mary Hawes 提出了COBOL (Common Business-Oriented Language,面向商業的通用語言)的概念,Grace Hopper(和其他人一起)隨後使其正式化並加以改進。正如 Vaughan-Nichols 所提到的那樣,Hawes 的目標是創造“一個類似英語的詞彙表,可以在不同的計算機上執行基本的業務任務”,這是一種真正的與供應商無關的語言。

Micro Focus(維護 COBOL 的公司)在與 Vaughan-Nichols 的一次談話中表示:雖然 COBOL 的年輕時代在 20 世紀 80 年代已經逐漸消失了,但它卻支撐著全球 70% 的事務處理操作。

從自動取款機中取錢?你在用 COBOL。支付抵押貸款?也是用 COBOL。打電話給呼叫中心?沒錯,那也是 COBOL。即使是假期預訂,也完全依賴於 COBOL。

一般人可能認為 COBOL 已經廢棄了幾十年了,但是 2200 億行 COBOL 卻仍然存在於我們生活裡的那些大型機中。據軟件工程研究中心 Lero 表示,2014 年 COBOL 程序的事務處理數比谷歌搜索高出了 200 倍,絕對使其相形見絀。

而且,COBOL 可不是在大型機上苟延殘喘的老糊塗。除了易讀之外,這門語言還與它的旁觀者保持著聯繫。如今,COBOL 與 Docker 容器、Java 相結合,可以運行在雲、Linux、Windows 上,或是運行在任何地方的任何設備上。它是一種高度可管理的語言,允許程序員專注於編寫應用程序,而 COBOL 則負責處理底層操作系統的複雜性。

如今,COBOL 最大的風險是越來​​越難找到懂它的程序員了,這也是新澤西州州長要在發布會上公開招募退休的 COBOL 程序員的原因。

考慮到替換 COBOL 系統的成本和風險,這種語言可能還有幾十年的時間要和我們一起共存。

結束語

因為有關 COBOL 的討論成為 Reddit 上熱議話題,InfoQ 此前還發起過一次“COBOL 還有沒有未來了?”的話題討論。有位網友的留言調侃了一把 COBOL,也讓我們感受到了大家對 COBOL 的複雜感情。

讓我想起在知乎上看到的冷笑話:一個 Cobol 程序員在解決千年蟲問題上掙了大筆的錢,以至於他有足夠的資金在他死後將自己的身體冰封起來。未來的某一天,他意外的被復活了。

當問起為什麼自己會被解凍,他被人告知:

“現在是 9999 年 – 而你懂 Cobol 語言”

美國多州老舊失業保險系統告急,開搶退休COBOL程序員 3

參考鏈接:

https://www.nytimes.com/2020/04/04/nyregion/coronavirus-ny-unemployment-benefits.html
https://learnworthy.net/could-java-be-the-next-cobol