Данная статья является переводом поста Николоса(руководителя и разработчика расширений Akeeba ), о происходящих в настоящее время событиях вокруг Joomla.
В нем автор оценивает текущие события происходящие с Joomla и высказывает свою точку зрения на ее проблемы и пути их решения.
Повествование ведется от первого лица, дабы максимально сохранить смысл посыла.
----------------------------
В то время как голосование по изменению структуры Joomla [1] подходит к концу, воспользуюсь моментом и поразмышляю над тем, в чем текущая проблема и как ее решить.
Взгляд со стороны разработчика
Если спросить десять человек: “В чем проблема Joomla?” - вы получите десять разных ответов.
Единым во всех ответах, а поверьте я действительно опрашивал кучу клиентов, разработчиков и знакомых, будет - Joomla не развивается! Или по крайней мере - недостаточно быстро. И я думаю не только я, многие с этим согласятся.
Последние крупные изменения произошли в CMS с выходом Joomla 3.0 - но это 3 года назад!!! С точки зрения развития веб-технологий - это просто огромный срок
И этот стопор в развитии никак не связан с отсутствием талантливых разработчиков или нежеланием развития, нет. У нас есть достаточно талантливых разработчиков в Joomla-сообществе, по крайней мере не меньше чем у других популярных CMS. Мы все желаем развития нашей Joomla, в этом нет сомнения.
Тогда какого черта, в чем проблема то?
Проблема с Joomla - в самой Joomla, как организации, а не как CMS!
Давайте порассуждаем гипотетически: предположим, что у Алисы есть замечательная новая идея, которую она хочет реализовать, будь то новый кусок кода, маркетинговая идея или новый сервис, который позволит Joomla! обойти конкурентов. Допустим, что Алиса имеет техническое образование, свободное время и желание сделать всю работу, необходимую для достижения этой цели. С чего же должна начать Алиса?
Было бы глупо, со стороны Алисы, изменять код в дистрибутиве Joomla не посоветовавшись, ведь его могут и отклонить… Поэтому она ищет человека с которым можно было бы поговорить об этом.
И с кем же она должна поговорить? А никто и не знает с кем. Образно говоря, на кухне куча поваров, но нет ни шеф повара, ни рецепта приготовления.
Алиса начинает спрашивать на форуме, в Facebook, везде - к кому ей обратиться. В итоге так и не получив ответа, она уходит и забивает на свою идею. А ведь это могло бы быть решено просто - стоит лишь опубликовать список ответственных лиц, к кому можно обратиться на Joomla.org, ну да ладно, я кажется отвлекся.
Давайте предположим, что Алиса все таки нашла человека с которым можно поговорить, но этот “кто-то” будет в лучшем случае лишь маленьким винтиком, в огромной машине под названием Joomla, без каких то значительных полномочий и абсолютной властью - потому как нет никого с абсолютной властью в Joomla, хотя это не обязательно и плохо..
Я не могу размышлять и комментировать ситуации вне PHP-кода, поэтому предположим, что Алиса написала какой нибудь PHP-класс, который может улучшить движок и она хочет помочь в развитии Joomla - добавить его в дистрибутив. И в самом лучшем случае она даже вышла на одного из членов команды PLT и спрашивает: "Могу я добавить это в CMS Joomla?" На что последует стандартный ответ - "Напишите этот класс на Github, сделайте Pull Request в дистрибутив и команда PLT решит, стоит ли и когда добавить ваш класс в ядро CMS."
И вы только что потеряли Алису!
У Алисы есть время и возможность написать этот класс, она действительно могла бы помочь в развитии Joomla, но перспектива “спустить в унитаз” весь ее труд - отпугивает. Она лучше позволит кому нибудь другому впустую тратить свое время. И у этой проблемы тоже есть решение, но перейдем к главному.
Главная проблема - отсутствие видения
В сообществе принято считать, что основная проблема Joomla, как организации - это плохая коммуникация. Но это всего лишь симптом, более очевидной и большой проблемы:
Нет видения
И под видением, я понимаю план развития CMS (Roadmap). И это не тот смешной Roadmap, который сейчас официально опубликован Если кто то возьмется все таки и удосужиться прочитать этот план развития, то его поразят две вещи - во-первых, версия 3 имеет достаточно много минорных релизов вплоть до 3.11 и во-вторых, изменения в этих минорных релизах - они просто ничтожны.
Если вдобавок посмотреть на историю версий Joomla и ключевой тезис о необходимости сохранения обратной совместимости в ней, то можно считать, что Joomla CMS медленно, но верно идет по направлению к могиле. Ибо по плану развития, текущая кодовая база должна сохраниться вплоть до 2019 года. То есть к тому моменту, она устареет на 8 лет!
Давайте вместе подумаем, какая была кодовая база у Joomla 8 лет назад? - это была Joomla 1.5.
Вы можете себе представить, чтобы кто то в здравом уме сейчас взял и стал бы делать проект на основе устаревшей Joomla 1.5? Но так примерно и будет, если мы не изменим текущий Roadmap.
И это было бы не настолько плохо, если бы Joomla шла по пути Wordpress - добавляя от релиза к релизу опции реально полезные для пользователей CMS. Но у Joomla “свой путь” - из-за необходимости сохранения обратной совместимости, новые “фишки” могут быть добавлены в нее только в минорных релизах, а это происходит обычно в периоды от шести до двенадцати месяцев [2]
На сегодняшний день ни у кого нет представления, как должна выглядеть Joomla через 3, 6, 12 или 36 месяцев.
Видение будущего - его просто нет. Есть только одно желание: пусть придут люди(волонтеры) и добавят новые возможности. Но с какой это стати? Кто будет тратить свое время и силы, если не понимает и не знает будет ли его труд включен в дистрибутив Joomla.
Согласились бы вы работать несколько месяцев подряд, не зная заплатят вам за работу или нет?
Но именно так и происходит с нашими волонтерами, они должны выкладываться и писать код в крупный проект без какой-либо помощи и без каких-либо гарантий, что их работа будут включена в код Joomla. Это даже произошло с подавляющим большинством проектов Google Summer of Code. Вместо привлечения талантов мы сделали максимально возможное, чтобы они держались подальше от ядра Joomla!
Мы до сих пор не исправляем то что поломалось
Текущие изменения в структуре управления Joomla никоим образом не решают проблему отсутствия видения перспектив развития CMS
Если присмотреться внимательно, то новая структура лишь добавляет еще больше "поваров" на кухню, при этом самого рецепта так до сих пор и нет. Каждый департамент имеет право голоса на что то еще, помимо своих обязанностей. Я понимаю почему так было решено сделать, но сомневаюсь что все было максимально продуманно.
Но я опасаюсь, что все новые важные решения, такие как например Joomla 4, будут проходить уже в рамках новой структуры. Что? Вы не слышали о Joomla 4? Это некий волшебный единорог Joomla - она вроде бы уже должна быть в разработке, но на самом деле еще даже нет плана ее разработке.
Всем кто разрабатывает на PHP должно уже быть ясно, что Joomla 4 должны быть смелым и прорывным решением и что без ломки обратной совместимости тут не обойтись, однако не надо думать, что при таком развитии событий нельзя будет сделать обновление одним щелком мыши! Нет никаких причин, к тому чтобы PHP сообщество ушло с текущего пути развития в виде пакетов для Composer и приняло решение использовать что то свое, для решения задач
Что же теперь?
Несмотря на исход голосования, я твердо верю что Joomla должна исправить свою главную проблему как можно скорее
Joomla, как организации, надо срочно приступать к работе над Joomla 4, причем семимильными шагами, так чтобы к декабрю 2015 мы имели полное представление какой она будет.
Joomla должна начать привлекать к работе талантливых разработчиков, дизайнеров, специалистов по юзабилити чтобы к сентябрю 2016 года у нас была бы Бета Joomla 4! Большая задержка приведет к необратимым последствиям для всех нас кто работает и зарабатывает на Joomla.
Самые недоверчивые среди вас, могут сказать, что я обхожу многие острые углы, нет. Хоть я и не согласен с новой структурой управления Joomla и некоторыми личностями участвующими в этом процессе, я до сих пор хочу помочь. Большой вопрос - позволят ли мне это сделать, или опять скажут заткнуться...
Дополнительные материалы по теме:
[1] Реструктуризация руководства Joomla: быть или не быть?
[2] Анализ новой стратегии развития Joomla
Оригинал статьи - http://www.dionysopoulos.me/the-problem-is-the-vision/