作者丨Patrick
譯者 | 核子可樂
策劃 | 張曉楠
退休 COBOL 程序員說:扶我起來~
穆罕默德·賽義夫·伊斯蘭( Saiful Islam)可算是嘗到紐約州失業保險系統陳舊與低效的苦頭了。新冠疫情爆發之初,他按照要求前往斯臺普斯的一處機構,把工資單傳真到奧爾巴尼。
伊斯蘭是一名 Lyft 司機,住在皇后區。自從 35 年前從孟加拉國移民到美國以來,這是他第一次申請失業救濟。雖然自己不懂什么高科技,但聽說需要用傳真機發送自己的申請時,他還是被驚到了。
但他還是戴上口罩和手套,步行前往斯臺普斯的這個辦事機構。在過去三周內,已經有超過 45 萬紐約民眾申請失業救濟但卻無功而返——而伊斯蘭也不幸淪為其中一員。直到上周末,他仍然在等待著可能永遠不會到來的系統回應。
老舊失業保險系統告急
伊斯蘭跟其他想要申請失業救濟的紐約州居民們發現:陳舊的失業保險系統根本無法支撐起突如其來的訪問峰值。這還不包括繁瑣的流程:伊斯蘭花了四天才弄明白靠譜的申請流程。
早在去年夏天,州政府官員就坦言:紐約州的失業保險系統還停留在上個世紀,相關應用程序存在技術問題。這套系統是啥時候編寫的呢?編寫于上世紀七十到八十年代,距今有 40 多年了。
今年 3 月,隨著成千上萬突然失去工作的人開始登錄勞工部網站并撥打熱線,這套失業保險系統瞬間陷入癱瘓。
由于系統一直無法登陸、熱線電話連續幾天無人接聽,部分福利申請站點甚至開始彈出提示消息,要求用戶使用網景瀏覽器(一款早已滅亡的瀏覽器)!
紐約州的失業保險系統雖然不靈了,但是他們還真不是沒有想過解決辦法。該州曾在 2017 年就對老舊失業保險系統進行了公開招標,并于去年與總部位于孟買的塔塔咨詢服務公司簽下了一份為期五年、價值 5600 萬美元的合同。只不過面對這樣一個“過時且成本高昂的大型機”系統,州政府沒想到改造起來會這么復雜。
紐約州州長安德魯·科莫(Andrew M. Cuomo)周二承認,該州的失業救濟申請程序確實存在問題:“我對此感到抱歉,我們必須盡快拿出解決方案?!?/p>
懂 COBOL 的退休程序員成了香餑餑
當然,在應對失業救濟申請方面遭遇困境的絕不僅僅紐約一個州。
上周四,佛羅里達州經濟機會部門執行主任在該州失業網站發生故障后公開道歉。事實上,審計人員早在去年就曾向州長羅恩·德桑蒂斯(Ron )通報過關于該網站的問題。
此外,康涅狄格州勞工部發言人南?!な返俜宜梗∟ancy )表示,該州積壓的申請可能需要五個星期才能處理完成——順帶一提,他們的計算機系統也已經是擁有 40 多年歷史的老古董了。
史蒂芬斯還表示:康涅狄格州不得不求助于退休程序員,因為只有他們了解如何使用 COBOL(去年剛剛過完 60 歲生日,是一種幾乎已經消亡的計算機語言)進行編程。她解釋道:”康涅狄格州及其他四個州已經啟動一個對現有系統進行修復的聯合項目,但項目至少要在明年才能全面完成?!?/p>
無獨有偶,在求助懂 COBOL 的程序員方面,這個尷尬還不是孤例。前兩天新澤西州州長菲爾·墨菲( Phil Murphy )也在新聞發布會上表示政府急需懂 COBOL 的程序員,幫助修復他們已經使用了 40 多年的失業保險系統。時薪為 55 美元至 85 美元。
COBOL 為什么可能比我們所有人都要長壽?
當很多人聽到 COBOL 的時候,第一印象就是:都成化石了吧?事實并非如此。正如 Steven J. Vaughan-Nichols 所寫,這門去年 10 月迎來自己 60 歲生日的古老編程語言甚至可能“比我們所有人都要長壽”。
閱讀這篇文章的大多數人在 1959 年還沒有出生,那一年 Mary Hawes 提出了 COBOL (Common - ,面向商業的通用語言)的概念,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 語言”
參考鏈接:
為你推薦
InfoQ Pro 是 InfoQ 專為技術早期開拓者和樂于鉆研的技術探險者打造的專業媒體服務平臺。
InfoQ Pro 推出新人福利,掃描下方二維碼關注 InfoQ Pro,即可免費獲得InfoQ全套迷你書,機會難得,快來領取吧!
點個在看少個 bug
*請認真填寫需求信息,我們會在24小時內與您取得聯系。