Discourse — это настолько плавный опыт

Форум, на котором я активен, обновил vBulletin с версии 4 до 6.

Хотя я впечатлён тем, что такое старое программное обеспечение, построенное на устаревшей основе[1], смогло реализовать «современные» функции, такие как:

  • WYSIWYG-редактор
  • Вставка изображений прямо в редактор
  • Мобильный вид
  • Чаты в реальном времени (ЛС)
  • Отсутствие перезагрузки всей страницы после публикации сообщения или использования пагинации
  • Сохранение набираемого сообщения в реальном времени
  • Быстрое выделение и цитирование части сообщений других пользователей

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

Вот лишь несколько примеров того, как vBulletin 6 обрабатывает некоторые функции, тогда как Discourse просто делает всё правильно:

  • При вставке изображения в редактор оно не конвертируется в JPG, поэтому, если изображение больше максимально допустимого размера, вам придётся вставить его куда-то ещё, сохранить как JPG и загрузить вручную.

  • Предлагает более 10 дополнительных полей/настроек при ссылке на изображение, которыми пользователи никогда не воспользуются[2].

  • ЛС можно просматривать как тему или как чат с обновлениями в реальном времени, который должен открываться в отдельном окне (зачем два варианта? Почему не взять лучшее из обоих видов?).

  • Если вы загружаете картинку или другой файл, а затем удаляете его из редактора, файл всё ещё прикрепляется к сообщению; чтобы полностью удалить его из сообщения, нужно удалить изображение из меню вложений.

  • Если вы редактируете сообщение и закрываете окно редактирования, всегда появляется всплывающее предупреждение о том, что вы потеряете изменения, даже если вы ничего не меняли.

  • Действия, занимающие время (до нескольких секунд), например, показ предварительного просмотра темы при наведении на её заголовок в списке тем или отправка сообщения, меняют стандартный курсор Windows на синий курсор «занят»[3], что очень неприятно, так как это явление обычно возникает, когда веб-страница вот-вот зависнет из-за зависшего процесса :grimacing:

  • Мне довелось увидеть административную панель, чтобы создать собственную тему. Конечно, в итоге всё работает, но какой это болезненный опыт. С точки зрения удобства использования это на световые годы отстаёт от Discourse и излишне усложнено, с интерфейсом прямо из 2000-х годов[4].

  • Обычный список тем содержит 11 000 строк HTML :wat:. Discourse выводит 500.

Я предвзят, это точно. Я люблю Discourse. Я не очень хорошо знаю vBulletin. Я не привык ко всем его функциям или не использую их все. Я ни продвинутый пользователь, ни администратор vBulletin, зато я эксперт в Discourse (насколько я смел).

Возможно, моё мнение было бы более сдержанным, если бы я хорошо знал vBulletin и если бы не думал «𝒯𝒽𝑒 𝒟𝒾𝓈𝒸𝑜𝓊𝓇𝓈𝑒 𝒲𝒶𝓎» каждый раз, когда хочу что-то сделать в vBulletin как пользователь или администратор.
Кроме того, насколько я понимаю, vBulletin 6 теперь является полноценной CMS, предназначенной для создания целых веб-сайтов, а не только форумов, что объясняет триллионы шаблонов, параметров и настроек, а также используемый фреймворк HTML и CSS, который делает кастомизацию очень сложной[5].

Я с радостью признаю, что не всё так идеально на стороне Discourse, и что vBulletin предлагает функции, которых нет в Discourse (и наоборот).

Тем не менее, использование этой очень свежей версии vBulletin заставило меня осознать, насколько легко и плавно работает Discourse по сравнению с такими старыми конкурентами.


  1. Мне кажется, что быть разработчиком vBulletin — не самое вдохновляющее занятие ↩︎

  2. ↩︎

  3. image ↩︎

  4. Просто часть интерфейса:

    ↩︎

  5. Счастливая горизонтальная прокрутка :allthethings:

    <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">
    
    
    ↩︎
15 лайков

Я был постоянным посетителем другого форума на платформе Discourse в течение примерно 4–5 лет. Когда я захотел добавить форум на свой сайт, я выбрал Discourse, так как он был мне хорошо знаком. Начав управлять своим собственным форумом и общаясь здесь, я остался под большим впечатлением от поддержки и гибкой разработки всей команды и сообщества. Программное обеспечение первоклассное, а проект — это всё, чем может быть проект с открытым исходным кодом!

4 лайка

Интерфейс опций изображений — отличный пример!

Он наглядно демонстрирует, как Discourse преуспевает в создании интерфейса и функций, отвечающих потребностям пользователей, без лишних дополнений или визуальных компромиссов, которые могли бы испортить пользовательский опыт. При этом не забывается и возможность продвинутой кастомизации (с каждым крупным обновлением это становится всё проще).

Мне нравится философия внедрения функций на основе интереса пользователей («правило трёх») и стремление сохранять простоту, не жертвуя мощностью, — что непросто сбалансировать.

Именно поэтому Discourse каждый день приносит удовольствие: он фокусируется на главном, ставя во главу угла пользовательский опыт, и при этом предлагает мощные возможности «под капотом».

Конечно, я тоже предвзят, и Discourse не идеален; но я считаю, что они движутся в правильном направлении, учитывая, насколько приятным в использовании является это программное обеспечение!

5 лайков