014. Программисты-профессионалы и программирующие инженеры

Что бывало...

Moderator: Ella

Forum rules
На форуме обсуждаются высказывания участников, а не их личные качества. Запрещены любые оскорбительные замечания в адрес участника или его родственников. Лучший способ защиты - не уподобляться!
User avatar
Архивариус
Модератор форума
Posts: 1411
Joined: Thu Feb 21, 2008 5:28 am

Моя первая программа (Как мы начинали)

Post by Архивариус »

Евгений Беркович
- Friday, August 21, 2009 at 06:03:43 (EDT)


В одной закрытой рассылке, где участвуют лидеры российского интернета, обсуждалась история перехода на ЕС ЭВМ, что угробило отечественную вычислительную технику. Я вспомнил свои первые программы, написанные в 1965 году для М-20 – ламповой машины первого поколения, стоявшей в ВЦ МГУ (тогда это был ВЦ мехмата МГУ). Программировали мы в кодах машины, никаких языков программирования не было, даже ассемблера. Об уровне «автоматизации программирования» говорит такой факт: в том же 1965 году вышла в издательстве «Наука»(!) книжка А.Л.Брудно «Программирование в содержательных обозначениях». Книга запомнилась, с одной стороны, простотой рецептов: заменить буквами машинные адреса, написать программу, а потом опять вернуться к машинным адресам, а с другой стороны, глубокими идеями и предвидениями, например: «владение вычислительной техникой становится и станет элементом культуры человека».
Попробовал поискать в интернете что-то еще об этой книге и с радостью обнаружил, что в прошлом году Александр Львович Брудно в здравом уме и твердой памяти отметил свой девяностолетний юбилей!

Image

Ученики московского лицея собрали информацию о жизни и творчестве А.Л.Брудно:

http://209.85.129.132/search?q=cache:vy ... nt=firefox

Любопытное было время. Вот одна цитата:
Вокруг М-2 сложился неформальный круг программистов, работавших в разных организациях, в который входили Г. М. Адельсон-Вельский, В. Л. Арлазаров, М. М. Бонгард, А. Л. Брудно, М. Я. Вайнштейн, Д. М. Гробман, А. С. Кронрод, Е. М. Ландис, И. Я. Ландау, А. Л. Лунц и другие. Они занимались программированием игровых задач, задач распознавания и диагностики. Результаты этих исследований привели к находкам оригинальных методов перебора, в частности метода ветвей и границ, построения справочных систем с логарифмическими записью и поиском и т. д.
Приведенные имена показывают, что тема «Становление программирования» вполне уместна в «Заметках по еврейской истории»...

Среди читателей и авторов нашего портала есть много людей, чья работа связана с программированием. Предлагаю обменяться воспоминаниями на тему «Моя первая программа» или «Моя первая вычислительная машина». Какие люди Вас окружали? Какая была обстановка вокруг Вас? Что изменилось в программировании на Ваших глазах? Какие курьезные случаи происходили тогда?

Мне кажется, что такое «коллективное воспоминание» может быть интересно многим читателям. Архивариуса я попрошу открыть такую тему на форуме, а если материал окажется подходящим для журнала, то опубликую его в «Заметках».

Александру Львовичу желаю здоровья и благополучия – до 120!
Всем удачи!
Самуил
участник форума
Posts: 48
Joined: Sun Jul 19, 2009 6:11 pm

001. Моя первая вычислительная машина

Post by Самуил »

Моя первая машина случилась много раньше первой программы. Нетипично для людей нашего поколения, обычно сводивших знакомство с компьютерами (тогда их называли «ЭВМ») в студенческие годы, осваивая программирование. Причем, многие программы-то писали, сдавали их на счет, получали распечатки с результатами, а саму машину, бывало, и в глаза не видели. У меня сложилось иначе: летом 1966 года, помню, как раз начались каникулы, я – тогда еще мальчишка – пошел работать...

И сразу же отвлекусь в сторону. Живя на Западе, мы привыкли к тому, что подростки работают. В каникулы повсеместно, но и во время занятий – в вечерние часы. Сообразно со своей никакой еще квалификацией: везде, где надо что-то разносить, укладывать, убирать, помогать, стоять за кассой и т.д. Это – норма. В стране победившего социализма, в государстве рабочих и крестьян, где с утра до вечера воспевались радости труда, родители изо всех сил оберегали своих чад от этой самой радости. Причем, речь не об избалованных отпрысках партийно-советского начальства – такие на нашей задымленной, грохочущей привокзальной окраине и не водились, но о детях простых работяг, что населяли облупленные панельные пятиэтажки. Считалось нормой, когда до окончания школы, а фактически – до армии, здоровенные великовозрастные балбесы шлялись по улицам, изнывая от безделья. И если паренек шел работать – это был знак беды. Это означало, что отец-слесарь пьет беспробудно, а мать-уборщица не в состоянии сама поднять троих детей. Так что новость, что де сынок главного инженера стройтреста, по тамошним меркам – богатея, пошел работать, это... Это было воспринято соседями весьма неодобрительно: кто видел здесь свидетельство ненасытной еврейской жадности («даже сына не пожалел, погнал на заработки»), кто – коварный еврейский умысел пропихнуть сынка в ВУЗ, загодя готовя ему привилегированный «рабочий» статус, кто что еще, но какая-то еврейская хитрость обязательно должна была быть. И она таки была!

Отец был в ту пору увлечен идеей «строительства с колес». Это когда все конструкции и материалы, потребные на стройке сегодня и сейчас, именно сегодня и сейчас подвозятся. Ничего необычного, так в нормальных странах и строят. Но вспомним, как выглядела типичная советская стройка (фильм «Операция Ы»: «надо Федя, надо») – огромная территория, заваленная кирпичем и панелями, досками и стеклом, рубероидом, металлом, столяркой... Все это месяцами мокло, ржавело и гнило под открытым небом, буквально взывая к окрестному населению: «ну укради, укради же меня, пусти, наконец, в дело в своем гараже или на даче»... Так вот, отец переманил из Киева молодого, амбициозного кандидата наук и тот возглавил центр комплектации строительства, где установили первую в нашем городе вычислительную машину «Минск-22». Они приятельствовали, частенько встречались в неформальной обстановке – по выходным, на природе, так что я присутствовал и слушал, раскрыв рот. Это было время, когда компьютер казался чем-то фантастическим, а программист в глазах мальчишки недалеко отстоял от мага-волшебника. Только вышел и мгновенно стал сверхпопулярным «Понедельник начинается в субботу». И вот, оказывается, в получасе ходьбы от нашего дома стоит это чудо расчудесное. Понятно, как я туда рвался. Отец же говорил, что не знает, удастся ли мне поступить в институт и получить диплом, но уметь зарабатывать и кормить семью я обязан. А при нынешнем (т.е. тогдашнем) увлечении вычислительными машинами работа где-то рядом с ними может, пожалуй, кормить. Так что он договорится с начальником центра и меня возьмут туда на летние месяцы. Ну, а дальше – как себя проявишь...

И вот я попал в вычислительний центр (ВЦ). Занимались они тем, что сейчас называется логистика. К концу первой смены приходили отчеты за сегодня и заявки на завтра. Их сверяли с календарными планами, утрясали и формировали наряды. На ЭВМ расчитывали загрузку и маршруты автотранспорта и печатали путевые листы. Также печаталась куча репортов и (вот это интересно) эдакий наглядный отчет, который можно отнести к отдаленным предкам современной деловой графики: на барабанном скоростном принтере АЦПУ-128 (совершенно фантастическая по тем временам машина) выпечатывались диаграммы Ганта. Цвета, конечно, не было, но разными «по густоте» символами достигался зрительный эффект градаций серого. Много позже схожая работа оставшихся безымянными программеров-художников привела к появлению целого направления компьютерной живописи. Помните Мону Лизу, Чебурашку или портрет Эйнштейна на «АЦПУшной» распечатке? Вблизи видишь мешанину букв, цифр, точек, звездочек; отодвигаешь лист от себя и... магически проступает картина из филигранно подобранной мозаики знаков. Это ныне утраченное (как византийская мозаика) искусство расцвело в 70-е годы и погибло в 80-е с появлением матричных, а затем – струйных и лазерных принтеров (потом еще и цветных), которые позволяли распечатывать графические изображения (впоследствии – с фотографическим качеством). И все, прогресс технологии убил искусство – банальная история...

Итак, я стал работать на ВЦ мальчиком-куда-пошлют-подай-принеси и был готов там хоть полы мыть, только бы не изгнали меня в конце лета из обретенного рая. Освоил подготовку перфолент, делал сверку данных (сверхнуднейшая работа). И постепенно стал там своим, пришелся ко двору. Работа на ВЦ кипела во вторую смену, а доделывалась в третью (туда меня, как несовершеннолетнего, не ставили). Причин бросать работу с началом учебы, равно как и переходить в вечернюю школу, не было – я продолжал учиться в дневной. Но... очень быстро отдалился от одноклассников: они оставались детьми, просившими у родителей пятиалтынный на мороженное, а я уже был взрослым – получал аванс и получку. Поначалу меня оформили учеником с окладом в 30 рублей, потом я стал оператором подготовки данных и наконец – оператором ЭВМ. Это уже была карьера! К программированию меня, естественно, не подпускали, там колдовал сам начальник – Игорь Владимирович – с помощниками. Моя обязанность была запускать задачи, т.е. аккуратно вводить перфоленты, сматывать их, укладывать в коробки, туда же прилагать полученные распечатки (широкую алфавитно-цифровую печать АЦПУ-128 берегли, поэтому для всяких отладок использовалась «стрекоталка» – принтер, печатавший только цифры и еще пару значков на узкую ленту, наподобие кассового аппарата). Ну и конечно, для каждого прогона надо было установить магнитные ленты (лентоводов было восемь), причем не напутать, какую в какой, а в конце работы все аккуратнейшим образом снять и разложить по местам...

Магнитные ленты были самой примечательной особенностью машины «Минск-22» (самой эмоционально примечательной) и заслуживают отдельного параграфа. Это были очень толстые, очень неэластичные коричневые ленты шириной в четыре, а то и пять дюймов. Без бобин. Вы представляете себе, без бобин! Как же с ними работать? А вот как. В лентоводе были два кармана, открытых сверху, – как два невероятно глубоких стакана. Надо было ухватить пальцами конец туго смотанной ленты и бросить моток в один карман, затем конец ленты протиснуть между магнитными головками и встромить в другой карман. В процессе движения, а лента использовалась как устройство прямого (!) доступа, она перемещалась между карманами, укладываясь там прихотливыми волнами (передняя стенка кармана была стеклянной и можно было любоваться). А чтобы лента не проскользнула целиком в один из карманов, по концам ее обычным дыроколом делались отверстия. В лентоводе же стояли специальные лампочки и светодатчики, которые должны были (по идее конструктора) стопорить ленту в последний момент. Ну да, как же! Каждые пару часов в одном из лентоводов лента «просклизывала» в карман. Тут-то и начиналась потеха... Как мы знаем из великой русской литературы наш великий народ – великий мастер по преодолению препятствий, им же воздвигнутых. Итак, когда лента «просклизнула», надо прежде всего... успокоиться, привести себя в состояние полной философской отрешенности и созерцательности, ибо дело тебе предстоит долгое, как зимняя рыбалка. Метафора тут неслучайна: надо встать на специальную табуреточку (поскольку верх кармана выше твоих плеч, а руки не должны уставать) и взять в руки «удочку» – специально же изготовленный из сталистой проволоки гибкий двухметровый прут с крючком на конце. Ну... вперед! Запускаем удочку в карман. Помните, на конце ленты есть отверстие, проделанное дыроколом. Вот за это отверстие надо зацепить ленту крючком. Ерунда, говорите? Да только лента, она укладывается в кармане как ей заблагорассудится и вам очень повезло, если конец ее лежит сверху и вы его видите. Обычно же он заныривает куда-то вниз и надо этого прихотливо свернувшегося удавчика осторожно поглаживать-постукивать, чтобы кольца его легли как-то иначе – а вдруг кончик и высунется. И осторожно! На ленте ценнейшая информация – результаты трехчасового счета. Поцарапаешь, повредишь магнитный слой – амбец! А время меж тем тикает, а отчеты надо в трест отсылать... А ты стоишь на табуреточке и удочкой вверх-вниз, дерг-дерг, вверх-вниз, дерг-дерг... Вы представляете, чтó тут высказывалось в адрес несчастного конструктора этого чуда и его родственников по материнской линии? А вот и зря, кстати. Если нервничаешь, никогда не выудишь... Я был непревзойденный удильщик магнитных лент. Жаль искусство это не успело оформиться в вид спорта (ленты сняли с производства), а то завоевывал бы медали высшей пробы. Но и без медалей талант сей немало поспоспешествовал моему карьерному росту...

А между тем Игорь Владимирович начал еще преподавать в пединституте. В нашем ВЦ стали появляться его страждущие ученики со своими курсовыми. И тут я с удивлением обнаружил, что эти старшие (!) на три-четыре года студенты (!!) и, главное, студентки (!!!) обращаются ко мне с искательными улыбками. Что я в их глазах – местный бугор, авторитет, с легкостью щекающий их несчастные задания типа «отсортировать массив чисел, используя»... Та-а-ак! Сопливые одноклассницы были позабыты окончательно. Жизнь удалась!..

А тем временем стали монтировать вторую машину – новейшую, только начался выпуск – «Минск-32». Мне она сразу понравилась. Это был уже настоящий, серьезный мэйнфрейм: шесть нормальных лентоводов (ленты в бобинах, прощайте удочки!), перфокарточный ввод-вывод (по сравнению с перфолентой это колоссальный прогресс, оценить который может только тот, кто хорошенько надолбался с перфолентами). Конечно, скоростной АЦПУ, никаких «стрекоталок». Быстродействие, память 64 килослова (в слове 37 бит) – супер! И самое поразительное – магнитные барабаны (вот забыл, сколько их было штук). В конце 60-х и первой половине 70-х «Минск-32» был самой популярной машиной (вне академической и военной сфер), неприхотливой, на редкость удачной. В ней как будто был угадан тот максимальный уровень сложности, который возможен в массовом (и не военном) изделии советского хайтека. Но... поработать толком на этой симпатичной машине мне так и не довелось. Я заканчивал школу. Надо было пытаться поступать в институт. И поступать как «производственник», брать бумагу с работы, где я числился на «пролетарской» должности. Все это, по идее, должно было как-то ослаблять тяжкое бремя пятой графы...

Почему я так не поступил? Не знаю, по наитию. Я ведь закончил нормальную, не вечернюю школу, чего с «рабочей молодежью» не бывает. Думал, как же буду там доказывать, что я не верблюд? А ведь прицепятся, как пить дать. Да, ну его к лешему, прикинусь обычным школьником. Так и поступил в институт в Киеве, причем, на дневное отделение (чтоб увильнуть от солдатской службы в Советской Армии). И пришлось мне из родного ВЦ увольняться. Но это уже совсем другая история...
Last edited by Самуил on Wed Aug 17, 2011 8:20 pm, edited 4 times in total.
User avatar
bem
Site Admin
Posts: 87
Joined: Tue Feb 19, 2008 3:02 pm

Re: Моя первая программа (Как мы начинали)

Post by bem »

Еще несколько замечаний о начале «кибернетической эры». Как я уже писал, в упомянутой закрытой рассылке обсуждался вопрос о судьбоносном совещании 1969 года, на котором было принято решение о стратегическом направлении развития вычислительной техники. Было решено не заниматься своими разработками ЭВМ (даже в партнерстве с английской фирмой ICL), а копировать разработки IBM, как в области железа, так и программ. Можно сказать, огрубляя ситуацию, что на том совещании специалисты-прогрессисты (либералами их не хочется называть) проиграли аппаратчикам и специалистам-консерваторам, поддерживающим аппаратчиков.
Я бы Прологом к статье о том событии рассказал о другом совещании, состоявшемся на десять лет раньше, на котором события развивались прямо противоположно: специалисты-прогрессисты победили и заставили аппаратчиков следовать их советам и рекомендациям, а специалистов-консерваторов - молчать в тряпочку. Мне кажется, что воспоминания об этом поражении аппаратчиков сыграли свою роль почти через 10 лет - в декабре 1969 года.
Самое удивительное, что в обоих случаях победившая сторона не достигла обещанных целей, т.е. фактически они надули своих оппонентов. Правда, косвенные обстоятельства могут немного выровнять оценку.
Но пора рассказать о совещании 1960 года. Это было 1-е Всесоюзное совещание о применении математических методов в экономических исследованиях и планировании. Проходило он с 4 по 8 апреля. Стенограмма этого совещания, изданная в двух томах, читается как детективный роман. Присутствовали ведущие математики, статистики и экономисты. Еще были свежи в памяти разгромы генетики, попытка разгромить физику... У "консерваторов"-экономистов было желание запретить влезать с математическими моделями в тонкую структуру экономики. Но Канторовичу и др. (Колмогоров его поддержал) удалось обещаниями скорого успеха сломить противников и убедить власти "дать им порулить".
По сравнению с совещанием 1969 года в 1960 году решался более принципиальный вопрос: нужна ли математика и кибернетика советскому народному хозяйству или нет. Трудно представить, что было бы, если бы "прогрессисты" проиграли. Ведь кибернетику, как и генетику, называли "продажной девкой империализма". Но они выиграли, и через два года был создан ЦЭМИ, был открыт громадный ВЦ Госплана, ВЦ стали создаваться во всех министерствах и ведомствах, Канторович, Немчинов, Новожилов в 1965 году получили Ленинскую премию и т.д. Как грибы после дождя, стали появляться ВЦ и Институты и кафедры экономико-математических методов, завлабы именно таких институтов через тридцать лет стали "рулить" страной...
Я лично знал многих участников того совещания, не раз разговаривал с Канторовичем и могу твердо сказать: они тогда верили в то, что говорили. Колмогоров считал, что осталось только найти единый критерий оптимальности для всех экономики, и дело будет в шляпе. Однако на деле все оказалось сложнее. Тогда стали развивать модели. Линейное программирование грубо - начали развивать нелинейное. Некоторые факторы неизвестны - появилось стохастическое программирование. Критериев много - начали исследовать многокритериальные задачи. Сразу всей информации нет в наличии - появились многоэтапные задачи. И т.д. и т.п. Но чем изощреннее становилась математика, тем яснее становилось, что мы от цели еще дальше, чем были в начале.
Одновременно развивалась и теория сложности, и выяснилось, что даже "идеальной" вычислительной машины, ограниченной только законами физики, типа предельной скорости света или принципом неопределенности Гейзенберга, так вот, даже такой машины не хватит, чтобы перебором решить обычную шахматную задачу. Т.е. энергии для этого потребуется столько, что надо будет "сжечь" земной шар...
Короче, сейчас в то, что пятилетний (или даже годовой) план можно оптимизировать с помощью математики и ЭВМ и централизованно управлять развивающейся экономикой огромной страны, верят только пламенные р-революционеры или штатные лекторы Общества "Знание".
Как человек, всю сознательную жизнь занимающийся математическими моделями выбора оптимальных решений, я не могу не приветствовать, не гордиться, не радоваться победе "наших" на том историческом 1-м Совещании. Но, поставив мысленно себя на место руководства страной, я не могу не признать, что они должны были себя чувствовать обманутыми. Ведь обещания были такими оптимистическими, мы "им" дали столько прав, денег, ресурсов... А оптимального пятилетнего плана нет, как нет...
Через 10 лет вера в обещания специалистов была подорвана, что и сказалось, по моему мнению, на решении Совещания в декабре 1969 года: много обещаете, да мало делаете, копируйте лучше IBM!
Еще один раз руководство "купилось" на обещание кибернетиков, когда решились на всеобщую АСУ-изацию страны. Как шутили тогда, "Все обАСУ" - называлась книга В.М.Глушкова. Но это уже другая история.
Удачи!
Лучший способ защиты - не уподобляться!
User avatar
vitakh
Модератор форума
Posts: 29
Joined: Thu Feb 21, 2008 12:54 am

Re: Моя первая программа (Как мы начинали)

Post by vitakh »

В Гостевую несколько раз заходил (комментируя понятие "точности") Марк Ефимович Неменман - легендарный программист - один из основных разработчиков ЭВМ серии "Минск" ( http://www.computer-museum.ru/histussr/nievmvtr.htm и http://en.wikipedia.org/wiki/Mark_Nemenman ). Он долго работал в минском НИИЭВМ при заводе Орджоникидзе, где делались "Мински", а потом и ЭВМ серии Ряд (она же ЕС - Единная Система). Будем надеяться, что он набредёт на эту тему и добавит свои комментарии/воспоминания.
Самуил
участник форума
Posts: 48
Joined: Sun Jul 19, 2009 6:11 pm

002.

Post by Самуил »

По просьбе некоторых коллег, увидевших себя в легко идентифицируемых персонажах и не желающих такой идентификации, вынужден снять данный текст. С.
Last edited by Самуил on Wed Aug 17, 2011 5:40 pm, edited 5 times in total.
Самуил
участник форума
Posts: 48
Joined: Sun Jul 19, 2009 6:11 pm

003.

Post by Самуил »

По просьбе некоторых коллег, увидевших себя в легко идентифицируемых персонажах и не желающих такой идентификации, вынужден снять данный текст. С.
Last edited by Самуил on Wed Aug 17, 2011 5:32 pm, edited 3 times in total.
Самуил
участник форума
Posts: 48
Joined: Sun Jul 19, 2009 6:11 pm

004.

Post by Самуил »

По просьбе некоторых коллег, увидевших себя в легко идентифицируемых персонажах и не желающих такой идентификации, вынужден снять данный текст. С.
Last edited by Самуил on Wed Aug 17, 2011 5:39 pm, edited 4 times in total.
Самуил
участник форума
Posts: 48
Joined: Sun Jul 19, 2009 6:11 pm

005.

Post by Самуил »

По просьбе некоторых коллег, увидевших себя в легко идентифицируемых персонажах и не желающих такой идентификации, вынужден снять данный текст. С.
Last edited by Самуил on Wed Aug 17, 2011 5:39 pm, edited 9 times in total.
Флят Леонид
активный участник
Posts: 158
Joined: Tue Feb 26, 2008 10:53 pm

Re: Моя первая программа (Как мы начинали)

Post by Флят Леонид »

Хотелось бы "расширить" еврейскую составляющую в воспоминаниях уважаемого Самуила. Отсюда вопрос (возможно, риторический): есть ли у автора сведения о программе М. Ботвинника и Ко "Пионер", и может ли он высказать свое мнение о ней. С уважением, Л.Ф.
Самуил
участник форума
Posts: 48
Joined: Sun Jul 19, 2009 6:11 pm

Re: Флят Леонид

Post by Самуил »

Уважаемый господин Флят! Еврейскую составляющую постараюсь «расширить», а по программе «Пионер» давайте скажу пару слов в Гостевой. Не возражаете?
Post Reply