COBOL використовують вже більше ніж півсторіччя. Його називають «часом непробивним».  Чи є сенс вчити його сучасним українцям? 

 

      В 1999 програмісти всього світу намагалися стрімко налагодити роботу календарів у найрізноманітніших програмах. Застарілі системи обліку часу загрожували критичними багами, адже наближалося нове тисячоліття. Саме тоді вперше гостро відчули нестачу розробників, що знають мову COBOL: значна їх частина вже вийшла на пенсію.  

      Знов критичні системи відчули потребу у COBOL-розробниках у 2020 році. Всі ті люди, що подавали документи на державну допомогу через коронавірус, почали валити сервери урядів штатів. А на них використовувався саме COBOL. 

      Зараз прогнозують, що через 5-10 років почнеться справжня нестача програмістів, що знають COBOL.  

      Тож що це за незамінна мова, яка працює з 1960 і донині? І чому COBOL-розробники потрібні завжди, і іноді дуже потрібні? 

 

Мова для менеджерів

 

 

      Кожні кілька років програмісти випускають нову фічу, яка точно й остаточно вб’є програмування. Тепер можна просто зібрати сайт з конструктора, не треба писати код! Тепер можна просто сказати штучному інтелекту, що тобі потрібно, і він напише все за тебе! Це почалося ще з прадавніх часів мови Fortran: «тепер вчені зможуть самі вводити формули у комп’ютер і програмісти стануть не потрібні».  

      COBOL був однією з таких фіч. Його назва розшифровується як «Common Business-Oriented Language»: загальна мова, орієнтована на бізнес.  

      Розробники COBOLy бажали, щоби програму їх мовою міг зрозуміти й написати будь-який менеджер. Саме тому у COBOL такі довгі та дивні керівні конструкції: у ті часи вважали, що мови майбутнього будуть схожі на справжні мови. 

 

 

 

      Ті установи, що могли у 60-ті дозволити собі комп’ютери, швидко створили власні системи мовою COBOL. Це були великі компанії, банки, уряди й армії.  

      Саме з тих часів залишилися численні системи, які настільки старі, що їх бояться чіпляти. Деякі операції кредитних карт дотепер обробляються кодом на COBOL.   

      Переписувати системи, за якими стоять десятиріччя розвитку — задача не з простих. Тим більше коли оригінальна система створена мовою, яку розуміє небагато людей. Замість повного оновлення компанії вносили невеликі зміни: виправляли баги, оптимізували. Саме цим і займаються COBOL-девелопери.  

      Не всі компанії наважуються переходити на нові технології, і натомість підтримують старі COBOL-системи. Тому мову і називають futureproof — «надійною у майбутньому, часом непробивною». Одні вебфреймворк змінюють інші, тренди виникають і помирають, а десь у великій серверній непомітно для нас працює критична програма, і написана вона на COBOL. 

 

Працювати з COBOL — як це?

 

 

 

  • Працювати з COBOL — це працювати з мейнфреймами, комп’ютерами, що більші за сервери, але не дотягують до суперкомп’ютерів. Саме на них працює більшість програмних систем на COBOL.  
  • Працювати з COBOL — це працювати з легасі-кодом, чий вік сягає десятиріч. Мова розроблялась у часи молодості програмування як такого, і тому виглядає вона дивно, і не схоже на сучасні. Саме через це в іноземних компаніях можуть платити чимало грошей спеціалістам по COBOL. В англомовному інтернеті навіть почали радити «лайфхак»: вивчити COBOL і одразу стати зажаданим фахівцем зі стабільною роботою. 
  • Проте навіть якщо вас не лякають десятиріччя чужого коду, написаного до того, як винайшли усі гарні практики програмування, якщо вас не лякають мейнфрейми та мова, що, ймовірно, старша за вашу бабусю - це все одно не гарантія гарної кар’єри.  
  • Потрібні фахівці COBOL — це ті, хто можуть розібратися у лабіринтах прадавніх систем. Які курси, які книжки можуть тому навчити?  
  • По-друге, таких спеціалістів потрібно дуже мало. Кар’єрне зростання для COBOL-програмістів ускладнене чи неможливе.  
  • І по-третє — самореалізація. Багато людей полюбляють програмування, адже це можливість вирішувати складні, але цікаві задачі та працювати на лезі технології. Але присвятити кар’єру тому, щоби копатися у чужих системах і не створити нічого нового? Чи це — майбутнє, якого вам би хотілося?

 

      До того ж в Україні ця мова не використовується взагалі. Вакансій на Djinni - нема. Коли пік популярності COBOL вже проходив, у нашій країні ще практично не з’явилися комп’ютери. Тож нам пощастило: ніде в Україні немає важливих систем, написаних мовою, яку розуміє десяток людей. І вчити COBOL немає ніякого сенсу. 

 

Джерела:

  1. https://www.finextra.com/blogposting/18831/2020s-cobol-crisis-is-the-canary-in-the-coal-mine-for-established-banks-and-insurers
  1. https://ictinstitute.nl/cobol-in-2024/

Іван Синенко

 

 

Популярні статті

Читати далі