新澤西州長急聘COBOL程序員,60歲的COBOL憑什么活到現(xiàn)在
原創(chuàng)【51CTO.com原創(chuàng)稿件】美國新澤西州的州長 4 月 5 日在電視上宣布當(dāng)?shù)劂y行急需 COBOL 程序員來處理政府財務(wù)系統(tǒng)的一些問題,包括最近大量增加的失業(yè)補(bǔ)助支票的發(fā)放等等。
圖片來自 Pexels
新澤西州州長在急求 COBOL 程序員
最近美國新澤西州州長菲兒·墨菲正在緊急招聘精通 COBOL 這個古老編程語言的程序員,幫助修復(fù)已經(jīng)使用了 40 多年的失業(yè)保險系統(tǒng),時薪為 55 美元至 85 美元。
由于疫情的緣故,許多美國人失業(yè)了,他們那邊的操作流程是失業(yè)就可以申請領(lǐng)取救濟(jì)金,但新澤西的失業(yè)救濟(jì)系統(tǒng)就是由 COBOL 語言寫的,不僅十分古老,而且效率極其低下,新澤西已經(jīng)累積了幾十萬救濟(jì)申請沒有審核發(fā)放,所以州長墨菲才公開招聘的。
這是跨越半個多世紀(jì)的二次開發(fā)需求啊!誰敢接手?現(xiàn)在網(wǎng)傳去應(yīng)聘的程序員最小年齡都在 60 歲以上!(PS:還真不如重新招標(biāo)寫個新系統(tǒng)……)
微博網(wǎng)友@光頭博士也證實了此事:
我所在的新澤西州的州長剛剛在電視上宣布現(xiàn)在急需 COBOL 程序員來處理政府財務(wù)系統(tǒng)的一些問題,包括最近大量增加的失業(yè)補(bǔ)助支票的發(fā)放等等。
真的是活久見,COBOL,誕生于 1959 年,被偉大的 Grace Hopper 的工作啟發(fā)的早期編程語言。
才知道這種正宗化石級的編程語言現(xiàn)在還在世界上大量使用。。。如果按照代碼量來算的話應(yīng)該是世界第一。
當(dāng)然部分原因是 COBOL“效率”很低,我在評論里看到了“需要一千行 COBOL 才能打印出一首俳句”這種笑話。
而且使用這些陳年老代碼的居然還都是特別重要的領(lǐng)域:金融,政府,航空公司。所有的銀行,保險公司,金融機(jī)構(gòu)都在大量使用 COBOL 寫的程序。
這些代碼每天都在管理著世界上巨量的財富,然而大部分代碼的年齡都超過了 25 年。
現(xiàn)在早就沒有人會在大學(xué)里學(xué) COBOL 了,所以真的能維護(hù)這些代碼的也都是“老兵”程序員了。
圖三有個評論說自己在一個灣區(qū)的科技公司,為了銀行間的業(yè)務(wù)銜接需要 COBOL 程序員,來面試的最年輕的 63 歲。
不過這件事也說明,程序員好像也會越老越吃香的。
60 歲的 COBOL 憑什么活到現(xiàn)在?
COBOL 將比我們所有人都活得更久,知道為什么嗎?
計算機(jī)最初有機(jī)器語言和匯編程序,兩者在使用上都不容易。自從后來出現(xiàn)了 COBOL,一切都變了。
①早期計算機(jī)語言的由來
我開始是在 IBM 360 匯編機(jī)上編程的。在計算機(jī)的早期,唯一的機(jī)器語言是匯編程序。
在那些日子里,計算機(jī)科學(xué)真的是“科學(xué)”。顯然,需要一種更簡單的語言來為那些笨重的大型機(jī)編程。
COBOL 語言于 1959 年 9 月命名,成為面向業(yè)務(wù)的通用語言。最初,格蕾絲·霍珀(Grace Hopper)提出了這一基本思想,并推動了它的發(fā)展。
雖然她對這門語言做出了貢獻(xiàn),但這并不完全歸功于她,還有一位功臣是瑪麗·霍斯(Mary Hawes)。
她是 Burroughs 公司的一名程序員,在業(yè)務(wù)開發(fā)過程中發(fā)現(xiàn)需要一種計算機(jī)語言。
1959 年 3 月,霍斯提議創(chuàng)造一種新的計算機(jī)語言。它將有一個類似英語的詞匯表,可以跨不同的計算機(jī)執(zhí)行基本的業(yè)務(wù)任務(wù)。
霍斯說服霍珀等人創(chuàng)建一種與供應(yīng)商無關(guān)的、可互操作的計算機(jī)語言。霍珀建議他們向美國國防部(DoD)尋求資助,并將其納為該語言的潛在客戶。
商業(yè) IT 專家對此表示同意。1959 年 5 月,41 名計算機(jī)用戶和制造商在五角大樓舉行了會議。在那里,他們成立了數(shù)據(jù)系統(tǒng)語言會議(CODASYL)臨時委員會。
該委員會借鑒了早期的商業(yè)計算機(jī)語言,如雷明頓·蘭德大學(xué)(Remington Rand UNIVAC)的《FLOW-MATIC》,它主要由格蕾絲·霍珀(Grace Hopper)撰寫和 IBM 翻譯,委員會認(rèn)為 COBOL 編程語言應(yīng)該像英語那樣通用化。
但是,即使有了國防部、IBM 和 UNIVAC 的支持,COBOL 的前進(jìn)道路仍然不明朗?;裟犴f爾提出了自己的語言 FACT,作為未來的商業(yè)編程語言。
在當(dāng)時一段時間內(nèi),早期的業(yè)務(wù)開發(fā)人員似乎是 FACT 程序員而不是 COBOL 程序員,但是當(dāng)時的硬件無法支持 FACT。因此,COBOL 再次占據(jù)了主導(dǎo)地位。
②COBOL——商業(yè)語言的首選
到那年 9 月,COBOL 的基本語法已經(jīng)確定下來,COBOL 程序在 1960 年夏天開始運行。
1960 年 12 月,COBOL 程序通過在兩個不同供應(yīng)商的計算機(jī)上運行而被證明是真正可互操作的。
COBOL 正式成為第一種真正的商業(yè)編程語言。直到 20 世紀(jì) 80 年代,它仍然是商業(yè)語言的首選。
2016 年,政府問責(zé)局(GAO)報告稱,國土安全部(Department of Homeland Security)、退伍軍人事務(wù)部(Department of Veterans Affairs)和社會保障局(Social Security Administration)等部門仍在使用 COBOL。
據(jù)一家咨詢公司 COBOL Cowboys稱,COBOL Cowboys 至今仍在使用 2000 億行 COBOL 代碼,《財富》500 強(qiáng)企業(yè)中 90% 的公司仍在使用 COBOL 代碼。
而且,如果您通過 ATM 提取現(xiàn)金,那么可以肯定 COBOL 正在幕后運行。
今天,COBOL 繼續(xù)由 Micro Focus 管理并運營。在一次電子郵件采訪中,Micro Focus 的全球產(chǎn)品營銷總監(jiān) Derek Britton 說:
雖然市場規(guī)模很難精確地預(yù)計,但我們可以肯定,目前運行 COBOL 系統(tǒng)的組織有數(shù)萬個。
我們估計每天有幾千萬終端用戶使用基于 COBOL 的應(yīng)用程序,這種語言的依賴性顯而易見,全球 70% 的事務(wù)處理系統(tǒng)都使用這種語言。
這是什么意思?布里頓解釋說:
任何時候你打電話呼叫服務(wù)中心,或者聯(lián)系政府部門,或者你轉(zhuǎn)賬或檢查你的帳戶,或者支付抵押貸款,或者買一個保險或更新報價,或者運輸一個包裹,或者訂購一束鮮花,或者在網(wǎng)上零售商買東西或預(yù)訂機(jī)票,或者股票交易等等,你都是與 COBOL 互動。
這是因為使用 COBOL 最多的是金融機(jī)構(gòu)。這包括銀行、保險、金融管理和股票交易相關(guān)機(jī)構(gòu),其次是政府服務(wù)部門。
盡管經(jīng)歷了 60 年,或許你認(rèn)為 COBOL 已接近退休年齡,但這種語言本身仍未被淘汰。
事實上,有些人正在將他們的 COBOL 應(yīng)用程序遷移到云中。按照這個速度,COBOL 程序?qū)⒈任覀兯腥硕蓟畹酶L。
寫代碼這么多年,你曾經(jīng)學(xué)過哪種小眾的編程語言嗎?
【51CTO原創(chuàng)稿件,合作站點轉(zhuǎn)載請注明原文作者和出處為51CTO.com】