Интервью с Денисом Сметанниковым (разработчик JBZoo)

Joomla
Интервью с Денисом Сметанниковым (разработчик JBZoo)
Уважаемые читатели, сегодня у нас в гостях Денис Сметанников - автор и главный разработчик JBZoo. При помощи этого продукта можно значительным образом расширить функциональные возможности конструктора контента ZOO и создать интернет-магазин или сложный каталог без особого труда. В российском сегменте Joomla расширение JBZoo снискало популярность и известно как “корзина для ZOO”. Что же это за продукт? Как он создавался? На эти и другие вопросы любезно ответил сам автор.

Денис, расскажи, как все начиналось: как ты пришел к Joomla и спустя какое время понял, что это - твоя платформа?

Разрабатывать сайты я начал на 2-3 курсе Физтеха в далеком 2007-м. В те времена много ковырял Delphi (мода была), что-то писал на плюсах, поставил свой первый Linux Gentoo (да-да, я компилил её на бедном Celeron вместе со своей девушкой/женой. А что, романтика… ). Конечно, традиционно для подобных факультетов тыкал Fortran, LabView, Mathcad, и даже затронул микроконтроллеры ASM (гы, ксорил дворды).

Будучи студентом, помогал держать городской игровой портал. Друзья, с которыми я там познакомился, позвали меня работать в региональную студию. Там я научился делать сайты “средней паршивости”, узнал что такое PHP, JS, кривенько научился верстать и познакомился c шаманством по имени SEO.

В те времена мне приходилось возиться с разными студийными CMS, где одна была “краше” другой. Ох… как же меня это дико бесило. К тому же вокруг не было ни одного бородатого профи, который поделился бы опытом.

Не знаю как, но мне на глаза попалась Joomla. Как раз вышла версия 1.5, и все, кому не лень, писали про ее MVC, новую архитектуру и прочие умные слова. Мне хотелось посмотреть это на практике и я полез ковыряться в её коде. И с одной стороны все было здорово, с другой я был разочарован, т.к написано много, а делает примерно то же самое, что и студийные костыли.

Один знакомый “Python-мастер” мне на практике показал, что все эти классы и абстракции нужны, чтобы проект можно было долго поддерживать и масштабировать. Он посоветовал прочитать GoF. Осилив лишь половину, я понял что ничего не понял и отложил книжку до лучших времен (смеется)

Так сложилось, что сайтов на Joomla я сделал не больше десятка. При этом, очень хорошо знал практически все внутренности коробки, научился писать свои компоненты. Знакомство с чужими меня не впечатлило, а особенное отвращение вызывал VirtueMart 1.0.x.

Наступил 10-год и я пошел работать в топовую студию Сибири с характерным названием Sibirix. Там я прочувствовал на себе пачку хардкорных проектов, где только кодинг может идти в районе года! По большей части работал с Zend, Yii, Symfony и конечно же 1C-Bitrix (фу-фу-фу, сильно плевался). Там уже сам для себя изучил консольный Linux, мелочи на Java, прочитал шибко умные книжки по программированию. В это же время на меня снизошло то, что я вычитал в банде четырех (GoF), т.к увидел это на практике.

Считаю ли я что Joomla - это моя платформа? Ммм… Пожалуй, нет. Как видишь, так сложилось, что это первый фреймворк, в котором я серьезно разобрался. По сравнению с другими популярными CMS, он довольно хорош и по сей день (если сравнивать с Wordpress, который весь на функциях и волшебстве). На самом деле, сейчас я получаю больше удовольствия от работы с чистыми фреймворками и вообще консольным JavaScript.

В JBZoo многое сложилось само собой так, чтобы не пришлось касаться самой CMS. Мы от неё абстрагированы тонким слоем классов.

Ранее ты вел сайт Joomla-Book, посвященный документации Joomla. Это явилось предтечей JBZoo?

На первом месте работы начальство было инертным, т.к на поддержке вели много серьезных старых клиентов с сайтами “на коленке”. Тогда я подумал, что изучить Joomla можно только через свой сайтик. Заодно будет полигон для SEO-экспериментов ...и продажи ссылок, как было модно в то время (улыбается)

В сети толком не находилось русской информации по Joomla. Было лишь 3-4 сайта с десятком полезных статей. Поэтому сделать свой сборник о CMS, которую изучаю, показалось хорошей идеей. Собирал все по чуть-чуть, что-то переводил с английского, что-то писал сам. В основном больше работал на количество, а не качество, потому что к сложным вещам никто не был готов. Какой там… люди радовались, что изменили шапку сайта или сбросили пароль через SQL-запрос (вздыхает).

В итоге практически весь Joomla-Book.ru - это мои первые шаги в вебе, результат обучения вёрстке, jQuery, SEO, какие-то эксперименты и т.д. К моему огромному удивлению, сайт начали воспринимать как серьезный (!) ресурс о Joomla! В то время, как я на нем полным ходом экспериментировал, пытался развеять для себя некоторые мифы о SEO, делал массовые редиректы внутри, пачками менял заголовки сразу на всем сайте… Между делом выкладывал свои подделки вроде чистого шаблона JBlank.pro (более 50 тысяч установок).

JBlank Template имеет более 50 тыс. скачиваний
JBlank Template имеет более 50 тыс. скачиваний

Я не знаю как… но какое-то время был в топ-2 по запросу “скачать Joomla”, “Joomla” и “русификатор Joomla” в обоих поисковиках. Все говорили, что переспам ключевиками - плохо, в то время, как на посадочной странице у меня слово “Joomla” встречалось более 150 раз в разных тегах, а в чистом HTML более 500 раз. Потом Яндекс меня выкинул, пришлось слегка уменьшить до 70-100 штук и сайт снова вернулся в строй. Сейчас такой финт не сработает. Думаю, SEO - это точно не мое =) Хотя основы я достаточно хорошо знаю.

Потом хотел на нем что-нибудь заработать - продавал рекламу, ссылки и даже пару раз курсы Хомиченко (ну бывает...). Не знаю много или мало - порой получалось до 10к руб/мес при посещаемости ~2000 хостов в сутки. Ожидания не оправдались, да и надоело играться, я забил на него совсем. Это был 2010-й год, как раз в это время сменил место работы и было не до хобби.

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

Планируешь ли продолжить работу над Joomla-book или это больше архивный проект?

Как понимаешь, уже нет. Все что я хотел с него, давно получил. Я бы его с радостью отдал в хорошие руки, если бы не домен, с которого остались ссылки, редиректы и какие-то мои мелко-сервисы, почта. Удалять жалко, есть не просит. Пущай валяется :)

Сейчас смотрю, спустя 3-4 года по сайту ходит порядка 1000 человек в сутки, что-то комментируют, находят ошибки. Честно, до сих пор не понимаю этого. Наверно, хорошо получилось для первого раза.

JBZoo - это конструктор, буквально


Опиши в двух словах, что из себя представляет JBZoo для читателей, которые не знакомы с данным расширением.

JBZoo - это конструктор, буквально. В нем есть детали - элементы, которые позволяют собрать сайт из разных частей. Будь то блог, магазин или афиша... Есть множество настроек, что позволяет гибко управлять расширением.

Сейчас JBZoo дает возможность создавать каталог-магазин с системами оплаты, сервисами доставки, скидками, оповещениями на почту, SMS. Есть функции импорта / экспорта всего каталога в CSV. Улучшили встроенную шаблонизацию с поддержкой популярных CSS-фреймворков, добавили less.

Практически все наши расширения написаны в духе элементов ZOO с их идеологией позиций и API. Таким образом, если вы умеете писать элементы для ZOO, то автоматически сможете и для JBZoo (и наоборот). Соответственно с JBZoo будут работать Widgetkit, ZOOLanders и другие расширения для ZOO.

По большому счету для того, чтобы сделать типичный магазин, достаточно хорошо знать верстку (сейчас стыдно веб-разработчику не знать CSS). Для быстрого старта нового проекта мы предлагаем на выбор несколько демо-сайтов. Копию может получить любой подписчик с “плюсом”.

Демонстрация JBZoo
Примеры реализации функциональных решений на базе JBZoo

Как тебе пришла в голову идея развить набор элементов в полноценный продукт?

Мое знакомство с ZOO началось с версии 2.x. Тогда мне очень понравился их подход с позициями внутри материалов, куда можно вставить все что угодно. Чем-то это напоминает модульную систему самой Joomla, но в мелких масштабах и более широких возможностях.

Я изучил платные и бесплатные приложения компонента и понял, что разница всего то лишь в стилях и нескольких условиях. Мне показалось как-то несправедливо платить за это порядка 100 евро.

Попробовал сделать свою реализацию приложения с массой настроек как у коммерческих решений YOOtheme. Назвал его jbuniversal и показал общественности. Оно позволяло гибко управлять выводом категории, добавляло колонки, задействовало дополнительные внутренние функции бесплатного ZOO. На сайте я собрал положительные отзывы, улыбнулся и забросил его в копилку мертвых экспериментов Joomla-Book.

Через некоторое время на Joomlaforum.ru начались обсуждения - как бы в ZOO добавить фильтр. Среди пользователей появился человек, который сделал модуль поиска и предлагал его любому за символическую плату. Кажется, он сделал какой-то хак компонента.

Мне стало жутко интересно, как реализовать фильтр и я стал разбираться в коде. Главное условие - без хаков. В целом у меня что-то получилось, но потратил довольно много времени - 2-3 недели по вечерам. Так же попробовал продавать на форуме. Людям понравилось. Не долго думая, скрестил фильтр с jbuniversal и назвал “Joomla-Book Zoo”. Временное название привязалось и сейчас я этому не особо рад, но зато уникальное (улыбается).

Постепенно аппетиты росли, люди хотели больше фич, новых элементов и т.д. Почему бы нет? В один прекрасный день я понял что это уже не просто фильтр и кучка элементов, которые съедают все выходные. Это платформа! Решающую роль сыграло API ZOO, которое было как пластелин (и по сей день). Я уволился и открыл ИП.

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

YOOtheme пишут не просто так, а сразу с замахом на будущее

А почему среди всех имеющихся на тот момент CCK выбор был сделан именно в пользу ZOO?

Меня зацепил код, который пишут YOOtheme. Даже сегодня, если посмотреть UIkit, Warp, PageKit, WidgetKit2, то это небо и земля по сравнению с другими решениями для Joomla. Обычно YOOtheme пишут не просто так, а сразу с замахом на будущее, так чтобы это можно было масштабировать и безболезненно обновлять годами. В коде легко просматриваются мотивы из Symfony и другие популярные веяния. UIkit так это вообще признанная замена старому Bootstrap.

Я смотрел код других расширений, от их отвратительного содержимого просто хочется плакать. Поэтому профи используют другие решения вместо Joomla. Хотя для нас это не важно, т.к мы работаем только с чистой CMS и ZOO. Код как код, бери и штампуй фичи… Саму CMS мы касаемся лишь косвенно.

JBZoo и его составляющая JBPrice
JBZoo и его составляющая JBPrice

Важную роль сыграла пассивность YOOtheme. За последние годы они не совершали прорывов в своем компоненте. С другой стороны стабильно закрывают баги и выпускают небольшие фичи. Возможно, изначально YOOtheme хотели сделать платформу в виде компонента для их расширений. Просто они не стали ее развивать. А могли бы кроме WidgetKIt сделать еще очень много всякого…

В итоге, что имеем?

  • Популярный компонент с внутренним запасом на будущее;
  • Пиар за счет популярного клуба шаблонов Joomla;
  • Масса людей, которым нравится ZOO, но не используют его, потому что чего-то вечно не хватает;
  • Отсутствие нормального русского сообщества вокруг компонента;
  • Компонент ZOO обновляется по сей день.

Ну так и напрашивается, же! :)

Можно ли назвать JBZoo коммерчески успешным проектом?

Оглядываясь назад, сложно сказать, т.к в разные периоды жизни проекта у нас был разный месячный оборот. Одно время мне хватало денег чтобы одновременно проектом занимался 10-ток человек (саппорт, кодинг, документация, видео...), с другой стороны в период разработки 220 был упадок из-за проваленных сроков, тогда фин вопрос стоял особенно остро.

Сейчас я вижу что мне хватает сил и средств, чтобы обеспечить разработку своего отдельного компонента, при этом он будет использоваться теми, кто уже с нами. Пока что основная проблема с кадрами (как и везде). Профи обходят всю CMS за километр, а среди joomla-мастеров найти прокаченного человека проблематично.

Наша страна шагнула в 2016 год с определенными экономическими сложностями. Покупать стали меньше. Какие перспективы у российского рынка в целом и рынка СНГ в частности, на твой взгляд?

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

Закручивание гаек с электронными платежами почувствовал, когда появился запрет на анонимные платежи. Хотя потом более-менее восстановилось. После начала волнений на Украине я потерял большую часть их аудитории. Возвращаться они точно не собираются. С другой стороны часть нашего дохода в евро, т.к мало помалу продаем на Запад и в этом году вынужден давить в эту сторону сильнее, иначе просто прогорим.

Куда катится весь российский рынок и экономика ? ...по наклонной. Грусть и печаль… Это уже давно не новость.

Интернет стремительно развивается: появляются новые технологии, меняются тренды, ничто не стоит на месте. За последние годы интерес к Joomla снизился. Что это: неудачная маркетинговая политика или общая проблема CMS, которых потеснили с одной стороны фреймворки, с другой конструкторы типа Wix?

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

Экосистема веба, наконец-то, начала взрослеть. “Веб-мастеры” тоже подросли и стали нормальными программистами. В интернете стали водиться деньги и сюда полезли специалисты из других языков и отраслей. Взросление хорошо видно на инструментарии. Если 5-10 лет назад всех устраивал Notepad++ или какой-нибудь глючный PDT, то сейчас полноценно работать можно только в IDE и никого не удивишь vim’ом. Если раньше нам нужно было ползать по интернету и скачивать скрипты с любительских блогов, как-то подключать их... то сейчас просто пишем список зависимостей и понеслась. Если раньше…. а, вы и так все знаете! (улыбается)

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

По мне так Wix - это тот же Ucoz (которому 100-лет в обед), только “няшный”.

Лет 5 назад Joomla была в ударе. Похоже, что глобальный переход CMS на GPL пошел только на руку и популярность подросла. А что же сейчас? Президент рисует сердечки и предлагает взяться за руки, быть большой единой семьей… нуууу… {некрасивый русский фольклор} Я смотрел видео с JoomlaDay Russia (Артему спасибо!), если прислушаться, то заметны аплодисменты facepalm’ом. Конечно, понимаю, она приехала проталкивать идеологию Joomla, но похоже все ожидали качественно иного выступления. Лично я остался сильно разочарован.

А если серьезно, то с Joomla все очень и очень просто - никто не хочет работать бесплатно. Энтузиазм разработчиков ядра и расширений нужно как-то подпитывать. Как бы не плевались ярые сторонники GPL, но это так. Энтузиазм, энергия и море времени есть у студентов-самоучек, но нет никакой квалификации. Специалист прокачивается, у него подрастает “борода” (скилы) и появляется семья, которая просто не поймёт, почему нужно тратить свободное, от основной работы время, на какую-то там бесплатную штуку в интернете, вроде CMS. Даже если она мега-популярная. Серьезный разработчик обойдет Joomla стороной, потому что не видит в ней потенциального заработка. Нет разработчиков - нет системы

Да, есть бесплатные и крутые штуки для Joomla, но это либо побочный продукт для продвижения клуба, либо какое-то исключение, где развитие идет со скоростью самой CMS … шел 2016-й год, а там все еще квадратный менеджер материалов … А-а-а, ЗАЧЕМ???

JED, официальный блог, волонтеры… всё и все твердят нам, что только энтузиазм нужен для разработки или типа того. Ну, собсна, получайте! Все хотят бесплатно, деньги можно брать только за подписку или поддержку. Администрация JED ревьювит со скоростью одно расширение в 2-3 недели силами волонтеров, которым это как бы это не особо нужно. Joomla пора бросить почивать на лаврах прошлых лет, найти себе крутого и слегка деспотичного лидера, заняться коммерческой стороной вопроса, развивать коробку! Начать можно с Joomla Idea Pool, например. Пока что Сара, как президент, у меня не вызывает доверия. На официальном сайте только и видно, как они ищут новые кадры и рисуют сердечки.

На самом деле, я могу сказать в таком же духе про Wordpress, там тоже GPL, но еще и отвратительный код движка. А он упорно идет только в гору. Домашнее задание - “Почему?”

Есть еще одна важная деталь, которой не хватает в Joomla, как во всякой взрослой системе - это тесная взаимосвязь между расширениями от совершенно разных разработчиков. Сразу скажу, боюсь что меня не поймет “типичный джумлист“, так что надеюсь на знатоков.

Посмотрите на пакетный менеджер Linux или Drupal. Когда мы ставим новое расширение/программу система сама понимает, какие именно дополнительные пакеты ей нужны для работы. Например, устанавливая Midnight Commander мы обязательно установим в систему архиватор, который окажется полезен кому-то кроме mc. Либо, при установке редактора, менеджер понимает, что необходимо скачать еще jQuery.core + jQuery.UI+Calendar и устанавливает их автоматически как зависимости. Будет очень похоже на Composer, только в рамках CMS с масштабами и функциями целых компонентов, а не библиотек.

Какая практическая польза в пакетах? Все расширения будут написаны с единым API для общения друг с другом и самой системой. Не будет разных плагинов, которые делают одно и тоже, детских конфликтов с несколькими jQuery. И CMS, и расширения будут выглядеть монолитным сплавом API, а не разрозненной кучкой скриптов как сейчас. Кстати, в PageKit уже это частично реализовали. Кажется в Drupal это было с первых дней жизни. В Bitrix все близко к этому, но только потому что вендор один. Скорее всего JBZoo 3.x будет именно таким - само ядро почти ничего не умеет, вся логика лежит в элементах и атомах (пакетах).

Настройка уведомлений в корзине JBZoo
Настройка уведомлений в корзине JBZoo

Подобный подход просто вынуждает разработчиков писать расширения качественно, с тестами на совместимость и с размахом на будущее. Заставит их думать! Расширения, которые не следуют этим правилам, просто вымирают. Но… но… это все конечно только мечты и уже больше тянет на CMF. В текущих реалиях 20+ тысяч расширений уже переписать не возможно и не нужно... Эту идеологию нужно было закладывать чуть ли не с первых версий. Кстати, она появилась в Joomla в виде расширений “package”, но не прижилась по сей день. Разработчики используют package как пакетную установку, не более.

По мне так Wix - это тот же Ucoz (которому 100-лет в обед), только “няшный”. Да, он что-то позволяет сделать без понимания, как это работает. Но выйти за рамки стандартного редактора будет очень сложно. Клиенты хотят чтобы сайт непременно интегрировался с их складом, учитывал поползновения товаров, оповещал всех вокруг, учитывал особенности именно их бизнеса, следил за клиентами и вообще… еще чуть-чуть и “даешь CRM в каждый дом!”, но так, чтобы дешевле чем Bx24. CMS можно кастомизировать как угодно, Wix и оные - нет.

Основная проблема онлайн-конструкторов, что это буквальная клетка для разработчика. Там нельзя будет сделать больше, чем заложено в редактор или приложения из маркета. Соответственно, это рассчитано на домохозяек и веб-мастеров любителей. Личный блог - да, мини сайт о компании - может. А в реальной жизни с нормальными клиентами - никогда. Например, получится ли у вас запускать на сайте произвольные задачи (тот же импорт) с произвольным расписанием и без серьезных ограничений?

Консоль JBZoo
Консоль JBZoo

Ucoz предвещал смерть CMS еще лет 10 назад, со времен narod.ru (смеётся) А новые CMS все появляются, а старые все расширяются. И даже конструкторы личных блогов не вытеснили “Standalone-Wordpress” по сей день. Рынок IT большой, он растет - каждый находит себе клиента.

Если говорить о Joomla, то кто является целевой аудиторией JBZoo? Это разработчики или люди, которые хотят создать собственный сайт самостоятельно?

Да, среди наших подписчиков есть люди, которые только-только начали делать сайты. Их мало. Все-таки JBZoo рассчитан на тех, кто хотя бы умеет верстать или имеет представление как работает Joomla.

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

Сейчас мне все больше и больше стали писать отзывы и вопросы те, кто пользовался несколько лет JoomShopping, VM, Joomlakassa и даже были с WooCommerce. Косвенно, это тоже наша целевая аудитория.

Вытекающий из предыдущего вопрос: клиенты, покупающие JBZoo, по большей части уже знакомы с ZOO и приходят за расширением функционала или наоборот, приходят за решением, а в процессе осваивают ZOO?

Изначально так и было. Мы начинали именно с тех, кто работает с ZOO. Им страсть как хотелось банальных вещей вроде фильтра, создания заказа, сравнения товаров, избранного. Мы нашли друг друга.

После выхода 220v JBZoo стал настолько большим, что в каком-то роде уже начал затмевать сам ZOO. Даже наш дистрибутив вдвое больше. Люди давно думают о нем как о компоненте, чем о расширении для расширения. В итоге, новые подписчики приходят за JBZoo, а в процессе узнают, что есть такие вещи как WidgetKit и на самом деле все крутится вокруг ZOO. Пока что не видел, чтобы это кого-то сильно смущало, потому что все вместе это выглядит как монолитное расширение.

Заказ в JBZoo
Заказ в JBZoo

За последние годы возрос интерес к CCK и помимо ZOO существуют другие продукты. Например, Seblod является продуктом совершенно иного класса и агрессивно пиарится, но имеет высокий порог вхождения, в то время как ZOO проще в освоении, но почивает на лаврах прошлых лет. В связи с этим, какие перспективы, на твой взгляд, у обоих продуктов и что ждет JBZoo?

Seblod я видел только издалека и знаком с ним мало, впрочем как и с любыми другими расширениями Joomla. Что я знаю точно - он гораздо больше ZOO ...и гораздо дороже. Цены на их услуги и расширения в десятки раз выше наших. Сравнивать ZOO и Seblod - бессмысленно.

Будущее обоих расширений прямиком зависит от платформы, а Joomla сейчас начала терять своего пользователя. Тем не менее популярность CMS огромная - есть десятки тысячи расширений, миллионы сайтов, ежегодные мировые эвенты, масса охваченных стран и т.д. Поэтому увядать будет ооооочень медленно... Конечно, если вдруг они не исправят свое положение. Думаю, проект ещё успешно отметит свой 15-й день рождения.

Планируешь ли ты портировать JBZoo под другие CCK или даже платформы?

Под другие CCK, конечно же, нет. Как ты уже понял, ZOO был для меня исключением из общей массы компонентов. Сейчас я заинтересован в расширении сообщества и выход за границы Joomla, следующая остановка отдельный компонент и Wordpress.

Релиз JBZoo 220v практически выжал все соки из фреймворка ZOO (уже давно смотрю на него именно в плане фрейма). Мы уперлись в потолок “фич без хаков” еще год назад. Тогда сил на развитие своего компонента не было. Сейчас есть и четкое понимание, как это должно работать, огромный опыт, желание и, самое главное, заинтересованное сообщество.

С какими наиболее частыми вопросами сталкиваются люди, использующие JBZoo?

  • “Можно ли сделать такой же сайт как по этой ссылке - http://сайт-конкурента... ” с помощью только JBZoo ?

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

JBZoo практически не представлен на основных ресурсах, посвященных Joomla, однако собрал свою аудиторию, и запросы на разработку на базе твоего продукта частенько появляются в коммерческом разделе или на почте активных участников сообщества. Если это не секрет, расскажи, как тебе удалось создать продукту имя, минуя основные площадки?

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

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

Именно тогда появился Forum.JBZoo.com. Закрыл его для того, чтобы посторонние люди не нагружали вопросами, и только. Среди подписчиков я нашел заинтересованных и компетентных людей, дал им модератора за символическую плату в месяц 5-15 денег по способностям. Чтобы был хоть какой-то порядок на форуме мы почти сразу ввели правило “Один вопрос - одна тема”. В итоге, каждый топик получился тикетом. Т.е. можно было посмотреть решение у других и не создавать свой вопрос. Работа разработчиков и всей организации в целом стала более прозрачной и люди стали доверять нам больше. А это важно!

Примерно через год я осознал, что это не просто какой-то форум поддержки - это то, что можно продавать как услугу. Мы подняли цены раза в 3-4 и ввели тарифные планы. Было много недовольных, форум опустел и остались только те, кто действительно зарабатывает на сайтах. Общение стало более профессиональным.

Форум технической поддержки JBZoo
Форум технической поддержки JBZoo

Если людям нравится, то они вернутся.

Спустя 1-2 года после старта проекта, люди увидели в форуме практическую ценность. Во-первых, там отвечали почти на все вопросы, во-вторых, это уникальный ресурс о ZOO, который набирал популярность. Чтобы не быть голословным, на данный момент форум насчитывает почти 15 000 тем и около 75 000 сообщений. Из них примерно 40% принадлежит нашей поддержке. Только моих сообщений более 13 000. Напомню, что это закрытый и только русскоязычный форум, всего лишь трехлетняя история. Там нет роботов или спама, решенные вопросы отмечаются, темы закрываются, старье уходит в архив. Новые пользователи его рассматривают как большой кладезь опыта.

Я понял, что нужно “продавать” (читай как “предлагать”) именно продукт целиком, а не zip-архивчик как это делают большинство разработчиков расширений. Соответственно, развивать документацию, комьюнити, маркет, учитывать мнение сообщества (как минимум выслушать) и т.д.

  • Всё просто. Если людям нравится, то они вернутся (Max+ тариф продлевают по сей день, даже когда он подорожал вдвое);
  • Если нравится, то они будут советовать (целевой трафик идет с форумов Joomla чуть больше, чем через поисковики);
  • Хоть сейчас все поголовно знают английский (на самом деле, вообще нет), то выбирают там где документация и поддержка на родном языке;
  • Море документации на сайте и еще больше на форуме;
  • Свои обучающие видео и появляются от других авторов (Отдельное спасибо Евгению К.);
  • У нас живой форум, где можно общаться напрямую с разработчиками и другими подписчиками;
  • Наш маркет пополняется каждую неделю новыми решениями от наших же подписчиков (тут я замучаюсь перечислять авторов).

Эти вещи нельзя скачать и своровать. В них можно только быть участником.

После выхода 220 я почувствовал, что форум превращается из техподдержки в нормальное сообщество:

  • Люди отвечают другим за просто так;
  • Раньше расширения в маркет выкладывали только мы, а сейчас люди сами создают, выкладывают и даже занимаются поддержкой;
  • Появились те, кто берет на постоянной основе заказы прямо с форума;
  • Люди знакомятся, объединяются в отдельные группы вне форума. Знаю, что есть чаты в скайпе и телеграмме;
  • Люди сами где-то пишут очерки о нас, и даже создают небольшие сайты о JBZoo;
  • В профилях на фрилансе вписывают JBZoo CCK как скилл (иногда как основной).
Магазин расширений JBZoo
Маркет JBZoo

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

Основной доход и популярность нам приносят именно те, кто продлевают, а не “свежая кровь” как в какой-нибудь фин. пирамиде)))) С одной стороны это круто, с другой - достаточно сложно найти время на разработку коробки. Форум съедает слишком много сил. Но это уже другой вопрос.

Год назад мы делали попытки выйти на запад. Я нанимал переводчиков на английский и немецкий, брал рекламу. Сделали чистую версию GPL для JED (кстати, через 2 месяца нас забанили за “сам-не-понял-почему”). Все наши вложения лишь окупили сами себя и мы закинули идею на полку. В этом году будем идти на запад, но уже иной дорогой. И, да! JED я до сих пор считаю плохой идеей. По крайней мере толком трафика не шло, хотя приложение висело на главной(!) где-то неделю.

Почему JBZoo стал популярным и не представлен на площадках о Joomla? Одно слово - Са-ра-фан.

Поскольку JBZoo ориентирован, по большей части, на российский рынок, насколько остро проблема вареза стоит для тебя и что бы ты хотел сказать людям, использующим ворованные расширения?

Вопрос вареза для меня стоит остро. Т.к, на самом деле, продукт не зарабатывает огромных средств. Тут, думаю, все понятно:

  • Сейчас наша цель - не деньги, а расширение заинтересованного сообщества;
  • Цена специально занижена по сравнению с конкурентами;
  • На Joomla нет дорогих сайтов (будем честны друг с другом);
  • Наша аудитория - это по большей части фрилансеры;
  • Потому что мы только в российском рынке Joomla и тут воровать - это старая добрая традиция (извините, но это так).

Я ничего не хочу сказать им. Это бесполезно... Просто каждый раз пропадает энтузиазм что-то делать именно для российского рынка. Если палка перегнется, то мы просто перенесем свои усилия на Запад без остатка. Может даже переименую. Там народу больше чем тут, но правила игры немного иные. И на этом наш обоюдный “патриотизм” закончится.

И ладно бы у нас ценник был высоким, но цена вопроса всего-то 1000 рублей. Ребят, неужели на разработке сайтов трудно найти такие невероятные деньжищи?)) Если не можете, наверно вы занимаетесь не тем в своей жизни… Даже в кризис на фрилансе можно зарабатывать 40-50 тыс на человека (знаю примеры).

Как я вижу, NorrNext или RoundTheme сразу начали именно с Запада. Причина очевидна =)

Денис, какие у тебя планы на будущее? Что стоит ожидать фанатам JBZoo?

Мыслей очень много, планов еще больше. Сейчас мы усердно занимаемся разработкой отдельного кросплатформенного компонента JBZoo:

  • Абстрагируемся от CMS и запускаем код сразу на разных платформах (уже!);
  • У нас будет SPA панель управления на React.js (он больше по душе);
  • Все пишем только через юнит-тесты, а затем важные моменты прогоняем через Nightmare (интеграционные тесты). Это ускоряет разработку и повышает качество ПО. Именно так выглядит обратная совместимость - тесты!
  • Делаем систему расширений на основе атомов - пакеты для JBZoo, о которых говорил выше. В качестве атома может быть любая библиотека с Packagist.org, например. Либо это сразу вся корзина, или только подключение одного файла jQuery. Такая вот универсальная единица в JBZoo!
  • Хотим запустить непрерывную доставку обновлений (levelUp к непрерывной интеграции). Это когда закомитил и если все тесты прошли, то пользователь узнает о минорных фиксах минут через 15. Большая часть процесса уже отлажена со времен JBZoo 2.2.0;
  • Начинаем серьезнее работать над расширением аудитории, ищем партнеров-разработчиков и развиваем наш Маркет.

Так расширения для CMS еще никто не писал ;)

Благодарю тебя за интервью. И заключительные слова напоследок…

%username%, надеюсь, что читать этот исторический трактат было интересно не меньше, чем мне вспоминать историю развития JBZoo.

Делайте как надо, а как не надо не делайте! Всем добров, баблов и бобров!

Видео-обзор возможностей JBZoo за 10 минут

Полезные ссылки:

Eugene Sivokon
Предприниматель, менеджер проектов, Joomla-энтузиаст. Занимаюсь созданием сайтов с 2002 года. Координатор нескольких Joomla проектов. Обожаю путешествовать, интересуюсь историей и изучаю иностранные языки.