Что такое приоритизировать загрузку
iOS 10 принесла приоритизацию загрузки из магазина App Store
Владельцы смартфонов iPhone 6s и iPhone 6s Plus, являющиеся обладателями устройств с поддержкой технологии распознавания силы нажатий на экран 3D Touch, после установки бета-версии iOS 10 обнаружили интересную особенность, касающуюся работы магазина приложений App Store.
Пользователь Reddit с ником nite_ нажав на иконку загружающегося из App Store приложения с усилием (3D Touch) сумел активировать выпадающее меню, в котором был пункт Prioritize Download. Этот пункт переводится как «Приоритизация загрузки». После нажатия этой кнопки выбранной программе или игре будет выдан первичной приоритет важности, то есть данное приложение будет первым загружено на iPhone, тогда как все остальные начнут загружаться лишь после него.
Владельцам iPhone и iPad без технологии 3D Touch использовать приоритизацию загрузки из магазина App Store не представляется возможным. Не исключено, что к финальной версии iOS 10 и у них появится такая возможность без использования 3D Touch, но нужно признать, что верится в этой с трудом, так как благодаря данной особенности у покупателей появится еще одна довольно весомая причина для покупки именно флагманского поколения смартфона Apple.
В iOS 10 можно выставлять приоритеты загрузок приложений
Спустя несколько недель после релиза бета-версии iOS 10 пользователи стали обнаруживать все новые “скрытые” возможности, которые до этого ни коем образом не документировались компанией Apple. Одой из таких возможностей стала новая функция 3D Touch, которая позволяет выставлять приоритеты при загрузке приложений из App Store.
Если Вы являетесь пользователем iPhone 6s или iPhone 6s Plus, у Вас есть возможность самостоятельно протестировать это, а также многие другие нововведения iOS 10. Напоминаем, что обновление уже перешло в стадию публичного тестирования и доступно к установке для всех желающих. Перед непосредственной установкой следует создать резервную копию Вашего устройства, так как этот релиз ожидаемо является крайне нестабильным, а откатиться на iOS 9 можно только через восстановление iPhone.
Проблемы со скоростью загрузки, однако, могут быть связаны и с аппаратыми дефектами: Ремонт iPhone 7, как и работы с предыдущими моделями, часто связан с модемом, чипом Wi-Fi, LTE или другими элементами.
Установка приоритетов возможна только в случае одновременной загрузки двух или более приложений. В таком случае при сильном нажатии на скачиваемое приложение появится новый пункт “Приоритетная загрузка”, при выборе которого загрузка прочих приложения встанет на паузу до полной установки приоритетной программы. Это нововведение будет полезно в первую очередь при настройке нового iPhone или обновлении большого количества приложений, так как теперь Вы сможете быстро установить и начать использование именно того приложения, которое Вам необходимо на данный момент.
На устройствах под управлением iOS 9 или более ранней версии одновременная загрузка большого количества приложений требовала от пользователя ручной приостановки для каждого отдельного приложения. Трудно сказать, будет ли подобный функционал каким-либо образом реализован на устройствах без 3D Touch, однако это нововведение позволит избавиться от докучающего момента, когда одновременная установка большого количества приложений сильно замедляется из-за ограничения в скорости загрузки.
Аренда и подмена
Предлагаем услугу аренды Macbook и iMac. Предоставляем аппарат на подмену на время ремонта.
Лучшая приоритизация HTTP/2 для ускорения веба
HTTP/2 обещал заметно ускорить веб, и Cloudflare давным-давно развернула доступ по HTTP/2 для всех клиентов. Но одна особенность HTTP/2, приоритизация, не соответствовала ожиданиям. Не потому, что она принципиально сломана, а из-за реализации в браузерах.
Сегодня Cloudflare предлагает изменить приоритизацию HTTP/2, что даёт нашим серверам контроль над решениями о приоритизации, которые действительно заметно ускоряют интернет.
Исторически именно браузер контролирует, как и когда загружать веб-контент. Сегодня для всех платных планов мы вносим радикальные изменения в эту модель. Они передают контроль напрямую владельцу сайта. На вкладке «Скорость» в панели мониторинга Cloudflare клиенты могут включить «Расширенную приоритизацию HTTP/2»: она переопределяет настройки браузера по умолчанию на улучшенную схему планирования, что значительно ускоряет доступ для посетителей (в некоторых случаях мы видели ускорение на 50%). С воркерами Cloudflare владельцы сайтов могут пойти ещё дальше и полностью подобрать настройки под свои конкретные нужды.
Нынешняя ситуация
Веб-страницы состоят из десятков (иногда сотен) отдельных ресурсов, которые загружаются и собираются браузером в конечный отображаемый контент. Это включает в себя видимый контент, с которым взаимодействует пользователь (HTML, CSS, изображения), а также логику приложения (JavaScript) для самого сайта, рекламу, аналитику и маркетинговые следящие маячки. С точки зрения пользователя очень важна последовательность, в которой загружаются эти ресурсы: это влияет на время, когда он увидит содержимое и сможет взаимодействовать со страницей.
Браузер — это, по сути, движок обработки HTML, который проходит через HTML-документ и следует инструкциям по порядку: от начала до конца HTML, выстраивая страницу по мере продвижения. Ссылки на таблицы стилей (CSS) сообщают браузеру, как стилизовать содержимое страницы, и браузер задержит отображение контента до тех пор, пока не загрузит таблицу стилей. У скриптов на странице могут быть разные варианты поведения. Если скрипт помечен как «асинхронный» или «отложенный», браузер может продолжать обработку документа и просто запустить скрипт, когда он станет доступен. Если скрипт не помечен как асинхронный или отложенный, браузер ДОЛЖЕН прекратить обработку документа до тех пор, пока скрипт не загрузится и не выполнится. Такие скрипты называются «блокирующими», поскольку они блокируют браузеру возможность продолжать обработку документа.
Браузер обычно отвечает за порядок загрузки различных ресурсов, необходимых для построения страницы и дальнейшей обработки документа. В HTTP/1.x действуют ограничения, сколько объектов браузер может запросить с любого сервера за один раз (обычно 6 подключений и только один ресурс за раз на соединение), поэтому порядок запросов строго контролируется браузером. В HTTP/2 ситуация совершенно иная. Браузер может запросить сразу все ресурсы (по крайней мере, как только узнает о них), и предоставляет серверу подробные инструкции, как доставлять эти ресурсы.
Оптимальный порядок загрузки ресурсов
Для большинства частей в цикле загрузки страницы есть оптимальный порядок, который максимально ускоряет доступность страницы для пользователя (а разница между оптимальным и неоптимальным порядком загрузки может достигать 50% и более).
Время загрузки скриптов при параллельной или последовательной загрузке не отличается, но при последовательной загрузке первый скрипт можно обработать и выполнить во время загрузки второго.
После загрузки блокирующих ресурсов ситуация становится немного интереснее. Здесь оптимальная загрузка может зависеть от конкретного сайта или даже бизнес-приоритетов (выбор пользовательского контента или рекламы, или аналитики и т. д.). Отдельная проблема со шрифтами, поскольку браузер обнаруживает нужные шрифты после применения таблицы стилей к отображаемому контенту. Поэтому к моменту, когда браузер узнает о шрифте, необходимо отобразить текст, который уже готов к выводу на экран. Любые задержки в загрузке шрифта приводят к отсутствию текста на экране (или текст отображается неправильным шрифтом).
Как правило, необходимо учитывать некоторые компромиссы:
Пример
Для иллюстрации используем упрощённую страницу категории продукта с типичного сайта электронной коммерции:
Вот как будет выглядеть в браузере оптимальная загрузка ресурсов:
Текущая приоритизация в браузерах
Все текущие браузерные движки реализуют различные стратегии приоритизации, ни одна из которых не является оптимальной.
Microsoft Edge и Internet Explorer не поддерживают приоритизацию, поэтому работают с настройками HTTP/2 по умолчанию, который всё загружает параллельно, равномерно распределяя пропускную способность между всеми ресурсами. Microsoft Edge в будущих версиях переходит к использованию движка Chromium, что может улучшить ситуацию. Но пока в нашем примере браузер большую часть времени застрянет в заголовке страницы, так как изображения замедляют передачу блокирующих скриптов и таблиц стилей.
Визуально это приводит к довольно болезненному опыту: пользователь в течение 19 секунд смотрит на пустой экран, а затем происходит задержка на 1 секунду для отображения текста. При просмотре анимации внизу будьте терпеливы, потому что в течение 19 секунд может показаться, что на пустом экране ничего не происходит (хотя так и есть):
Safari загружает все ресурсы параллельно, разделяя пропускную способность на основе их важности, по мнению Safari (блокирующие ресурсы, такие как скрипты и таблицы стилей, важнее, чем изображения). Изображения загружаются параллельно, но также одновременно с блокирующим контентом.
Хотя Safari похож на Edge в том смысле, что всё загружается одновременно, но выделение большей полосы для блокирующих ресурсов позволяет отобразить контент намного раньше:
В нашем примере это происходит немного быстрее, чем в Safari, так как изображения ждут завершения загрузки таблиц стилей:
На практике это почти оптимальный сценарий загрузки, с той лишь разницей, что изображения загружаются по одному, а не параллельно:
Визуальное сравнение
Визуальная разница довольно сильно отличается, хотя технически загрузка всего контента занимает одинаковое время:
Приоритизация на стороне сервера
Приоритизация HTTP/2 запрашивается клиентом (браузером), и сервер должен решить, что делать на основе запроса. Большое количество серверов не вообще не поддерживают эту функцию, а остальные выполняют запрос клиента. Другой вариант — принять решение о наилучшей приоритизации на стороне сервера с учётом запроса клиента.
Согласно спецификации, приоритизация HTTP/2 — это дерево зависимостей, которое требует полного знания всех текущих запросов, чтобы иметь возможность приоритизировать ресурсы друг относительно друга. Это позволяет реализовать невероятно сложные стратегии, но такое трудно хорошо реализовать на стороне браузера или сервера (о чём свидетельствуют различные стратегии браузера и различные уровни поддержки сервера). Чтобы упростить управление приоритизацией, мы разработали более простую схему, которая по-прежнему обладает всей гибкостью, необходимой для оптимального планирования.
Схема приоритизации Cloudflare состоит из 64 приоритетных «уровней», а внутри каждого уровня есть группы ресурсов, которые определяют, как разделить между собой соединение:
Сначала скачиваются все ресурсы на более высоком уровне приоритета, затем происходит переход на более низкий уровень.
В пределах заданного уровня приоритета существует три различных группы параллелизма (concurrency):
Приоритизация по умолчанию в Cloudflare
При опции расширенной приоритизации реализуется «оптимальный» порядок загрузки ресурсов, описанный выше. Применяемые конкретные приоритеты выглядят следующим образом:
Эта схема позволяет последовательно отправлять ресурсы, блокирующие рендеринг, затем параллельно отправлять видимые изображения, а потом — остальную часть содержимого страницы с некоторым уровнем совместного использования полосы для балансировки загрузки приложения и содержимого. Предостережение * If Detectable заключается в том, что не все браузеры различают различные типы таблиц стилей и скриптов, но всё равно это будет значительно быстрее во всех случаях. Ускорение на 50%, особенно для посетителей Edge и Safari, не станет чем-то необычным:
Настройка приоритизации с воркерами
Более быстрая работа по умолчанию — это отлично, но всё становится действительно интересным благодаря возможности настройки приоритизации с поддержкой Cloudflare Workers, так что сайты могут переопределить приоритет по умолчанию для ресурсов или реализовать свои собственные схемы приоритизации.
С такой гибкостью сайт может настроить произвольный приоритет ресурсов для своих потребностей. Например, повысить приоритет некоторых важных асинхронных скриптов или главных изображений: они скачаются ещё до того, как браузер определил, что они находятся в зоне видимости.
Это только начало
Способность настраивать и контролировать приоритетность ответов является основным строительным блоком для большой будущей работы. Мы намерены внедрять собственные передовые оптимизации поверх этой, но с поддержкой воркеров все сайты и исследователи могут экспериментировать с различными стратегиями приоритизации. Через Apps Marketplace компании также могут создавать новые сервисы оптимизации поверх рабочей платформы и предоставлять их для использования другим сайтам.
Если вы находитесь на плане Pro или выше, перейдите на вкладку «Скорость» в панели мониторинга Cloudflare и включите «расширенную приоритизацию HTTP/2» для ускорения своего сайта.
Как ставить приоритет на скачивание и обновление приложений на iPhone
Когда скачиваешь сразу приложений на iPhone, может показаться, что на это уходит вечность. Возможно, вы купили себе новый смартфон, и вам нужно скачать все свои любимые приложения, а может у вас просто накопилось много обновлений в App Store.
Приложения загружаются в произвольном порядке. Но что делать, если приложение с почтой вам нужно сильнее, чем игра? К счастью, есть возможность устанавливать приоритет на конкретные приложения, и ниже мы расскажем, как это делается.
Как ставить приоритет на скачивание на iPhone
Когда приложение начнёт загружаться, вы увидите это на домашнем экране. Иконка станет серой, и на ней появится индикатор загрузки. Нажмите на иконку с помощью 3D Touch и на появившемся меню выберите Приоритизировать загрузку.
Вы также заметите вариант Приостановить загрузку. Если его выбрать, загрузка будет приостановлена. Это полезно для тех приложений, которые нужны вам меньше всего. Просто поставьте загрузку на паузу, чтобы другие приложения скачались раньше, а затем снова запустите загрузку.
Конечно же, есть вариант Отменить загрузку на случай, если вы вообще передумаете скачивать приложение.
Это не новая функция, но о ней мало кто знает. Надеемся, она станет вам полезной, когда вы будете скачивать или обновлять много приложений сразу.
12 методов приоритизации продуктовых целей: RICE, WSJF, KANO и прочие
Основная задача любого целеполагания — это выбор наиболее жизнеспособной дорожной карты. Жизнеспособность я определяю как способность развиваться, учитывая внешние обстоятельства: рынок, макроэкономику, и внутренние: политику, мотивацию и конфликты внутри организации. Имея бесконечное время или бесконечный ресурс мы можем реализовать любой набор инициатив. Более жесткие рамки требуют договориться о порядке, в котором будет идти движение и о том, как участники процесса будут реагировать на обратную связь.
Еще одна сложность при расстановке приоритетов, с которой сталкиваются менеджеры продукта — знать, сколько членов команды, заинтересованных лиц и клиентов нужно привлечь и в какой степени они должны участвовать в выборе функций, задач и обновлений для дальнейшей работы.
Методология приоритизации продукта дает возможность перейти от бесконечной словесной аргументации к количественным оценкам, диаграммам и матрицам, которые напрямую связаны с отзывами клиентов и продуктовой стратегией.
Ниже — 12 наиболее распространенных методов, о которых мы расскажем:
Эта система оценки измеряет каждую фичу или инициативу по четырем параметрам: охват (reach), влияние (impact), достоверность (сonfidence) и усилия (effort).
Что означает каждый из параметров и как его можно оценить количественно:
Сколько пользователей затронет эта фича за определенный период?
Пример: Пользователей в квартал, транзакций в месяц.
Какое влияние эта фича окажет на пользователя?
Пример: Насколько эта фича повлияет на коэффициент конверсии?
Насколько мы можем быть уверены в своей оценке параметров reach и impact? Как много данных у нас есть, чтобы подтвердить свою оценку?
Сколько времени потребуется инвестировать в эту инициативу (продукт, дизайн, разработка)? Параметр оценивается в человекомесяцах.
Эти факторы учитываются в одной общей формуле, которая помогает продуктовым командам унифицировать подход к определению того, какие инициативы необходимо добавить в дорожную карту продукта.
Полученную оценку можно использовать для ранжирования инициатив любого типа, чтобы определить, в каком порядке вы будете воплощать эти идеи.
Плюсы метода приоритизации RICE:
Минусы метода приоритизации RICE:
Если вы ищете метод быстрой приоритизации, модель ICE подойдет вам даже лучше, чем RICE.
Говоря словами Ануйя Адии, автора «Гроузхакинга для чайников»: воспринимайте ICE как MVP в мире приоритизации.
Это отличный старт, если вы только начинаете формировать привычку приоритизировать продуктовые инициативы, но при этом методу не хватает объективности.
Фреймворк ICE был популяризирован Шоном Элисом, которого принято считать создателем термина «гроузхакинг». Изначально ICE использовался для оценки и приоритизации экспериментов в сфере гроузхакинга, но затем стал популярен и в коммьюнити менеджеров продуктов.
ICE это акроним из следующих слов:
Каждый из этих факторов оценивается по шкале от 1 до 10, а среднее арифметическое из трех параметров дает общую оценку по методу ICE.
Вы можете использовать этот шаблон, чтобы рассчитать оценку по ICE:
Один из минусов модели состоит в том, что разные люди могут оценивать одну и ту же инициативу совершенно по-разному. Модель ICE дает систему относительной приоритизации, а не точных подсчетов, основанных на данных.
Чтобы минимизировать неоднородность оценок, убедитесь, что верно определяете каждый параметр в системе ICE. Договоритесь, что то именно означает Impact 5, Confidence 7, Ease 3 и т. д. внутри вашей команды.
Плюсы метода приоритизации ICE:
Минусы метода приоритизации ICE:
Чтобы применить этот простой метод приоритизации, нужно составить список функциональности и инициатив и оценить каждую с точки зрения ценности и усилий.
Важно помнить, что финальный показатель — это только субъективная оценка. Выдвинутые мнения и предположения (конечно, с опором на данные, насколько это возможно) должны помочь ответить на важнейший вопрос: «Поможет ли это достичь поставленных целей и метрик? Можем ли мы воплотить это своими силами?».
Такие способы оценки как value vs. effort помогают продуктовым командам легко и быстро определить приоритеты.
Этот способ расстановки приоритетов дает стейкхолдерам возможность продуктивной дискуссии о том, что, по их мнению, является ценностью и усилием, а это, в свою очередь, помогает менеджерам продукта выявить и заполнить пробелы в стратеги. Вот как выглядит сводная таблица ценности и усилий:
Плюсы метода приоритизации «Ценность против усилия»:
Минусы метода приоритизации «Ценность против усилия»:
Модель Кано представляет собой систему координат, где на горизонтальной оси отражены потребности клиента, которые могут быть разделены на три пункта:
Идея, которая лежит в основной модели Кано состоит в том, что чем больше времени, денег и усилий вы тратите на то чтобы создать, внедрить и улучшить функции из каждой категории, тем выше будет уровень удовлетворенности пользователей.
На горизонтальной оси слева размещаются потребности, которые вообще не удовлетворены, справа те, которые удовлетворены полностью.
Вертикальная ось отражает уровень удовлетворенности пользователя. Шкала функциональности показывает, насколько хорошо реализована фича, от «не реализована вообще» до «полностью реализована».
Как это выглядит в сборе:
Пример из ресторанного бизнеса:
Модель Кано полезна, если вам надо приоритизировать функции продукта, основываясь на пользовательском восприятии ценности. Восприятие — ключевое здесь слово. Если пользователь живет в пустыне, его не вдохновит дождевик. Если вы хотите использовать модель Кано, нужно хорошо знать своего клиента.
Для того, чтобы получить от клиентов информацию об их нуждах, нужно составить опросник Кано, заполняя который они должны будут ответить, что чувствуют по поводу каждой функции.