Обязанности разработчика плагинов WordPress

Опубликовано: 2020-06-05

Чтобы создать работающий плагин WordPress, требуется много таланта и навыков. Большинство из нас, вероятно, никогда в полной мере не осознают объем работы и самоотверженности, затрачиваемых на этот процесс. От разработки до обслуживания и поддержки — это довольно масштабное мероприятие.

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

Например, можете ли вы представить выпуск обновления, которое в конечном итоге приведет к поломке веб-сайта пользователя? Или объем поддержки, которую вам, возможно, придется оказывать бесплатно? Несмотря на то, что большое количество плагинов написано как сторонние проекты, поддержка популярной игры может быть похожа на работу на полную ставку.

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

Познакомьтесь с разработчиками

Мэтт Кромвель — руководитель службы поддержки и работы с сообществом в WordImpress. Они являются разработчиками Give, популярного плагина, который помогает некоммерческим организациям принимать пожертвования в Интернете. Он также известен как один из администраторов группы Advanced WordPress в Facebook.

Роберт ДеВор — разработчик из Мичигана, который является автором нескольких плагинов и тем для WordPress, в том числе нового плагина контента Gutenberg под названием Pillar Press.

Я задал каждому из них один и тот же набор вопросов по электронной почте. Ниже приведены их ответы, некоторые из которых были отредактированы для краткости.

Мэтт Кромвель (слева) и Роберт Девор (справа)

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

Мэтт Кромвель: Мы тестируем самые популярные темы, такие как Divi, Storefront, Avada, X Theme, а также основные плагины, такие как Yoast SEO, WooCommerce и т. д. Но это всегда подвижная цель, потому что вы никогда не знаете, когда они выпустят новую. Обновить. Мы в значительной степени полагаемся на нашу команду приоритетной поддержки (я являюсь руководителем службы поддержки), чтобы работать с клиентами по мере их поступления.

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

Роберт ДеВор: Время, затрачиваемое на возможные конфликты с темами/плагинами, действительно зависит от работы, которую я сейчас делаю. Например, если я работаю над чем-то, связанным с WooCommerce, я позабочусь о том, чтобы оно работало с темой Storefront и всеми официальными надстройками от WooCommerce, с которыми оно может взаимодействовать. Помимо этого, я строю и корректирую вещи, основываясь на конфликтах, которые доводятся до моего сведения.

2. С таким количеством потенциальных комбинаций плагинов и тем вы ожидаете, что что-то сломается?

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

РД: Да, я живу по принципу «надеюсь на лучшее, но ожидаю худшего» с каждым релизом, который выпускаю :)

3. Чувствуете ли вы давление, когда пользователь сообщает о проблеме с одним из ваших плагинов?

MC: В настоящее время мы поддерживаем более 40 000 веб-сайтов по всему миру, и, как правило, все они являются хорошими причинами, желающими делать добро в мире. Если они не могут принимать пожертвования из-за проблемы с нашим плагином (или их уникальной комбинацией плагинов, хостинга и темы), тогда да — мы чувствуем настоятельную необходимость решить проблему через службу поддержки как можно быстрее. С другой стороны, когда их проблема является нишевой проблемой с нишевым плагином, который влияет только на удобство их администрирования, но пожертвования все еще поступают - в этом случае давление намного меньше.

РД: Я бы не назвал это давлением, но я чувствую внутреннюю тягу попытаться решить проблему как можно быстрее. Так может это давление? ржу не могу

4. Сколько усилий должен приложить разработчик для поддержки бесплатного плагина?

MC: Я могу быть здесь в меньшинстве, но я на 100% верю в бесплатную поддержку. Это было абсолютно необходимо для успеха нашего бизнеса и высокого качества нашего кода. Из наших 40 000+ активных установок у нас около 9 000 клиентов. Это менее 1/4 всех наших пользователей. Бесплатная поддержка — одно из лучших мест, где мы можем взаимодействовать с более чем 31 000 других пользователей (и) помочь им получить положительный опыт работы с нашим плагином.

Кроме того, бесплатная поддержка является неотъемлемой частью глобального сообщества Open Source, которым является WordPress. Любой бизнес, который зависит от WordPress, должен так или иначе уделять не менее 5% своего времени форумам поддержки WordPress. Чем более образованная пользовательская база у нас есть, тем лучше для всех.

РД: Лично, если это бесплатный плагин и ТОЛЬКО бесплатный плагин (то есть, никаких коммерческих надстроек или тем для него), то я думаю, что разработчик должен серьезно относиться к уведомлениям об ошибках/безопасности и искать исправления для них. Кроме того, любые запросы на функции/улучшения могут быть приняты с долей скептицизма, поскольку это бесплатный плагин, на создание и выпуск которого вы потратили время, без особых финансовых возможностей, чтобы тратить слишком много времени на его поддержку.

5. Как вы думаете, какая самая большая ответственность лежит на вас при выпуске плагина?

MC: То, что он служит нуждам тех, кто хочет его использовать. Я написал статью о том, что я называю «Философия единственной цели», в которой говорится, что плагин всегда должен делать ТОЛЬКО одну вещь. Это ответственность разработчика. Сделайте так, чтобы плагин служил этой единственной цели с эффективностью, ясностью, без суеты и беспорядка и не мешался… Все настройки, ошибки и совместимости придут со временем; но если вы не служите своей единственной цели, тогда вообще нет причин для запуска.

РД: БЕЗОПАСНОСТЬ! Независимо от того, бесплатный это продукт или коммерческий, безопасность пользователя всегда должна быть на первом месте. Существует множество обходных путей, которые разработчики используют, чтобы сэкономить время и срезать углы, но в конечном итоге они приводят к большему количеству проблем для конечного пользователя и разработчика.

Сопровождающие экосистемы WordPress

Чем больше вы используете и развиваете WordPress, тем больше вы цените всех, кто помогает поддерживать его функциональность и гибкость. Хотя разработчики плагинов не обязательно являются «официальными» сопровождающими экосистемы WordPress, они играют очень важную роль в ее конечном успехе. Полезные и хорошо поддерживаемые плагины являются частью того, что делает WordPress привлекательным для пользователей и жизнеспособным вариантом для веб-дизайнеров.

Большое спасибо Мэтту и Роберту за то, что позволили нам заглянуть в их мир! Хотя их плагины, пользовательские базы и философия различаются, оба продемонстрировали преданность делу, необходимую для удовлетворения потребностей пользователей.