А в нашем институте специалисты этой сферы появились в 56-м году, еще до создания города. Сейчас за ними тянется длинный исторический шлейф.
— Я программист старой школы. Воспитан на идеях Андрея Ершова и нашего Леганькова. О текущем состоянии дел в этой области мне рассуждать трудно, — предупреждал меня Вячеслав Петрович Соколов, когда мы договаривались о встрече. — Мне нелегко воспринимать результаты разработок молодого поколения.
— Почему? — удивилась я.
— Увлекаются "хитрыми штучками" и забывают о простоте построения алгоритмов. Копируют западную моду, забывая о нашей, советской, школе. Ко всему прочему все эти хакеры современные, они ведь могут делать удивительные вещи, потрясающе знают внутренности программ, а почему-то ничего не созидают, не делают ничего полезного для общества.
Естественно, после такого предисловия разговор с начальником лаборатории РФЯЦ — ВНИИТФ долго простирался в плоскости 60-х годов. Он рассказал, как еще в школе попал в спецкласс с ориентацией на программирование. Как их курировали специалисты вычислительного центра НИИ тяжелого машиностроения. Как начиная уже с 9-го класса ребята учили высшую математику. Как после выпуска он рассчитывал для отдела главного конструктора Уралмашзавода скорость поворота стрелы шагающего экскаватора (ее длина больше 100 метров) и пытался вычислить оптимальные режимы ее движения. И, наконец, как попал в ЗАТО.
Набиравшие популярность ЭВМ и первые программисты "поставлялись" туда, где решали наиболее значительные для страны задачи: на крупные промышленные и оборонные предприятия. Так в Снежинске появилась своя плеяда системщиков.
— Понравилось ли Вам работать в нашем ядерном центре, когда попали сюда? — спрашиваю Вячеслава Петровича.
— Программы приходилось писать на машинном языке. Это тоже было интересно. Сейчас, к примеру, распределение памяти динамическое. Где хранятся файлы на вашем компьютере? Куда загружается исполняемый модуль? Как замещается кэш, временные файлы? Вы ничего этого не знаете, — резюмирует собеседник. — А тогда планированием памяти занимались вручную. Специалисту выдавали большой лист, где были обозначены квадратики-ячейки, и он писал: с 10-й по 20-ю
клетку — это будут данные, дальше — размещение программы и так далее. И только после того, как все спланируешь, можно было подходить к машине, и она выполняла все указания по плану. Тогда же во всей стране и в институте в частности начали разрабатывать автоматизированные системы программирования.
— Это чтобы перфокарты и перфоленты не использовать, дырочки не прокалывать?
— Дело было даже не в этом. Машина ведь понимает только цифры. Хотели от цифр перейти к условным обозначениям, перейти на мнемокоды, чтобы и команды, и ячейки обозначались буквами, переменными. А в дальнейшем сделать так, чтобы программы вводились осмысленно и записывались почти на естественном, литературном языке. Именно так появились трансляторы с языков программирования. Они должны были переводить "слова" в коды машины.
— Как сложно: язык описывается другим языком на другом языке…
— Ну а как иначе? Грамматика и синтаксис русского — это те же правила написания кода. Когда говорим, мы попутно определяем, что обозначает каждая конкретная языковая единица, какими характеристиками она обладает, какую роль играет в предложении или в тексте, как связана с другими словами. Из таких единиц получается рассказ. Он передает идею, смысл и ведет к какому-то выводу. То же самое и программа: производит вычисления по правилам и выдает результат.
— С помощью таких образных сравнений понять информатику гораздо легче!
— Я всегда очень любил свою профессию и понимал, что за ней будущее. Сейчас ведь все общаются с вычислительными средствами, ну, в той или иной степени. Я ходил на встречи со школьниками и рассказывал им о том, какие умные аппараты могут быть: стиральные машины, "умные дома", которые только недавно реализованы, хотя были возможны и в те годы, правда, вышли бы очень дорогими. Я учил ребят основам алгоритмизации, мы описывали с помощью блок-схем сказки "Колобок", "Репка", "Белоснежка и семь гномов". Там же все действия очень четко прописаны: что предпринимает королева, что делает принцесса. К зеркалу обращаются с вопросами. Их мы обозначали как условия…
— Помню, как эти блок-схемы мы рисовали в школе, абсолютно ничего не понимая. Это был просто механический труд. Но я утешала себя тем, что программировать могут только 10% населения земного шара, потому что здесь нужен особый склад ума.
— Совершенно верно. Я во время своей учебы в университете видел, как блестящие математики, которые занимались алгеброй, геометрией, математической физикой, в программировании испытывали какой-то шок. Один из таких студентов на столе в аудитории нацарапал: "Здесь такой-то сдал с третьего раза экзамен по программированию". Ведь машина — это тупая вещь, которая сама ничего выдумать не может, а делает только то и так, как это ей объяснил человек. С ней нужно быть очень точным. Не должно быть никакой двусмысленности, упрощений, неопределенности. И вот эта строгость подхода, она действительно не всем по силам.
— Сколько специалистов сегодня занимается программированием в нашем институте?
— Думаю, с учетом всех подразделений института где-нибудь процентов двадцать от всего штата связаны с разработкой или использованием программ. Непосредственно написанием кодов занимаются около тысячи человек. Что уж говорить, специалистов у нас много. Сейчас выигрывают те, кто, используя свой собственный опыт и наработки других организаций, создают что-то новое и объединяют это с другими системами. Нужно, чтобы в работе участвовали и физики, и химики, и технологи. Организовать их очень тяжело. Поэтому крупные новые программные комплексы появляются очень редко. Сами, наверное, сталкивались с бета-версиями, когда вам предоставляют возможность попробовать какой-то продукт, например, подретушировать фотографии, провести расчеты. Но в обмен за такую возможность просят сообщить, какие дефекты и недостатки были обнаружены в программах. Понимаете, никакая крупная организация сейчас не может работать без такой помощи и привлечения большого количества людей.
— Кого же сейчас больше — молодых специалистов или "аксакалов"?
— Сотрудники института, в основном, либо молодые, в возрасте 30 с небольшим лет, либо уже за 50. Прослойка с 35 до 45 очень тонкая. Отсюда и трудности: вынуждены набирать много молодежи, обучать ее, но общего языка у представителей разных поколений нет, потому что сильно изменилась профессиональная среда.
— По уровню знаний специалисты старой и новой школы сильно отличаются?
— Лет 40 назад был провозглашен главный принцип программирования: "Будь проще, дурачок". Смысл его в том, что никогда не нужно использовать всю мощь имеющихся средств и языков программирования. Твоя работа должна быть организована просто — для того, чтобы ее мог понять каждый член огромного коллектива. А нынешние выпускники вузов этого зачастую не понимают. Наши молодые специалисты, как и везде, амбициозны, считают, что все могут сделать сами, ни в ком не нуждаются и думают, что сейчас перевернут весь мир. Хотя по уровню знаний зачастую равны продвинутым пользователям. Они знают языки программирования, но создавать алгоритмы того же Колобка или Белоснежки не считают необходимым. Только через 5-7 лет, решая практические задачи, они доходят до понимания сути профессии.
— А какие задачи сейчас решают программисты ядерного центра?
— Раньше мы занимались конкретными, узкими вопросами и многое упрощали: была возможность проверить результаты расчетов на ЭВМ с помощью экспериментов. Сейчас проведение физических опытов либо очень дорого, либо сложно и небезопасно. Ядерные испытания запрещены. Поэтому приходится разрабатывать программные комплексы, описывающие детально все физические процессы, протекающие в технических системах, в том числе при взрыве ядерного устройства. Но вне зависимости от типа работы все наши усилия всегда были направлены по двум руслам: повышение точности описания процессов, реализованных в программах, и ускорение расчетов. Первые вычисления, которые проводились на БЭСМ-6 (Большая электронно-счетная машина — первая суперэвм на полупроводниковых транзисторах — прим. ред.), иногда проходили месяцами. Сейчас хотелось бы получать результат в течение одного дня.
— А как же наш суперкомпьютер "Зубр"? Он как долго считает?
— На самом деле он слабенький по современным меркам. В две тысячи раз медленнее, чем самая мощная машина в мире. Она разработана в Китае и имеет быстродействие около 50 петафлопс, то есть выполняет примерно пятьдесят
тысяч триллионов операций в секунду.
— И в таких машинах действительно есть необходимость?
— Конечно. Наш институт занимается массовым производством суперкомпьютеров небольшой мощности, поставляем их в некоторые институты Росатома. Да сейчас и в любой другой отрасли прежде чем разработать какую-то конструкцию, будь то космический аппарат или автомобиль, ее все равно описывают с помощью информационной модели. Уже сейчас можно сказать, что программисты за полвека стали незаменимы.
Марина Емелина
2014-12-23
Кто повезет?2014-12-19
Пойдем на каток?2014-12-17
Страсти по профсоюзу2014-12-16
Обращение ОАО "Трансэнерго"
Комментарии