Интервью с Джереми Эндрюс

15.12.2017

Зображення видалено.От автора: в этом интервью, мы познакомимся с человеком, стоявшим у истоков Друпала, участвовавшем уже 10 лет в активной разработке ядра и жизни сообщества — Джереми Эндрюс [Jeremy Andrews].

— Когда и как вы начали работать с Drupal?

Кажется, это было в году 2001, когда Дрис [Dries Buytaert, создатель Drupal] первый раз прислал мне письмо и рассказал мне о Друпале. В то время я крутил свой сайт-хобби Kerneltrap.org на PHP-Nuke. Сайт ложился от «слешдот-эффекта» [наплыва посетителей с slashdot.org] каждый раз, когда я писал интересную статью. Дрис рассказал мне про Друпал и его систему кеширования.

Помню, тогда я был быстро поражен активностью сообщества Друпал, которое в то время было изрядно меньше. Дрис тогда еще дал мне права администратора на drop.org, старый сайт сообщества. Я был благодарен за такой уровень доверия и открытости и вскоре решил портировать KenelTrap.org на Друпал.

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

— Какая версия друпала была актуальна в то время?

Первый раз я запустил KernelTrap.org на Drupal 4.0, когда тот еще был в бете. Мне пришлось отложить публичный запуск из-за проблем с категориями материалов, в то время система таксономии в Друпала только лишь зарождалась.

— Когда вы начали участвовать в деятельности сообщества и совместной разработке Друпала?

Моим первым проектом для Друпала стал модуль статистики, который можно и сейчас найти в ядре. Он как раз и был создан для моего сайта. По иронии судьбы, именно этот модуль сейчас является проблемным в плане производительности для многих нагруженных сайтов.

Моим вторым модулем для Друпала стал модуль throttle, который был создан для деградации тяжелого функционала сайта на пиках нагрузки. Этот модуль пробыл в ядре вплоть до Drupal 7 в виду появления лучших путей оптимизации.

Так, год за годом, я создавал нужные модули для KernelTrap и других проектов.

— Какие проекты вы осуществили с Drupal?

Мой интерес в Drupal был чисто личный на протяжении нескольких лет, и касался только KernelTrap. В 2005, Киеран Лал [Kieran Lal aka Amazon на Drupal.org] нанял меня для работы над CivicSpace, чтобы построить бек-энд для их платформы CivicSpace On Demand, которая служит для построения сайтов на Drupal + CiviCRM для общественных организаций. После этого, я фрилансил вплоть до 2007 года, пока не основал консалтинговую компанию Tag1 Consulting, ориентированную на сферу open source. В Tag1 я был причастен к работе с такими компаниями как NY Times / about.com (проекты ConsumerSearch и NY Post), Symantec Connect и другими. Совсем недавно я возглавлял разработку и запуск Examiner.com на Drupal 7, которая успешно завершилась еще даже перед релизом оного.

— Ваш модуль рекламы Advertisement довольно популярен в нашей стране.

О, я хотел бы, чтобы у меня было гораздо больше времени на его развитие. На нем построена моя рекламная система для open source проектов AdBard, которая, надеюсь, принесет мне ресурсы для дальнейшего развития этого модуля.

— Какую самую выдающуюся проблему/проект вы решили/осуществили за время работы с Drupal?

Пожалуй, Examiner.com был труднейшим проектом за все время по разным причинам. К сожалению, я не могу раскрыть много деталей, тем не менее, я надеюсь, вы можете представить что стоит за запуском сайта топ-100 в рейтинге США на пре-релизном движке. Кроме того, мы перенесли значительную часть сайта с MySQL на MongoDB, дабы получить значительно лучшую производительность. Несмотря на то, что это все-таки показало свою эффективность, все это работало в экспериментальном режиме, т.к. никто в сообществе раньше этого не делал. Подводя черту, я очень счастлив, как все вышло, и что Examiner.com оказался ранним доказательством мощи и успеха Drupal 7.

— Что вы больше всего любите в Drupal?

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

Я получил много настоящих друзей во время моего долгого участия в работе над Drupal, а во время путешествий по миру, я много раз получал ночлег у людей в доме только из-за моего использования Drupal.

Да, для меня Drupal — это однозначно что-то больше, чем просто инструмент для построения сайтов.

— Есть ли вещи, которые вы ненавидите в Drupal?

«Ненавижу» — пожалуй, слишком острое слово, я пытаюсь минимизировать количество вещей с этой меткой в своей жизни. Смягчая до “не нравится”, было несколько случаев, когда сообщество расстраивало меня. Небольшие споры превращались в громадные бурления негатива, битвы эго, без возможности компромисса. К счастью, практически всегда Дрис показывал настоящий пример рассудительности и лидерства, гася такие очаги негатива и двигая проект вперед.

Что касается кода, довольно трудно ненавидеть код в open source проектах. Если что-то не так, вы можете просто изменить это! Я поделился множеством патчей за все эти годы, и хотя иногда и бывало, что я чувствовал разочарование в том как те или иные вещи сделаны, в результате, совместными усилиями это доводилось до ума.

— Раз мы заговорили о коде, не могу не вспомнить популярный в наших краях выпад в сторону Друпала, мол, Друпал плох тем, что написан не на ООП. Как вы могли бы прокомментировать это?

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

Кроме того, с высоты десяти лет опыта программирования, я не уверен, что ООП является панацеей от всех бед, и уж точно его отсутствие не повод судить о качестве системы, тем более если все выпады начинающиеся с “Друпал плохой потому что...” не заканчиваются “...и вот что я сделаю чтобы это улучшить”. Для понимания, какие аспекты ООП уже есть в Друпале советую почитать вот это http://drupal.org/node/547518, думаю, многие фанаты ООП найдут много позитива в Drupal 7.

— Каковы ваши ожидания от Drupal 8? Что бы вы хотели видеть реализованным в нем?

Сейчас я слишком занят портированием сайтов на Drupal 7, и еще не успел по-настоящему подумать о новой вехе Друпала.

— Будем надеяться, процесс портирования в этот раз будет намного мягче, чем при релизе Drupal 6.

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

— Каким по-вашему мнению будет сообщество Drupal через пять лет? Чувствуете ли вы «ветер перемен»?

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

С позиции владельца бизнеса, очевидно, что все бо́льшие и бо́льшие компании предлагают около-Друпаловые сервисы, поддерживая этим жизнь сообщества. Вполне возможно нас ждет столкновение идеологий в дальнейшем из-за расширения сообщества, но я уверен, что Drupal будет объединять веселое и талантливое сообщество и через пять лет.

— Спасибо за ваше мнение по этому поводу, Джереми. Что бы вы пожелали напоследок украинскому сообществу Drupal?

В Drupal и Open Source должно быть много веселья! Если вы не наслаждаетесь тем, что делаете, подумайте, может вы делаете что-то не так. Я счастлив, что Drupal настолько полезен и популярен, что даже в далекой Украине есть кусочек нашего сообщества. Я искренне желаю вам продолжать наслаждаться использованием и участием в Drupal!