Эта статья родилась из разговора в Skype, при обсуждении, что Akeeba выпустил обновление из-за найденной ошибки. Так как я являюсь сам разработчиком, а так же одним из самых ярых критиков развития Joomla, хочу рассказать о причинах ошибок и отчасти защитить разработчиков, хотя конечно виноваты во всем разработчики, ведь они замыслили эдакую пакость и сделали продукт, которым мы с вами пользуемся.
Начну пожалуй с народной мудрости:
"Никогда не ошибается тот, кто ничего не делает".
Это действительно так, какой бы вы не были специалист, и как бы вы не были опытны, вы все равно будет ошибаться, особенно, когда вы делаете, что-то в первый раз, а уж тем более когда делаете какую-то инновацию, которую вполне возможно до вас ни кто не делал. Можно сколь угодно скептически относиться к прогрессивности Joomla, но примеров более успешных и массовых продуктов среди CMS общего назначение, не было, и нет. По-моему уже большое чудо, что Joomla работает без особых проблем почти на 1/3 всех сайтов мира.
Теперь вернемся к недавним событиям - это выход 3-ей линейки Joomla. Из-за этого было множество споров и пересудов, но, тем не менее, сомневаться, в том, что это успешный продукт невозможно. Одно омрачает мое пользование Joomla 3 - это большой риск при обновлении, и гигантское количество ошибок, которые правятся с каждым релизом, но почему-то меньше их не становится.
Поговорим об ошибках Joomla!
Первый вопрос, который мне задают, когда все это кончится?
Вполне возможно, что в ближайшее время, так, как Joomla взяла курс на прагматичное уменьшение количества компонентов в своем составе, возможно в ближайшее время так же выкинут многие библиотеки из состава ядра Joomla. Меньше составных частей, меньше кода, меньше ошибок. Плюс все таки Joomla в последних релизах улучшила тестирование дистрибутивов и есть надежда, что количество исправлений, когда-нибудь перерастет в качество движка.
Второй вопрос, это почему возникают ошибки?
Тут причин несколько. Из основных, следует выделить следующие:
- Состав программистов работающих над кодом Joomla очень разнороден, есть очень хорошие программисты, есть нормальные и есть совсем никакие, но все они нужны, так как пускай и гениальный программист, но он один, а работы делается на десятки гениальных программистов, где взять столько, пока еще ни кто не знает.
- Много дополнений из изменений в коде ядра Joomla. Если мы взглянем на линейку Joomla 2.5, то мы увидим 5-10 исправлений за релиз. Что же касается третьей версии Joomla, то их сотни. Вернемся к началу статьи и прочитаем фразу, с которой все началось, люди вносят изменения в код, а так как кода много и пользователей этого кода много, не всегда можно предугадать корректность изменения.
- Плохое тестирование. Особенно это касается версии 3.1 и 3.2. Кроме как ужасно я не могу ни как охарактеризовать, я бы, обложил разработчиков трехэтажным матом, но вряд ли это им поможет. Мое мнение, что эти релизы делались по принципу, у меня на компьютере работает, а как там работать будет у кого-то там, мы узнаем после релиза.
На самом деле причин куда больше, но я вам хочу просто объяснить причины, и возможно вы станете толерантно относится к ошибкам разработчиков ядра.
Кратенько об ошибках разработки компонентов Joomla!
Тут наверное творятся самые страшные вещи. Дело не в том, что разработчики компонентов плохие программисты, хотя и плохих программистов среди них навалом, дело в другом.
Обычно разработкой, какого либо продукта для Joomla занимается 1 человек ну максимум 2-3. Они и тестеры и дизайнеры и верстальщики. Я серьезно вам говорю, разработка компонентов это очень неблагодарный труд. Очень часто этим занимаются после работы и, как правило, вознаграждения за свою работу они получают очень скромное, особенно если учитывать, какие усилия им иногда приходится затрачивать.
Теперь представьте, что может быть на выходе? Правильно тестирование производится в очень сжатые сроки. На дизайн и верстку знаний уже не хватает. На выходе мы имеем то, что имеем.
Вообще один мой знакомый говорил, что не рискнет использовать продукт, который поддерживает только один человек, и он прав, так как примером этому служит огромное количество мертвых расширений для Joomla.
В заключение, я хочу вам сказать, относитесь с пониманием к труду и ошибкам разработчиков как Joomla!, так и разработчиков расширений, без них у вас бы не было такого замечательного инструмента для разработки сайтов.