美政府部分部門系統老化相關程序員很多早就退休了
據國外媒體報導,新冠病毒疫情暴露了美國一些部門計算機系統老化、難以更新的問題,它們也缺乏專家人才來解決這些問題。政府向數百萬新失業人口發放數十億美元經濟救助的行動,因為一種有60年曆史的古老編程語言而受到延緩。
資料圖
以下是翻譯內容:
美國政府3月底通過了2.2萬億美元救助法案,當中包括每週增加600美元的失業救濟金。但在國家機構更新技術系統來落實法案並處理大量湧現的新申請之前,這筆錢不會落到任何人手裡。
俄克拉何馬州正試圖盡快落實救助法案,但是一些失業救助申請目前需要長達兩週的時間來處理,因為政府的大型計算機是運行在一種有60年曆史的被稱為COBOL的編程語言上。
俄克拉荷馬州就業安全委員會執行主任羅賓·羅伯森(Robin Roberson)說,“這是救助法案實施過程中最大的問題。我們的大型主機已經有30多年的歷史了。它很難編程,它做不了什麼。而且COBOL程序員有些稀缺。”
9個星期前,羅伯森開始上任,任務之一是升級這個系統,但是還沒取得任何實際進展,疫情便襲來。她說,俄克拉何馬州的其它政府機構以及其它地區也面臨著類似的問題。
康涅狄格州勞工部告訴人們要有耐心,它正在與專家們合作更新COBOL代碼來實施政府救助計劃。本月早些時候,新澤西州州長菲爾·墨菲(Phil Murphy)也呼籲COBOL程序員來幫助處理該州的計算機問題。
人才短缺
多年來,COBOL人才短缺的狀況一直在加劇,原因包括科技行業的勢利、正規培訓有限、專家隊伍老化、雇主不願給這種稀缺人才提供優厚薪酬等等。
“這是一場災難。”75歲的馬哈茂德·埃澤爾丁(Mahmoud Ezzeldin)說。他在保險公司藍十字藍盾和美國國稅局從事COBOL計算機系統工作有幾十年的時間。“COBOL很難學,而且不是專為互聯網設計的。大學畢業生喜歡學一些簡單的東西,我不能怪責他們。”
埃澤爾丁住在華盛頓特區附近,他願意義務幫助緩解此次COBOL難題。值得一提的是,他已經退休了。據市場研究公司Gartner估計,COBOL程序員的平均年齡超過60歲。它在2004年進行統計時發現該編程語言有200萬專家,估計這個數字每年下降5%。相比之下,據瑞銀(UBS)的數據,軟件開發者總數約為2500萬。
通常,當一種編程語言的需求超過了稱職的程序員的供應時,科技行業就會相應做出調整。近年來,大學裡的計算機科學課程增加了很多,市面上也開設了不少的編程訓練營,意在快速培訓人們學習使用Java、Python和其他的語言。但是COBOL的情況不一樣。
COBOL出現於1950年代末,當時高校還沒有開設計算機科學課程。由於沒有學術界的支持,許多COBOL程序員是在政府機構以及保險、銀行和航班預訂等領域的工作中學習這門編程語言的。他們被視作科技行業的藍領工人。
“我真的不建議現在的學生學習COBOL。所有的相關工作都是維護什麼的,沒什麼吸引力。”斯坦福大學退休教授吉歐·維德霍爾德(Gio Wiederhold)說道。斯坦福大學培養了大量的計算機科學家,他們畢業以後很多都到蘋果、Facebook、谷歌等矽谷科技巨頭工作。維德霍爾德說,自從1979年到了斯坦福大學以後,他就再也沒有教過COBOL。
去年,在一份敦促多個機構將重要的舊式技術現代化的報告中,美國政府問責局26次提及COBOL。
HP Marin Group公司首席技術官菲爾·特普利茨基(Phil Teplitzky)說,目前仍有多達2400億行COBOL代碼在使用。該公司致力於幫助企業更好地利用舊式計算系統。
幾乎沒有什麼文檔記載解釋這些系統是如何在幾十年前建立起來的,因此政府機構和企業常常依賴於程序員去記住它們是如何做成的——特普利茨基稱COBOL是“民間傳說”。他說,許多COBOL專家已經不在人世了,但現在的救助法案需要對代碼進行重大修改,很少人懂得怎麼做。
“ 意大利麵條式代碼”
COBOL代碼是以舊式方式編寫,這讓它也難以更新。現代計算語言把程序分成若干塊,每一塊都有特定的用途。而COBOL程序員往往是將所有的東西編織在一起,這意味著更改某一部分的代碼會破壞或禁用程序的其他部分。這種現像被稱為“意大利麵條式代碼”,這是該語言最大的一個難題。它也讓編程工作變得非常艱難,非常耗時。
運行COBOL的大型計算機大多數是由IBM生產的。多年來,該公司一直在幫助客戶尋找COBOL專家,也在努力說服新的受訓人員接手相關工作。上週,它宣布了一個新的培訓課程,向初學者教授COBOL,並讓有經驗的專業人士重新學習。
“人們開始注意到這樣一個事實,即有些關鍵的計算系統可能沒有得到關注。” IBM副總裁巴里·貝克(Barry Baker)表示,“這是一次推銷COBOL和老式技術的機會,可以藉此來教導孩子們從事一些很有意義的事情。”
Gartner分析師托馬斯·克利內克特(Thomas Klinect)認為,在招募人員來維持這些機器的運行上,公司和其他組織機構必須拿出更多的誠意。當中包括提高薪酬。
“看那些招聘信息,你會發現它們都是些初級職位,但要求有20年的工作經驗。”他說道,“雇主只想付給你3.5萬美元的年薪。”
現年53歲的思科首席執行官查克·羅賓斯(Chuck Robbins)說,他剛出來工作時就是在美國銀行的前身意大利銀行做COBOL程序員。
“值得高興的是,我記得,COBOL並不是那種難度很大的編程語言,”他說,“我相信有些年輕人能學懂。”