Тренды технологий через призму конференций Build
Раз в год Microsoft проводит центральную и самую большую свою конференцию для разработчиков. Когда-то давно она называлась PDC (Professional Developers Conference), сегодня она называется просто Build. В этом году нас ждет уже восьмой Build, в преддверии которого мы решили оглянуться назад и посмотреть, как постепенно развиваются различные технологические тренды.
-
Облачные вычисления
Хотя платформу Microsoft Azure компания развивает уже более 10 лет и сейчас кажется, что это ключевая ставка для Microsoft, на конференции Build она долгое время играла вторичную роль, оставаясь в тени большого бренда Windows. Про Azure говорили на ключевом докладе второго дня, название платформы было гибридным (Windows Azure), а для аудитории, привыкшей воспринимать Microsoft с консьюмерской точки зрения, это был совершенно непонятный зверь.
Все поменялось на рубеже 2014–2015 годов, когда сначала от названия отрезали слово Windows, чтобы подчеркнуть, что облако Microsoft Azure любит все платформы, а потом на Build 2015 в первый же день поставили «облачную пластинку».
Тема облачных вычислений набирала обороты постепенно, балансируя между стремлением перенести все в огромные дата-центры и пониманием потребностей бизнеса «держать все максимально близко к себе». Microsoft постепенно наращивает функциональность в обоих направлениях.
Так, в 2011 году, представляя предварительную версию Windows Server 2012, компания описывала ее как свою первую операционную систему, оптимизированную под облачные сценарии. Тогда же Сатья Наделла (будучи руководителем направления серверных продуктов) рассказывает о видении компании реализовывать не только «чисто облачные», но и гибридные сценарии.
Работа ведется на перекрестных направлениях: с одной стороны, нужно убедиться, что частные и публичные облака могут бесшовно взаимодействовать друг с другом (например, пробрасывать идентификаторы пользователей, делать бекапы, перемещать контейнеры или масштабировать сервисы из приватного в публичное при резком увеличении нагрузки), а с другой, ставится неожиданный вопрос: можно ли сделать «большое» облако компактным?
На Build 2017 на этот вопрос дается утвердительный ответ. Microsoft представляет технологию Azure Stack, позволяющую развернуть облачную платформу локально в своем дата-центре.
Из архива Build: зарисовки 2011–2012
Еще один интересный аспект, который можно проследить по конференциям Build — это переосмысление содержания концепции облачных вычислений. Если на первых конференциях Microsoft в основном говорит о мобильных и веб-сценариях как целевых для облака (и отсюда происходят решения для размещения масштабируемого бекэнда — от веб-приложений до готовых виртуальных машин), то со временем становится понятно, что появляются и новые ниши, не свойственные (массово) локальным дата-центрам.
В 2011 году компания рассказывает о планах сделать управление проектами и кодом также целиком облачными (что потом оказывается абсолютно естественным для тех, кто разрабатывает облачные продукты). Так получается Visual Studio Team Services — облачное решение для управления командой, ведения процессов разработки по разным методологиям, интегрирующееся с автоматическими сборкой, тестированием и развертыванием приложений.
Параллельно начинает расти медианаправление, нацеленное на массовую обработку медиаконтента: от кодирования до стриминга с глобальной сетью покрытия и адаптивным вещанием. В 2014 году на базе Azure медиагиганты будут устраивать трансляцию Олимпийских игр в Сочи, а еще через два года медиасервисы начнут обрастать «интеллектом». В связке с когнитивными сервисами из облака компания начнет предлагать умную обработку видео с вычленением эмоций, транскриптов, ключевых лиц и т.п.
В том же 2011 году анонсируется возможность георепликации данных между физически разнесенными локациями. Глобальность становится важным свойством публичного облака. Спустя 6 лет, в 2017 г., компания анонсирует глобально-распределенную базу данных Cosmos DB, которая выведет Microsoft в лидеры облачного управления данными (согласно Gartner).
Из архива Build: Сатья Наделла в 2016
Парадигма облачных вычислений также постепенно переживает трансформацию. Когда умы разработчиков захватывает тема контейнеров, Microsoft решает, что самое верное решение — это партнёрство с лидером этого направления. На сцене Build 2015 представители Docker рассказывают, как запускать контейнеры в Azure (на Linux) и анонсируют работу над docker-контейнерами для Windows. Спустя два года, на Build 2017, Microsoft рассказывает о поддержке в облаке всех ведущих систем для оркестрирования контейнерами.
Параллельно среди разработчиков растет тема микросервисов как архитектурного подхода и Serverless, в частности. На Build 2016 компания анонсирует Azure Functions – платформу для бессерверных вычислений. Годом позже на конференции Ignite 2017 Сатья Наделла скажет, что Serverless как парадигма — это одна из ключевых ставок компании.
-
Естественные интерфейсы и мобильность UX
Центральной темой первой конференции Build в 2011 году стал анонс Windows 8 (предварительной версии для разработчиков) — существенно обновленной и переработанной версии Windows.
С точки зрения пользователя, ключевое изменение — полностью переработанный интерфейс, ориентированный на сенсорное управление. Microsoft раздает разработчикам прототипы планшетов и рассказывает, как создавать приложения под новую платформу WinRT.
Спустя год, компания показывает первый Surface, а акцент в интерфейсе смещается от тач-интерфейса в сторону «континуума» (это название появится еще через пару лет) пользовательского опыта. На Build 2012 значительный упор делается на гибкую комбинацию способов управления и взаимодействия, включая касания и жесты, мышь и клавиатуру, а также работу с пером. Стив Балмер показывает со сцены конференции весь спектр устройств под управлением Windows 8 или Windows Phone 8, под капотом которых скрывается уже общее ядро операционной системы.
На Build 2013 Microsoft впервые показывает своего голосового ассистента — Кортану, встроенную в Windows. Пользователи получают возможность взаимодействовать с Windows, приложениями и интернет-сервисами голосом.
Из архива Build: зарисовки 2013–2014
Пока в фокусе Windows-подразделения последовательное объединение и расширение собственной платформы (например, на Build 2014 будет объявлено о запуске Windows 8 для IoT, Интернета вещей), облачная команда понимает, что пользовательский опыт размывается между разными устройствами и платформами, и начинает наращивать поддержку iOS и Android с точки зрения единого мобильного бэкенда. На сцене Build 2014 под овации разработчиков появляется Мигель де Иказа (Miguel de Icaza) с рассказом о Xamarin (платформе для кросс-платформенной мобильной разработки).
Так в mobile-first, части стратегии Microsoft (с приходом Сатьи Наделлы на пост CEO компания объявила о новом видении cloud-first, mobile-first) начинает выкристаллизовываться два направления: развитие собственной вертикали вокруг Windows-платформы и постепенное расширение кросс-платформенной горизонтали.
«Пользователи больше не работают только с одним устройством».
В собственной вертикали платформа Windows-приложений (UWP, начиная с Windows 10) расширяется на консоли Xbox и шлемы HoloLens. Платформа Windows Holographic, представленная на Build 2015, существенно меняет понятия приложения и показывает радикально новые способы взаимодействия с цифровым миром. Microsoft делает огромную ставку на развитие смешанной реальности.
Из архива Build: презентации в 2016 году
На Build 2016 компания впервые в истории конференции большое внимание уделяет игровому направлению. Фил Спенсер анонсирует стремление Microsoft сделать игровой опыт переносимым внутри экосистемы Windows (включая Xbox), Windows для игр — снова очень важное направление.
Отдельные пользовательские сценарии взаимодействия также последовательно получают свои порции внимания. В 2016 году компания делает большой акцент на работу с пером как в Windows 10, так и в отдельных приложениях — от браузера Microsoft Edge до пакета Microsoft Office 365. Появляются линейки, Adobe адаптирует свои приложения под управление жестами и работу с пером под Windows 10.
Годом позже, на Build 2017, в фокусе внимания работа с 3D-контентом: от нового Paint 3D, приложения Windows Story Remix и поддержки трехмерных объектов в офисном пакете до специализированных контроллеров для платформы Windows Mixed Reality (заодно анонсируется линейка шлемов от OEM-партнеров Microsoft). Тогда же Джо Бельфиоре со сцены конференции объявляет о новой дизайн-системе Microsoft — Fluent Design, стремящейся объединить в адаптивную комбинацию разные системы взаимодействия — от плоских интерфейсов и игр до приложений в смешанной реальности, от ввода голосом до управления руками.
«Горизонтальное» кросс-платформенное направление не отстает. Во-первых, происходит полный пересмотр платформы .NET. На Build 2015 Microsoft объявляет о выпуске .NET Core (ядра платформы) сразу с открытым исходным кодом и кросс-платформенно. Для разработчиков это сильный сигнал: впервые компания так сильно инвестирует в открытый код и прямо говорит о любви к Linux. На следующий год Скотт Гатри на Build 2016 объявит о покупке Xamarin, кросс-платформенная мобильная разработка на .NET становится полностью открытой.
Из архива Build: в 2016 году было много отличных новостей
В 2015 году Microsoft анонсирует Office Graph – единый граф (API) для описания сущностей совместной работы: от документов и событий до рабочих взаимосвязей. Хотя пока это кажется чем-то связанным исключительно с Office 365, уже на следующий год он вырастет в Microsoft Graph — универсальный API для взаимодействия с объектами сценариев продуктивности и передачи состояния такого взаимодействия между устройствами. API теперь можно расширять своими данными, фактически интегрируя друг с другом различные графы данных.
В 2016 году на Build компания представляет Bot Framework – единую платформу для создания ботов, причем с явным акцентом именно на кросс-платформенность. Microsoft говорит, что не так важно, где человек взаимодействует с умным агентом (на сайте, в мобильном приложении, в мессенджере или через цифрового ассистента), как то, чтобы он мог это сделать везде, где ему это контекстно необходимо. Поэтому задача создания единого бэкенда для ботов оказалась более, чем актуальной. Параллельно компания расширяет собственные «поверхности» для ботов: Cortana, Skype и Teams (2016), умные колонки (2017).
Сам опыт разработки также становится кросс-платформенным. Поэтому, с одной стороны, Microsoft инвестирует в возможности разработки из-под Windows под любые платформы. А с другой, расширяет свои инструменты под другие платформы.
Так «бомбой» для разработчиков стал анонс на Build 2016 о встраивании в Windows подсистемы Linux. Microsoft взял твердый курс на то, чтобы сделать разработку под Linux (с акцентом на облачные сценарии) максимально комфортной для пользователей Windows. И уже в 2017 г. со сцены Build показывают, что из магазина Windows Store можно скачать образы популярных дистрибутивов Linux — Ubuntu, Fedora и Suse. Терри Майерсон, возглавляющий тогда Windows-направление, заявляет о намерении сделать Windows лучшей средой для разработки.
Помня о разнообразии «облачных» разработчиков, компания начинает путь по переносу своего опыта в создании инструментов разработки (Visual Studio) на другие платформы. На Build 2015 Скотт Гатри объявляет о запуске нового продукта — Visual Studio Code, кросс-платформенного редактора кода с полностью открытым кодом. VS Code быстро завоевала популярность благодаря расширяемости и сегодня является основной средой для многих веб-разработчиков.
Презентации на Build 2017
В 2017 году настала очередь «тяжелой артиллерии». На базе наработок Xamarin Microsoft выпускает первую версию Visual Studio для Mac. Компания говорит, что опыт разработки также должен быть мобилен, поэтому, если девелопер любит MacOs и хочет разрабатывать на Xamarin, с Microsoft Graph или под Azure, «мы должны сделать это максимально комфортным».
-
Искусственный интеллект и распределенная интеллектуальность
ИИ сегодня — это огромная хайповая тема, все понимают, что технологии машинного обучения должны поменять огромное число областей, а технологические гиганты соревнуются, чья AI-first стратегия круче.
На Build 2017, рассказывая о видении будущего, Сатья Наделла объявил обновленный курс компании: от стратегии cloud-first, mobile-first к стратегии intelligent edge, intelligent cloud. Интеллект и умные сервисы в облаке становятся новой точкой развития на всех уровнях: от инфраструктуры до готовых сервисов. А запрос на порой автономные интеллект и умные алгоритмы на конечных устройствах ставит новые вызовы для разработчиков.
И если 2017 год стал точкой большого стратегического анонса, то саму историю можно проследить намного дальше в прошлое. Уже на самом первом Build в 2011 году Microsoft анонсировала два важных направления, еще небольших, но которые потом вырастут в большие «продукты».
Первое, из недр исследовательских наработок Microsoft Research компания «упаковала» для разработчиков Translator API — облачный сервис для автоматического перевода. Тогда еще никто не знал, что он станет одним из центральных сервисов для семейства когнитивных сервисов (Microsoft Cognitive Services объявлены спустя 5 лет как набор готовых «умных» сервисов — от перевода до анализа изображений и речи), а также основой такого прорывного продукта, как Skype Translator, позволяющего практически в реальном времени реализовать перевод между собеседниками на разных языках (объявлено на Build в 2015 году). Кстати, в 2017 году Microsoft на базе API перевода показала на Build расширение для PowerPoint, позволяющее на лету создавать субтитры для зрителей на любом из большого числа доступных языков.
Сами когнитивные сервисы постепенно развиваются от стадии готовых блоков к настраиваемым решениям. Тот же сервис перевода теперь можно дообучить собственными словарями, на базе сервиса распознавания изображений можно сделать сервис, заточенный под собственный класс изображений, а распознавание речи можно настроить под специфическую лексику или условия «съема звука». Показанный в 2016 году кейс с анализом зашумленных заказов в MacАвто теперь становится массово доступным.
Второе, компания в том же 2011 году анонсирует расширение Azure Marketplace готовыми дата-сетами (наборами данных, которые разработчики и специалисты по работе с данными используют для обучения моделей). В целом становится понятно, что для реального бизнес-применения машинного обучения не хватает тех самых (размеченных) данных. Поэтому еще несколько лет основной акцент делается на накоплении и обработке данных, Microsoft делает акцент на адаптации в облаке индустриальных решений (с открытым кодом) — Hadoop, Apache Spark и других.
Параллельно набирает обороты тема глубокого машинного обучения, deep learning, на базе нейронных сетей — компания готовит аппаратную и софтверную инфраструктуры для прорыва в этом направлении.
На 2015 г. приходятся два важных анонса: 1) Azure Machine Learning (впоследствии Azure ML Studio) — визуальная online-среда для обучения моделей машинного обучения с готовыми блоками алгоритмов и возможностью комбинировать готовые и собственные источники данных, и 2) Power BI — приложение для аналитиков, позволяющее не только визуализировать данные в виде удобных дашбордов, но и подключить те самые предсказательные и аналитические модели. Машинное обучение становится ближе для «простых смертных», Microsoft заявляет о планах по «демократизации искусственного интеллекта» — желании снизить порог входа для разработчиков и конечных пользователей.
На Build 2016 Microsoft представляет Azure IoT — облачный сервис для массивной обработки данных, поступающих от удаленных устройств (Интернет вещей), и отправки на них управляющих сигналов. Весь комплекс сбора, хранения и анализа данных выстраивается в комплексное приложение Cortana Intelligence Suite. Но вместе с этим все громче звучит запрос на перенос умной логики непосредственно на конечные устройства.
Build 2017: Сатья Наделла рассказывает о стратегии intelligent edge
Поэтому вместе с объявленной стратегией intelligent edge на Build 2017 компания показывает предварительную версию нового продукта — Azure IoT Edge, позволяющего как раз перенести на конечные устройства обученные модели и готовые сервисы, фактически распределяя интеллект между периферией и облаком.
В 2017 году Сатья Наделла называет искусственных интеллект одной из четырех больших ставок компании (наряду со смешанной реальностью, квантовыми вычислениями и бессерверными вычислениями).
А вот в 2018 году…
До новых сессий и новых открытий остается все меньше времени. Не пропустите трансляцию 7 мая. Build — ключевое мероприятие для тех, кто хочет узнать о будущем Microsoft и технологий.