7-9 мая в Сиэтле прошла ключевая конференция Microsoft для разработчиков. Мы постарались собрать все ключевые анонсы в небольшую серию статей.
В этом выпуске:
Свое выступление Сатья Наделла начал с цитаты Mark Weiser из его работы 30-летней давности о будущем вычислительной техники. Mark Weiser, бывший тогда главным исследователем Xerox PARC, во многом оказался прав. Технологии стали обыденностью и все больше растворяются в нашей жизни и нашем пространстве, влияя на компании, общество и отдельных людей.
Мы должны делать все возможное, чтобы технологические блага достигали более широкие слои общества, а использующие их компании и люди могли им доверять. Говоря о доверии, наш фокус сегодня в трех направлениях:
Говоря про технологическую повестку Microsoft, Сатья Наделла сконцентрировался на трех направлениях:
Наконец, Сатья объявил о новой программе AI for Accessibility, предоставляющей гранты и поддержку исследовательским организациям, НКО, а также предпринимателям для помощи людям с ограничениями в полноценном участии в жизни общества и экономике.
В ходе конференции Microsoft анонсировала ряд комплектов для разработчиков, нацеленных на задачи „понимания“ окружающего мира — от сканирования пространства до анализа речи.
Помимо данных трех устройств, на конференции также показали комплект разработчика Groove Starter Kit for Azure IoT Edge от компании Seeed и умную IoT-кнопку от компании TeXXmo.
Общее описание.
Project Kinect for Azure — новый набор сенсеров, основанный на наработках в Kinect и Hololens, который также станет основной частью следующего поколения Hololens! Устройство влючает камеру глубины нового поколения (Time-of-Flight (ToF)), 4K RGB камеру и набор 360° микрофонов и нацелено на сценарии, требующие пространственного зрения, распознавания людей и объектов, движений рук.
Project Kinect for Azure объединяет в себе возможности самого устройства и AI-сервисов в Microsoft Azure. По ссылке ниже Алекс Кипман пишет, что использование данных с камеры глубины позволяет существенно сократить размер сеток для глубокого обучения по сравнению с обычными камерами. Вместе с этим, повышая общую энергоэффективность устройства.
Ссылки:
В рамках стратегического партнерства между Microsoft и Qualcomm Technologies, Inc мы работаем над созданием AI Developer Kit на базе чипсетов Qualcomm и Azure IoT Edge. Первым проектом в этом направлении стал Vision AI Developer Kit на базе чипсета Qualcomm QCS603 с аппаратным ускорением расчета AI-моделей, с 4K 8 MP камерой, встроенным аккумулятором, динамиками и набором микрофонов, интеграцией с Azure ML и IoT Edge.
Ссылки
Speech Devices SDK — новый комплект для разработчиков, который позволит обеспечить высокое качество обработки аудиоданных из источников многоканального сигнала для более точного распознавания речи с шумоподавлением, воспроизведением удаленного звука и другими функциями. Решение объединяет Microsoft Speech сервисы с комплектами для разработчиков от компании ROOBO.
Ссылки
Тема аппаратного ускорения вычислений, связанных с машинным обучением, волнует множество разработчиков, и облачные компании не являются тут исключением.
Несколько лет назад Microsoft Research рассказывал о Project Catapult — аппаратном решении на базе FPGA, используемом в задачах для поисковика Bing. Позже проект был переименован в Project Brainwave вместе с планами вывода решения в виде облачного сервиса.
В рамках конференции Build Сатья Наделла объявил, что теперь Project Brainwave выходит в превью, будучи интегрированным с сервисом Azure Machine Learning, используя оборудование Intel FPGA и нейронные сети на базе можели ResNet50. Близкие к реальному времени AI-вычисления становятся ближе!
Ссылки
В ходе конференции было много анонсов про инструменты для разработки и DevOps, ниже ключевые из них:
Общий обзор.
.NET Core 2.1 достиг стадии RC и теперь доступен с „Go-Live“ лицензацией для использования в продакшене. Основные улучшения:
Анонс.
VS 2017 — 15.7 — Основные измения:
VS 2017 — 15.8 Preview — Основные нововведения:
Ссылки
Новые фичи:
Ссылки
Если вы когда-либо работали с кем-то над совместным проектом, вы знаете, как бывает полезно вместе посмотреть на проблемный участок кода и попробовать разобраться, что происходит, или объяснить, что вы только что сделали.
Тонкость в том, что раньше, чтобы одновременно видеть одно и то же, вам приходилось либо садиться вместе, как это происходит при парном программировании, либо расшаривать друг другу экран, либо вовсе пытаться синхронизироваться удаленно, общаясь только голосом или комментариями.
VS Live Share — новая фича для VS Code и Visual Studio, позволяющая в реальном времени расшарить код с коллегой и вместе его редактировать и даже отлаживать.
Ссылки
Хотя последнее время мы слышим много разговоров на тему того, что в будущем ИИ сможет писать код самостоятельно, сегодня более реалистичный и прикладной сценарий — это код, написанный разработчиком при поддержке некоторого ИИ.
Собственно, вопрос вот в чем. Что, если некоторый умный агент будет следить за тем, какой код вы пишите сейчас, и знать, как вы писали раньше (возможно, даже в соседней папке), будет понимать контекст проекта и даже будет в курсе лучших практик (на базе самых популярных репозитариев GitHub)? И вот такой агент будет помогать вам писать лучший код.
Как именно, спросите вы? Ну, например, он будет выдавать подсказки завершения кода не только алфавитным списком свойств объекта/класса, но и ставить в начало наиболее популярные или контекстно релевантные варианты? Или он будет понимать стилистику кода в проекте и подсказывать, когда вы выбиваетесь из стилевых рекомендаций и даже автоматически их применять? Или, скажем, при анализе очередного pull request он сможет автоматически проводить анализ кода и подсказывать, на что обратить внимание?
Именно на такие задачи нацелено новое расширение для Visual Studio — VS IntelliCode.
Ссылки
Continuous Integration (CI) для мобильных разработчиков, использующих GitHub, стала проще благодаря приложению Visual Studio App Center в магазине последнего.
Продолжая развивать взаимодействие с сообществом open source разработчиков, Microsoft объявила о новом партнерстве с GitHub, добавляющем мощности Azure DevOps сервисов для пользователей GitHub.
Теперь разработчики приложений под iOS, Android, Xamarin и Reac Native с репозиториями на GitHub могут подключить к нему свой аккаунт в App Center, чтобы настроить автоматическую сборку проектов из исходников, проверку тестов (включая UI-тестирование). После этого App Center обновит статус Pull Request на GitHub, чтобы вы могли принять изменения в свой проект. С помощью App Center вы также можете настроить публикацию приложений в магазины приложений, таким образом, автоматизируя всю цепочку от изменений в коде до доставки приложения конечным пользователям.
Ссылки:
В следующем выпуске мы расскажем про Azure и ботов!
В этом выпуске:
- О чем думает Сатья?
- Perception-Powered Intelligent Edge Dev Kits
- Превью Project Brainwave
- Dev Tools & DevOps
О чем думает Сатья?
Свое выступление Сатья Наделла начал с цитаты Mark Weiser из его работы 30-летней давности о будущем вычислительной техники. Mark Weiser, бывший тогда главным исследователем Xerox PARC, во многом оказался прав. Технологии стали обыденностью и все больше растворяются в нашей жизни и нашем пространстве, влияя на компании, общество и отдельных людей.
«Сегодня каждый аспект нашей жизни меняет под воздействием цифровых технологий».С одной стороны, этого огромные возможности, которые находятся в руках у разработчиков, но с другой, вместе с возможностями приходит ответственность. «Слова Ханса Джонса, одного из пионеров биомедицинской этики, что нужно действовать так, чтобы последствия от действий были совместимы с продолжением подлинной человеческой жизни, актуальны и сегодня.
Мы должны делать все возможное, чтобы технологические блага достигали более широкие слои общества, а использующие их компании и люди могли им доверять. Говоря о доверии, наш фокус сегодня в трех направлениях:
- Приватность. Это основное право людей. Microsoft активно работает над удовлетворением требований требований GDPR и защитой прав своих клиентов в высшем суде (США).
- Кибербезопасность. Мы должны совместно с другими компаниями нести ответственность за безопасность мира. Примеры тому: новые кросс-индустриальная инициативы Cybersecurity Tech Accord и Digital Geneva Convention.
- Этичность в ИИ. Совершенствуя наши AI-алгоритмы, критически важно, чтобы мы предприняли необходмые шаги для обеспечения этичности алгоритмов. „Мы должны спрашивать себя не только, что компьютеры могут делать, но и что они должны делать?“
Говоря про технологическую повестку Microsoft, Сатья Наделла сконцентрировался на трех направлениях:
- Повсеместные вычисления. Облачные вычисления становятся все более глобальными, сервисы Azure доступны из 50 регионов, в прошлом году мы запустили Azure Stack, позволяющий выстроить гибридную историю. Мы также начали активно работать над переносом вычислительной и интеллектуальной начинки на конечные устройства через Azure IoT Edge и недавно объявленные решения Azure Sphere для создания защищенных микроконтроллеров. В рамках конференции мы объявили, что Azure IoT Runtime будет выложена в открытом коде, вместе с рядом партнером мы анонсировали комплекты для разработчиков для создания интеллектуальных устройств — от встраиваемых устройств до дронов.
- Искусственный интеллект. Огромный прогресс в отрасли. В 2016 мы наблюдали равенство с людьми в тестах по распознаванию объектов, в 2017 мы говорили о распознавании речи, и в 2018 о равенстве в машинном чтении и переводе. Но речь не о достижениях, а о трансляции их во фреймворки и инструменты, которые смогут использовать разработчики. В дополнение к комплектам для разработчиков для распознавания речи и изображений, включая Project Kinect for Azure, мы также обновляем наши когнитивные сервисы в облаке и постепенно делаем доступным для разработчиков новое поколение решений для аппаратного ускорения AI-вычислений в рамках Project Brainwave.
- Множественность устройств и сенсоров. Мы говорим о переходе от картины миры (разработчика), в которой в центре были устройства, к картине с человеком на переднем плане. Microsoft 365, объединяющая Windows и Office, нацелена на создание опыта, в котором множество людей, во множестве локаций могут взаимодействовать через множество сенсорных систем множества различных устройств. Пример такого опыта — Кортана, которая доступна на множестве платформ и поверхностей, а в рамках конференции мы объявили о партнерство с Amazon для взаимной интеграции Cortana и Alexa. В основе таких решений лежит раширяемый Microsoft Graph, позволяющий объединять мировые данные, данные организаций и отдельных людей. Конечно, с учетом требований приватности, накладываемых компаниями и личном каждым из нас.
Наконец, Сатья объявил о новой программе AI for Accessibility, предоставляющей гранты и поддержку исследовательским организациям, НКО, а также предпринимателям для помощи людям с ограничениями в полноценном участии в жизни общества и экономике.
Perception-Powered Intelligent Edge Dev Kits [1-3]
В ходе конференции Microsoft анонсировала ряд комплектов для разработчиков, нацеленных на задачи „понимания“ окружающего мира — от сканирования пространства до анализа речи.
- Project Kinect for Azure
- Vision AI Developer Kit
- Speech Devices development kit
Помимо данных трех устройств, на конференции также показали комплект разработчика Groove Starter Kit for Azure IoT Edge от компании Seeed и умную IoT-кнопку от компании TeXXmo.
Общее описание.
Project Kinect for Azure
Project Kinect for Azure — новый набор сенсеров, основанный на наработках в Kinect и Hololens, который также станет основной частью следующего поколения Hololens! Устройство влючает камеру глубины нового поколения (Time-of-Flight (ToF)), 4K RGB камеру и набор 360° микрофонов и нацелено на сценарии, требующие пространственного зрения, распознавания людей и объектов, движений рук.
Project Kinect for Azure объединяет в себе возможности самого устройства и AI-сервисов в Microsoft Azure. По ссылке ниже Алекс Кипман пишет, что использование данных с камеры глубины позволяет существенно сократить размер сеток для глубокого обучения по сравнению с обычными камерами. Вместе с этим, повышая общую энергоэффективность устройства.
Ссылки:
Vision AI Developer Kit
В рамках стратегического партнерства между Microsoft и Qualcomm Technologies, Inc мы работаем над созданием AI Developer Kit на базе чипсетов Qualcomm и Azure IoT Edge. Первым проектом в этом направлении стал Vision AI Developer Kit на базе чипсета Qualcomm QCS603 с аппаратным ускорением расчета AI-моделей, с 4K 8 MP камерой, встроенным аккумулятором, динамиками и набором микрофонов, интеграцией с Azure ML и IoT Edge.
Ссылки
Speech Devices SDK
Speech Devices SDK — новый комплект для разработчиков, который позволит обеспечить высокое качество обработки аудиоданных из источников многоканального сигнала для более точного распознавания речи с шумоподавлением, воспроизведением удаленного звука и другими функциями. Решение объединяет Microsoft Speech сервисы с комплектами для разработчиков от компании ROOBO.
Ссылки
Превью Project Brainwave [4]
Тема аппаратного ускорения вычислений, связанных с машинным обучением, волнует множество разработчиков, и облачные компании не являются тут исключением.
Несколько лет назад Microsoft Research рассказывал о Project Catapult — аппаратном решении на базе FPGA, используемом в задачах для поисковика Bing. Позже проект был переименован в Project Brainwave вместе с планами вывода решения в виде облачного сервиса.
В рамках конференции Build Сатья Наделла объявил, что теперь Project Brainwave выходит в превью, будучи интегрированным с сервисом Azure Machine Learning, используя оборудование Intel FPGA и нейронные сети на базе можели ResNet50. Близкие к реальному времени AI-вычисления становятся ближе!
Ссылки
Dev Tools & DevOps [5-10]
В ходе конференции было много анонсов про инструменты для разработки и DevOps, ниже ключевые из них:
- .NET Core 2.1 RC с „Go-Live“ лицензией
- Выпуск Visual Studio 2017 — 15.7 и 15.8 Preview
- Выпуск Visual Studio for Mac — 7.5+
- Visual Studio Live Share — cовместная работа с кодом
- Visual Studio IntelliCore — подсказки с искусственным интеллектом
- Mobile CI
- Azure DevOps + GitHub
Общий обзор.
.NET Core 2.1 RC
.NET Core 2.1 достиг стадии RC и теперь доступен с „Go-Live“ лицензацией для использования в продакшене. Основные улучшения:
- В целом — существенные улучшения производительности сборки и среды исполнения (например, версия ASP.NET Core 2.1 на 15% быстрее 2.0). Новые модели развертывания и расширения для .NET Core Global Tools.
- Поддержка Alpine Linux и Linux ARM32 дистрибутивов (например, Raspbian и Ubuntu).
- Поддержка Brotli-сжатия.
- Новые Cryptography API.
- ASP.NET Core SignalR. Теперь SignalR может работать кросс-платформенно и с улучшенной производительностью на базе .NET Core. Также анонсирована доступность SignalR как Azure-сервиса.
- ASP.NET Core: поддержка Razor UI в библиотеках классов, новые библиотека Identity UI и класс HttpClientFactory, а также улучшения в безопасности.
- Entity Framework Core 2.1: поддержка ленивой загрузки, инициализации данных, новые провайдеры данных и улучшенную поддержку CosmosDB.
Анонс.
Выпуск Visual Studio 2017 — 15.7 и 15.8 Preview
VS 2017 — 15.7 — Основные измения:
- Обновление установщика. В VS появилась опция проверки доступности обновления (Help -> Check for Updates), а в процессе установки вы можете более гибко указывать, куда какие компоненты устанавливать.
- Улучшения в производительности. В новой версии окна отладки теперь асинхронные, среда исполнения Xamarin загружается на устройства во время сборки (чтобы ускорить весь процесс), а для TypeScript фоновый анализ закрытых файлов можно сделать опциональным.
- Улучшения в редакторе. Новые возможности рефакторинга кода (например, переключение между циклами foreach и for для C# и VB и разворачивание LINQ-запросов в foreach-циклы), IntelliSense для условных блоков XAML, переход подсказок для Xamarin.Forms на движок подсказок для WPF и UWP, поддержка TypeScript 2.8 и ClangFormat для C++, а также, наконец-то, соответствие стандартам C++11, C++14 и C++17.
- Отладка и диагностика. Поддержка IntelliTrace событий и срезов (snapshot) для приложений на .NET Core, поддержка аутентифицированных запросов Source Link для VSTS и приватных репозиториев GitHub, возможность установки точек останова и отладки JS-кода проектов на ASP.NET и ASP.NET Core, используя Microsoft Edge.
- Мобильная разработка. Поддержка Android Oreo SDK, и улучшения разработки под платформы Apple, включая поддержку статичной системы типов и упрощение развертывания приложений на iOS-устройства.
- Веб- и облачная разработка. Разворачивание неконтейнеризированных приложений в Azure App Service на Linux и упрощенная интеграция с Azure Key Vault.
- UWP-разработка. Поддержка Windows 10 April 2018 Update SDK, поддержка для автоматического обновления для приложений, установленных вне Microsoft Store (sideloading), новый тип проекта „Optional Code Package“.
VS 2017 — 15.8 Preview — Основные нововведения:
- Подсказки C++ Quick Info для макросов теперь показывают, во что они раскрываются, а не просто определение.
- Поддержка Library Manager (LibMan) для управления клиентскими библиотеками в веб-проектах.
- Упрощенное добавление поддержки контейнеров для веб-проектов на ASP.NET Core.
Ссылки
Выпуск Visual Studio for Mac — 7.5+
Новые фичи:
- Веб-разработка. ASP.NET Core — полная поддержка Razor в редакторе, а также поддержка JavaScript и TypeScript.
- Мобильная разработка. Для iOS-разработчиков добавлена отладка по WiFi для iOS и tvOS. Для Android-разработчиков — обновлены менеджеры SDK и устройств. Для Xamarin-разработчиков улучшен опат редактирования XAML.
- Облачная разработка. Поддержка разработки Azure Functions на .NET Core.
- Поддержка .NET Core 2.1 RC и C# 7.2.
- Поддержка стилистических правил для проектов через файлы .editorconfig.
- Превью поддержки TF Version Control для TFS и VSTS.
Ссылки
Совместная работа с кодом
Если вы когда-либо работали с кем-то над совместным проектом, вы знаете, как бывает полезно вместе посмотреть на проблемный участок кода и попробовать разобраться, что происходит, или объяснить, что вы только что сделали.
Тонкость в том, что раньше, чтобы одновременно видеть одно и то же, вам приходилось либо садиться вместе, как это происходит при парном программировании, либо расшаривать друг другу экран, либо вовсе пытаться синхронизироваться удаленно, общаясь только голосом или комментариями.
VS Live Share — новая фича для VS Code и Visual Studio, позволяющая в реальном времени расшарить код с коллегой и вместе его редактировать и даже отлаживать.
Ссылки
Подсказки с искусственным интелелктом
Хотя последнее время мы слышим много разговоров на тему того, что в будущем ИИ сможет писать код самостоятельно, сегодня более реалистичный и прикладной сценарий — это код, написанный разработчиком при поддержке некоторого ИИ.
Собственно, вопрос вот в чем. Что, если некоторый умный агент будет следить за тем, какой код вы пишите сейчас, и знать, как вы писали раньше (возможно, даже в соседней папке), будет понимать контекст проекта и даже будет в курсе лучших практик (на базе самых популярных репозитариев GitHub)? И вот такой агент будет помогать вам писать лучший код.
Как именно, спросите вы? Ну, например, он будет выдавать подсказки завершения кода не только алфавитным списком свойств объекта/класса, но и ставить в начало наиболее популярные или контекстно релевантные варианты? Или он будет понимать стилистику кода в проекте и подсказывать, когда вы выбиваетесь из стилевых рекомендаций и даже автоматически их применять? Или, скажем, при анализе очередного pull request он сможет автоматически проводить анализ кода и подсказывать, на что обратить внимание?
Именно на такие задачи нацелено новое расширение для Visual Studio — VS IntelliCode.
Ссылки
Mobile CI
Continuous Integration (CI) для мобильных разработчиков, использующих GitHub, стала проще благодаря приложению Visual Studio App Center в магазине последнего.
Продолжая развивать взаимодействие с сообществом open source разработчиков, Microsoft объявила о новом партнерстве с GitHub, добавляющем мощности Azure DevOps сервисов для пользователей GitHub.
Теперь разработчики приложений под iOS, Android, Xamarin и Reac Native с репозиториями на GitHub могут подключить к нему свой аккаунт в App Center, чтобы настроить автоматическую сборку проектов из исходников, проверку тестов (включая UI-тестирование). После этого App Center обновит статус Pull Request на GitHub, чтобы вы могли принять изменения в свой проект. С помощью App Center вы также можете настроить публикацию приложений в магазины приложений, таким образом, автоматизируя всю цепочку от изменений в коде до доставки приложения конечным пользователям.
Ссылки:
В следующем выпуске мы расскажем про Azure и ботов!