Форум, на котором я активен, обновил vBulletin с версии 4 до 6.
Хотя я впечатлён тем, что такое старое программное обеспечение, построенное на устаревшей основе[1], смогло реализовать «современные» функции, такие как:
- WYSIWYG-редактор
- Вставка изображений прямо в редактор
- Мобильный вид
- Чаты в реальном времени (ЛС)
- Отсутствие перезагрузки всей страницы после публикации сообщения или использования пагинации
- Сохранение набираемого сообщения в реальном времени
- Быстрое выделение и цитирование части сообщений других пользователей
Также бросается в глаза, насколько Discourse уделяет внимание деталям, которые действительно делают опыт использования плавным и безболезненным во многих аспектах.
Вот лишь несколько примеров того, как vBulletin 6 обрабатывает некоторые функции, тогда как Discourse просто делает всё правильно:
-
При вставке изображения в редактор оно не конвертируется в JPG, поэтому, если изображение больше максимально допустимого размера, вам придётся вставить его куда-то ещё, сохранить как JPG и загрузить вручную.
-
Предлагает более 10 дополнительных полей/настроек при ссылке на изображение, которыми пользователи никогда не воспользуются[2].
-
ЛС можно просматривать как тему или как чат с обновлениями в реальном времени, который должен открываться в отдельном окне (зачем два варианта? Почему не взять лучшее из обоих видов?).
-
Если вы загружаете картинку или другой файл, а затем удаляете его из редактора, файл всё ещё прикрепляется к сообщению; чтобы полностью удалить его из сообщения, нужно удалить изображение из меню вложений.
-
Если вы редактируете сообщение и закрываете окно редактирования, всегда появляется всплывающее предупреждение о том, что вы потеряете изменения, даже если вы ничего не меняли.
-
Действия, занимающие время (до нескольких секунд), например, показ предварительного просмотра темы при наведении на её заголовок в списке тем или отправка сообщения, меняют стандартный курсор Windows на синий курсор «занят»[3], что очень неприятно, так как это явление обычно возникает, когда веб-страница вот-вот зависнет из-за зависшего процесса

-
Мне довелось увидеть административную панель, чтобы создать собственную тему. Конечно, в итоге всё работает, но какой это болезненный опыт. С точки зрения удобства использования это на световые годы отстаёт от Discourse и излишне усложнено, с интерфейсом прямо из 2000-х годов[4].
-
Обычный список тем содержит 11 000 строк HTML
. Discourse выводит 500.
Я предвзят, это точно. Я люблю Discourse. Я не очень хорошо знаю vBulletin. Я не привык ко всем его функциям или не использую их все. Я ни продвинутый пользователь, ни администратор vBulletin, зато я эксперт в Discourse (насколько я смел).
Возможно, моё мнение было бы более сдержанным, если бы я хорошо знал vBulletin и если бы не думал «𝒯𝒽𝑒 𝒟𝒾𝓈𝒸𝑜𝓊𝓇𝓈𝑒 𝒲𝒶𝓎» каждый раз, когда хочу что-то сделать в vBulletin как пользователь или администратор.
Кроме того, насколько я понимаю, vBulletin 6 теперь является полноценной CMS, предназначенной для создания целых веб-сайтов, а не только форумов, что объясняет триллионы шаблонов, параметров и настроек, а также используемый фреймворк HTML и CSS, который делает кастомизацию очень сложной[5].
Я с радостью признаю, что не всё так идеально на стороне Discourse, и что vBulletin предлагает функции, которых нет в Discourse (и наоборот).
Тем не менее, использование этой очень свежей версии vBulletin заставило меня осознать, насколько легко и плавно работает Discourse по сравнению с такими старыми конкурентами.
Мне кажется, что быть разработчиком vBulletin — не самое вдохновляющее занятие ↩︎
- ↩︎
Просто часть интерфейса:
↩︎
Счастливая горизонтальная прокрутка

↩︎<div class="b-module canvas-widget default-widget activity-stream-widget forum-activity-stream-widget widget-tabs ui-tabs widget-no-header-buttons widget-border-flush ui-corner-all ui-widget ui-widget-content" id="widget_3" data-widget-id="6" data-widget-instance-id="3" data-widget-default-tab="#forum-tab"> <div class="widget-header widget-tabs-nav h-clearfix"> <div class="module-title h-left"> <ul class="ui-tabs-nav hide-on-editmode h-clearfix b-comp-menu-horizontal js-module-tab-menu js-comp-menu-horizontal js-comp-menu--dropdown-on-xsmall b-comp-menu-dropdown--inactive ui-corner-all ui-helper-reset ui-helper-clearfix ui-widget-header" role="tablist">

