Хабрахабр

[Из песочницы] Стать Цукербергом или детство программиста

В детстве я мечтал стать Марком Цукербергом. Пока мои друзья грезили профессиями летчиков, врачей и космонавтов, я планировал запрограммировать самую большую ИТ-компанию. Марк Цукерберг ещё не родился, а я уже хотел им быть.
Не помню, когда и откуда впервые услышал про компьютеры. Скорее всего, это были книги Кира Булычева или Евгения Велтистова. В то время человечество возлагало на компьютеры большие надежды, и множество фантастических романов идеализировало цифровое будущее. В живую же компьютеры мало кто видел, поэтому первое знакомство с программированием началось с карандаша и листа бумаги. Я рисовал алгоритмы, запускал у себя в голове цикл фон Неймана и представлял, как выполняется поставленная программа. Все мои алгоритмы работали идеально и без ошибок.

Он состоял из панели, множества проводов и переключателей. Затем у меня появился конструктор, обучающий основам построения алгоритмов. Соединяешь проводами контакты, устанавливаешь переключатели в разные положения и в итоге получаешь сумму. Аппарат позволял автоматизировать расчёт ответов по анкетам, которые нужно было заранее составить на бумаге. Множество лампочек создавали эффект важной работы.

МК-52

Когда в стране появились первые программируемые калькуляторы, я сразу же стал за ними охотиться. Самый лучший калькулятор МК-52 выпускался в Киеве. Не знаю как, но, не имея доступа к интернету, я узнал, что ближайший магазин, где можно приобрести калькулятор моей мечты, находится в Белоруссии. Стоило это чудо техники 115 рублей – огромная по тем временам сумма. Спасибо родителям: оценив моё рвение, они пообещали съездить в отпуск и привезти вожделенную технику.

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

Это был выход на новый уровень. И вот мне привезли калькулятор. Будете смеяться, но мне удалось запрограммировать несколько полноценных игр – высадку на Луну, автомобильные гонки и даже зачатки Minecraft (та сюжетная линия, где стреляешь из лука, а калькулятор выдает ответ – попал/не попал). Вокруг программирования на МК-52 формировалось какое-никакое сообщество, в журналах публиковали статьи и примеры программ.


Калькулятор МК-52

Конечно, для полного погружения приходилось выключать свет и запираться в шкафу, что создавало некоторые неудобства, но оно того стоило. Эффект присутствия захватывал дух, модный нынче Oculus Rift со своим VR не дает и малой доли тех ощущений. Боец МК-52 прослужил мне почти 10 лет, в студенческие годы я считал на нем лабораторные и курсовые.

В том же году родился Марк Цукерберг.

Спектр-001

Затем я услышал про Basic. Не скажу, что он сбил меня с толку, но пришлось вернуться к бумаге и карандашам (вы же помните, что компьютера у меня еще не было?). Это немного расстраивало. Но тут в магазине “Электрон” неожиданно появились бытовые компьютеры “Спектр-001”! Родители снова пошли мне навстречу.

Как я понял немного позже, этот мир был недоступен обычному школьнику. Папе пришлось перепаять наш единственный телевизор в монитор, и передо мной открылся мир будущего. Тем не менее тогда меня это не смущало – приглашение командной строки манило устрашающей силой.


Спектр-001

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

ZX Spectrum

За взломом тетриса незаметно пролетел год и, наконец, случилось одно из главных событий моей виртуальной жизни – я стал счастливым обладателем настоящего персонального компьютера – ZX Spectrum. Несмотря на свои 8 бит и скромный объем оперативной памяти в 48 Кбайт, этот малыш умел больше, чем современные макбуки.


ZX Spectrum

Никаких танцев с бубном – включил и работай. Во-первых, можно было сразу создавать программы на Basic. Понятное дело, роль дисплея выполнял все тот же папин телевизор, но в интерфейсе и играх можно было использовать 8 цветов и два значения яркости. У него был цветной дисплей!

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

Всё свободное время я что-то кодил. По программированию процессора ZX-80 литературы хватало, и я наконец погрузился в творческий процесс. Гитарная примочка, заставляющая обычную фанерную гитару звучать, будто это Fender (ладно, поймали, тогда я не знал про американские гитары). Что это были за программы! Про MP3 я также еще не знал и алгоритм оцифровки придумал самостоятельно. А еще – возможность оцифровки и записи звука. В них удалось записать первые секунд 10 “Smoke on the water”. Помните про 48 Кбайт? Всем известные игры, вроде змейки, тоже надо было закодить. Современные кодеки отдыхают.


Супруга играет в Color Lines

Больше не надо было бегать с кассетами к друзьям – можно было передать файл по сети! А затем мы создали первую в мире, и надо полагать, последнюю сеть на основе компьютеров ZX Spectrum. Они назывались BBS или нодами. Энтузиасты разворачивали на своих компьютерах станции с модемами. Дозвонившись на такой модем по телефону, можно было посмотреть список файлов, скачать или загрузить свои, а также пообщаться в чате с оператором.

Это было нечто. Тогда же появилась электронная почта. Сначала готовишь письмо, потом звонишь в ближайшую ноду и передаешь сообщение. Просто написать сообщение и нажать на кнопку “Отправить” не представлялось возможным. Как бы то ни было, схема работала идеально – все сообщения доходили быстро, и никому в голову не приходило портить нам удовольствие отправкой спама. Когда получатель также дозвонится до этой ноды, он сможет скачать письмо. Самым большим прорывом стала интеграция почтового шлюза с сетью FidoNet – появилась возможность переписываться со всем миром и подписываться на новости.

Железный занавес постепенно рассыпался – всё больше плодов “загнивающего капитализма” становилось доступно советским гражданам. Тем временем прогресс не стоял на месте. С точки зрения программиста это было жуткое и унылое зрелище. Пришли и компьютеры IBM PC.

Оставалось только рубиться с друзьями в Duke Nukem и читать bash.org. Программировать на таком компьютере вообще не хотелось. Поэтому перелистнем эту страницу воспоминаний и перейдём к эпохе веб-программирования.

Веб-программирование

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

Ещё ни в чем не разобравшись, я понял, что мне нужен сайт, свободно зарегистрировал 4-буквенный домен и начал осваивать html.

Тем временем Марк Цукерберг учился в средней школе.

Вам приходилось видеть код программ, написанных на Perl? HTML-верстка была проста и неприхотлива, динамический контент создавался с помощью Cgi Perl. Своей магией Perl напоминал мне ассемблер. Их легко узнать – все пишется в одну строку, и большую часть кода занимают не привычные слова, а непонятные символы.


Магический Perl

Да, это был бумажный справочник, который продавался в магазине. Самой популярной поисковой системой того времени был справочник “Желтые страницы”. Единственное отличие от обычного справочника в том, что в “Желтых страницах” приводились не почтовые адреса и телефоны, а ссылка на сайт. В нем можно было найти по алфавиту или тематике нужный продукт. Круто, правда?

К чему это я

Не каждому суждено стать Марком Цукербергом. Не получилось и у меня. Кто-то создает новые продукты, чтобы перевернуть мир, а кто-то получает удовольствие, собирая с ребенком робота на базе Arduino.

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

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

Придумывайте хорошие идеи, а инструменты найдутся. Кто готов идти дальше и менять мир к лучшему?

Автор – Антон Соколов, основатель и технический директор Деасофт

Теги
Показать больше

Похожие статьи

Добавить комментарий

Ваш e-mail не будет опубликован. Обязательные поля помечены *

Кнопка «Наверх»
Закрыть