01.10.1974 – 31.10.2010 Белгород, Белгородская, Россия
На мехмате Харьковского университета (1967-1972 гг) я обучался профессии программиста или как записано в дипломе, на математика-вычислителя. Первую программу написал на 2-м курсе в 1968 году в кодах машины для 3-х адресной ЭВМ. Это была одна из учебных программ, типа найти наибольшее число в массиве. По специальности проработал 30 лет. Работа программистом была для меня и работой и хобби. Почти всё свободное время посвящал сочинению разных программ, особенно с появлением компьютеров. Всего за 30 лет составил более 3-х тысяч программ. Иногда за 1 день составлял несколько нужных программ, а над некоторыми трудился годами. Самая большая перфокарточная программа состояла из более 1500 перфокарт. Высота колоды была более 30 см. Для удобства работы с ней пришлось разбить на 3 части. Самая "живучая" программа работала с 1978 года по 2008 год(с переводом на другие языки). Возможно, что где-то она работает и по сей день. В 2004 году перешёл на работу не связанную с программированием, но тоже за компьютером -дефектоскопистом - расшифровщиком и проработал до пенсии 2010 г. С 2004 года свободное время стал отдавать своему более раннему хобби - шахматной композиции.
годы
|
учреждение
|
ЭВМ, компьютер
|
должности
|
основной язык
|
другие языки
|
программы
|
1974-1976
|
ВИОГЕМ, ОМИР
|
БЭСМ 4М
|
инженер, ст.инженер
|
АЛГОЛ-60
|
машинные коды
|
инженерные
|
1976-1981
|
ВЦ Облстатуправления
|
ЕС 1020
|
ст.инженер, зав. бюро
|
PL/I
|
Ассемблер, FORTRAN
|
разные
|
1981-1987
|
ВИОГЕМ, ОМИР
|
ЕС 1022
|
рук. группы, главный специалист
|
PL/I
|
Ассемблер, FORTRAN
|
инженерные, бух. учет
|
1987-1994
|
ВИОГЕМ, САПР
|
ЕС 10NN, ROBOTRON 1715, 286SX
|
главный специалист
|
PL/I, БЕЙСИК, Турбо Си
|
Ассемблер, FORTRAN, AutoLISP
|
разные
|
1994-1996
|
ИВЦ Белгородского отделения Ж.Д
|
386DX
|
инженер 1 категории
|
Турбо Си
|
Ассемблер
|
бух. и жд учет
|
1996-1997
|
дефектоскопный вагон-лаборатория
|
486DX
|
инженер 2 категории
|
Турбо Си
|
Ассемблер
|
дефектоскопные
|
1997-2004
|
контора Белгородской дистанции пути
|
486DX, Pentium 1
|
инженер 1 категории
|
Borland C++
|
Турбо Си
|
бух. и жд учет
|
2004-2010
|
цех дефектоскопии Белгородской дистанции пути
|
Pentium 1, Pentium 2
|
техник-расшифровщик
|
удалось обнаружить более 30 ОДР - остродефектных рельсов
|
В 1974 году, после прохождения службы в СА перебрался в Белгород. Работу нашёл методом случайного поиска. Проходил мимо одного здания, привлекло название ВИОГЕМ, точнее длиннющая расшифровка. Захожу в отдел кадров. Начальник - Полина Ивановна посмотрела мой диплом и потащила на ВЦ. Там она рассказала начальнику ВЦ Топчему Георгию Евгеньевичу, каких "непосильных трудов" ей стоило найти программиста! В то время это была дефицитная профессия. В Белгороде ни один ВУЗ ещё не готовил их.
Институт ВИОГЕМ был организован в 1959 году, в связи с освоением месторождений КМА. Это комплексный институт - НИИ, проектный и ЭПМ(экспериментально производственные мастерские). В нём трудилось в то время более 1500 сотрудников. Дисциплина была строгая. Многие руководители - бывшие фронтовики. Начальник отдела кадров до войны заседала в расстрельной тройке!
Вахтёрша, бывшая фронтовичка,(к сожалению подзабыл её имя) прославилась тем что не пропустила в институт без пропуска директора института! Он и так и этак, а она - "Нет, Иван Фёдорович, я Вас не пропущу! Явыполняю приказ директора!". Пришлось бедолаге возвращаться домой за пропуском. Потом вахтёрша удостоилась медали и получила у нас кликуху - "медалистка".
В институте, буквально за месяц до моего прихода, установили новую ЭВМ - БЭСМ-4М, с потрясающей скоростью - 20 000 операций в секунду. Она была схожей с М-20, которая была в университете. Но нам студентам попрактиковаться почти не пришлось на М-20 - на всех её не хватало. А здесь же вся машина первое время была в моём распоряжении, т.к. хоть какие-то навыки программирования на ней были только у меня. В университете изучали язык АЛГОЛ-60 и он на пару лет стал для меня основным языком программирования.
А началась моя работа с написания такой программы. Электронщики попросили меня написать долгоиграющую программу, чтобы "обкатать" новую ЭВМ. Пришла идея программным путем проверить Великую теорему Ферма (позднее я где-то вычитал, что в США, ещё лет за 15 до меня это проделали). По быстрому составил программу, вечером запустили. Утром, с нетерпением, вхожу в машинный зал - электронщики какие-то мрачные. Подхожу к узкой печати (кроме широкой печати на АЦПУ, была скоростная, только цифры 16 колонок) и вижу, что выдались какие-то числа. На мгновение почувствовал себя миллионером(за доказательство это теоремы обещались большие "бабки"). Но на печати одни нули, произошёл АВОСТ - аварийный останов. И электронщики не поймут, почему ЭВМ вышла из строя. Разбирались с поломкой несколько дней, наконец однажды заходит в комнату программистов начальник машины Толя Бражников и на ладони показывает мне что-то микроскопическое. Оказалось что в циклах шло обращение к одним и тем же ячейкам памяти и один из ферритовых сердечников "приказал долго жить". Так что, электронщики получили хорошую практику в поиске неисправностей. Правда больше тестировать ЭВМ они меня не приглашали.
На фото 1974 г. та самая БЭСМ-4М. За пультом рук. группы, ветеран - программист Ольга Архиповна Владимирова.
Вскоре овладел обязательным инструментом программиста - скальпелем. Иногда требовалось минимальное изменение в перфокарте и для этого необходим был скальпель. Нужны были ещё "дырочки", хранимые у каждого программиста в коробочках для заклеивания лишних отверстий в перфокартах. А умелец-техник Архипыч изготовил из пуансона, пружинки и т.д. удобный дырокол для перфокарт - что-то вроде компостера. Была необходима еще специальная перфокарта - "читалка", т.к. кодировка была не такая как на машинах следующего поколения - ЕС(80 колонок-80 знаков), а слева-направо и сверху вниз и без этой "читалки" не обойтись. Понятия файлов не существовало. Сами распределяли свои данные, например, на магнитном барабане - очень увесистом, наверно с тонну, внешнем носителе прямого доступа. Чтобы использовать магнитную ленту, нужно было вручную, переключателями коммутировать её. Не было ещё понятий байт, бит. Единица информации - ячейка. Очень экономно их использовали, заведомо зная разрядность используемых переменных, запихивали в одну ячейку по несколько штук с помощью нехитрой математики. В долгоиграющих программах необходимо было быть максимально аккуратным во всём, особенно в операторах внутри циклов, зная какие операции выполняются быстрее, какие медленнее. Это вошло в привычку и даже где не надо, деление на 2 машинально заменял умножением на 0,5. Несколько программ составил в кодах машины, просто из любопытства. Это мы изучали еще в университете, для 3-х адресных машин. Выполняются они конечно быстрее, но очень это трудоемкое дело.
Обычно по окончании какого-либо ВУЗа говорят - "Забудь чему учили и т.д...", но мне многие математические знания пригодились уже в самом начале. ОМИР - отдел механизации инженерных расчетов обслуживал разные научные лаборатории. Приходилось разными методами, решать сложные системы нелинейных уравнений, интегральные, дифференциальные уравнения. Много писал программ по интерполяции разными гармониками, экстраполяции. Однажды в институт приезжал по каким-то делам один московский ученый. В разговоре пожаловался, что никто не может решить ему одно сложное интегро-дифференциальное уравнение. На мехмате мы такое тоже не проходили, но всё же я справился с ним. Вообще на мехмате тогда готовили качественных специалистов. В моей группе в начале 1-го курса было более 30 человек. До диплома добрались только 14 человек. Особенно большой отсев был на 1-м и 2-м курсе. Называлось это - "татаро-подольское иго", по фамилии декана - Татарченко и препода - Подольский. Последний устраивал свои экзамены так. Запускал утром в аудиторию сразу всю группу. Раздавал каждому сложнейшие задачи. Разрешал пользоваться всем чем угодно - конспектами, учебниками. Кто решил - отвечал ему и получал следующую задачу. Экзамен длился до позднего вечера, часов 12. Были случаи - теряли сознание. В конце каждый получал по заслугам, в зависимости от того, сколько успел решить.
Видимо такая "муштра" пошла мне на пользу - за всю свою трудовую деятельность для меня не было неразрешимых проблем. И в институте сразу стал приносить пользу, благодаря своим программам, стал соавтором многих научных разработок.
Во время парада мне доверяли нести самое дорогое - дорого Леонида Ильича, еще только с 2-мя звёздами.
Начальный мой оклад был 115 рублей. Через полгода был уже старшим инженером и оклад повысили рублей на 20. Но всё равно было маловато. В 1975 году женился, в 1976 году ожидалось пополнение в семье и когда мне предложили в другой организации гораздо больший оклад - долго не колебался.
Новая для меня организация это ВЦ Облстатуправления. Годом ранее там установили новую ЭВМ - ЕС 1020. По сравнению с БЭСМ это как небо и земля! Оперативной памяти целых 128 килобайт - 2 шкафа по 64 кб. Через пару лет нарастили до 256 кб. Нога у меня с неделю болела, когда её придавило 64-мя кб! На катках, верёвками как бурлаки тащили шкафы на 2-й этаж и я малость оступился. Многое было в новинку. Не сразу врубился, что такое файл. Новая кодировка, вместо ячеек байты, биты. Начал осваивать новый язык PL/I, который стал для меня основным языком лет на 15. На нём можно было делать почти всё. На ВЦ внедрялась тогда новая форма хозяйствования - хозрасчет. Кроме статистических расчетов, делали программы и проводили расчеты для многих предприятий города. На этой ЭВМ впервые в Белгороде были разработаны и запущены в эксплуатацию программы по бухучёту. Произошло это в 1977 году. До всего приходилось вникать самим, пользовались скудной литературой, большую помощь оказывал один харьковский программист, где уже такие программы были.
Я занимался материальным учётом. Очень туго до меня доходили всякие бухгалтерские понятия. Помню сделал ведомость прихода. Мне почему то казалось, что чем красивее, тем лучше. И 90% времени потратил, чтобы печаталась красивая шапка документа. Получилась - загляденье! Больше всего мне нравился такой символ - ¤. А бухша, вместо того, чтобы восхититься моим "творением" наехала - "Что ты тут мне жучков понарисовал! Ни одна сумма не идёт!". Ну а в суммах я убрал копейки, они не влезали у меня в колонки и я округлил до рублей. Подумал - ворочают миллионами, на хрен эти копейки нужны?! Потом меня просветили, что бухучет ведется до копеечки!
Вскоре у меня все программы по материальному учёту заработали. Документы набивались в первые годы на перфоленты, позднее с появлением УПДМЛ, на магнитные ленты. Красивое зрелище представляло, когда формировалась оборотная ведомость. Крутились одновременно 4 ленты - входной остаток, приход, расход, выходной остаток. Потом этот учёт мы внедряли и на других предприятиях города и области. Запомнилась такая антисанитарная сценка. На одном из ВЦ предприятия, в котором мы планировали внедрить свой комплекс, шёл ремонт. Потолки там были довольно высокие и маляры ходили по доскам расположенными поверх АЦПУ, всех стоек - "шкафов"... На нашем же ВЦ старались поддерживать стерильную чистоту, ходили в халатах.
Занимался я и многими другими "учётными" программами. С одной из них связана такая история. Обратился к нам главбух фотообъединения "Луч" за помощью разработать программы по обсчету квитанций. Показал образцы, заключили договор. Я на следующий день написал нужные программы. Было это в пятницу, а в субботу среди дня стучится в комнату к нам в семейном общежитии какой-то парень. Представился фотографомфотообъединения "Луч". Показал образцы цветных фотографий, сказал что принимает заказы и завтра явится с аппаратурой фотографировать. Можно было сразу оплатить заказ, квитанцию он выдаст. Ну мы с женой согласились конечно, оплатили 15 рублей. Получили квитанцию, парень, распрощавшись ушел. Стал я внимательно рассматривать квитанцию - что-то непонятное! Все квитанции этого "Луча" были у меня свежи в памяти - ещё вчера делал по ним программы, а здесь какие-то грузоперевозки... Только минут через 5 до меня дошло, что у нас был жулик! Кинулся на проходную, но "фотографа" уже и след простыл...
ЭВМ работала круглосуточно, только по понедельникам была профилактика. Лучшее дневное время отдавалось сторонним организациям, мы, программисты, если нужна была отладка программ, обычно работали в 3-ю смену. 3-я смена удобна была ещё тем, что можно было слушать "Голос Америки". В 1980 году я таким образом узнал о смерти Высоцкого, который в конце апреля был в Белгороде. Работали мы в статуправлении всё время "под колпаком". Ежедневно нас “пас” КГБист Равиль. Хотя не понятно какие - такие секреты мы могли выдать?! Были курьёзные подтасовки, чтобы показать Москве выполнение плана. И якобы помидоры собирали в декабре и куры несли штук по 5 яиц в день и т.д. Видимо не хотели, чтобы эта информация просочилась на Запад - там бы поумирали со смеха. С Равилем связана ещё такая взяточная история. Дело было в начале февраля 1978 года. В 20-х числах того месяца должна была состояться Спартакиада России по шахматам в г.Орджоникидзе(сейчас Владикавказ). Меня туда брали, притом на 1-ю доску за команду Белгородской области. Трудно передать тогдашние мои ощущения. Впервые такое ответственное соревнование! Еще труднее передать ощущения, которые я ощутил, узнав, что меня в это же время призывают на военные сборы! Притом 2-х месячные! Что делать? Сунулся к своему начальству за помощью. По идее им выгоднее меня отпустить на 2-х недельные соревнования, чем терять работника на 2 месяца. Но против вонкомата не попрешь! И тут пришла идея, что круче военкомата должен быть КГБ. Поговорил с Равилем. Пообещал поразведать – можно ли будет меня откосить. На следующий день говорит – не получается. Пришлось готовиться к сборам. И вдруг через пару дней он подбегает ко мне, запыхавшись и говорит – “Всё, моему начальнику(полковнику КГБ) удалось тебя освободить от сборов. Нужен коньяк!”. Я тут же понесся по магазинам, выбрал лучшее, что можно было найти – 2 бутылки армянского коньяка(одну Равилю). Вечером похвастался перед всеми ребятами, которых тоже призывали на эти сборы и у них не было такой возможности избежать этого. Но буквально на следующий день узнаю, что эти сборы вообще отменили! Приближалось 23 февраля, юбилейный год и бабки воякам видимо потребовались на отмечания. Для меня стало ясно, почему Равиль так спешил! Он в своем КГБ, узнав об этом, решил воспользоваться случаем. Скорее всего никакого полковника и не было, но я был на Равиля не в обиде. Главное, что попал на соревнование и там “замочил” самого Илюмжинова – см. статью http://popovgl.narod.ru/Stat/Stat13.html
Освоив язык, мне обычно достаточно было получить распечатку новой программы, которую я сам и набивал на перфокарты, чтобы найти возможные ошибки. Но пару раз сталкивался с непредвиденным. Ошибок в программе нет, а она не работает! Чувствуешь себя идиотом. В конце концов приходилось искать другой способ решения проблемы. Только через несколько месяцев узнаешь, что это были ошибки транслятора! Например, чтобы обойти одну из ошибок транслятора при работе с индексно-последовательными файлами, необходимо было в нужном месте к одному из чисел прибавлять ноль! Попробуй догадайся! Мелкие программные ошибки исправлял в перфокартах скальпелем, которым стал владеть виртуозно, мог бы наверно и хирургом подрабатывать. В отличие от хирургов, я мог брать работу на дом. Было много всяких подработок, особенно связанных с защитой диссертаций. Диссертация считалась круче, если там есть распечатки с ЭВМ. На какие только темы не приходилось писать программы! Однажды была очень срочная работа для кандидатской одного из соискателей по медицине, про какие-то эндокринные системы. (Папа у него работал начальником отдела кадров крупного предприятия, так что оплата была неплохая.) Программу я успел написать и набить на работе, а исходные данные решил дома повырезать. Всю ночь потратил на массив данных, хорошо хоть кодировка у цифр простая, по одной дырочке в нужной строчке. В результате от скальпеля натёр мозоль. Интересно, у хирургов они бывают? Всё тогда успел сделать вовремя. Вообще, перфокарты исправляемые вручную, принято было пропускать потом через "Бармалей" (устройство вывода на перфокарты, прозванное так за "приятный"звук при работе), чтобы получить качественную копию. Однажды дорого поплатился за то, что не сделал этого. Я разработал статистическую программу по выпуску бюллетеня по промышленности(форма 1-П). Всё прекрасно работало и вдруг однажды самое большое предприятие области(Лебединский ГОК) попадает в какой-то район, где и промышленности то никакой нет. Эту ошибку прозевали все - и я, и отдел промышленности и начальник статуправления. Обнаружили только в обкоме партии и оттуда стали раскручивать в обратном направлении и вышли на меня. А всё из-за того что в одной перфокарте не прочиталась одна дырочка. Эта дырочка обошлась мне в лишение премии. Премии мы тогда получали ежемесячно 40%. У меня была должность зав. бюро программирования с окладом 200 рублей + 40% премия = 280 рублей. Премии выдавались при выполнении плана. Планирование велось от достигнутого, с каждым годом всё больше и больше, выполнять такие планы стало невозможно, премии потом стали урезать, народ разбегаться. А в лучшие годы бюро программирования даже побеждало во всесоюзном соцсоревновании среди подобных подразделений, красивый вымпел получали, приезжали с других ВЦ перенимать опыт.
Однажды я задумался, как максимально уменьшить использование перфокарт. Ведь при эксплуатации готовых программ их вызов осуществляется вводом колоды управляющих перфокарт, связывающих логические имена в программах с физическими. На один только индексно-последовательный файл, обычно нужно 5 управляющих перфокарт. В программе может быть несколько таких файлов и еще куча последовательных. После нескольких вводов колода приходит в негодность. В одном из руководств вычитал, что управляющие операторы могут вводиться не только с перфокарт, но и с диска. С этого началась разработка моего "диспетчера программ". В дальнейшем все программы вызывались с диска командой подаваемой с пишущей машинки - "Консула". Это нововведение потом распространилось не только в Белгороде. Приезжали с Тулы, Ленинградаперенимать опыт. Никакой материальной выгоды с этого изобретения я не имел. Помню, ребята с Тулы подарили магнитную ленту с записанными на ней интересными картинами. На АЦПУ тогда распечатывались картины из подобранных символов - "Мона Лиза", "Иван Грозный", "Венера"... Если смотреть издали, так очень даже здорово!
Из сложных универсальных программ сделанных мною тогда вспоминается программа, которая сама создавала(генерировала) программы по обслуживанию последовательных файлов.
С вводом в эксплуатацию всё новых программ, машинного времени всем не хватало, всегда были недовольные. Сделал программу которая сама распределяла машинное время. Приоритет получали программы по статистике и сторонние заказчики. Остальное время распределялось, максимально учитывая пожелания заказчиков, урезая всех более-менее честно. Меня и других программистов моя программа "не обижала"!
Ещё из необычных для нашего времени программ, это программа которая могла большими буквами печатать заданный текст на АЦПУ. Размер букв тоже задавался и сами буквы "рисовались" из подходящих символов. Несложная, но полезная программа. Многие объявления, поздравления делались с помощью этой программы.
На фото сохранившаяся распечатка этой программы и одна из нужных в то время колод перфокарт.
Игровых программ в то время не было. Были различные тесты с использованием ввода-вывода на Консул. Была и шахматная программа в виде колоды перфокарт (штук 100) в исполняемых кодах, игра шла тоже через пишмаш. Сам я не пытался написать подобную программу, не хватало времени. Из развлекательных, делал программу пишущую стихи, но самые простейшие и с малой базой слов. Лет через 15 я вернулся к идее создать более серьёзную стихотворную программу, но так и не завершил.
Первую квартиру, 2-х комнатную я получил от статуправления в 1980 году. До этого мы жили в семейном общежитии ВИОГЕМа постоянно улучшая условия. В начале, в 1975 году было всего 8 квадратных метров, потом побольше комната и незадолго до получения квартиры был целый блок - 2 комнаты. Но в 1980 году у нас уже было 3-е детей и 28 м2 было маловато, надо было думать об улучшении. В статуправлении таких возможностей не было и в 1981 году я вернулся в ВИОГЕМ, где продолжала работать супруга. Там как раз вместо БЭСМ 4М установили ЕС 1022 и я опять был востребован. Ушёл я с ВЦ Статуправления "по хорошему". Начальник ВЦ попросил, чтобы сам нашёл себе замену. И я доказал, что незаменимых людей нет и подыскал себе замену. Правда вскоре после моего ухода, бюро программирования расформировали, программистов перевели в другой отдел.
В ВИОГЕМе вернулся в тот же отдел уже руководителем группы. Помог запустить новую ЭВМ. Проводил занятия по работе на ней. Систему DOS я знал основательно, последующую OS уже значительно хуже.
Продолжил писать и переводить с АЛГОЛа на ПЛ/1 инженерные программы. В 1982 году стал вопрос о запуске на ЭВМ расчёта заработной платы. Программу почему то решили взять в одном из институтов Днепропетровска - вроде из-за знакомства директоров институтов. Мне уже бухучёт был не в новинку, вскоре без проблем запустил расчёт зарплаты. А через пару лет эту зарплату переписывали уже назад с нашего института в днепропетровский, потому что я сделал кучу улучшений и написал множество дополнительных программ по зарплате. Типа "подковал блоху". Стоит отметить, что первоначально зарплата была написана на ФОРТРАНе - совсем не подходящем для этого языке. Вот например какое "очень важное новшество" я ввёл. Для особых сотрудников распечатывалось сразу 2 расчётных листка - один для него, второй для его жены!Сначала меня об этом попросил один знакомый сотрудник, которого строго контролировала жена. Я сделал. Этот сотрудник похвастал перед другими, находящимися под надзором у жён. Вскоре у меня был особый список из, кажется, 5 человек! Кстати, фальшивые листочки для жён я делал потом и в других организациях. Один, рассказывал, как чуть не попался жене. Забыл спрятать настоящий листок, держал в джинсах. Жена - "Вася, снимай штаны, постираю". Вася, вспомнив про листок - "Оля, не надо, не надо, я сам постираю!". Ранее в постирочных делах Вася не участвовал...
19.08.2013 в 02:21
|