Support us

Who is mister _who?

Оставить комментарий
Who is mister _who?

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

Каждый день мы приходим на своё рабочее место, выполняя какую-то работу, получая в конце месяца за неё деньги. Всё повторяется и на следующий месяц, дни рождения мелькают подобно красивым видам в движущемся на полном ходу поезде-жизни. Давайте задумаемся, отличается ли профессия программиста хоть чем-то от тысячи других профессий? Смотрю на очередного молодого программиста, сидящего передо мной на собеседовании и осторожно набивающего себе цену, и думаю: является ли программирование ремеслом или просто способом физически выжить? Это то, что делают лишь за деньги, или это занятие стоит чего-то большего? А может, это просто технология и хорошо известные алгоритмы, тщательно подобранные паттерны, которые гарантируют хорошие результаты при их понимании и выполнении, где можно расслабиться, доверившись сияющим святостью авторитетам и впредь самостоятельно не думать? Или здесь всё-таки есть место для неопределенности и вдохновения; встречаются ли здесь моменты ярких открытий и зовет ли порой жажда поиска нового, и если это так – то где обитают музы программиста? А может это и вовсе некое иррациональное искусство, подобному листингам программ на brainfuck, или даже отдельное направление науки? Наверное, для каждого это что-то своё… Сегодня я расскажу историю короткой жизни программиста, который считал себя артистом, а жизнь – невероятной программой, и который сумел изменить своим примером отношение к жизни у тысячи своих коллег. Начать свой рассказ, должен признаться, мне тяжело – я просто не знаю, как представить вам нашего сегодняшнего героя. В сети все его знали под ником why the lucky stiff (или просто _why), и это всё что нам известно о нем. Кем он работал? На всех конференциях он представлялся неизменно: «freelance professor». Несмотря на многочисленные публичные предложения крупнейших мировых компаний и проектов работать на них – он не проработал и дня на работе в офисе – он всегда честно признавался, что у него нет даже номера social security (карточки социального страхования). Пенсионный фонд нашел бы его мерзким асоциальным элементом.

Intro

_why – это второй человек в мировом сообществе разработчиков Ruby. Доподлинно о нём известно только одно: какой бы самый коварный вопрос не возникал в списках рассылки сообщества, обстоятельный ответ _why всегда гарантированно закрывал проблемную дискуссию. Этим, а также своей фантастической производительностью и неподражаемым вкусом, _why заработал славу одного из самых сильных и ярких экспертов в мире Ruby. _why Конечно, он блистательный программист. Но не только. Например, иллюстрации ко всем своим книгам создатель языка Ruby Юкихиро Мацумото доверял лишь _why – он чертовски классный художник-график (кстати, именно он создал новый комикс-стиль, посвященный Ruby). У него была своя музыкальная группа – каждый вечер за электрогитарой и у микрофона – звезда своего небольшого городка. Интерес к музыке проявлялся и в программировании: например, _why – создатель музыкальной библиотеки к Ruby bloopsaphone, которая позволяет проигрывать простенькие мелодии. Вот, например мелодия музыкальной заставки мультфильма The Simpsons:

require ‘Rubygems’
require ‘bloops’

b = Bloops.new
b.tempo = 180
sound = b.sound Bloops::SQUARE
sound.volume = 0.4
sound.sustain = 0.3
sound.attack = 0.1
sound.decay = 0.3
b.tune sound, “32 + C E F# 8:A G E C – 8:A 8:F# 8:F# 8:F# 2:G”
b.play
sleep 1 while !b.stopped?

Несмотря на полную анонимность, _why собирал полные залы на свои редкие выступления-лекции по программированию (вот пример одной из них), в зал было невозможно протиснуться, поскольку повсюду были люди, которые слушали его, затаив дыхание. Он не только отличный оратор, но и не менее замечательный писатель, который писал примерно в таком же стиле, в каком и жил. За свою короткую жизнь он написал лишь две книги, и обе книги были, конечно же, о Ruby.

(poignant) Guide to Ruby

В подзаголовок вынесено название самой известной книги, написанной _why. Иногда её обозначают как (p)GtR, или просто "the poignant guide" - это одно и тоже. Это учебник для новичка – своего рода введение в Ruby, но не только в его, скажем так, внешнюю техническую суть и командный синтаксис, но и очень эффектная попытка передать его философию и дух. Чтобы сразу уйти от бесполезных дискуссий по поводу гениальности (или убожества) этой книги, отдельно подчеркну то, с чем единодушно согласны все: она не такая, как все. Она не похожа на то, что вы читали ранее. Для начала очертим тот широкий диапазон оценок, которые она получила: от зашкаливающего восторга, как «одна из лучших книг по программированию», по мнению Джоела Спольски, до гневных проклятий: «Да это же просто издевательство какое-то над читателем!» – от одного дедушки-редактора крупного книжного издательства, где её попытались издать. Понятно, отчего профессиональный издатель приходит в бешенство: книга написана в таком стиле, в котором, пожалуй, про программирование не писал ещё никто. Все уже привыкли, что книга по программированию должна представлять собой некий заунывно-монотонный рассказ от лица зануды-программиста, перемежаемый редкими и скучными листингами. Вряд ли вы возьмёте такую книгу с собой в отпуск или будете читать её дни и ночи напролет, не в силах остановиться. _why _why, конечно, просто не в состоянии так написать: он никогда не работал в офисе, чтобы, как он считал, «ненароком не похоронить там свой живой интерес к жизни». ”(poignant) Guide to Ruby” рассказывает о многом, например о его любимом «кусочке бекона» (chunky bacon – фраза, впоследствии ставшая мемом в сообществе Ruby, которая используется в огромном количестве примеров Ruby-кода), о его повседневной жизни и наблюдениях, восходе солнца или рассуждениях о языке собак… Здесь важно не терять главную суть – всё это лишь о Ruby, который рассматривается здесь в чрезвычайно широком контексте и с различных ракурсов. Книга сразу предлагает очень неспешное, вдумчивое погружение в язык, тщательную проработку его основ, мотивов и подходов. Словно боясь слишком «загрузить» своей философией, _why время от времени осторожно тормошит своего читателя: эй, приятель, ты ещё здесь? _why Внимательное проговаривание вслух всех листингов, обязательный элемент изучения этого языка, введен в обиход именно _why. Ruby спроектирован таким образом, что одна из его удивительных особенностей – это формирование в процессе написания программы осмысленного листинга на обычном английском языке, который может прочитать и более или менее понять любой человек. Попробуйте повторить нечто подобное с Python или, не приведи Бог, с PHP. Ну что, получается? Большинство листингов в книге сопровождается комиксами с диалогами рисованных лисиц, которые обсуждают всю необходимую теорию, чаще используя то, что вышеупомянутый издатель ехидно назвал «как минимум, очень странным юмором, если не сказать более». _why Другой постоянный персонаж книги – чёрный, как ночь, кот Trady Blix, с которым, по признанию самого _why, он как-то случайно познакомился на телевидении. _why доверительно признается, что именно Blix и научил его «настоящему Ruby». Чтобы такая линейность сюжета не показалась кому-то слишком академичной (основанной на «здравом смысле» – любимое ругательство _why) , в ходе изложения они часто меняются местами: в эти моменты уже _why педантично объясняет и учит кота Blix’а особенностям устройства и работы Ruby. _why Книга содержит огромное количество совершенно безумных листингов, например, иногда они являются вспомогательными для понимания механизма путешествия во времени или чего-то вроде этого. Важное приложение к книге – полноценный музыкальный альбом, в котором, по словам _why, «он закрепляет некоторые важные моменты этого курса на эмоциональном уровне». _why Вторая дополнительная составляющая курса – интерактивный обучающий вебсайт tryRuby.org. Вслед за Дарвином _why считает, что только непрестанная практика программирования превращает социальную обезьяну в программиста. Делая скидку на человеческую лень, он создал этот сервис – теперь у каждого есть простая возможность проверить всё, что описано в книге, не делая никаких лишних движений. Это настоящий интерпретатор Ruby, подключенный напрямую к Сети, где, используя обычный браузер, можно создать свою первую программу. Другая похожая книга _why – это Nobody Knows Shoes, кроме того, под впечатлением от этого стиля другими были созданы очень похожие книги, например, Learn you a Haskell for great good.

Маленькое программистское затруднение

На этом _why… не успокоился. Продолжением попытки максимально эффективно учить новичков программировать стало создание собственной среды разработки на Ruby, которую он назвал Hackety Hack. Чтобы максимально точно позиционировать эту IDE, _why выпустил манифест Little Coder’s Predicament, где объясняется суть предназначения Hackety Hack и рассказывается о проблеме высокого порога вхождения в современное программирование, отчасти устранить который и предназначена эта программа. Он объясняет это так: «Мы живем в мире ужасно сложных и продвинутых технологий, которые окружают нас повсюду. Неважно, осознаем мы это или нет, но факт заключается в том, что наши бабушки сегодня пользуются смартфонами, наши дети играют на iPad, и так далее – но технологии, скрытые под капотом всех этих предметов, ужасно сложны и комплексны. Я помню, как в старые добрые времена я смог сам легко освоить программирование на Commodore 64, но попробуйте сегодня разобраться в таком же возрасте в программировании под Windows, создать свой собственный поиск-аналог Google или написать свое приложение для любимого iPhone – это будет не так просто сделать, как было во времена моего детства. Я называю этот возросший порог для вхождения в мир программирования Little Coder’s Predicament и пытаюсь преодолеть его посредством новой идеологии обучения программированию, реализованной в Hackety Hack». _why Итак, этот редактор реализует блоковую концепцию построения программ из уже готовых кусков кода (заготовок, сниппетов). При этом у новичка есть возможность начинать учиться в процессе создания приложений, сразу разбираясь в его устройстве на примерах составных кусков кода (в чем активно помогает эта IDE), а также модифицируя их под свои текущие нужды (поставляется обширная библиотека подобных сниппетов на все случаи жизни). Такой полуфабрикатный подход позволяет немедленно начать писать программы любому человеку практически без какого-либо предшествующего опыта. Технически редактор базируется на Ruby и Shoes toolkit (библиотека для создания сложных графических интерфейсов).

Неожиданная концовка

Что случилось потом – никто не знает. В июле 2009 года _who внезапно исчез. Ничего не объясняя, никак не объявляя это заранее, на пике своей сетевой популярности… Все его почтовые ящики-контакты были закрыты, его сверхпопулярный Твиттер с более чем 10 000 подписчиков был отключен, то же произошло и с его персональным блогом и аккаунтом на GitHub, а также с многочисленными сайтами-проектами. За один день все его проекты были уничтожены, как и само присутствие в сети. Сообщество Ruby было шокировано, назвав этот акт «виртуальным самоубийством». В личных блогах огромного количества людей в Сети стали появляться признания о том, что _why изменил их жизнь: именно благодаря ему очень многие люди пришли в мир программирования или выбрали Ruby в качестве своего основного языка программирования. _why Поиск _why был по-настоящему широкомасштабным – опрашивались все последние журналисты, с которыми он контактировал, в попытке понять мотивы анализировались его последние твиты и письма, и даже было запущено в ротацию стандартное для Америки объявление о поиске пропавших людей на пакете молока – но все было безрезультатно. _why Сетевые энтузиасты своими силами постепенно восстановили все его проекты (более 100 проектов в самых разных областях как программирования, так и искусства, – восстановленный список можно увидеть здесь), а последний твит _why перед исчезновением был такой: programming is rather thankless. u see your works become replaced by superior ones in a year. unable to run at all in a few more.

Вместо заключения

До сих пор, несмотря на выступления _why за пределами Сети в реальном мире, в том числе на самых престижных мировых конференциях, активном участии в различных концертах и фрилансерскую работу с огромным количеством заказчиков, никто так и не сумел установить его реального имени или фамилии, равно как достоверно узнать, что же произошло c ним на самом деле. По неофициальной информации от Ruby-разработчика, плотно с ним общавшегося, настоящее имя _why – Джонатан, и он скончался в 2010 году от рака горла. По словам, последние три месяца своей жизни _why решил полностью посвятить своей семье, отключив все сайты, стерев все свои проекты в сети, продав свой компьютер по дешевке, выдернув все сетевые шнуры и вилки, связующие его с внешним миром. Артист, посвятивший всю свою жизнь творчеству, программированию, рисованию и музыке, а также созданию методик эффективного обучения программированию других, в последние месяцы своей жизни жадно наверстывал упущенное, радикально отрекшись от сетевого мира и всех былых увлечений. Как бы то ни было на самом деле, отмечая очередную годовщину его таинственного исчезновения, всё мировое сообщество Ruby напоминает, что неоценимый вклад _why в популяризацию и развитие этого языка будет сохранён в сердцах программистов навсегда. Впрочем, вспоминая о нём, сообщество делает это точно в стиле самого _why – без грусти, тоски и ненужного трагизма, заочно передавая ему привет на его любимом Ruby:

thanks = thank.person(“_why”)
thanks.append(“~chunky bacon”)

P.S. Необоснованные утверждения многих источников, которые повторяет и Википедия, о том, что _why – это 24-летний веб-разработчик Jonathan Gillette, не выдерживают никакой критики, и не только потому, что сам Jonathan Gillette категорически отрицает это, а хотя бы потому, что он не знает и не использует Ruby в своей работе вообще (он – PHP-программист). К тому же данный разработчик весьма символично работает на обычной офисной работе, тогда как «Ruby rock star» _who всегда говорил, что «ходить на работу в офис – это как смотреть телевизор по вечерам: жизнь – это слишком большая роскошь, чтобы тратить её на осуществление чужих планов или потребление придурковатых фантазий». P.S.S. Дурной пример заразителен: вслед за _who подобный же акт сетевого самоубийства совершил и один из лидеров Python-комьюнити – Марк Пилигрим (автор знаменитой книги Dive into Python).
Место солидарности беларусского ИТ-комьюнити

Далучайся!

Читайте также
10 курсов по SQL для лучшего понимания работы с большими данными (май, 2023)
10 курсов по SQL для лучшего понимания работы с большими данными (май, 2023)
10 курсов по SQL для лучшего понимания работы с большими данными (май, 2023)
Собрали 10 платных и бесплатных онлайн-курсов для изучения SQL. Программы рассчитаны на слушателей, которые только начинают или продолжают знакомство с языком.
10 способов научиться программировать самостоятельно
10 способов научиться программировать самостоятельно
10 способов научиться программировать самостоятельно
Хотите научиться кодить и освоить алгоритмы? Собрали десять советов с чего начать изучение программирования для тех, кто только начинает своё путешествие в мир программирования и снабдили все это полезными ссылками на курсы для начинающих программистов.
7 отличных курсов по финансам. Уплыть «с галеры» и основать свой стартап
7 отличных курсов по финансам. Уплыть «с галеры» и основать свой стартап
7 отличных курсов по финансам. Уплыть «с галеры» и основать свой стартап
Если вы посмотрели «Волк с Уолл-стрит» и хотите, как Леонардо ди Каприо прогуливаться по яхте с бокалом вина в руках, но не знаете, с чего начать, подборка курсов Digitaldefynd станет для вас отличным стартом. Здесь представлены как платные, так и бесплатные программы, которые помогут вам освоить финансовое моделирование. Они подойдут не только для начинающих слушателей, но и для экспертов.
Самые популярные курсы программирования на DataCamp у беларусов со скидкой 65%
Самые популярные курсы программирования на DataCamp у беларусов со скидкой 65%
Самые популярные курсы программирования на DataCamp у беларусов со скидкой 65%

Хотите сообщить важную новость? Пишите в Telegram-бот

Главные события и полезные ссылки в нашем Telegram-канале

Обсуждение
Комментируйте без ограничений

Релоцировались? Теперь вы можете комментировать без верификации аккаунта.

Комментариев пока нет.