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