Comments 60
000500 DATA DIVISION.
000510 WORKING-STORAGE SECTION.
000520 01 WS-A PIC 999.
000530 01 WS-B PIC 9(3).
000540 01 WS-RESULT PIC9(6).
PROCEDURE DIVISION.
000700 BEGIN.
000800 DISPLAY “Hello I'm your new calculator!”.
000900 DISPLAY “Please Enter first number from 0 to 999”.
001000 ACCEPT WS-A.
001100 DISPLAY “Please Enter second number from 0 to 999”.
001200 ACCEPT WS-B.
001300 DISPLAY “------------------------------------”.
001400 DISPLAY “ “.
001500 DISPLAY “Your results are:”.
001600 ADD WS-A TO WS-B GIVING WS-RESULT.
001700 DISPLAY “Summ is: ”, WS-RESULT.
001800 SUBTRACT WS-A FROM WS-B GIVING WS-RESULT.
001900 DISPLAY “Subtract is: ”, WS-RESULT.
002000 MULTIPLY WS-A BY WS-B GIVING WS-RESULT.
002100 DISPLAY “Multiplication is: ”, WS-RESULT.
002200 DIVIDE WS-A BY WS-B GIVING WS-RESULT.
002300 DISPLAY “Divide is: ”, WS-RESULT.
002400 STOP RUN.
Если серьезно, то думаю, навыки программирования на Коболе могут быть востребованы только если находишься в США, и то не факт.
Для интереса поискал в Израиле: www.alljobs.co.il/SearchResultsGuest.aspx?position=1205 выдаёт кучу вакансий на Коболе.
А можно ссылку хочется на это посмотреть
На самом деле даже не знаю как там это все может выглядеть.
Лично я использую geany. Так что IDE это не проблема.
И курсы же по COBOL, а не по IDE.
Что может быть сложно — это environment, там у них майнфреймы, вот это все. Наверное еще DB2 какой-нибудь. С другой стороны, можно найти того кто знает этот env и я уверен что COBOL для него станет проблемой.
Ну если нет людей знающих кобол, наймите любого нормального програмиста за хороший прайс, я думаю он за неделю две в этом вашем коболе разберется. Там же не должно быть никакой магии в этом коболе чтобы нужен были бэкграунд 5+ лет.
- Джуны — это не круто. Лучше бы с бэкграундом, пусть и в других языка.
- Кобол используется в старейший системах учета. Раньше компьютеры могли себе позволить только крупнейшие корпорации и крупнейшие банки. То есть типичный работодатель по Коболу — крупный банк. А если посмотреть какие десятки тысячи программистов продают западным банкам только украинские и российские бодишопы (там Java), то понятно, что и на Коболе нужен не один программист, и даже не 100.
- За совсем уж оверпрайс программист не нужен.
- Чтобы начать работу — программисту нужно все же разобраться. Кобол — не самый распространенный язык. Обучающих материалов нет. Именно эти материалы и собираются публиковать.
Недостаток коболистов в частном секторе — это миф.
А сильно нехватает их как раз в госсекторе, который не предлагает конкурентные деньги и близко. То есть клепать сайтики не только легче чем ковыряться в слоях ископаемых отходов полумертвых технологий, но и лучше оплачивается, да еще и смузи нальют.
Проблема не столько в старости (вон С тоже не молод), сколько в специфике их решений. По сути это то, как выглядит 100% vendor lock. Если вы допустим представляете, как работает компьютер — ну там директории, файлы — можете смело забыть. Они для всего придумали собственную терминологию, с длинными названиями и кучей неочевидных нюансов. Будто система проектировалась таким образом, чтобы без специального обучения и кансалта в ней стороннему специалисту было не разобраться. Мечта фрилансера — даже код обфусцировать не нужно.
Из-за того, что подготовка дорогая и конкуренции на рынке практически нет, это довольно интересная ниша в плане стабильности как для разработчиков так и для организаций которым это нужно. Вас не заменят, но и сами бежать особенно некуда.
По сути это то, как выглядит 100% vendor lock. Если вы допустим представляете, как работает компьютер — ну там директории, файлы — можете смело забыть. Они для всего придумали собственную терминологию, с длинными названиями и кучей неочевидных нюансов.
Мне кажется, более корректно говорить о разных школах, некоторые из которых пошли в «масс-маркет» и потому стали известны широкому кругу людей.
А так — даже сейчас, здесь, на хабре видел претензию от человека, привыкшего к unix-way и стеку, претензии к NT, мол, почему и зачем они все свое придумали и называют иначе и делают по-другому, вот, мол, дураки, просто чтобы отличиться. Хотя это такое же legacy, полученное из, по сути, VAX/VMS, RSX и вообще DEC школы. Можно посмотреть на разницу подходов и терминологии в Netware в ту эпоху, когда они еще были конкурентами NT и т.д. Вот и здесь получилось, что у IBM своя школа, по понятным причинам не пошедшая в масс-маркет.
Я бы, пожалуй, прошел этот курс, чисто из любопытства.
как работает компьютер — ну там директории, файлы — можете смело забыть
Можно пример, что там вместо этого?
Если кому интересна, что за машинка, кратко описал её тут, rw6hrm.qrz.ru/z80.htm
поскольку литературы-то как раз и нет в наличии
COBOL for the 21st Century 10th Edition, я такую в электронном виде искал, но не нашел.
Там же беда ни разу не с коболом как таковым, а с экосистемой, очень мало людей, понимающих, как работает мейнфрейм и весь стек технологий там, ничего общего с современным не имеющий. Далёкая аналогия — посадить фронтендера писать встраиваемые системы для авиации, притом не новые, а поддерживать какой-нибудь Боинг 737 или Ту-160.
Т.е., помимо денег, должны быть мозги, чтобы это время запланировать заранее или, как в данном случае, преодолеть естественную жадность и годами тратить эти самые деньги на поддержание «устаревшей и ненужной» инфраструктуры на случай пушистых северных зверей.
Ну т.е. я не думаю, что поддержка жуткого «легаси» будет проще и дешевле, чем переписывание всего стека. В конце концов не останется людей умеющих с ним работать, раз уже есть проблемы.
Или есть какая-то магия Кобола, которую нельзя сделать, например, на C++?
Или «работает — да и хер с ним» просто не прокатило в текущей ситуации, отсюда и шухер? А если все устаканится, то снова все забьют на Кобол?
Я сильно сомневаюсь, что все 20 лет там не вносилось никаких изменений и чтобы продолжать их вносить нужны разработчики, которые понимают что делают. Проблема сама по себе есть и чем дальше ее затянут, тем сильнее она затянет потом.
Да и никто не заставляет переписывать все и сразу, можно же частями. Я сомневаюсь, что там все миллионы строк — это одна цельная программа.
«все это переписать на современный стек», который «завтра» потеряет актуальность. Или не потеряет. Это я к тому, что, наверное, оценкой рисков кто-то занимается и, вероятно, оставить все как есть, с минимальными изменениями для поддержки новых требований, может быть мене рискованным и эффективным с точки зрения вложений, которые потребуются на «всё переписать».
В Северной Америке стандартная схема работы — система построена на заказ много лет назад. Обслуживающий персонал знает, как заводить новые учётные записи и, в лучшем случае, выполнять регламентные работы по инструкции. Если надо что-то поменять, идёт обращение в поддержку поставщика либо консалтинговой организации. Название должности — «системный администратор» — логично для такой административной должности и совсем не подходит под круг инженерных задач, которые выполняют «сисадмины» Восточной Европы.
Таким образом, просто нет того звена, которое бы оценивало "green screen" (как здесь ласково зовут терминальный доступ к мэйнфрейму) как что-то, что подлежит замене. Руководство в такие нюансы не вникает. Местные «администраторы» ведут свои административные дела согласно инструкции, для них что устаревшая система, что новейшая — всё равно чёрный ящик. Поставщик или обслуживающая организация очень заинтересованы в том, чтобы клиент оставался к ним привязан и не менял систему. Даже если мэйнфрейм находится в той же организации, то отдел его обслуживания, даже если в нём есть грамотные инженеры, всё равно не будет выходить с инициативой его замены, потому что это их хлеб, а специализация у них узкая, для обслуживания новой системы они не подойдут.
Ну и стоимость переписывания с нуля при текущих ценах на труд программистов достаточно пугает, чтобы не начинать переписывать, пока жареный петух не клюнет. Нет ведь никакой, скорее всего, документации уровня разработчика. Для операторов подробные инструкции есть. Может быть есть даже какие-то руководства по переустановке и ремонту. Но описаний алгоритмов, логики системы — нет. Плюс ко всему, кто-то же должен взять ответственность за то, что миграция пройдёт гладко. Если там банковские проводки, то потери от неправильных подсчётов легко переплюнут стоимость миграции.
И главное, а что случилось-то? Ну вылетают под нагрузкой старые системы. Снизят нагрузку. Объявят, что сегдодня принимают заявки только от людей, родившихся с января по март. Объяснят, что "we are experiencing higher than normal volume..." (110 миллионов результатов в Google). Это и в обычные-то времена нормально воспринимается, а уж в текущей ситуации — само собой.
Ну и стоимость переписывания с нуля при текущих ценах на труд программистов достаточно пугает, чтобы не начинать переписывать, пока жареный петух не клюнет.К этой сумме еще нужно добавить замену парка терминалов на ПК ил тонкие клиенты, обновление серверов/мейнфреймов, скорее всего длительное тестирование, возможные простои… Короче, никто в здравом уме такое делать не будет, пока бизнес не начнет терять деньги.
Если вирус не затронет самих Ковбоев, так затронет их деятельность.
Любопытно читать в ретроспективе. Курс использует закрытый компилятор и среду исполнения от IBM. Она же является драйвером Open Mainframe Project и, вероятно, конечным бенефициаром сего действа.
Упомянутое обсуждение Tools and resources уже закрыто, но привело к двум инструментам с открытым кодом — Дебаггеру для VS Code и Среде исполнения в Докере на основе GnuCOBOL, силами пары энтузиастов в свободное время. Можно писать новый курс, Open по-настоящему.
IBM проведет бесплатные курсы по COBOL и выложит их на GitHub