Этот дайджест доступен в виде еженедельной рассылки. А ежедневно новости мы рассылаем в Telegram-канале.
iOS
Процесс загрузки iPhone. Часть 1: Boot ROM
Видео-стриминг на iOS по RTMP
Фантомные типы в Swift
Пошаговый урок: как начать делать что угодно для Touch Bar
Core Data + Repository pattern. Детали реализации
Построение графиков в SwiftUI
Apple подчеркивает усилия по борьбе с мошенничеством в App Store
В App Store работает более 500 модераторов и они проверяют более 100,000 приложений в неделю
Акторы в Swift: практический пример
Локализация строк и управление версиями в iOS с помощью Firebase
Замена селекторов замыканиями в UIButton
Создание собственного парсера Markdown с нуля на Swift
Поиск Spotlight для ваших приложений
Важность новых технологий в iOS-разработке
Как использовать Firebase в новом жизненном цикле приложения SwiftUI
BodyProgress: физические упражнения на SwiftUI
TOCropViewController: удобный кроп для изображений
Android
Как использовать облачную ферму устройств Huawei для тестирования и отладки в Android Studio
Как мы создали облачный сервис для управления и контроля за маршрутами обходов на предприятиях
Концепции Jetpack Compose, которые должен знать каждый разработчик
Jetpack Paging 3: пагинация на Android
Масштабирование архитектуры в Lyft с Денисом Неклюдовым
Обсуждаем Kotlin 1.5 и что будет в Kotlin 1.6
Вышла превью-версия Jetpack Compose для веба
Обзор Android Automotive OS
Адаптация вашего приложения под Android 11
Наш опыт миграции на корутины с RxJava
Bottom Navigation и Navigation Drawer с помощью Scaffold из Jetpack Compose
Руководство по архитектуре, рекомендованной Google для Android-приложений
Фоновый инспектор задач
Навигация: вложенные графы и тег включения
KMMT: шаблон приложения на Kotlin Multiplatform Mobile
ModernStorage: простая работа с данными
Разработка
Этический антидизайн. Разработка продуктов, которые не вызывают привыкания
Мобильные приложения перестали быть подходящей идеей для стартапов
Мобилка hh.ru теперь и в Беларуси: как жить, когда команду раскидало
Разработка первой игры на Construct 3
Углубленный анализ тестирования виджетов во Flutter. Часть II. Классы Finder и WidgetTester
Исследование движения глаз для улучшения здоровья и доступности
Podlodka #215: тест-менеджмент
Распродажа Azure Cloud Computing в Humble Bundle
Niantic расширяет доступ к своей платформе Niantic Lightship AR
Snapchat открывает Creator Marketplace
YoYo Games запустила игровое руководство по GameMaker Studio 2
Sendbird предлагает API для групповых голосовых и видео звонков
Дизайн приложений: примеры для вдохновения #42
Почему важно применять междисциплинарный подход в дизайне
Как лучше управлять бизнес-логикой в приложениях Flutter
Системный дизайн дейтинг-приложений
Дорогостоящие ошибки: почему нам пришлось отказаться от Firebase
10 трюков с Figma, о которых я хотел бы знать раньше
От нуля до MVP за 3 месяца с Flutter
Урок номер один, который я усвоил, управляя небольшой командой разработчиков
11 хитростей искусства гугления для разработчика
Как мы достигли скорости записи 1.4 миллиона строк в секунду
Аналитика, маркетинг и монетизация
7 подсказок, как создать и улучшить Battle Pass в вашей игре
Маркетплейс одежды Vinted получил 250 млн при оценке в 3.5 млрд
GasBuddy: бензин рядом
AppsFlyer: процент ATT-согласия в России достигает 42%
Flurry: согласие на отслеживание дали только 5% пользователей iOS
Сезонность проекта: не бойтесь летнего спада
Как мы достигли 1 миллиона загрузок с нулевым бюджетом
Kakao приобретает платформу микрочтения Radish
IronSource запускает аналитическую платформу LiveGames для гиперказуальных игр
AI, Устройства, IoT
Использование LoRa для интеграции кота в IoT
Монетизация машинного обучения: как превратить данные в деньги
Linux Foundation запускает AgStack Foundation для сельского хозяйства
Предыдущий дайджест. Если у вас есть другие интересные материалы или вы нашли ошибку пришлите, пожалуйста, в почту.