Microsoft выпустила несколько интересных инструментов для мобильных и ML разработчиков, Apple написала как определяет лица, Google как работает смешанная стабилизация в новых Pixel, а разработчики Shadow Fight 3 о том, как они делали новую версию игры. Все это и многое-многое другое в нашей еженедельной подборке.
![](https://habrastorage.org/webt/bf/sg/rj/bfsgrjgvcggj_g83xdsejyihquw.png)
В рамках этой статьи мы расскажем, с помощью каких приемов мы смогли уложиться в это ограничение на проекте Gardenscapes для платформы iOS. Статья касается в основном мобильных игр, но методы сжатия универсальны и могут пригодиться для любых проектов с тяжелой графикой.
В Нью-Йорке в эти дни проходит ежегодная конференция Microsoft Connect 2017. На ней уже анонсировали множество обновлений существующих продуктов и большое количество новых инструментов.
Дайджест доступен и в виде рассылки. Подписаться вы можете тут.
iOS
• (+34) Как получить D-U-N-S number бесплатно
• (+3) Swift не нужен?
• (+3) Приглашаем на iOS-meetup SuperJob
• Обновленный курс «Разработка iOS 11 приложений на Swift»
• Исследователям удалось взломать Face ID
•
Умный способ управлять цветовыми схемами в iOS-приложении
•
Спонтанно решение судоку на Swift
•
Что вы можете делать с ARKit и какие приложения его используют
•
Нейронная сеть для определения лиц, работающая на устройстве
•
Обзор гетерогенных ядер A11
•
SkeletonView: показ временного экрана во время длительных операций
Android
• (+20) Kotlin Night Moscow в Avito 25 ноября
• (+9) Не используйте лямбды в качестве слушателей в Kotlin
• Google запрещает использовать Accessibility API неподобающим образом
• Google удалил UC Browser из магазина приложений для Android
• Измерение производительности работы приложения
• MOSDROID #4: 2 декабря в Яндексе
• Пишем свой кредитный калькулятор
•
Android Dev Подкаст. Выпуск 48. 20 минут о Mobius 2017
•
Как работает смешанная стабилизация видео в Pixel 2 и Pixel 2 XL
•
Миллиард Android-устройств устарел
•
Kotlin Edu: Изучайте и учите Kotlin
•
Реактивное программирование для Android
•
Ферма устройств в Mercari
•
Система плагинов на Dagger
•
Android Color Management: что надо знать разработчикам и дизайнерам
•
Test Driven разработка для Android с MVVM
•
Создаем NFC-ридер для Android
•
Android Protobuf на Kotlin с примером
•
У меня было 10 интервью за последние два года и вот их вопросы
•
Как подготовить Android-приложение к Автозаполнению
•
Почему Flutter не использует OEM-виджеты
•
Android Architecture Components вредны
•
Видео Mobilization 2017
•
MVC vs MVP vs MVVM vs MVI
•
Лучшие приложения с векторыми ассетами
•
Architecture Components: LiveData и Lifecycle
•
Видео KotlinConf 2017
Разработка
• (+23) От Kotlin до плётки: как прошёл Mobius 2017 Moscow
• (+19) Технопарк, Техносфера, Технотрек: проекты выпускников
• (+17) О PVS-Studio в преддверии открытой конференции ИСП РАН им. В.П. Иванникова
• (+15) Игра в разработке: Chronicles of cyberpunk — часть 2
• (+14) UniRx — Rx для Unity3d
• (+11) Как создавать графику для VR — рекомендации Google
• (+3) Интеграция физических тел полученных в редакторе Physics Body Editor в cocos2d-x-сцену
• (+2) Как запустить и продвигать своё приложение на базе SAP Cloud Platform с помощью «Сколково» и SAP
• Применение инженерного подхода к собеседованиям
• Почему не надо патентовать идею мобильного приложения
• Игра мечты: история создания Shadow Fight 3
• Яндекс запустил систему управления процессами в компании: Трекер
• Visual Studio App Center: сборка, тестирование, распространение и отслеживание приложений
• У GameMaker Studio 2 появилась лицензия за $39
• Google выпустил developer preview версию TensorFlow Lite
• Podlodka #33: Должность – тимлид
• Как правильно отвечать на запросы пользователей
• Психология пользователей для лучшего онбординга
• Лекционный день по игровой индустрии: 9 декабря в НИУ ВШЭ
•
Квантовая эра: как Firefox снова стал быстрым и как будет улучшаться
•
Тренды мобильной разработки 2018
•
Ошибка в UI, которая чуть не потопила боевой корабль
•
Ваша первая инди игра провалилась? Вот что надо делать дальше
•
Дополненная реальность с Python и OpenCV
•
Сделать раз и запускать везде: как мы создали универсальный шаблон на React Native
•
Взлеты и падения функционального дизайна
•
Разработка для Game Boy: список материалов
Аналитика, маркетинг и монетизация
• (+15) Формула роста мобильных продуктов
• Tapjoy исследовал поведение игроков в новогодние праздники
• Чему мы можем научиться у growth-маркетинга Tinder
• myTarget запустил поддержку CPI в ВК и Одноклассниках
• TheTool: вся App Store Optimization в “одном флаконе”
• Лучшие мобильные игры 2017 года на премии The Game Awards
• App Annie: исследование монетизации и самых прибыльных приложений в России
• Мобильный маркетинг: расхождения в статистике установок
• 71% мобильных продаж обеспечивают приложения и оптимизированные сайты
• Будущее онлайн-знакомств несексуально и зверски эффективно
•
Почему первые 10 минут критически важны для возврата пользователей
Устройства, IoT, AI
(+60) Раскрашиваем чёрно-белую фотографию с помощью нейросети из 100 строк кода
(+57) Pediatric Bone Age Challenge. Deep Learning и много, много костей
(+40) Russian AI Cup 2017 — отчет о бета-тесте, старт чемпионата. Хотели StarCraft, получили странный Total War
(+25) Компьютерное зрение, разработка облака и конкурс
(+19) Классификация на гуманитариев и технарей по комментариям в VK
(+19) Введение в нейросети
(+13) Обнаружение птиц с помощью Azure ML Workbench
(+10) Swift и TensorFlow
(+4) Как мы музицировали с нейронными сетями
Программное обеспечение 2.0
Global Mobile Vision 2017: корейский ответ Industry 4.0
Sketchcase: Whiteboard наклейка для ноутбука
Своя система распознавания текста с Keras и Supervisely за 15 минут
HTC Vive Focus: “автономный” VR шлем
AI позволил разместить ультразвук в смартфоне
< Предыдущий дайджест. Если у вас есть другие интересные материалы или вы нашли ошибку — пришлите, пожалуйста, на почту.
![](https://habrastorage.org/webt/bf/sg/rj/bfsgrjgvcggj_g83xdsejyihquw.png)
![]() |
Сжимаем несжимаемое – как уменьшить дистрибутив мобильного приложения |
![]() |
Ключевые анонсы Connect(); 2017 |
Дайджест доступен и в виде рассылки. Подписаться вы можете тут.
![](https://habrastorage.org/getpro/habr/post_images/f19/30a/c49/f1930ac4945596eb9707bc7a01bc5bdc.png)
• (+34) Как получить D-U-N-S number бесплатно
• (+3) Swift не нужен?
• (+3) Приглашаем на iOS-meetup SuperJob
• Обновленный курс «Разработка iOS 11 приложений на Swift»
• Исследователям удалось взломать Face ID
•
![image](https://habrastorage.org/files/377/ae0/333/377ae0333d0f4b7b97307c9eea5ee21a.gif)
•
![image](https://habrastorage.org/files/377/ae0/333/377ae0333d0f4b7b97307c9eea5ee21a.gif)
•
![image](https://habrastorage.org/files/377/ae0/333/377ae0333d0f4b7b97307c9eea5ee21a.gif)
•
![image](https://habrastorage.org/files/377/ae0/333/377ae0333d0f4b7b97307c9eea5ee21a.gif)
•
![image](https://habrastorage.org/files/377/ae0/333/377ae0333d0f4b7b97307c9eea5ee21a.gif)
•
![image](https://habrastorage.org/files/967/16b/cb9/96716bcb926741e79bb1c284a88083ca.png)
![](https://habrastorage.org/getpro/habr/post_images/e1a/3cf/2a8/e1a3cf2a8b65a0da69bbdd5c0ad040fe.png)
• (+20) Kotlin Night Moscow в Avito 25 ноября
• (+9) Не используйте лямбды в качестве слушателей в Kotlin
• Google запрещает использовать Accessibility API неподобающим образом
• Google удалил UC Browser из магазина приложений для Android
• Измерение производительности работы приложения
• MOSDROID #4: 2 декабря в Яндексе
• Пишем свой кредитный калькулятор
•
![image](https://habrastorage.org/getpro/habr/post_images/686/1c1/045/6861c1045bee84154ebf29f5cc1fb355.png)
•
![image](https://habrastorage.org/files/377/ae0/333/377ae0333d0f4b7b97307c9eea5ee21a.gif)
•
![image](https://habrastorage.org/files/377/ae0/333/377ae0333d0f4b7b97307c9eea5ee21a.gif)
•
![image](https://habrastorage.org/files/377/ae0/333/377ae0333d0f4b7b97307c9eea5ee21a.gif)
•
![image](https://habrastorage.org/files/377/ae0/333/377ae0333d0f4b7b97307c9eea5ee21a.gif)
•
![image](https://habrastorage.org/files/377/ae0/333/377ae0333d0f4b7b97307c9eea5ee21a.gif)
•
![image](https://habrastorage.org/files/377/ae0/333/377ae0333d0f4b7b97307c9eea5ee21a.gif)
•
![image](https://habrastorage.org/files/377/ae0/333/377ae0333d0f4b7b97307c9eea5ee21a.gif)
•
![image](https://habrastorage.org/files/377/ae0/333/377ae0333d0f4b7b97307c9eea5ee21a.gif)
•
![image](https://habrastorage.org/files/377/ae0/333/377ae0333d0f4b7b97307c9eea5ee21a.gif)
•
![image](https://habrastorage.org/files/377/ae0/333/377ae0333d0f4b7b97307c9eea5ee21a.gif)
•
![image](https://habrastorage.org/files/377/ae0/333/377ae0333d0f4b7b97307c9eea5ee21a.gif)
•
![image](https://habrastorage.org/files/377/ae0/333/377ae0333d0f4b7b97307c9eea5ee21a.gif)
•
![image](https://habrastorage.org/files/377/ae0/333/377ae0333d0f4b7b97307c9eea5ee21a.gif)
•
![image](https://habrastorage.org/files/377/ae0/333/377ae0333d0f4b7b97307c9eea5ee21a.gif)
•
![image](https://habrastorage.org/getpro/habr/post_images/976/d3e/38a/976d3e38a34b003f86f91795524af9f8.gif)
•
![image](https://habrastorage.org/getpro/habr/post_images/976/d3e/38a/976d3e38a34b003f86f91795524af9f8.gif)
•
![image](https://habrastorage.org/getpro/habr/post_images/976/d3e/38a/976d3e38a34b003f86f91795524af9f8.gif)
•
![image](https://habrastorage.org/getpro/habr/post_images/976/d3e/38a/976d3e38a34b003f86f91795524af9f8.gif)
•
![image](https://habrastorage.org/getpro/habr/post_images/976/d3e/38a/976d3e38a34b003f86f91795524af9f8.gif)
![](https://habrastorage.org/getpro/habr/post_images/708/1c6/34e/7081c634ec176ab6b953d9d19e82a09a.png)
• (+23) От Kotlin до плётки: как прошёл Mobius 2017 Moscow
• (+19) Технопарк, Техносфера, Технотрек: проекты выпускников
• (+17) О PVS-Studio в преддверии открытой конференции ИСП РАН им. В.П. Иванникова
• (+15) Игра в разработке: Chronicles of cyberpunk — часть 2
• (+14) UniRx — Rx для Unity3d
• (+11) Как создавать графику для VR — рекомендации Google
• (+3) Интеграция физических тел полученных в редакторе Physics Body Editor в cocos2d-x-сцену
• (+2) Как запустить и продвигать своё приложение на базе SAP Cloud Platform с помощью «Сколково» и SAP
• Применение инженерного подхода к собеседованиям
• Почему не надо патентовать идею мобильного приложения
• Игра мечты: история создания Shadow Fight 3
• Яндекс запустил систему управления процессами в компании: Трекер
• Visual Studio App Center: сборка, тестирование, распространение и отслеживание приложений
• У GameMaker Studio 2 появилась лицензия за $39
• Google выпустил developer preview версию TensorFlow Lite
• Podlodka #33: Должность – тимлид
• Как правильно отвечать на запросы пользователей
• Психология пользователей для лучшего онбординга
• Лекционный день по игровой индустрии: 9 декабря в НИУ ВШЭ
•
![image](https://habrastorage.org/files/377/ae0/333/377ae0333d0f4b7b97307c9eea5ee21a.gif)
•
![image](https://habrastorage.org/files/377/ae0/333/377ae0333d0f4b7b97307c9eea5ee21a.gif)
•
![image](https://habrastorage.org/files/377/ae0/333/377ae0333d0f4b7b97307c9eea5ee21a.gif)
•
![image](https://habrastorage.org/files/377/ae0/333/377ae0333d0f4b7b97307c9eea5ee21a.gif)
•
![image](https://habrastorage.org/files/377/ae0/333/377ae0333d0f4b7b97307c9eea5ee21a.gif)
•
![image](https://habrastorage.org/files/377/ae0/333/377ae0333d0f4b7b97307c9eea5ee21a.gif)
•
![image](https://habrastorage.org/files/377/ae0/333/377ae0333d0f4b7b97307c9eea5ee21a.gif)
•
![image](https://habrastorage.org/files/967/16b/cb9/96716bcb926741e79bb1c284a88083ca.png)
![](https://habrastorage.org/getpro/habr/post_images/509/dc9/bde/509dc9bde69347ecbe0c21ff2973d7e7.jpg)
• (+15) Формула роста мобильных продуктов
• Tapjoy исследовал поведение игроков в новогодние праздники
• Чему мы можем научиться у growth-маркетинга Tinder
• myTarget запустил поддержку CPI в ВК и Одноклассниках
• TheTool: вся App Store Optimization в “одном флаконе”
• Лучшие мобильные игры 2017 года на премии The Game Awards
• App Annie: исследование монетизации и самых прибыльных приложений в России
• Мобильный маркетинг: расхождения в статистике установок
• 71% мобильных продаж обеспечивают приложения и оптимизированные сайты
• Будущее онлайн-знакомств несексуально и зверски эффективно
•
![image](https://habrastorage.org/files/377/ae0/333/377ae0333d0f4b7b97307c9eea5ee21a.gif)
![](https://habrastorage.org/getpro/habr/post_images/853/812/9f5/8538129f5e7b404a720121cb9c3814db.jpg)
(+60) Раскрашиваем чёрно-белую фотографию с помощью нейросети из 100 строк кода
(+57) Pediatric Bone Age Challenge. Deep Learning и много, много костей
(+40) Russian AI Cup 2017 — отчет о бета-тесте, старт чемпионата. Хотели StarCraft, получили странный Total War
(+25) Компьютерное зрение, разработка облака и конкурс
(+19) Классификация на гуманитариев и технарей по комментариям в VK
(+19) Введение в нейросети
(+13) Обнаружение птиц с помощью Azure ML Workbench
(+10) Swift и TensorFlow
(+4) Как мы музицировали с нейронными сетями
Программное обеспечение 2.0
Global Mobile Vision 2017: корейский ответ Industry 4.0
Sketchcase: Whiteboard наклейка для ноутбука
Своя система распознавания текста с Keras и Supervisely за 15 минут
HTC Vive Focus: “автономный” VR шлем
![image](https://habrastorage.org/files/377/ae0/333/377ae0333d0f4b7b97307c9eea5ee21a.gif)
< Предыдущий дайджест. Если у вас есть другие интересные материалы или вы нашли ошибку — пришлите, пожалуйста, на почту.