Одна из моих первых летних работ программиста была в основном основана на очистке зеленых экранов и файлов PRN. В то время я, вероятно, не стал бы запачкать свои руки в COBOL (то есть, если бы они достаточно доверяли мне, будучи студентом, чтобы впустить меня в этот код), но я не уверен, что чувствую то же самое по отношению к та же перспектива сегодня.
Я не думаю, что проблема действительно с мейнфреймами как таковыми. Это одержимость нашей отрасли (часто оправданная) новым и блестящим.
Посмотрите на C. C по-прежнему очевидно критически важный язык. Почти весь встроенный код и большинство операционных систем написаны на C. Это никуда не денется в ближайшее время. И все же становится все труднее найти программистов на Си. Быстрый поиск на странице тега Stack Overflow позволяет разместить его на 1/6 размера [c#]
и на 1/4 размера [java]
. Кто-нибудь помнит, когда Си был по сути доминирующим языком, возможно, единственной игрой в городе?
Программисты любят мощные инструменты. Может быть, это потому, что (СПЕЦИАЛЬНОЕ ПРЕДУПРЕЖДЕНИЕ) большинство программистов парни. Вы даете программисту на Java или .NET задачу, скажем, копировать файл, и многие, если не большинство, все равно решат написать его на Java или C # вместо написания пакетного файла DOS или * nix shell-сценария, что будет в 50 раз больше. быстрее написать и развернуть. Зачем использовать удочку и катушку, чтобы ловить рыбу, когда у вас есть гигантская выдвижная сеть, которая может поймать 500 рыб?
Да, COBOL и PL / I старые , но так же и Паскаль, и он все еще жив и работает в форме Delphi. Отвращение к первому, вероятно, связано с тем, что эти языки громоздки по сравнению с современными инструментами. Объектная ориентация все еще является относительно новой концепцией в мире COBOL (с акцентом на относительно ), но в мире C # LINQ, дженерики и AJAX перестали быть революционными несколько лет назад. Попросить разработчика, привыкшего к этим инструментам, начать программировать на мэйнфреймах, все равно что попросить рок-музыканта начать играть на банджо.
Конечно, есть и проблема самосохраняющегося стереотипа. Пока молодые программисты считают , что нет ничего для них в мэйнфреймы (или нет это правда), то любые молодые программисты , которые действительно решили пойти в это будет в конечном итоге тратят большую часть своих дней вокруг людей намного старше. С самого начала ИТ-индустрия не слишком привлекательна для общества, но дополнительный сдерживающий фактор, связанный с разрывом между поколениями, приводит к тому, что она становится ниже болевого порога многих людей. Без обид - я лично провел большую часть своей жизни, работая с людьми намного старше, но не у всех есть такой опыт или такие способности.
Наконец, большинству программистов не нравятся работы по обслуживанию, и почти вся работа с мэйнфреймами - это обслуживание. В PL / I написано не так много нового программного обеспечения. Любая работа , которая определяется исключительно или главным образом вокруг кода обслуживания автоматически начинает с отрицательным счетом.
Там являются позитивы для работы над старым кодом ( «унаследованных» , охватывающие мэйнфреймы и многое другое), которые вы , вероятно , должны играть, если вы пытаетесь привлечь толпы молодых:
Системы, как вы говорите, являются критически важной инфраструктурой. Молодые разработчики, по крайней мере, в деловом мире (не в Google / Microsoft), часто не имеют шансов оказать реальное влияние . Обескураживает работа над системой, которая, как вы знаете, просто будет заброшена или заменена через несколько месяцев или лет. Приложения для мэйнфреймов, которые работают уже 50 лет, вероятно, будут работать гораздо дольше, потому что компаниям нет смысла их перестраивать, поэтому работа, которую вы выполняете в них, на самом деле важна для многих людей.
Если вы один из тех немногих компаний , которые на самом деле действительно имеют склонность к «модернизации», то много программистов, молодых и старых, будут привлечены к этому возможность, потому что тогда есть двойные возможности для работы на критически важных код и согнуть некоторые из этих мышц C # / Java. Очевидно, что ни одна здравомыслящая компания просто не выбрала бы мэйнфрейм и восстановила его с нуля, но я видел системы, которые (например) имеют ядро COBOL, которое интегрируется с компонентами Java.
Наконец, есть необходимость - по крайней мере, как мы, посторонние, воспринимаем это. Когда весь ваш код находится в .NET, всегда существует риск того, что владельцы обменят вас на выпускника колледжа или, что еще хуже, на оффшорную команду, в ошибочной попытке сократить расходы. Я не думаю, что это случается очень часто в мире мэйнфреймов, особенно если то, что вы говорите, является правдой, а предложение, по-видимому, сокращается. Конечно, это спорный вопрос, если вы недостаточно хорошо платите; зарплаты должны быть скорректированы, чтобы отразить это сокращающееся предложение, иначе люди не будут «продавать».
Я уверен, что есть много молодых разработчиков, которые не отказались бы от довольно щедрого предложения от компании, которая, казалось, старалась изо всех сил сделать рабочую среду привлекательной для молодых сотрудников. Но если вы хотите достичь их, тогда вам будет разумно использовать свои сильные стороны, и вам, возможно, даже придется начать заниматься маркетингом; мы склонны рассматривать мэйнфреймы как другой и очень чуждый мир, и я почти уверен, что не видел вас, ребята, на ярмарке вакансий в кампусе 10 лет назад, работающей над изменением этого восприятия.
Чтобы свести это к одному предложению: ничто не делает мейнфреймы непривлекательными , просто ничто не делает их привлекательными , и это ставит их в серьезное невыгодное положение по сравнению с передовой технологией, которая предлагает нам огромный рост производительности и бесплатные безалкогольные напитки.