Сталкер - Интернет-журнал
 

Домой


Новые сайты

Бизнес

Искусство

Компьютеры, интернет

Личное

Наука и образование

Общество

Персональные страницы


Stalker TOP
Наша кнопка
Используйте для ссылок на сайт эту кнопку


Rambler's Top100 Service

Архив статей

Сталкеровская премия

История компьютерного Красноярска

Гостевая книга

 О проекте

Полезные ссылки

Расписание самолетов

Расписание поездов


Яндекс  Что ищем?  
 Где искать? В Yandex По красноярским сайтам По каталогу сайтов

<< 30 марта 2000 года >>

Гость

Сергей Гамзиков

Выхожу один я на дорогу….

(Этапы небольшого пути, часть вторая. Часть первую см. тут. )

Собственно, 1987 год, с которого началось мое становление как программиста, начался с 1 января. Именно в этот день мне надлежало отбыть на курсы повышения квалификации. Но до этого дня… В 82-м я успешно окончил Alma Mater и решил испытать себя на поприще служения Родине, попросту говоря подрядился служить в Советской Армии простым лейтенантом. Надеялся попасть в Южную группу войск и попал….. На самый юг Забайкальского военного округа, в Монголию, в пустыню Гоби. Как ни странно (по военному образованию я артиллерист), компьютер я там увидел. Это был близкий родственник Электроники Д3-28 (это я знаю сейчас, а тогда о названии и не догадывался) и предназначался для расчетов параметров стрельбы дивизиона самоходных гаубиц. Но самое интересное заключалось в другом – при сдаче нормативов при расчете пользоваться компьютером было НИЗ-ЗЯ-А-а-а!!!! Основание – речь проверяющего, старпера-подполковника:

«На ЭВМ и дурак сможет, а вы вот на ПУО (Прибор Управления Огнем наземной артиллерии) сдавайте!»

При всем при этом, расчет на компе занимал доли секунды, а на ПУО – норматив около минуты. И дивизионный народ, скрежеща зубами и плюясь, разворачивал ПУО, чиркал карандашиком, листал «Таблицы стрельбы» (это такая книжка, страниц на 500, где прописаны значения прицела и уровня на все случаи жизни, причем шрифт, по-моему, был Times, а размер – 8 или 6) и по прошествии околонормативного времени выдавал команду типа «Прицел 120, трубка 15, батарея огонь!!!!». А дальше как у Яшки-артиллериста – БАЦ-БАЦ и…. мимо. Потом приспособились. Сдающий норматив, вслух называя исходные данные командным голосом, с идиотской физиономией сумасшедшего художника вдохновенно чиркал карандашиком, тер ластиком, листал таблицы, находясь рядом с машиной управления огнем дивизиона, внутри которой сидел свой человек. Так что норматив всегда выполнялся за время, которое было необходимо для того, чтобы обогнуть машину бойцу-курьеру, доставлявшему распечатку с результатом.

Это было первое понимание того, что компьютер – это хорошо и быстро.

Закончив служение Родине, я вернулся в Красноярск, без энтузиазма поискал работу в городе. Тогда у меня было странное убеждение в том, что жизнь свою я должен посвятить делу, которому учился. Жизнь развеяла потом мои заблуждения. Итак я двинул в объединение «Красноярскуголь» и получил распределение на разрез «Бородинский». Приехав туда, я оказался на должности механика в службе пути. Ни фига не соображая ни в железной дороге, ни в ее технике, я приступил к исполнению обязанностей. Эти обязанности мне скоро наскучили, но повезло – появилась вакансия мастера на участке буровзрывных работ. Эта работа была по моей специальности и я с удовольствием перешел на нее. Это был первый шаг по той дороге, по которой я топаю сейчас. Кстати сказать, ни один наш шаг по жизни, по моему глубокому убеждению, не пропадает втуне: сейчас я занимаюсь информационным обеспечением железнодорожного транспортного предприятия, и опыт приобретенный в бытность мою механиком пути, очень сильно помогает.

Примечание Сталкера Эт точно, как говорил товарищ Сухов. Могу подтвердить. Мне тоже пригодились в жизни все мои закидоны, от социологии до стенгазет. И вообще, программист, в силу своей профессии, вынужден так глубоко вникать в автоматизируемую деятельность, что становится в ней профессионалом. Так, из программистов, автоматизировавших бухучет, получились отличные бухгалтеры. А я одно время читал лекции для экономистов ЛПУ по организации страховой медицины:о)

А первый шаг заключался в том, что мастеру-взрывнику приходится очень много считать. Крупные блоки, в которых около 1000 скважин, рассчитывались вручную на обыкновенном калькуляторе. Мелкие тоже, на том же калькуляторе. А суть в том, что и большое, и маленькое имело один и тот же алгоритм расчета. А как это задалбливает!!!! Одно и то же, каждый день, по много раз….

Эх раз, еще раз…. И так прошло два года. В декабре 1986 мне сообщают, что 1 января я должен отбыть в г. Кемерово для повышения квалификации. В принципе повышать-то не было необходимости ничего – прошло 4 года с момента окончания института, мозги были еще достаточно свежи, но план…. Это было святое и его нужно было выполнять. Выполнили этот самый план повышения квалификации мной и еще парой мужиков с других участков. В общем, 1 января 1987 г. мы отбыли в Кемерово.

Уезжали в жуткий мороз, было около -45°, я был одет в полушубок и валенки, по глупости не взяв ботинки. Приехали в Кемерово, а там +2°, жуткая каша из снега и соли. Ну, в общем, так 2 месяца в валенках и отгулял. В группе, в которую меня определили, были преимущественно взрывники, и руководитель группы тоже оказался взрывником. И буквально через неделю он продемонстрировал расчеты параметров БВР (буро-взрывных работ) на «НАИРИ» (4 или К – не помню). Попутно пожаловался на то, что памяти маловато, и как досадно, что расчет параметров нельзя выполнить в полном объеме. В итоге у меня проснулся жуткий интерес:

1. Ввод данных выполнялся гораздо быстрее, чем расчет тех же данных вручную

2. Время расчета в тогдашнем моем понимании было равно 0

3. Печать результатов заняла по времени около 20 сек.

В общем блок из 70 скважин был рассчитан менее чем за 5 минут, да еще с красивой итоговой табличкой. Ручками, с оформлением результатов времени бы ушло не менее часа. Я смекнул, что это дело стоящее, и кинулся по книжным магазинам разыскивать что-нибудь по программированию. На тот момент я уже слышал слова «Фортран» и «Бейсик». Наш руководитель не устоял от того, чтобы дать мне «вольную» (я должен был в КемТИПП – Кемеровский технологический институт пищевой промышленности, используя Д3-28 и как раз на этом самом “Бейсике”, написать полный вариант программы расчета параметров на что мне давалось ровно 3 недели). Чем я его убедил тогда, не пойму до сих пор. Видно что-то такое изнутри проявилось…

 Я два дня шарахался по магазинам в поисках какой-нибудь книжонки, в которой хоть что-нибудь напоминало по виду (!!!) написанное для меня на бумажке умное английское слово BASIC. Я всю жизнь учил немецкий язык и читал это слово произнося звуки по-немецки - БАЗИК. Мне, слава Богу, повезло. В одном из магазинов я увидел книжку «Фортран для начинающих» и начал с тоской ее перелистывать. И вдруг (вот она УДАЧА!!!) я вижу это магическое слово BASIC. Я и не обратил внимания на то, что это слово было в паре с другим и обозначало эта фраза совершенно не то, о чем я подумал. Там было написано BASIC FORTRAN, и к тому, чем я собирался заниматься это словосочетание не имело ни малейшего отношения. Но тем не менее я был счастлив и притупил к изучению языка Basic по книжке о фортране. Два дня я продирался сквозь зубодробительные английские слова ACCEPT, PRINT, DO, GOTO, IF с его THEN и ELSE. В общем-то, эти два дня нужны были для того, чтобы согласовать использование машинного времени в КемТИППе. 

За два дня я умудрился сварить в своей голове жуткую кашу из этих слов. И когда я появился в машинном зале, я был готов ко всему. Встретили меня вежливо, проводили к машинке, дали кассету МК-60 с записанным на ней Бейсиком, вручили методичку и оставили один на один с монитором. Открыв методичку, я обнаружил, что все, что я изучил и запомнил, здесь совершенно не «катит». И начал я с самого простого – набрал PRINT 1 и нажал «ВВОД». Слава интерпретатору! Мгновенно в следующей строке появилась циферка 1. К тому времени из умной книжки по фортрану я понял, что PRINT это ПЕЧАТЬ и убедился что это так. 

Дальше – больше. PRINT 1+1 и в следующей строке появилась 2. Ур-ра-а! Заработало!! Хватило 3 дней, чтобы разобраться со всеми основными правилами языка. И еще через неделю был реализован первый вариант программы. В нем, как и положено, была куча GOTO, посредством которых я нырял в нужные фрагменты кода. Причем, не имея ни малейшего представления о процедурном программировании, я вынес повторяющиеся фрагменты кода вниз, оформив их отдельными секциями. 

Была в этой программе еще одна интересная особенность – базовые данные для расчетов, оформленные в виде четырех таблиц, размером каждая 6Х7. Поскольку эти данные были необходимы, а вложенные циклы я одолел моментально, то при каждом запуске я вколачивал с клавиатуры 168 чисел, причем нередко ошибался. Но ведь я действовал как положено - сначала делай, а мануал после сделанного читай. 

Через пару дней отладочных работ я почти начисто стер разметку цифровой клавиатуры. Я уже помнил наизусть все числа всех таблиц! И тут осенило – ну не может же так быть, должно быть нечто, что поможет мне РАБОТАТЬ, а не долбить клавиатуру. Перечитывая методичку, я набрел на пару операторов, на которые раньше не обратил внимания. Честно говоря для меня понимание чего-либо – это как научиться кататься на коньках. Падаешь не успев встать, а потом вдруг ОПАНЬКИ, сделал какое-то верное движение и поехал. Правда едешь никуда не сворачивая, пока что-нибудь тебя не остановит. Это может быть и столб… Вот этим столбом и оказалось ручное заполнение массивов. Все оказалось до безобразия просто. Пара дополнительных заклинаний и я научился поворачивать! Это были операторы DATA и READ. Тут уже мозг заработал вовсю. Ну не может быть, чтобы те фрагменты, которые повторяются и уже вынесены мной в отдельные куски, не имеют своего названия! Так было обнаружено еще одно священное слово SUBROUTINE. И тут же вспомогательное словечко, если мне не изменяет память то звучало оно GOTO SUB. Итак, я уже вооружен и очень опасен. В общем, на поиски необходимого вооружения ушло 10 дней. За оставшиеся девять дней я переписал программу объемом около полутора тысяч строк и полностью ее отладил. Здесь, конечно, я загнул. Я еще не разу не видел программ, отлаженных до конца. В общем отлаженная программа, по-моему, – это такая программа, в которой ошибки являются ее особенностями.

В общем, сам процесс программирования меня захватил. Что касается железа, то тут было столько всего… Дело в том, что Д3-28 не имела операционной системы и работать приходилось в интерпретаторе, который загружался с кассеты МК-60. Причем лента с соседней машинки, как правило, не грузилась, потому как головки на всех машинках были настроены по-разному. Но это еще не все. С огромным трудом я раздобыл 2 кассеты, потому как меня предупредили, что ленты плохие, и пиши на каждую по 2 копии программы. Это оказалось спасением, потому что возможность считывания с ленты находилась в прямой зависимости от цен на бананы на Таити, от магнитной бури в системе Альфа Центавра и еще от множества факторов, сочетание которых приводило к тому, что сегодня я прочитаю данные с кассеты №1 из копии №2, а вот завтра, возможно, прочитается копия № 3 с ленты №2. Плюс к этому я имел еще и распечатку текста программы, так, на всякий случай, за что меня постоянно упрекали. Дело в том, что печать шла на термочувствительную бумагу, которая была страшенным дефицитом. А как принтер назывался – не помню, по-моему УВВПЧ-2 или что-то в этом духе.

Короче говоря, эта программа, записанная на пару кассет в нескольких копиях, плюс длиннющая распечатка и краткое руководство по использованию сего программного изделия, написанное от руки и составляло мою выпускную работу, за которую мне поставили 5. В общем квалификацию я повысил, но не в ту сторону. С этого момента я был потерян для горного производства. Горняк умер – да здравствует горняк! Родился программист. Пока еще младенец.


Лента новостей

 


Объявления

Требуются специалисты в отдел разработки и системной интеграции. Имеются вакансии для штатных и нештатных сотрудников. Предпочтительны следующие качества: 

  • Опыт разработки Web-приложений
  • Знание MS Visual C++, MS Visual Basic, Delphi 
  • Знание Windows NT (Windows 2000)
  • Наличие сертификации

Заявку можно оформить на сайте Maxsoft.  


Анонс от Сталкера: 31 марта - "Точки на карте".

Затравочка:  " А тут как раз подготовили нам сюрприз: 1 апреля, оказывается, по всей Сибири не будет Интернета. То есть, выпал незапланированный выходной день. И что с этим днем делать? Я придумал! "

<< 30 марта 2000 года >>

  

Пишите мне: alex@maxsoft.ru, сообщайте о новых сайтах и замеченных ошибках...




 Нет предела совершенству!

BISER

 

 Designed by MaxSoft © 1998-2001Go! Go! Go!      Красноярские Столбы  участник Rambler's Top100