„Како смо до ђавола дошли овде да нам буквално требају ЦОБОЛ програмери?“ питао је гувернер Њу Џерсија Фил Марфи на недавној конференцији за новинаре.
Садржај
- Фортран
- Ада
- Пасцал
- БАСИЦ / Висуал Басиц
- ЦОБОЛ
Суочени са невиђеним бројем незапосленост апликација, држава је морала одмах да прошири своју 40-годишњу платформу за потраживања за незапослене — ремонт то је одмах покренуло махниту потрагу за програмерима који су упознати са деценијама старим језиком кодирања ЦОБОЛ.
Препоручени видео снимци
Међутим, није само Њу Џерси тај проблем. Многи светски банкарски, одбрамбени и системи вештачке интелигенције користе програмске језике који су били у моди када је Аппле остао без гараже.
Технолошка индустрија има афинитет према стварима које су нове и најсавременије, али да није било древних језика за кодирање као што је ЦОБОЛ, Ада, Пасцал и Фортран, кредитна индустрија, научно-истраживачке организације и бројни одбрамбени системи дошли би до шкрипца застој. Другим речима, без овог старог кода, били бисмо сјебани.
Педесет година стари програмски језици још увек израчунавају милионе трансакција и статистика и служе као окосница за системе на које се савремени свет ослања. На пример, преко 95 одсто банкомата и 40 одсто банака користи ЦОБОЛ код, према 2017. Ројтерс извештава.
Неколико ових древних табулатора још увек веома добро обављају одређене функције. Постоји и много пословних руководилаца који не желе да одвоје временски тестирани софтвер који је од виталног значаја за пословања своје компаније, па уместо да ремонтују и модернизују, они једноставно закрпе стари код и надају се најбоље.
Рвање са древном технологијом није нова појава. На пример, Цалифорниа је потрошио стотине милиона долара покушавајући да ажурира своју ДМВ и технологију платног списка. Ипак, тренутна пандемија и талас незапослености који је уследио осветлили су колико се америчке софтверске инфраструктуре руши као и физичка.
Ево пет „винтаге“ језика од којих наш свет зависи више него што мислите, и зашто би вас то могло учинити мало нервозним.
Фортран
Да није било Фортрана, многи суперкомпјутери и модели које користимо за ствари као што су предвиђање времена, астрофизика и статистичка анализа високог нивоа једноставно не би функционисали.
Фортран (скраћено од Формула Транслатион), који је направио ИБМ 1950-их, био је један од првих језика високог нивоа који је користио речи уместо бројева и омогућио је кодерима да пишу програме 500% брже него када користе машину код. Данас ни приближно толико програмера не учи језик.
„Користим Фортран све време – једноставно никад не размишљам о томе“, каже Џејмс Хауард, научник података у Лабораторији за примењену физику Џона Хопкинса. Иако Хауард годинама није програмирао на том језику, његове апликације редовно приступају основним библиотекама Фортрана. Изграђени раних 70-их, добро су одржавани и „заслепљујуће брзи“.
Последњи пут када је Хауард морао да напише Фортран програм било је пре око 10 година. Радио је у Федералним резервама и требало је да преноси податке између две апликације; један који је написан на Ц, а други на Фортрану. Програми су престали да комуницирају јер је добављач престао да обезбеђује Фортран библиотеку.
Програмер од 40 и нешто се сетио нечега што је читао као дете, да је структура позивања података за програмски језик Ц супротна од Фортранове. Написао је једноставан сценарио да промени налог и, воила, Федералне резерве су се вратиле у посао.
Ада
Владини програмери се ослањају на релативно нејасну Ада кодну базу када развијају системе који захтевају поузданост, као што су системи одбране и безбедности. Шта је тачно програмирано у њему? Па, то је помало државна тајна, али НАСА и Боинг су последњих година користили код заснован на Ади за програмирање сателита и авиона.
Министарство одбране (ДОД) је надгледало развој Аде 1970-их да би се смањио број програмских језика које користи војска, а којих је у то време било преко 400. Ада је направљена да буде несумњиво поуздана у ситуацијама живота или смрти и заштићена од грешака програмера. Иако је језик испоручен 1980. године, Конгрес није наложио његову употребу у свим државним системима до 1995. године. Две године касније, ДОД је напустио мандат, сматрајући да ће бити јефтиније и флексибилније користити широко доступне, ажуриране системе. Али и данас је у употреби.
Пасцал
Многи програмери Пасцал сматрају скоро мртвим програмским језиком, али он живи на неколико начина. „Веровали или не, то је још увек веома популаран језик у многим деловима света, али у САД, можда бисте добро говори латински“, каже Дејв Хетер, који је провео три године у великој осигуравајућој компанији помажући у ажурирању а милион редова кода који је процењивао колико полисе коштају и колико су платиле.
Многи од ових старијих програма написани су много пре данашње забринутости око кршења безбедности и имају осетљиве власничке информације. Хатер, који сада ради као техничар за сајбер безбедност, сматра да би програми могли бити релативно безбедни само због „сигурности од нејасноће“ – млади кодери не знају шта да раде са деценијама старим кодом. „15-годишњи хакер неће имати појма како да ради са неком врстом ИБМ 390 главног рачунара са ЦОБОЛ-ом“, каже он. „Сада не кажем да нису могли да науче. Али они неће знати."
Пасцал је био основа за рани Аппле оперативни систем, а потомак језика, Делпхи, још увек има јаке заговорнике. У ствари, Скипе — једна од првих апликација за видео позиве која је стекла широку популарност и употребу — првобитно је написана у Делпхију.
БАСИЦ / Висуал Басиц
БАСИЦ није баш на врху листе када су у питању језици које људи користе 2020. године, али многе модерне апликације на које се ослањамо једноставно не би постојале без њега. На пример, ако сте икада програмирали Екцел макро, користили сте облик БАСИЦ-а.
Скраћеница за Бегиннер’с Алл-Пурпосе Симболиц Инструцтион Цоде, БАСИЦ је покренут 1963. на Дартмоутх колеџу као начин да се подучава општој публици теорије и могућности програмирања — уроните у воду пре него што се упустите у робусније језике као што су Фортран. Популарност БАСИЦ-а је порасла заједно са персоналним рачунаром - Аппле, ИБМ и Атари рачунари су имали своје верзије.
Средином 1980-их, самоуки компјутерски штребери су се мање бавили БАСИЦ-ом и више су били заинтересовани за програме трећих страна. Затим је Мицрософт покренуо Висуал Басиц 1991. године, који није баш био ажурирање БАСИЦ-а, али је користио неке исте команде и структуру и имао је бољи графички интерфејс. Тада су бројна предузећа користила језик за писање великих и малих програма. Иако је Мицрософт рекао да је прекинуо подршку за Висуал Басиц 6 (најновија верзија) 2008. године, језик и даље има доста корисника. Проверите Тиобе Индек (који приказује најпопуларније програмске језике): ВБ је и даље у првих 10!
ЦОБОЛ
„Рекао бих да преко 90% људи које видимо има ЦОБОЛ као кључни део онога што су написали“, процењује Брандон Еденфиелд, који ажурира и мења старе апликације за Модерн Системс и помогао је у ревизији кода за берзе у Њујорку и Сингапуру. „Свака велика компанија о којој се можете сетити вероватно има нездраву количину ових ствари.
ЦОБОЛ, акроним за Цоммон Бусинесс-Ориентед Лангуаге, покренут је 1959. године за задатке обраде података као што су праћење буџета, банкарске трансакције и обрачун платног списка. Министарство одбране (ДОД) првобитно је дизајнирало језик као зауставни пројекат. Затим је Министарство одбране захтевало од произвођача рачунара да укључе ЦОБОЛ на машине које су продавали и језик се брзо проширио у наредних неколико деценија. Преко 95% банкомата и 40% банака још увек користи ЦОБОЛ код, према 2017. Ројтерс извештава.
Велики део овог програмирања је коришћен преко мејнфрејм рачунара, а савремени системи су прешли у облак. Као што је тешкоћа у Њу Џерсију илустровала, програмери који су знали како да одржавају ЦОБОЛ код стари су из радне снаге или су се већ пензионисали.
Компаније које модернизују ове програме обично то раде на неколико различитих начина.
„Велики системски интегратор ће бацити гомилу тела на код; они ће сести, погледати то и преписати“, каже Еденфилд. Тај приступ је често најризичнији, дуготрајан и скуп. У просеку, ручно кодирани, велики послови реплатформисања могу да потрају од 3 до 10 година и могу коштати стотине милиона долара.
Еденфиелд препоручује аутоматизована решења и каже да би први логичан корак могао бити само премештање кода застарелу верзију ЦОБОЛ-а на актуелну, што би омогућило многим системима да пређу на модерне сервери. Он упоређује ажурирање машине са превођењем француског на енглески: „Основа онога што је речено је савршено преведена. Само треба да поправите синтаксу како је формулисана." Тај приступ такође може смањити време и трошкове ажурирања, каже он, негде између шест и 24 месеца.
Хоће ли бити јефтино? Па биће јефтиније. Пројекти модерних система обично се крећу у цени од 200.000 до 10 милиона долара. Велики део пројекта, објашњава Еденфилд, није превођење кода, већ тестирање да би се уверило да све ради како треба.
Зашто се ова ажурирања не дешавају?
„Нико раније није чуо за ово јер то није секси тема, а људи обично не покушавају да причају о прљавом вешу који имају“, објашњава он. ИТ руководиоци такође имају навику да бацају лименку на цесту.
„Кладим се да ће држава Њу Џерси сада обратити пажњу на ово питање, али такође се кладим да ће половина њихових колега мислити да им се то неће догодити, ’Не мени’.