Вернёмся к Богатырю. В языках программирования моего мира фигурировали операторы «if» и «while». В переводе это звучит как — «если» и «пока». Первый оператор даёт возможность выполнять действие в том случае, ЕСЛИ записанные условия соблюдаются, а второй создаёт цикл, который повторяется снова и снова, до тех пор, ПОКА записанное условие соблюдается. В русском языке программирования были те же самые операторы, только написанные на нашем родном языке, соответственно — оператор «если» и оператор «пока». И такая логика соблюдалась практически во всём — английские наименования заменялись русскими словами.
Увы, на этом плюсы русскоязычного софта заканчивались. Первые трудности наступили после того, как я углубился в более детальное изучение Богатыря. И проблема заключалась в том, что русский язык программирования был крайне низкоуровневым.
Что вообще такое уровень языка? Изначально компьютер понимает только две команды: когда есть напряжение, и когда его нет. В первом случае для компьютера это единица, во втором ноль. Но как тогда компьютер понимает, что делать с программным кодом, где имеются совершенно разные и сложные команды? Изначально программы создавались именно с помощью чередования единиц и нулей. Такие программы записывались на перфокарты, которые, по своей сути являлись бумажными лентами с отверстиями. Если есть отверстие, значит единица, нет — значит ноль. Понятно, что на том техническом уровне это было неудобно и долго.
И тогда появился первый аналог современного языка программирования. В нем единицы и нули в определенной последовательности были отождествлены различным командам. То есть, например, мы пишем букву «П» (Падший), а язык программирования переводит её на понятный компьютеру набор единиц и нулей.
В процессе программирования люди повторяли одну и ту же последовательность действий. Например, вывести строчку на экран. Это был некий готовый набор команд, который программист должен был повторять каждый раз, когда нужно было распечатать строку. Именно тогда программистам пришла гениальная мысль собрать для удобства все полезные блоки информации и сгруппировать их, создав самую первую надстройку над языком.
То есть теперь можно было создавать программы намного проще, быстрее и с меньшим количеством кода. Таким образом языки программирования и развивались, постепенно сокращая усилия на создание более сложных программ. И чем больше было надстроек, тем более высокоуровневым считался язык программирования.
И снова вернёмся к Богатырю, то бишь низкоуровневому языку. Создать на нём аналог Фейсбука будет крайне непростой задачей. Ладно сложность, время — вот что я гарантированно потеряю, работая с этим пережитком прошлого! Тому же Цукербергу в его условиях и подручных средствах было намного проще провернуть подобное. И это уже была проблема. Ведь кроме социальной сети я собирался создавать ещё множество других айти проектов. В итоге я пришел к выводу, что мне нужно создать свою собственную надстройку над Богатырем. Свой собственный фреймворк.
Когда загораешься идеей, всё остальное просто меркнет по сравнению с ней. Учёба, отношения и другие прелести мирской жизни практически перестают для тебя существовать. И пока ты не воплотишь эту идею в жизнь или пока не разобьются надежды, связанные с ней, эта всемогущая ипостась не выпустит тебя из своих оков.
Так и случилось со мной. Я сидел на уроках только физически, а мыслями был полностью в своём проекте. Мне хотелось срочно всё обсудить со своими друзьями, но короткие перемены между уроками не давали полноценно это сделать. Наконец, наступил длинный перерыв, которым я и воспользовался:
— Ребят, я уже давно хочу поговорить с вами по поводу нашего проекта. Но вся эта канитель со школьными дуэлями и тот случай, когда выскочка Одоевский чуть не убил меня — всё это сбило меня с толку на целую неделю…
— Ух, даже не напоминай, Миша, — вздохнул Александр. — Я тогда думал, всё, потеряли мы тебя. Слава богу, всё обошлось!
Я с благодарностью принял от него рукопожатие и дружеское похлопывание по плечу.
— Да уж, — хмыкнул Сергей, с кем-то переписываясь в телефоне. — Давай, рассказывай, что у тебя на уме? Надеюсь, ещё одна гениальная идея?
На самом деле новость была несколько иного характера:
— Я начал потихоньку разбираться в Богатыре, и…
— В ком? — не понял Сергей, отвлёкшись от своего смартфона.
— Это язык программирования. Наш, отечественный, — объяснил Александр.
— Никогда не слышал, — пожал он плечами. — Я далёк от ваших компьютерных терминов. И что с ним? Какие-то проблемы?
— К сожалению он имеет слишком малые возможности для создания нашего проекта.
Если мало смыслящий в программировании Друцкий ещё сохранял самообладание, то Александр просто округлил глаза и воскликнул:
— И что теперь делать, Миш? Африканский использовать? Или того хуже, китайский? Мы же годы потратим на их изучение!
— Это как так? Почему? — непонимающе спросил Друцкий, ошарашенно смотря то на него, то на меня.