Я помню, что начал изучать (смотрел картинки только, не особо вчитываясь в текст) книжку «Знакомьтесь: компьютер». Больше всего мне нравились первые развороты с рисунками структуры охранной системы и часов. Схемки, красочные рисунки поразили моё 5-и летнее воображение. А на развороте была нарисована СХЕМА ЧЕТЫРЁХ РАЗРЯДНОГО СУММАТОРА. Это была такая радость. Я вник в схему, отобрал у отца книжку по физике, где видел «такие-же рисунки» — логические вентили — и получил релейную (!!!) схему сумматора.
Я переключился на теорию… Стал рисовать схемы ещё более сложных, высокоуровневых, аппаратов. В книжке «информатика в понятиях и терминах» я наткнулся на блок-схему кассового аппарата, которую стал копировать, постепенно разбираясь в ней. Кассир — пользователь. БПА (буквопечатающий аппарат) — печатающая машинка, у которой над каждой клавишей висит реле, на которое постоянно подается ток. Как только ток перестаёт подаваться — стержень падает на клавишу и отпечатывается литера. Дисплей — огромная панель лампочек. Табло — просто ряд лампочек, символизирующих разряды. УУ (устройство управления) — предусмотрены две арифметические операции. Считыватель с перфоленты — зачитавшись «простой автоматикой» я решил сделать интереснее — барабан, на который наклеены пять полосок фольги, левая полоска — питание, и по одной полоске на бит. Однако отец, увидев такую ересь, решил дать доступ к своему компьютеру. Тут то я и забыл про железо и стал работать с софтом.
Тут и BASIC подоспел. Была у меня книжка «Работа на персональном компьютере», заботливо подсунутая отцом. Я сел за свой Pentium III (мой первый компьютер) писать коротенькую программу на QBASIC — получилось. Написал программу побольше и посложнее — пошло. Поставил VisualBASIC 6 — написал кучу программ: сохранившийся список программ содержит 29 наименований, 19 из которых отмечены как работающие.
Стоит сказать про мои отношения с языком Си. Отец отдал мне для изучения книжку «язык си», чтобы заранее выдернуть меня из омута BASIC’а. Однако то ли я был мал, то ли объяснение было нудным, то ли все вместе, но на Си ни одной нормальной программы под Borland C я не написал. Единственное что я смог из себя выдавить, это вычисление какого-то выражения. Полноценно писать на Си я начал только в последних этапах работы над своим ZComputer (об этом ниже).
Моим первым личным гаджетом стал серебряный iPod nano 4Gb. Я выпросил его 2008 году в ответ на плеер своего друга Алексея. У него был китайский Ритмикс с ужасными шрифтами, а мне было завидно, что он слушал Цоя и прочий русский рок. В магазине оказалось, что большой разницы между ценой нормального плеера и iPod нет. Очарованный яблочком — ведь я читал об этой легендарной конторы в книге «Знакомьтесь: компьютер» — я выпросил себе этот плеер. Металлический неразборный корпус, приятный интерфейс и непонятная на первый взгляд, но крайне полезная программа iTunes в 2008 году. Если на китайских плеерах вам приходилась разбираться с файловой системой самостоятельно, то в iPod все раскладывалось само (да и самих этих каталогов не существовала — была база данных).
В мае 2009 года, мне подарили компьютер на процессоре iCore 2 Duo E7400 за 11650 рублей (2Гб ОЗУ, 160Гб НЖМД). К 2010 году назрела необходимость в расширении дискового пространства и я купил внешний НЖМД на целый терабайт за 3900 рублей. Тогда я отобрал у отца уже ненужный ему Pentium III и начал на нём экспериментировать: загружал MS-DOS с дискет, игрался с жесткими дисками, программами и операционными системами.
На него, в июне 2009 года, рядом с WinXP я поставил Linux Mandriva, с которой мои отношения сложились не очень хорошо: виной тому стал перегруженный KDE (по сравнению с привычными мне интерфейсами WinXP и Win98) и не установившиеся драйверы на аудиокарту. Про работу с Unix я уже читал в книжке «Unix и Xenix», однако толку от полученных знаний было мало. Заинтересованность в компьютерной в компьютерной сфере начала усиливаться.
У меня тогда не было сети, и работал я один. Учился на собственных ошибках и информации из старых книг. Узнал от бабушки про домашний компьютер отца — БК 0010-01 и получил его. Запустить его удалось в июле 2009 года. Данных из руководств по БК, которых было предостаточно, стало не хватать. Потом подучил английский, получил знания по софту и железу. Полез к отцу в шкаф, откуда утащил много полезных книг. Затем у меня появился сначала AMD (который из-за своей мощности почти сразу перешёл к отцу).
В конце 2010 года у меня появился мощнейший ноутбук Sony AVIO с i7 за 35к рублей, купленный на премию для поддержки талантливой молодежи, из-за которого я резко забросил компьютер на Core2Duo.
С проектом на VisualBasic «программный комплекс для изучения поверхностных явлений при сварке» (догадайтесь кто подкинул идею, подсказка — мой отец сварщик) выступал на «Шаге в будущее» сначала в Липецке, а затем в апреле 2010 года в Москве. Не заняв там места но получив опыт, понял, что нужно что-то больше. Первым дело меня спросили — на то ли я направление пришёл с физико-математической программой? И я решил собрать компьютер. Под «сборкой» подразумевается не соединение китайских блоков с «защитой от дурака», а смостоятельная пайка радиодеталей.
Почему-то мой неокрепший ум пытался использовать в качестве основы специализированные микросхемы от советских программируемых калькуляторов. Это заметно, если посмотреть на мои рисунки с планируемым развитием системы — все идёт от устройства с семисегментным индикатором и калькуляторной клавиатурой. Однако знакомый, появившийся после поездки в Москву, свёл меня с Сергеем (CODE_MASTER), который меня облагоразумил.
В качестве процессора я решил использовать Z80, но прочитав здесь про микроконтроллеры начал писать для них (изучил ассемблер, расширил знания Си). Написал однозадачную ОС на основе меню. Демонстрировал я работу компьютера в декабре 2010 года, при том тогда у меня не было даже работающего железа — я показывал симуляцию в Proteus. На городском уровне всё прошло нормально, но в Москву по неизвестной причине не пустили. В начале апреля 2011 у меня наконец был работающий образец с экраном.
На курсах по программированию в местном техническом институте встретил единомышленника Игоря (Assasin). Мы начали совместную работу и 12 июня 2011 года, нами на песке во дворе дома по улице Горького была нарисована трехслойная схема программного обеспечения, которая позволила выполнять пользовательские программы на ограниченной гарвардской архитектуре.
роект ZC движется вперёд очень медленно. Сказывается отсутствие опыта и наличие проблем, к которым мы не были готовы. Стоит отметить, что изначально компьютер я не сильно заморачиваясь и выпячивая своё эго решил назвать Igor Computer. Однако когда дело дошло до документирования системы, я решил наказать своё самолюбие и придумал название Z Computer, потому что Я (или Z в английском) — последняя буква алфавита.
Создан язык BFx11. Среда виртуальной машины и компилятора портируема. Интересна реакция оппонентов и судей. Реакция была ожидаемой, однако меня ошарашил вопрос об ошибках компиляции. Речь идёт о ошибке входных данных: так как программа на BFx11 представляет из себя последовательность символов (байт) то есть ли неправильная последовательность, а если есть то выведется ли сообщение об ошибке.
По дешевке в феврале 2012 с рук приобрел еще один экспонат — ноутбук Fujitsu Siemens (CeleromM@1.4ГГц/256Мб ОЗУ). Проводил эксперименты с freeBSD (долго компилировал X-сервер и firefox), но в конце концов поставил Debian, что некоторые посчитали тоже отличным достижением. Ноутбук этот я брал специально для поездки в Москву — нужен был дешевый компьютер с COM-портом.
И, наконец, 23 марта 2012 в Москве я завоевал третье место по России в конкурсе «Шаг в будущее» за свой самодельный компьютер на AVR ATmega. И это при том, что нормальной демонстрации провести не удалось — отвалился провод от SD-карты и система не смогла нормально загрузиться.
Этой системе была посвящена моя первая научная статья «РАЗРАБОТКА МНОГОФУНКЦИОНАЛЬНОГО ВЫЧИСЛИТЕЛЬНОГО УСТРОЙСТВА НА ОСНОВЕ МИКРОКОНТРОЛЛЕРА».
Мне не удалось поступить в политех на направление АСУ (автоматизированные системы управления), поэтому я выбрал ПМ (прикладная математика). Логика хоть как-то меня поддерживающая была такова: я слабо разбирался в математике, но зато знал компьютеры, поэтому необходимо улучшить знание математики. Так на четыре года я связал себя с элитной специальностью ПМ.
На первых курсах работы по системе были продолжены в рамках программы Умник, благодаря которой были созданы прототипы управляющего комплекса — ПАУК ШН — программно-аппаратный управляющий комплекс широкого назначения. Основанный на другом контроллере семейства 8051, что позволило заложить возможность импортозамещения. Возможное применение разработанной кроме использования как узла умного дома, системы пожарной и охранной сигнализации рассмотрена в статье «КОМПЬЮТЕРИЗИРОВАННОЕ УСТРОЙСТВО ЗАЩИТЫ ОТ КОРРОЗИИ ПОДЗЕМНЫХ СООРУЖЕНИЙ».
Когда в 2015 году зашла речь о необходимости выбора темы выпускной работы, я решил использовать эту работу с пользой, для подтверждения теории о излишней сложности современных процессоров. Я запатентовал программы для компиляции и эмуляции процессора, который был назван MISC — minial instruction set computer, компьютер с минимальным набором инструкций, основанный на идеях PDP-8. А в статье «МИНИМИЗАЦИЯ НАБОРА ИНСТРУКЦИЙ ПРОЦЕССОРА МЕТОДАМИ ЛИНЕЙНОГО ПРОГРАММИРОВАНИЯ И РЕАЛИЗАЦИЯ ПОЛУЧЕННОГО НАБОРА В МИКРО-ЭВМ» и выпускной работе я подтвердил свои предположения и развил их. Результатом работы стал тезис о том, что даже мой набор инструкций не минимален.
Я хотел продолжить обучение в магистратуре на той же ПМ, но как только появилась возможность, в 2016 году я подал документы на кафедру АСУ. Так я планировал улучшить свои разработки и перейти к производству и продаже приборов. Однако жизнь распорядилась иначе. В конце первого курса заведующий кафедрой предложил нам рассмотреть возможность поступить на работу в гипромез — государственный институт проектирования металлургических заводов. После демонстрационного посещения я был принят на разбирательство с разработкой управляющих программ для систем АСУ ТП — автоматизацией техпроцессов. Однако быстро, из-за необходимости выполнения отделом плана, с учётом что плана работ по АСУ ТП не было, я был переведён на разработку систем пожарной сигнализации. В пику этой темы моей работы, мой диплом был основан на статьях «О НЕОБХОДИМОСТИ РАЗРАБОТКИ АЛГОРИТМА ОПТИМАЛЬНОЙ РАССТАНОВКИ ПОЖАРНЫХ ИЗВЕЩАТЕЛЕЙ» и «РАЗРАБОТКА АЛГОРИТМА ОПТИМАЛЬНОЙ РАССТАНОВКИ ПОЖАРНЫХ ИЗВЕЩАТЕЛЕЙ В ЗДАНИЯХ АДМИНИСТРАТИВНО-БЫТОВОГО НАЗНАЧЕНИЯ».