пятница, 27 ноября 2020 г.

[life.memories] Тридцать лет в программизме

2020-й год уже скоро закончится, а я все забываю рассказать о том, что пришел в программизм тридцать лет назад, в 1990-ом году. Ну а раз на календаре тяпница, то можно попробовать разворошить свой склероз.

Начать можно с сентября 1988-го года. В 9-ом классе нам ввели новый предмет "Информатика". Читала нам его в 9-ом классе наша же преподавательница математики, которая летом прошла краткие курсы по подготовке учителей информатики. При этом никакого оборудования в школе для выполнения заданий не было. Вообще. Ни компьютеров, ни даже программируемых калькуляторов.

Так что весь 9-й класс мы лишь в теории изучали Русский Алгоритмический Язык. А программки писали мелом на доске. Естественно никак не проверяя, работают ли они или нет.

Эти "занятия" информатикой не оставили у меня никакого впечатления. И даже мысли о том, чтобы связать свою дальнейшую жизнь с программированием, не было от слова совсем. Я тогда внезапно и очень нехило увлекся рисованием, а затем и живописью, так что будущее рисовалось в виде профессии художника. Рисовалось в буквальном смысле.

Следующий момент произошел в сентябре 1989-го года. Тогда в одной из школ нашего района организовали дисплейный класс из БК-1001 и ученики всех остальных школ приезжали туда раз в неделю (или даже раз в две недели) чтобы провести 45 минут за настоящим компьютером.

Вот там-то мы уже были вынуждены писать реальные программы на Бейсике. И тут выяснилось, что это могут делать не только лишь все. Точнее говоря, могут только трое из 30 учеников нашего класса. А у меня это почему-то получается сходу и не задумываясь.

Ну выяснилось и выяснилось. Подумаешь, еще один халявный школьный предмет.

Принципиально ситуация поменялась где-то в феврале или начале марта 1990-го, когда до окончания школы оставалось всего несколько месяцев и нужно было уже определяться, куда же именно мне поступать.

Зачатки здравого смысла подсказывали, что в художественные академии/институты большой конкурс и можно легко пролететь мимо художественного ВУЗа. И что следует озаботиться каким-то запасным вариантом.

Тут-то мой школьный приятель, который тогда буквально "горел" компьютерами и знал про них гораздо больше меня, подбил сходить в местный университет на день открытых дверей на математический факультет. Мол, там в прошлом году открыли специальность "Программирование" и в этом году на нее тоже будут набирать.

Сходили, посмотрели. Вот тогда я и задумался, что если с профессией художника не сложится, то программист может быть неплохим запасным вариантом. Поэтому с весны 1990-го года я уже стал относиться к информатике намного серьезнее.

А где-то в конце апреля или начале мая 1990-го я написал и свою первую программу. Т.е. по-настоящему свою. Это не была какая-то заданная нам домашка. А осознанное желание реализовать на Бейсике "тест Айзенка".

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

В этой программе все было моё. Как бы сейчас сказали, и архитектура, и UI, и реализация. Что называется, захотел и сделал. Было прикольно: в начале нет ничего кроме шальной идеи, а потом раз! И неведомый тебе зверь под названием "компьютер" по твоим командам что-то делает и это даже работает! Внушаить.

Вскоре после этого произошла вынужденная и неизбежная переоценка сил и возможностей. Пообщался с местными преподавателями рисования. Кто-то из них оценил мои работы. Я посмотрел на то, что люди рисуют на вступительных экзаменах. Однозначно выходило, что в этом году я гарантировано пролечу даже в самое заштатное художественное училище, поскольку был самоучкой и не имел "школы" (до сих пор не знаю, что это такое). Предложение поучиться у преподавателя годик, а уже потом пробовать, не устраивало, т.к. этого годика не было бы из-за армии. Вот так запасной вариант буквально за месяц-полтора до подачи документов стал основным.

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

В итоге он завалил первый же экзамен и забрал документы вообще. А я сдал все вступительные экзамены и с минимальным баллом, но все-таки прошел на специальность "Программное обеспечение вычислительной техники и автоматизированный систем".

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

Дело в том, что у нас было две кафедры, которые готовили программистов: математических проблем управления (МПУ), которая считалась более "программисткой" и даже "системной", и вычислительной математики и программирования (ВМиП), на которой программирование рассматривалось просто как инструмент для решения вычислительных задач. Понятное дело, что я хотел на МПУ. Чтобы заниматься именно что программированием. Но что-то пошло не так...

Из 50 студентов, принятых на специальность "ПО ВТ и АС" кафедра ВМиП забрала к себе лишь 18 человек. В число этих 18 "счастливчиков" попал и я.

Кафедры МПУ и ВМиП имели разные учебные планы и располагали совершенно разными ресурсами. В распоряжении ВМиП был разве что класс из шести немецких Robotron 1715 с 64K RAM, двумя 5.25" дисководами (без жесткого диска) и бело-зелеными алфавитно-цифровыми дисплеями. Тогда как у МПУ было несколько IBM PC, куча их клонов в виде ЕС 1840, а также мини-компьютер серии СМ и большая ЭВМ ЕС какая-то там (возможно, ЕС 1020, занимавшая чуть ли не половину одного из крыльев корпуса математического факультета).

Только вот выяснилось, что эти шесть никому не нужных Robotron 1715 практически все время стоят свободные и никакого контроля за их использованием нет. Поэтому, если ты никому не мешаешь, то можно в дисплейном классе сидеть хоть с утра до позднего вечера. Чем мы, собственно говоря, и занялись. Зачастую прогуливая те предметы, которые нам казались ненужными. В общем, к середине осени 1990-го я уже пропадал в дисплейном классе чуть ли не днями, забив на все: и на учебу, и на спорт, и на рисование. Программирование поглотило меня полностью. И не отпускает до сих пор. К рисованию/живописи я с тех пор, в общем-то, и не возвращался.

А вот тем, кто попал на МПУ, повезло меньше. Для 32-х человек доступной техники не хватало, так что машинное время приходилось расписывать наперед и получалось не более пары-тройки часов в неделю на человека. До сих пор не представляю себе, вышел бы из меня какой-нибудь толк, если бы тогда, на первом курсе, машинного времени впритык хватало бы лишь на то, чтобы сделать заданные лабораторные.

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

Это фанатичное и всепоглощающее увлечение программированием, особенно на первом курсе, чуть было не привело к вылету из ВУЗа. Но, видимо, Бог реально заботится о детях и дураках, поэтому пронесло. Впрочем, это уже совсем другая история (истории, на волоске я висел не один раз).

В общем, в сухом остатке: тридцать лет назад я написал свою первую программу, решил связать свою жизнь с профессией инженера-программиста, поступил на профильную специальность, впервые дорвался до возможности запрограммировать то, что тебе интересно и так, как ты считаешь нужным.

Блин, тридцать лет. Это ведь не мало. Но как-то уж быстро пролетели. Хотя и не скажешь, что как один день. Скорее как неделя.

Еще тридцать лет вряд ли осилю. Лет пятнадцать бы в самый раз ;)

PS. Кстати, первый компьютер у меня дома появился лишь в самом конце 1999-го года. И то это скорее была пишущая машинка для работы с текстом кандидатской диссертации, которую я тогда пытался написать. Насколько помню, на нашем курсе компьютеры дома были всего у двух-трех человек, еще у пары-тройки был доступ к компьютерам на работе у родителей. Остальные, включая меня, учились на том, что оставалось без присмотра в универе :)

PPS. Какой-то год юбилеев. Давеча SObjectizer-5 стукнуло аж десять лет от роду. Но об этом, я надеюсь, получится поговорить уже на следующей неделе.

2 комментария:

XX комментирует...

Спасибо за интересный рассказ!

Я сам начинал программировать на БК-0010-01 и на "Электроника" МК-52.
Моими первыми программами на БК были игра SokoBan, рисование каркасной сферы и текстурирование 3d-поверхностей. Помню, что сферу мне БК рисовал полчаса и сильно грелся :)

eao197 комментирует...

@XX

Рад, что рассказ получился интересным.