Наткнулся на пост http://pikabu.ru/story/slishkom_byistro_5015396 и начал вспоминать сколько раз я за свою жизнь портил хороший код в угоду пользователескому опыту: заблокировать GUI-поток на полсекунды, хотя авторизация пролетает за 10 мс, чтобы всем стало понятно, что приложение работает - это еще цветочки.
Был у нас в практике кейс в одной компании.
Была таблица с данными, которые обновляются автоматически и очень оперативно - раньше через AJAX / long polling, затем через SignalR, уж старались разработчики на благо пользователей. Однако, после выката в продакшн выяснилось, что в силу того, что большая часть клиентов - это взрослые тетёчки, эдакие "операторы ЭВМ", уж сильные сомнения у них вызывало то, что данные "сами обновятся" - они нервничали каждый раз, когда сидели и ждали обновления статуса. Пришлось прикручивать кнопку "Обновить", которая меняла курсор на "wait" (тот, что песочные часы) на секунду и больше ничего не делала. Все жалобы прекратились, в битве юзер против интерфейса юзер снова главный.
Вот так вот. Так что все эти ваши современные фишки, user-friendly интерфейсы и асинхронности беспомощны, когда за компьютер садится человек, привыкший жать на кнопку мыши сильнее, если что-то не загружается.