В нашем новом выпуске рассказываем про то, как потратить миллион на создание собственного переводчика, про виртуальные митапы для Android-разработчиков, про влияние эпидемии на рынок приложений, про рекордные траты пользователей и многое другое!



Когда у меня в очередной раз закончились деньги, наступил кризис. Я не смог найти работу, ситуация стала критической. Пришло время посмотреть на все вещи трезвым взглядом. Нужно было честно признаться себе, что я не знаю, какие ниши выбрать для бизнеса. Создавать проекты, которые просто нравятся, — путь в никуда. Предлагаем вашему вниманию цикл статей, посвященных оптимизации рендера под мобильные устройства: телефоны и планшеты на базе iOS и Android. Цикл будет состоять из трех частей. В первой части мы рассмотрим особенности популярной на Mobile тайловой архитектуры GPU.

Этот дайджест доступен в виде еженедельной рассылки. А ежедневно новости мы рассылаем в Telegram-канале.

iOS

(+4) MVVM на основе Combine в UIKit и SwiftUI приложениях
(+4) Проблемы инструментария в больших проектах
(+3) Добавляем темную тему в iOS
Apple представила новый iPad Pro с лидаром
В App Store запретили и игры про коронавирус
Конференция Apple WWDC 2020 пройдёт в онлайн-формате
5 расширений Swift, которые сделают вашу жизнь проще
Как изменить иконку вашего приложения в SwiftUI
Что такое фреймворк vDSP в Swift?
Быстрое руководство по лучшей типографике для iOS
Как реализовать UITableView и UICollectionView с RxDataSources
Дебаг Apple L8 — основы реверс-инжинеринга
Swift-ери это сам — список задач с CloudKit
Генерация видео-субтитров на iOS-устройстве с помощью SwiftUI и ML Kit
CoronaTracker: трекер коронавируса
Simple iOS Login: экраны входа

Android

(+10) Раскладываем на части FragmentLifecycleCallbacks
(+6) Осваиваем разработку через тестирование в Android с помощью UI-тестов
(+4) 30+ лаконичных профессиональных рекомендаций для Android разработчика
(+3) Передаем Android логи через интернет с Timber и Node.JS
(+3) Работaем с View асинхронно с использованием корутин
Открываются Android Dev Virtual Meetup
Аудитория Android Go превысила 100 млн. человек
Google запрещает установку сторонних приложений (для пользователей Advanced Protection Program)
Время рассмотрения приложений в Google Play увеличено до недели
Обзор Material Design Components
51 ресурс для начинающих и профессиональных Android-разработчиков
Конференция I/O 2020 полностью отменена
Обновление запросов без изменения адаптера RecyclerView с использованием FirebaseUI
8 веских причин для модульности в Android
Интерфейс чата для Android с использованием RecyclerView и Groupie
Исследуем Server-Driven UI
Внедрение систем движения с материальными компонентами для Android
Как уменьшить размер вашего Android-приложения с помощью R8
Создание компонентной архитектуры в Android Jetpack Compose
Нативные зависимости в Android Studio 4.0
Диалоги для Android на Kotlin: туториал
Motion Toast: уведомления для Android на Kotlin
Material Components Android Examples: работаем с Material Components

Разработка

(+27) Машинное обучение в Unity: учим МО-агентов перепрыгивать через стены
(+26) Погружение в Charles Proxy
(+19) «Разрабатывая что-то заранее и полностью спроектированное, ты делаешь мертворожденную штуку» — разговор с The Breakfast
(+17) Чем больше, тем хуже или почему важен игровой цикл
(+11) Интервью с Вячеславом Уточкиным, директором образовательных программ по геймдеву ВШБИ НИУ ВШЭ: 20 вопросов о геймдеве
(+10) Война с тормозами. Оптимизация количества рендеров компонентов в React Native
(+6) Увлекательные сайд-проекты, которыми можно заняться уже сегодня
(+2) Размытие фонового изображения в Unity
(0) Геотрекинг в React Native
Podlodka #155: Бьёрн Страуструп
Android Broadcast #9: Как сделать крутую конференцию
Вышел Magicverse SDK от Magic Leap
Приложение GitHub вышло из беты
Предустановку приложений ускоряют
Темная тема или светлая: что лучше для пользователей?
Snap запустил веб-редактор масок Lens Web Builder
Ощущения дефицита в UX: как можно манипулировать пользователями
Как GitHub заблокировал меня (и все мои библиотеки)
ArangoDB: идеальная база данных для проектов с высоким уровнем неопределенности
Flutter vs Native vs React-Native: проверка производительности
Список из 100 классных и интересных публичных API для вашего следующего проекта
Использование ИИ для UX-дизайна мобильных приложений
Создание кросс-платформенного приложения с вкладками на Flutter
Естественное отображение на практике: новый регулятор громкости в iOS 13
Как «Принц Персии» победил ограничения памяти Apple II
Как сделать универсальное приложение
Я разработал, построил и запустил MVP-продукт за 5 дней
Как писать хорошую документацию к коду

Аналитика, маркетинг и монетизация

(+27) Как связать вовлечение с монетизацией в мобильных играх и приложениях
(+9) Правила локализации для разработчиков
(+8) Локализация инди-игр: стоит ли игра свеч?
(+6) Источник правды: как аналитик учит менеджера и разработчика работать вместе
Кейс от inDriver: как создать идеальное райд-шеринговое приложение для 31 страны с разными языками и культурой?
Tapjoy запустил Multi-Reward Engagements
В 2019 средний пользователь iPhone в США потратил на приложения $100
Proxy: бесконтактные двери
Влияние коронавируса на экономику приложений — исследование App Annie
Приложение Kitche, помогающее уменьшить пищевые отходы, получило инвестиции
Расходы на приобретение пользователей для игр в 2022 году достигнут $48.5 млрд
В Иране запустили приложение для диагностики коронавируса, но оно только следит за пользователями
MVP против прототипа против PoC: каков наилучший подход для измерения Product/Market Fit?

AI, Устройства, IoT

(+33) Как мы используем item2vec для рекомендаций похожих товаров
(+24) Как мы создавали галерею нейросетевого искусства и почему не даём копировать картины
(+12) На вкус и цвет: градации подходов к Умному дому
(+5) Работаем с датчиком CO? Xiaomi ClearGrass Air Detector локально, без китайских серверов
Google представил Pigweed — инструменты разработки для встроенных систем
Переводчик Google научили переводить речь в реальном времени
Google начал сертифицировать разработчиков TensorFlow
Самые полезные инструменты машинного обучения 2020
Обнаружение коронавируса на рентгеновских изображениях с Keras, TensorFlow и глубоким обучением

< Предыдущий дайджест. Если у вас есть другие интересные материалы или вы нашли ошибку — пришлите, пожалуйста, в почту.