В новом дайджесте шутер на миллион и миллион шагов, масштабирование тестирования и миграция на Kotlin, коллапс волновой функции и здоровый сон, лендинги для приложений и уродливые интерфейсы.
История хороша тем, что в ней, кроме хеппи-энда, описаны и крупные промахи, благодаря которым приобретается бесценный опыт. А самое главное — ребята с радостью делятся всеми деталями и списком граблей, которые они собирали на этом длинном пути.
Этот дайджест доступен в виде еженедельной рассылки. А ежедневно новости мы рассылаем в Telegram-канале.
iOS
• (+2) Проверь себя в Swift: паззлер для любителей головоломок
• iPhone SE: мощный новый смартфон в классическом компактном дизайне
• Руководство по тестированию подписок на iOS
• Воспроизведение продвинутой анимации Lottie
• Простые способы создания анимации в Swift
• Анализируем код Swift с помощью SourceKitten
• Делаем API клиент на Swift с использованием Generics, Codable и Combine
• Создаем домино на SwiftUI
• 7 лучших ресурсов для изучения SwiftUI
• 15 полезных iOS книг и курсов, которые помогут вам стать лучше
• Как использовать Google Maps SDK в SwiftUI
• Лидар: взгляд в будущее с iPad Pro
• RoundCode: круглые QR-коды
• TagsList: облако тегов для iOS
Android
• (+17) Масштабирование андроид-тестирования в Одноклассниках
• (+12) Tcl/Tk. Альтернативный файловый проводник для платформ Linux и Android
• (+6) Как мы в андроид приложение inDriver добавили поддержку Harmony OS
• (+4) Использование key-value базы данных Snappy в Android
• (+3) Декларативное программирование клиент-серверных приложений на Android
• (+2) Компонент Slider из библиотеки материального дизайна
• Миграция Android-приложения Duolingo на 100% Kotlin
• В Google Play появились “одобренные учителями“ приложения и детский раздел
• Android Broadcast #12: Как пройти интервью в компанию мечты
• Библиотека Colonist: поиск классов во время компиляции Android-приложения
• Приключение в Compose – эффект огня Doom
• Работа с обновлениями в приложении в Android
• Android Jetpack Navigation с точки зрения iOS-разработчика
• Эволюция Адаптеров в Android
• Анимации в Jetpack Compose с использованием Transition
• Понимание процесса сборки Android: что такое Dalvik (JIT), ART (AOT), D8, R8?
• Корутины: обо всем по порядку
• AnimeXStream: просмотр Anime
• Blitz: относительное время для TextView
• kmpapp: Kotlin Multiplatform и MVVM
Разработка
• (+30) Разбираемся с алгоритмом коллапса волновой функции
• (+25) Как подготовить игру к портированию на ПК и консоли
• (+19) Дизайн — это проектирование, а не красота картинок
• (+15) Flutter. Асинхронность и параллельность
• (+10) DevOps инструменты не только для DevOps. Процесс построения инфраструктуры автоматизации тестирования с нуля
• (+7) Персонализированный интерфейс. Часть 2. Автоматическая настройка навигации
• (+6) ЕС предупреждает: под предлогом коронавируса нельзя нарушать приватность
• (+5) Unity Addressables: памяти хватит всегда
• (+3) UX-исследование ДБО: наш опыт, ошибки и открытия
• (+3) Когда останавливать процесс распознавания видеопоследовательности?
• (+2) Вышла альфа-версия игрового движка MANU
• (+2) В CodePen добавлена поддержка Flutter
• Podlodka #159: Здоровый сон
• Видео Saint AppsConf 2019
• Scratch вошел в Топ-20 популярных языков программирования
• Новый отчет Developer Economics
• Как мы снизили стоимость использования Google Maps API на 94%
• Основные командные функции GitHub стали бесплатными
• Почему я люблю уродливые и сложные интерфейсы (и вы, вероятно, тоже)
• Mail.ru Group запускает Games Cup 2020
• Apple и Google создают систему отслеживания контактов
• 1 млн шагов, или как разработать приложение для себя
• Реальная окупаемость инвестиций в UX: Кейсы редизайна в сфере B2B
• Оптимизация мобильных 3D-проектов
• Как справиться с увольнением, если вы разработчик
• Flutter и Zeplin: ускорение процесса разработки с помощью дизайна
• Мессенджер в реальном времени на Flutter
• Если вы хотите стать Senior-разработчиком, прекратите фокусироваться на синтаксисе
• Топ 10 виджетов для разработки Flutter-приложений
• Собираем React Native приложение с Expo
• Руководство по дизайну: верхняя панель
• Я перепроектировал печально известное приложение IOWA за 30 минут
• Четыре причины, почему все, кроме ученых, пишут неаккуратный код
Аналитика, маркетинг и монетизация
• (+1) Объективное тестирование показателей качества с помощью Customer Journey Map
• Роскомнадзор станет блокировать пиратов в App Store и Google Play
• LOVEMOBILE #05: Bidease
• 40% мобильных игроков использует ботов
• myTracker начал бета-тестирование API для прямой передачи событий между серверами
• make sense: о Value nurturing, подписочной модели и контенте в продукте
• «Гипнопедия» стала продуктом дня на Product Hunt
• Apple Search Ads может выйти за пределы App Store
• Количество показов мобильной рекламы выросло
• Pengea: работа для начинающих
• LPFMA: лендинги для мобильных приложений
• ESRB начало помечать игры с лутбоксами
• Доля iOS в США растет
• Опыт вместо денег: как (не) заработать на мобильном приложении в России
• Как приоритизация задач в беклоге спасла компанию от закрытия в период пандемии. Истории запуска трех продуктов от Виталия Мышляева
AI, Устройства, IoT
• (+39) Модифицирующий MQTT Proxy
• (+30) Как мы учились рекомендовать фильмы и почему не стоит полагаться только на оценки
• (+9) Собираем простейшую ZigBee-сеть, программируем под Mbed, общаемся через MQTT
• (+7) Что несёт новый nRF Connect SDK для Nordic? Эволюция, революция или альтернатива?
• (+4) Визуализация данных для беспилотного транспорта с открытым исходным кодом от Uber
• ICQ New запускает соревнование для разработчиков ботов
• TensorFlow Lite Model Maker ускоряет развертывание моделей ИИ
• Google выпустит собственный процессор
• Учим компьютер прыжку со стрейфом в Quake с reinforcement learning
• Лучшие AI-инструменты Google для всех
← Предыдущий дайджест. Если у вас есть другие интересные материалы или вы нашли ошибку — пришлите, пожалуйста, в почту.
История хороша тем, что в ней, кроме хеппи-энда, описаны и крупные промахи, благодаря которым приобретается бесценный опыт. А самое главное — ребята с радостью делятся всеми деталями и списком граблей, которые они собирали на этом длинном пути.
Этот дайджест доступен в виде еженедельной рассылки. А ежедневно новости мы рассылаем в Telegram-канале.
iOS
• (+2) Проверь себя в Swift: паззлер для любителей головоломок
• iPhone SE: мощный новый смартфон в классическом компактном дизайне
• Руководство по тестированию подписок на iOS
• Воспроизведение продвинутой анимации Lottie
• Простые способы создания анимации в Swift
• Анализируем код Swift с помощью SourceKitten
• Делаем API клиент на Swift с использованием Generics, Codable и Combine
• Создаем домино на SwiftUI
• 7 лучших ресурсов для изучения SwiftUI
• 15 полезных iOS книг и курсов, которые помогут вам стать лучше
• Как использовать Google Maps SDK в SwiftUI
• Лидар: взгляд в будущее с iPad Pro
• RoundCode: круглые QR-коды
• TagsList: облако тегов для iOS
Android
• (+17) Масштабирование андроид-тестирования в Одноклассниках
• (+12) Tcl/Tk. Альтернативный файловый проводник для платформ Linux и Android
• (+6) Как мы в андроид приложение inDriver добавили поддержку Harmony OS
• (+4) Использование key-value базы данных Snappy в Android
• (+3) Декларативное программирование клиент-серверных приложений на Android
• (+2) Компонент Slider из библиотеки материального дизайна
• Миграция Android-приложения Duolingo на 100% Kotlin
• В Google Play появились “одобренные учителями“ приложения и детский раздел
• Android Broadcast #12: Как пройти интервью в компанию мечты
• Библиотека Colonist: поиск классов во время компиляции Android-приложения
• Приключение в Compose – эффект огня Doom
• Работа с обновлениями в приложении в Android
• Android Jetpack Navigation с точки зрения iOS-разработчика
• Эволюция Адаптеров в Android
• Анимации в Jetpack Compose с использованием Transition
• Понимание процесса сборки Android: что такое Dalvik (JIT), ART (AOT), D8, R8?
• Корутины: обо всем по порядку
• AnimeXStream: просмотр Anime
• Blitz: относительное время для TextView
• kmpapp: Kotlin Multiplatform и MVVM
Разработка
• (+30) Разбираемся с алгоритмом коллапса волновой функции
• (+25) Как подготовить игру к портированию на ПК и консоли
• (+19) Дизайн — это проектирование, а не красота картинок
• (+15) Flutter. Асинхронность и параллельность
• (+10) DevOps инструменты не только для DevOps. Процесс построения инфраструктуры автоматизации тестирования с нуля
• (+7) Персонализированный интерфейс. Часть 2. Автоматическая настройка навигации
• (+6) ЕС предупреждает: под предлогом коронавируса нельзя нарушать приватность
• (+5) Unity Addressables: памяти хватит всегда
• (+3) UX-исследование ДБО: наш опыт, ошибки и открытия
• (+3) Когда останавливать процесс распознавания видеопоследовательности?
• (+2) Вышла альфа-версия игрового движка MANU
• (+2) В CodePen добавлена поддержка Flutter
• Podlodka #159: Здоровый сон
• Видео Saint AppsConf 2019
• Scratch вошел в Топ-20 популярных языков программирования
• Новый отчет Developer Economics
• Как мы снизили стоимость использования Google Maps API на 94%
• Основные командные функции GitHub стали бесплатными
• Почему я люблю уродливые и сложные интерфейсы (и вы, вероятно, тоже)
• Mail.ru Group запускает Games Cup 2020
• Apple и Google создают систему отслеживания контактов
• 1 млн шагов, или как разработать приложение для себя
• Реальная окупаемость инвестиций в UX: Кейсы редизайна в сфере B2B
• Оптимизация мобильных 3D-проектов
• Как справиться с увольнением, если вы разработчик
• Flutter и Zeplin: ускорение процесса разработки с помощью дизайна
• Мессенджер в реальном времени на Flutter
• Если вы хотите стать Senior-разработчиком, прекратите фокусироваться на синтаксисе
• Топ 10 виджетов для разработки Flutter-приложений
• Собираем React Native приложение с Expo
• Руководство по дизайну: верхняя панель
• Я перепроектировал печально известное приложение IOWA за 30 минут
• Четыре причины, почему все, кроме ученых, пишут неаккуратный код
Аналитика, маркетинг и монетизация
• (+1) Объективное тестирование показателей качества с помощью Customer Journey Map
• Роскомнадзор станет блокировать пиратов в App Store и Google Play
• LOVEMOBILE #05: Bidease
• 40% мобильных игроков использует ботов
• myTracker начал бета-тестирование API для прямой передачи событий между серверами
• make sense: о Value nurturing, подписочной модели и контенте в продукте
• «Гипнопедия» стала продуктом дня на Product Hunt
• Apple Search Ads может выйти за пределы App Store
• Количество показов мобильной рекламы выросло
• Pengea: работа для начинающих
• LPFMA: лендинги для мобильных приложений
• ESRB начало помечать игры с лутбоксами
• Доля iOS в США растет
• Опыт вместо денег: как (не) заработать на мобильном приложении в России
• Как приоритизация задач в беклоге спасла компанию от закрытия в период пандемии. Истории запуска трех продуктов от Виталия Мышляева
AI, Устройства, IoT
• (+39) Модифицирующий MQTT Proxy
• (+30) Как мы учились рекомендовать фильмы и почему не стоит полагаться только на оценки
• (+9) Собираем простейшую ZigBee-сеть, программируем под Mbed, общаемся через MQTT
• (+7) Что несёт новый nRF Connect SDK для Nordic? Эволюция, революция или альтернатива?
• (+4) Визуализация данных для беспилотного транспорта с открытым исходным кодом от Uber
• ICQ New запускает соревнование для разработчиков ботов
• TensorFlow Lite Model Maker ускоряет развертывание моделей ИИ
• Google выпустит собственный процессор
• Учим компьютер прыжку со стрейфом в Quake с reinforcement learning
• Лучшие AI-инструменты Google для всех
← Предыдущий дайджест. Если у вас есть другие интересные материалы или вы нашли ошибку — пришлите, пожалуйста, в почту.