1

[b]Как я стал программистом alexio_marziano[/b]

[img]http://zxdemos.ru/oldforum/img/posts/posts_20/37303.jpg[/img]

Долго решал сегодня как отметить День Программиста - искупаться в фонтане или написать пост про то, как я стал программистом: с чего всё начиналось и чем закончилось как продолжается. О сделанном мною выборе, думаю, вы уже догадались.

[img]http://zxdemos.ru/oldforum/img/posts/posts_20/37303_2.jpg[/img]

Хотел было начать историю с времён старших классов, когда среди прочих предметов появилась "Информатика", но тут вдруг вспомнил, что всё это началось гораздо раньше. По идее, этот рассказ даже можно отнести к очередной главе "Детей перестройки". [img]http://zxdemos.ru/oldforum/img/posts/posts_20/37303.gif[/img]  Итак, конец 80х, мне 7-8 лет....

Родители мои были инженерами, поэтому рос я в окружении разных технических приблуд и приспособлений: кульманов, готовален, подшипников, авторских свидетельств и рацпредложений. Одной из любимых моих игрушек в то время был ... калькулятор. Нет, конечно я очень любил строить разные планеры, бумеранги, поджигать чего-нибудь, смотреть "Ну, погоди",  кататься на велосипеде и играть в солдатиков. Но страсть к кнопкам у меня появилась уже тогда. Я просил маму дать мне поиграть программируемый калькулятор вроде такого:

[img]http://zxdemos.ru/oldforum/img/posts/posts_20/37303_3.jpg[/img]

Цифры на дисплее завораживали и влекли, калькулятор отзывчиво откликался на нажатия пластмассовых кнопок. В те времена одним из моих любимых журналов был вот этот:

[img]http://zxdemos.ru/oldforum/img/posts/posts_20/37303_4.jpg[/img]

В нём всегда была очередная порция захватывающей фантастики и рассказ о полёте Лунолёта "Кон-Тики", сопровождающийся программами для калькулятора БЗ-34.

[img]http://zxdemos.ru/oldforum/img/posts/posts_20/37303_5.jpg[/img]

Не подумайте, что я был гением - нифига в этих программах я не смыслил, но всё же пытался нажимать нужные последовательности клавиш, чтобы получить какой-то результат. Который даже не мог осмыслить [img]http://zxdemos.ru/oldforum/img/posts/posts_20/37303.gif[/img] Помню, там были какие-то расчеты массы горючего, необходимого Кон-Тики для полёта на Луну и обратно. Одним словом, это была игра.

Следующим эпизодом в моей компьютерной истории стало повальное проникновение бытовых компьютеров в наши дома. У многих моих друзей дома появились вот такие девайсы:

[img]http://zxdemos.ru/oldforum/img/posts/posts_20/37303_6.jpg[/img]
[img]http://zxdemos.ru/oldforum/img/posts/posts_20/37303_7.jpg[/img]
[img]http://zxdemos.ru/oldforum/img/posts/posts_20/37303_8.jpg[/img]

На школьных переменах только тем и занимались, что обсуждали очередные нюансы прохождения F1 или Карате:

[img]http://zxdemos.ru/oldforum/img/posts/posts_20/37303.png[/img]

У меня, к сожалению, такого компьютера не было, поэтому с грустью и тоской оставалось слушать эти рассказы. Иногда я ходил к друзьям и мы там рубились в "Спектрум". А позже мой брат собрал подобие "Спектрума" из какого-то конструктора, коих тогда было уже немало. Но у меня по прежнему компа не было, хотя желание им обладать росло.

А где-то в 93м, у одного товарища со двора дома вообще появился настоящий комп. Папа был начальником в одном НИИ и благополучно "выписал" домой себе 286й с цветным монитором:

[img]http://zxdemos.ru/oldforum/img/posts/posts_20/37303_2.png[/img]

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

В 94м в школе появилась информатика, которая стала одним из моих любимых предметов. Компьютерный класс был оборудован древними УКНЦ:

[img]http://zxdemos.ru/oldforum/img/posts/posts_20/37303_9.jpg[/img]
[img]http://zxdemos.ru/oldforum/img/posts/posts_20/37303_10.jpg[/img]

Правда, все они были терминально подключены к учительскому и загрузка ОС производилась по сети, что занимало по времени около часа. Поэтому нам сделали сдвоенный урок - 45 минут мы сидели и лицезрели надпись на дисплее "Загрузка из сети...",

[img]http://zxdemos.ru/oldforum/img/posts/posts_20/37303_11.jpg[/img]

а второй урок писали на Basic или рубились в аналог игры "LoadRunner" - "LAND":

[img]http://zxdemos.ru/oldforum/img/posts/posts_20/37303_3.png[/img]
[img]http://zxdemos.ru/oldforum/img/posts/posts_20/37303_4.png[/img]

или "Вертолёты":

[img]http://zxdemos.ru/oldforum/img/posts/posts_20/37303_5.png[/img]

или "Рыбалка":

[img]http://zxdemos.ru/oldforum/img/posts/posts_20/37303_12.jpg[/img]

Иногда еще рисовали в каком-то графическом редакторе.
Язык BASIC мне не очень нравился его непонятными "DIM", поэтому когда нам рассказали про PASCAL, я твёрдо решил, что хочу на нём писать программы [img]http://zxdemos.ru/oldforum/img/posts/posts_20/37303.gif[/img]

[img]http://zxdemos.ru/oldforum/img/posts/posts_20/37303_13.jpg[/img]

У одного товарища выменял на вкладыши книгу "Программирование на HiSoft Pascal для ZX-Spectrum" не помню какого автора, но похоже, что это был перевод этой:

[img]http://zxdemos.ru/oldforum/img/posts/posts_20/37303_14.jpg[/img]
[img]http://zxdemos.ru/oldforum/img/posts/posts_20/37303_2.gif[/img]

И я увлёкся. Теперь на каждом уроке информатики я просил учительницу загрузить мне Pascal, вбивал листинги из книги и наслаждался результатом: программа строила графики, заполняла словами экран, пищала и т.д. Потом стал что-то изменять и добавлять своё. Некоторые программы учительница даже позволяла сохранять мне на дискету в её дисководе по сети [img]http://zxdemos.ru/oldforum/img/posts/posts_20/37303.gif[/img] Это было большой честью для  меня [img]http://zxdemos.ru/oldforum/img/posts/posts_20/37303.gif[/img]

[img]http://zxdemos.ru/oldforum/img/posts/posts_20/37303_15.jpg[/img]

Мой товарищ тоже увлекался программированием - он учился в 59й школе Ульяновска и с компьютерами у них было получше - стояли 286е с цветными экранами и у каждого был свой дисковод (но тоже не было жесткого диска). Мы часто разговаривали на тему компьютеров, программирования и алгоритмов. А потом и я стал ходить в кружок информатики в этой школе. Вёл его замечательный человек, учитель информатики Анатолий Юдин:

[img]http://zxdemos.ru/oldforum/img/posts/posts_20/37303_16.jpg[/img]

В его кружок ходило так много народу, что не всем хватало место и за компьютерами сидело по 2-3 человека. Именно его уроки окончательно утвердили во мне желание связать свою жизнь и карьеру с компьютерами и программами.

[img]http://zxdemos.ru/oldforum/img/posts/posts_20/37303_17.jpg[/img]

Чтобы стать программистом, необходимо было сильно поднажать на математику, с коей я дружил всегда на твёрдую "четвёрку". Уровень математических знаний, который давался в моей школе, был довольно низок, поэтому нужно было либо переводится в другую школу, либо заниматься дополнительно. С переводом в физмат-класс 40й школы Ульяновска ничего не вышло - завалил все 3 попытки сдать экзамен [img]http://zxdemos.ru/oldforum/img/posts/posts_20/37303.gif[/img] Зато сильно помогли 4 года обучения в заочной физмат школе при МФТИ. Кому знакома эта аббревиатура - ЗФТШ при МФТИ? [img]http://zxdemos.ru/oldforum/img/posts/posts_20/37303.gif[/img] Кто несколько лет ходил на почту с толстыми конвертами и с замиранием сердца распечатывал полученные? [img]http://zxdemos.ru/oldforum/img/posts/posts_20/37303.gif[/img] Кто взрывал мозг учителей физики и математики нерешаемыми заданиями? [img]http://zxdemos.ru/oldforum/img/posts/posts_20/37303.gif[/img] Одним словом, респект и уважуха МФТИ! Скольким ребятам они помогли поступить в лучшие ВУЗы страны.

В нашем городе "на программиста" учили тогда только два вуза: УлГТУ и филиал МГУ - УлГУ. В УлГТУ ("Политех") на нужный факультет ФИСТ было просто нереально мне набрать необходимые баллы (80-100) - тогда там уже ввели тестирование. Поэтому параллельно с УлГТУ были поданы документы в УлГУ на механико-математический факультет. Собственно, он и был наиболее желаемой моей целью - там уже учились некоторые мои старшие товарищи и собирались идти младшие. На тестировании в политехе я набрал около 60 баллов и проходил только на машфак [img]http://zxdemos.ru/oldforum/img/posts/posts_20/37303.gif[/img] Естественно, он тут же был отброшен. Последний мост - экзамены мех-мата. Математика письменно, устно и сочинение. Первый экзамен - самый трудный. За год до этого я не пропускал ни одной улгушной олимпиады, где особо не выделялся успехами. Провалил и предварительный платный экзамен. И вот Бог дал мне последний шанс, которым я воспользовался и еле-еле набрал необходимые минимальные баллы [img]http://zxdemos.ru/oldforum/img/posts/posts_20/37303.gif[/img] Тогда я уже и не думал, что могу не стать программистом - все чёрные мысли были об армии [img]http://zxdemos.ru/oldforum/img/posts/posts_20/37303.gif[/img] В общем, мехмат распахнул предо мной свои двери. И понеслось....

Следующими людьми, которые должны были впихнуть в меня любовь к программированию, стали преподаватели С.А.Шиняев, Шамиль Талгатович Ишмухаметов и Б.Ф. Мельников [img]http://zxdemos.ru/oldforum/img/posts/posts_20/37303.gif[/img] А очередным учебником - "Основы Турбо-Паскаля" Фаронова:

[img]http://zxdemos.ru/oldforum/img/posts/posts_20/37303_18.jpg[/img]
[img]http://zxdemos.ru/oldforum/img/posts/posts_20/37303_19.jpg[/img]

Компьютерный класс был оборудован 386-ми, с жёсткими дисками и дисководами 3,5'':

[img]http://zxdemos.ru/oldforum/img/posts/posts_20/37303_20.jpg[/img]

Началась эра дискет. Сколько их покупалось на скромную стипендию - ужас. Они быстро портились, так как компилировали свои программки мы только с них.

[img]http://zxdemos.ru/oldforum/img/posts/posts_20/37303_6.png[/img]

Лабораторные работы, задания... Я даже не успевал всё делать, сложность нарастала. Прерывания DOS, игра "Шахматы", 3D-объекты, собственные файловые системы и оболочки -  это мехмат, детка... К концу 2го курса я понял, что много упустил и часть работ просто не смог сделать самостоятельно - что-то пришлось заказывать за деньги старшим ребятам [img]http://zxdemos.ru/oldforum/img/posts/posts_20/37303.gif[/img] Думаю, не я один так поступал. Когда "горит" зачёт, то мораль и совесть отходит на последний план [img]http://zxdemos.ru/oldforum/img/posts/posts_20/37303.gif[/img]

[img]http://zxdemos.ru/oldforum/img/posts/posts_20/37303_7.png[/img]

У меня по прежнему дома не было компа, поэтому я "пробил" разрешение ходить к маме на работу и часами сидел там за первыми Pentium I 75 Мгц, производства Siemens-Nixdorf,

[img]http://zxdemos.ru/oldforum/img/posts/posts_20/37303_21.jpg[/img]

решая задания в математическом пакете Maple:

[img]http://zxdemos.ru/oldforum/img/posts/posts_20/37303_8.png[/img]
[img]http://zxdemos.ru/oldforum/img/posts/posts_20/37303_9.png[/img]

Кстати, там же, на маминой работе, я впервые познакомился с Windows'95 [img]http://zxdemos.ru/oldforum/img/posts/posts_20/37303.gif[/img] Но она мне показалась какой-то громоздкой и неуютной, по сравнению с любимым Volkov Commander:

[img]http://zxdemos.ru/oldforum/img/posts/posts_20/37303_10.png[/img]

И вот, пасмурным октябрём 1998 года, мама на скопленные деньги купила мне компьютер!

[img]http://zxdemos.ru/oldforum/img/posts/posts_20/37303_22.jpg[/img]

Это был Сименсовский десктоп с процессором i486 DX2 33 Мгц, ОЗУ 8 Мб, SVGA-картой и HDD WD 500 Мб! И самое главное - монитор 15'' со встроенным защитным экраном (но с небольшим заводским браком на трубке)!

[img]http://zxdemos.ru/oldforum/img/posts/posts_20/37303_23.jpg[/img]

Там была уже установлена ОС Windows 95, но по умолчанию грузился любимый и знакомый DOS 7.0. Набрав команду "win.com" можно было загрузить винду, поиграться с ней и выйти [img]http://zxdemos.ru/oldforum/img/posts/posts_20/37303.gif[/img]

[img]http://zxdemos.ru/oldforum/img/posts/posts_20/37303_24.jpg[/img]

Основное своё время я проводил в DOS, просматривая разные картинки в утилите "sea.exe", которая работала в графическом режиме. У меня до сих пор сохранились эти картинки в разрешении 200 на 300, 480 на 640, 50 на 100... Какими большими они тогда казались [img]http://zxdemos.ru/oldforum/img/posts/posts_20/37303.gif[/img] Тогда были очень популярны изображения художника Бориса Валеджо - кто их помнит? [img]http://zxdemos.ru/oldforum/img/posts/posts_20/37303.gif[/img]

[img]http://zxdemos.ru/oldforum/img/posts/posts_20/37303_25.jpg[/img]

Еще я слушал трекерную музыку формата "mod" или "xm". В универе по дискетам ходил трек "Металлики"  - Unforgiven.mod. А кто помнит "FastTracker"? [img]http://zxdemos.ru/oldforum/img/posts/posts_20/37303.gif[/img]

[img]http://zxdemos.ru/oldforum/img/posts/posts_20/37303_11.png[/img]

Кстати, довольно известный ныне CJ Omen (мой универский друг Лёха Будылёв) начинал своё творчество с неё и  я был первым слушателем его композиций [img]http://zxdemos.ru/oldforum/img/posts/posts_20/37303.gif[/img]
Еще я осваивал мощный пакетный язык DOS:

[img]http://zxdemos.ru/oldforum/img/posts/posts_20/37303_26.jpg[/img]

немного ASM:

[img]http://zxdemos.ru/oldforum/img/posts/posts_20/37303_12.png[/img]

и даже написал пару bat-вирусов, которые успешно апробировал на универских компах... [img]http://zxdemos.ru/oldforum/img/posts/posts_20/37303.gif[/img]

Собрал огромную коллекцию вирусов для DOS и Windows (около 800 штук) и базу их описаний. Изучение вирусов стало любимым моим занятием. Апогеем его стало написание подобие антивируса (скорее, детектора) к одному очень злому вирусу Deflorator, заразившему многие универские компы. Кстати, написан и внедрен он был тоже студентом моего ВУЗа [img]http://zxdemos.ru/oldforum/img/posts/posts_20/37303.gif[/img]

В 99-00 массовую популярность приобрела музыка в формате mp3. Именно её прослушивание и стало главной причиной моего "переезда" из DOS в Windows. Но мой процессор в 33 Мгц "не тянул" её и приходилось в настройках winamp сильно урезать качество воспроизведения. Это стало причиной  первого моего апгрейда:

[img]http://zxdemos.ru/oldforum/img/posts/posts_20/37303_27.jpg[/img]

Кто не заметил разницы - этот "камень" был уже в 2 раза шустрее моего прежнего [img]http://zxdemos.ru/oldforum/img/posts/posts_20/37303.gif[/img] MP3 шли на ура! Однако встала потребность установки кулера - прежний был на столько слаб, что мог работать и без него.

Довелось поработать и *nix - довольно долго "жил" в установленной на отдельном разделе HDD FreeBSD 4.0:

[img]http://zxdemos.ru/oldforum/img/posts/posts_20/37303_28.jpg[/img]

Тогда мне казалось это очень крутым и я тоже пересобирал ядро по любому поводу [img]http://zxdemos.ru/oldforum/img/posts/posts_20/37303.gif[/img] Поверьте, это проходит [img]http://zxdemos.ru/oldforum/img/posts/posts_20/37303.gif[/img]

После 3 курса, на летних каникулах, с тем же товарищем, с кем с детства мечтали стать программистами, решили освоить новый для нас язык - C++. Самоучитель Г. Шилдта стал следующим моим учебником:

[img]http://zxdemos.ru/oldforum/img/posts/posts_20/37303_29.jpg[/img]

Наше самообучение мы превратили в некое соревнование - кто быстрее сможет реализовывать алгоритмы на этом языке. Его старший брат (тоже мехматянин) давал нам разные задания и мы их делали.

[img]http://zxdemos.ru/oldforum/img/posts/posts_20/37303_7.png[/img]

Этот язык мне очень понравился своей краткостью синтаксиса и новыми возможностями, которых не было в Pascal (можно объявлять переменные, где хочешь [img]http://zxdemos.ru/oldforum/img/posts/posts_20/37303.gif[/img] ).

К концу лета я освоил его на столько, что совсем забросил Pascal и все лабы и курсовые делал уже на C++. Как и разные утилиты для своих нужд. К тому времени мой WD 500 Мб стал сыпаться и я написал утилиту, которая каждый раз при завершении работы сохраняла на дискету FAT-таблицу, которая постоянно слетала. Еще я писал антивирусы, грабилки ресурсов из игр, текстовые парсеры и т.д. [img]http://zxdemos.ru/oldforum/img/posts/posts_20/37303.gif[/img] Верхом творчества был дипломный проект по распознаванию графических образов, который я реализовал на Borland Builder C++:

[img]http://zxdemos.ru/oldforum/img/posts/posts_20/37303_30.jpg[/img]

и Microsoft Visual C++:

[img]http://zxdemos.ru/oldforum/img/posts/posts_20/37303_31.jpg[/img]

К слову сказать, чуть раньше по учебному процессу мне довелось познакомиться и с другой средой разработки Borland - Delphi:

[img]http://zxdemos.ru/oldforum/img/posts/posts_20/37303_32.jpg[/img]
[img]http://zxdemos.ru/oldforum/img/posts/posts_20/37303_13.png[/img]

Знакомство это предопределило мою дальнейшую судьбу - я до сих пор пишу свои программы на Delphi и просто без ума от этой мощной среды, которая до сих пор не заставила ощутить какую-то ущербность в разработке desktop-продуктов.

[img]http://zxdemos.ru/oldforum/img/posts/posts_20/37303_33.jpg[/img]

Delphi для Linux - Kylix. К сожалению, умерший продукт. Сколько строчек кода было написано в нём...

[img]http://zxdemos.ru/oldforum/img/posts/posts_20/37303_14.png[/img]

Конечно, сейчас уже совсем другие времена и наши дети "стартуют" далеко не с MK-51 или ZX-Spectrum.

[img]http://zxdemos.ru/oldforum/img/posts/posts_20/37303_34.jpg[/img]

Интересно, какие программисты выйдут из них? Куда вообще пойдёт это ремесло?

Одно только знаю - пока человечество в развитии движется вперёд, программист нужен будет везде и всегда.

С Днём Программиста! [img]http://zxdemos.ru/oldforum/img/posts/posts_20/37303.gif[/img]