Ищем новостников! Присоединяйтесь к нашей команде →

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).
В редакцию обратился UX/UI-дизайнер, который утверждает, что заказчик не доплатил ему больше 1000$.

dev.by попытался разобраться в истории.

Читайте также
Как оплачиваются самые популярные языки GitHub и какой прогноз
Как оплачиваются самые популярные языки GitHub и какой прогноз
Как оплачиваются самые популярные языки GitHub и какой прогноз
10 курсов по ABAP — языку программирования, который использует SAP
10 курсов по ABAP — языку программирования, который использует SAP
10 курсов по ABAP — языку программирования, который использует SAP
ABAP (Advanced Business Application Programming) — это язык программирования, который использует компания SAP — один из главных поставщиков программного обеспечения по всему миру. Среди клиентов компании — Apple, Amazon, Colgate-Palmolive, Cisco, Dell, Airbus, DHL, Walmart, Ernst and Young и сотни других. Вообще SAP используют около 90% компаний из списка Fortune-500. И еще, например, NHL. ABAP написан в далеком 1980 году и за последние 40 лет все-равно остается актуальным и востребованным. У разработчиков на ABAP стабильно высокие зарплаты. Поэтому мы решили собрать список из 10 курсов по ABAP, которые стоит пройти для лучшего понимания языка или вообще для выбора его как своей профессии.
2 комментария
В БГУИР упал конкурс на бюджет. Желающих на четверть меньше, чем год назад
В БГУИР упал конкурс на бюджет. Желающих на четверть меньше, чем год назад
В БГУИР упал конкурс на бюджет. Желающих на четверть меньше, чем год назад
14 комментариев
10 курсов по SQL в 2022 году для лучшего понимания работы с большими данными
10 курсов по SQL в 2022 году для лучшего понимания работы с большими данными
10 курсов по SQL в 2022 году для лучшего понимания работы с большими данными
Собрали 10 платных и бесплатных онлайн-курсов для изучения SQL. Программы рассчитаны на слушателей, которые только начинают или продолжают знакомство с языком. 

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

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

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

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

Комментариев пока нет.
Спасибо! 

Получать рассылки dev.by про белорусское ИТ

Что-то пошло не так. Попробуйте позже