Действительно ли разработка WordPress настолько сложна сегодня?
Опубликовано: 2021-08-10О, как легко мы забываем WordPress 10-15-летней давности.
Мы избалованы. Мы избалованы обилием документации и руководств, богатством знаний, созданных более чем за десятилетие. Мы избалованы собственной экспертизой, встроенной в нашу более энергичную молодость, теперь сидящую на корточках, поскольку мы стареем вместе с нашей любимой платформой.
Мы выросли, чтобы стать пресловутыми сварливыми стариками. «В мое время нам не нужны были все эти причудливые инструменты, помогающие нам писать код. Мы взяли себя в руки и построили все с нуля».
Я ребенком. Вроде, как бы, что-то вроде. Я отношу себя к разработчикам старой школы, которые помогли создать WordPress, по которому многие до сих пор ностальгируют — я думаю, что заслужил право шутить о себе . Это были «более простые» времена, но не совсем.
Будучи в сообществе так долго, как я, я помню негативную реакцию каждый раз, когда появляется новая функция. Я вспоминаю дни, когда практически на все действительно не существовало документации.
В последнее время все чаще говорят о сложности преодоления существующего входного барьера WordPress для разработчиков. Эта дискуссия продолжается уже несколько лет, но последняя вспышка произошла вслед за твитом Криса Вигмана:
Чем глубже я погружаюсь в современные разработки WP, тем больше понимаю, почему новые разработчики не любят работать над ним. Это уже не тот проект, что был раньше. Кривая обучения сейчас чрезвычайно высока, независимо от прошлого опыта.
Около месяца назад я создал свой первый блочный плагин за несколько часов. Когда я писал об опыте, я сказал, что барьер для входа был намного выше, чем когда я создал свой первый плагин в 2007 году. Имея время, чтобы расслабиться и подумать об этом, я не уверен, что это справедливое заявление. Мы склонны смотреть на прошлое через розовые очки, забывая о реальной борьбе.
Я хотел собрать плагин за 30 минут. Если бы все было на PHP, это было бы для меня легким подвигом. Объективно я эксперт (или достаточно близко) в языке. Однако мои знания JavaScript отстают на 10 лет.
Прошло некоторое время с тех пор, как мне бросали вызов таким образом. Это был неприятный опыт для человека, привыкшего к своим навыкам.
Я пожаловался на документы. Но, давайте будем честными. У WordPress никогда не было такой подробной документации, которая могла бы научить начинающего разработчика всему. Я знаю это, потому что за свою карьеру написал как минимум пару сотен руководств. Почти каждый раз я копался в исходном коде проекта, чтобы разобраться в нем, что позволило мне научить других разработчиков, как работать с различными функциями. И многие другие разработчики в этой области сделали то же самое.
Со временем WordPress.org добавил более надежную документацию для разработчиков, но это не было сделано за одну ночь. Это постоянно развивающийся проект.
Я также создал свой первый блочный тип с помощью ванильного JavaScript. Нет инструментов для сборки. Документы React не открыты. Просто старый код JS в моем редакторе. Мне нужно было ползать, прежде чем я мог ходить, и нужно было привести первую итерацию кода в работоспособное состояние, прежде чем я прыгнул во что-то более сложное.
Через несколько дней я перекодировал все это, чтобы использовать более современный JavaScript, и скомпилировал его с помощью webpack. Через неделю после этого я создал второй блочный плагин с более продвинутыми функциями.
Было тяжело? Определенно. Был ли барьер для входа выше, чем когда я впервые разработал плагины? Наверное. По правде говоря, я не так сильно боролся, но я также нахожусь на другом этапе своей жизни. В 37 лет у меня уже не так много драйва и, вероятно, меньше возможностей осваивать новые навыки так же быстро, как в позднем подростковом возрасте и в начале 20-летнего возраста. Тем не менее, у меня есть прочная основа и достаточно опыта, чтобы преодолеть некоторые препятствия, с которыми я столкнулся.
Стал бы 20-летний я бороться с этим ландшафтом JavaScript больше, чем с WordPress, строго основанным на PHP? Я сомневаюсь. У обоих были огромные кривые обучения для кого-то нового.
Первое знакомство с Subversion или Composer может быть таким же пугающим, как и первое погружение в webpack и npm. Для свежего ума, открытого холста, который еще предстоит раскрасить более десяти лет работы «в стиле WordPress», я не уверен, что барьер для входа намного выше.
Для нас, старообрядцев, наш мир перевернулся с ног на голову. Этого нельзя отрицать. Проект Gutenberg, который лежит в основе почти каждой новой функции WordPress, развивается так быстро, что практически невозможно не отставать от него, одновременно повышая свои навыки. Легко быть подавленным. Когда это случается со мной, я обычно делаю шаг назад и возвращаюсь, когда у меня есть возможность отдохнуть.

Участие в экосистеме WordPress всегда имело тот или иной барьер. Будь то привилегия времени, знание PHP или какой-либо другой навык, проект не включил некоторых людей. Это в некотором роде меняется. Некоторые части теперь доступны для пользователей, которые никогда не были доступны ранее. Это легче всего увидеть с тематической стороны вещей.
«Хотелось бы, чтобы люди увидели, что развитие темы идет в противоположном направлении», — написала Каролина Наймарк. «Входной барьер для дизайнеров и новых разработчиков будет ниже. Когда люди застревают, говоря: «Но я не могу использовать свои крючки в блочной теме», это потому, что они смотрят на то, что существует сегодня, а не на будущее».
Потратив больше времени на тематическую сторону редактора блоков, чем на разработку плагинов, я полностью согласен. Авторам тем будет дан чистый лист, или, по крайней мере, к тому времени, когда блочные темы будут поддерживаться в ядре WordPress, это будет правдой.
В то время как я мог бы писать до тошноты о деталях того, как сама по себе разработка тем идет как на дрожжах, революционная часть заключается в том, как система приветствует тех, у кого не было входа в прошлом.
Наряду с версией 5.8 WordPress.org открыл первую итерацию своего каталога шаблонов. Вскоре любой пользователь сможет добавлять собственные шаблоны блоков, не написав ни единой строчки кода. Они могут просто создавать макеты из редактора, копировать их и делиться ими с другими.
Когда появится редактор сайта, он снова изменит игру. Люди, не умеющие кодировать, смогут по существу создавать целые интерфейсные проекты без каких-либо ранее существовавших знаний в области программирования.
Если WordPress должен стать более сложным для разработчиков, чтобы предоставить конечным пользователям столько возможностей, я могу с этим смириться.
Самым высоким барьером для входа, как это всегда было, является непосредственный вклад в WordPress. Или, по крайней мере, внести свой вклад в блочную сторону вещей через Гутенберга.
Раздел «Начало работы с созданием кода» Руководства по редактору блоков представляет собой головокружительный список замечаний и процедур по установке, которые могут оттолкнуть даже самого опытного разработчика. Поскольку почти все является сторонним инструментом, любые проблемы, с которыми вы столкнетесь при настройке своей системы, скорее всего, приведут вас на форумы поддержки или в чаты за пределами WordPress. Даже если пройти мимо настройки, добавление кода в Гутенберг отличается от прежних дней.
Чего не хватает, так это истории. У нас было полтора десятилетия, чтобы усовершенствовать наши системы для классического WordPress. Часто было уродливым и жестоким создание платформы и экосистемы вокруг нее до такой степени, что это было удобным пространством для разработчиков. У нас было всего три года, чтобы современный WordPress чувствовал себя так же естественно, как и в прошлые годы.
Я всегда оптимист, надеюсь, что еще через 15 лет у нас будут такие же дискуссии о новом технологическом стеке, который представил WordPress 10.0. В то же время я с нетерпением жду развития нашей документации, расширения набора навыков сообщества разработчиков и появления новых пользователей WordPress.
Продолжение чтения
В этом обсуждении нет правильных или неправильных ответов. Разговор имеет значение, потому что он обогащает наши знания и дает информацию о том, как мы создадим следующую версию WordPress и Интернета.
Ниже приведены ссылки, связанные с этой темой, которые помогли донести мои мысли. Каждую стоит прочитать, послушать или посмотреть. Если я пропустил что-то, что опубликовали другие, не стесняйтесь ссылаться на них в комментариях.
- Меняющаяся экосистема WordPress
- Современная разработка WordPress
- Кривая обучения WordPress
- Создание темы стало проще
- WP Mainline. Эпизод 5. Вносить вклад и разрабатывать для WordPress уже не так просто, как раньше (подкаст)
- Гутенберг убивает темы WordPress? Проблемы для разработчика тем в мире Гутенберга. (видео)
