В новом дайджесте боремся с потерями пушей, разбираемся с музыкой Apple, изучаем работу звука в Android, экономим деньги при разработке игры, ищем приложение Росстата, отличаем плохой дизайн от хорошего и даже пытаемся понять, безопасен ли будет шарф от Xiaomi.
Руководитель iOS-группы Яндекс.Почты Ася Свириденко докажет, что даже с учетом ограничений системы, с потерями push-уведомлений можно и нужно бороться, если они критичны для вашего приложения.
Этот дайджест доступен в виде еженедельной рассылки. А ежедневно новости мы рассылаем в Telegram-канале.
iOS
• (+22) Не всплывай! Прерываемые транзишены в iOS
• (+17) Apple Music для разработчика
• (+15) Оборачиваем последовательности в Swift
• (+7) Кто кушает память нашего iPhone? Чистим яблоки
• Google раскрыл «одну из самых масштабных атак на iPhone»
• Инди-хит Dead Cells вышел на iOS
• Видео Swift TO
• Анимированные градиенты на Swift
• 5 новых интересных iOS-библиотек
• Пример масштабируемого iOS-проекта
• Swift — 7 мощных анимация для улучшения интерфейса вашего приложения
• Введение в Swift Combine
• Как создать парсер JSON на Swift с помощью дженериков
• Комплексное руководство по контекстным меню в iOS
• Чистая архитектура и MVVM на iOS
• 15 быстрых способов уулчшить Swift-код
• Github Actions CI для Swift-проектов
• Делаем кастомные анимации переходов для iOS
• Как программно добавить View тени и закругления на Swift
Android
• (+4) Сборка Android-проекта в Docker-контейнере
• Android Dev Podcast #101: Работа звука и со звуком в Android
• Android Dev Podcast #102: Новости
• Google выплачивает деньги за поиск уязвимостей в сторонних приложениях для Android
• Видео Droidcon Berlin
• Злоупотребление WebViews для кражи файлов по электронной почте
• Бета-релиз книги “Эффективный Kotlin”
• Изучаем ConstraintLayout — готовые шаблоны
• Практическое использование PorterDuff на Android
• Модульность Android-проекта
• Разметка Activity и Fragment с помощью AndroidX
• Эмоциональный интеллект: создавайте умные анимации
• Создание приложения для удаленной камеры на Android
• Google только что удалил мое 10-летнее бесплатное open source приложение для Android
• Android Showcase: лучшие практики Android-разработки
Разработка
• (+31) Я самый большой скупердяй в инди-разработке игр
• (+16) Ограничения 16-битных игр и их воссоздание в Unity
• (+16) Cоздание визуальных компонентов в Unity UI. Система частиц
• (+11) Пиксельный Lo-fi в Unity
• (+2) Статическая типизация в React приложении
• (+1) Мобильные отчеты на Oracle BI EE 12c — на раз, два, три
• Видео DevGAMM Moscow 2019
• AppsCast #13: Accessibility
• Podlodka #126: Осознанность
• Счетная палата не нашла приложения Росстата
• Что общего между строительством оперного театра и разработкой?
• Coursera запускает практическую Coursera Labs
• Treefort: обсуждение roadmap-а с пользователями
• Научим плохому: 6 худших советов по созданию продуктов для Chief Digital Officer
• 6 шагов: Как отличить хороший дизайн от плохого
• Четкий фокус с доходом в $50 млн
• Узнать, что продукт стал слишком сложным, и упростить его
• Принципы и лучшие практики онбординга пользователей
• Сколько стоит приложение
• Спроектировать разные состояния интерфейса и не запутать пользователя
• В каких случаях необходимы кнопки с индикатором загрузки
• Выбор первого языка программирования для детей и начинающих
• Концепции UI для книжного приложения
• Переосмысливаем календарь
• Как разработчику справляться со стрессом: практические советы
• Оценка безопасности строительной площадки на iOS с помощью машинного обучения
• Почему я перевел разработку Social Radio на Flutter
Аналитика, маркетинг и монетизация
• (+16) “Есть все, что нужно, и ничего не бесит” — устами клиента глаголет истина
• (+10) Как изменить стоимость созданной подписки в вашем приложении. App Store Connect и Google Play Console
• Большая рыба: как анализировать пользователей, чтобы потом они приносили прибыль
• Приобретение пользователей для мобильных игр в 2019: отчет Liftoff и AppsFlyer
• Акции в играх: как найти оптимальную стратегию скидок
• Мобильный eCommerce: привлечение установок
• Сколько нужно загрузок для первого места в App Store и Google Play в 2019?
• Самые зарабатывающие приложения в России в июле 2019
• Мобильные приложения для пожилых людей: огромный и недооцененный рынок
AI, Устройства, IoT
• (+47) Записки IoT-провайдера. Проклятие импульсного выхода
• (+21) Распознавание лиц с помощью сиамских сетей
• (+19) Как я учил змейку играть в себя с помощью Q-Network
• (+18) Как я построила прогнозную модель call-центра, чтобы их звонки не бесили пользователей
• Samsonite и Panasonic разрабатывают умный чемодан
• Facebook тренирует универсальный ИИ в Minecraft
• Xiaomi готовит умный шарф
• Swift на Raspberry Pi
• Большая часть VR – полная ерунда
< Предыдущий дайджест. Если у вас есть другие интересные материалы или вы нашли ошибку — пришлите, пожалуйста, в почту.
Когда почта доставляет: боремся с потерями push-уведомлений в iOS |
Этот дайджест доступен в виде еженедельной рассылки. А ежедневно новости мы рассылаем в Telegram-канале.
iOS
• (+22) Не всплывай! Прерываемые транзишены в iOS
• (+17) Apple Music для разработчика
• (+15) Оборачиваем последовательности в Swift
• (+7) Кто кушает память нашего iPhone? Чистим яблоки
• Google раскрыл «одну из самых масштабных атак на iPhone»
• Инди-хит Dead Cells вышел на iOS
• Видео Swift TO
• Анимированные градиенты на Swift
• 5 новых интересных iOS-библиотек
• Пример масштабируемого iOS-проекта
• Swift — 7 мощных анимация для улучшения интерфейса вашего приложения
• Введение в Swift Combine
• Как создать парсер JSON на Swift с помощью дженериков
• Комплексное руководство по контекстным меню в iOS
• Чистая архитектура и MVVM на iOS
• 15 быстрых способов уулчшить Swift-код
• Github Actions CI для Swift-проектов
• Делаем кастомные анимации переходов для iOS
• Как программно добавить View тени и закругления на Swift
Android
• (+4) Сборка Android-проекта в Docker-контейнере
• Android Dev Podcast #101: Работа звука и со звуком в Android
• Android Dev Podcast #102: Новости
• Google выплачивает деньги за поиск уязвимостей в сторонних приложениях для Android
• Видео Droidcon Berlin
• Злоупотребление WebViews для кражи файлов по электронной почте
• Бета-релиз книги “Эффективный Kotlin”
• Изучаем ConstraintLayout — готовые шаблоны
• Практическое использование PorterDuff на Android
• Модульность Android-проекта
• Разметка Activity и Fragment с помощью AndroidX
• Эмоциональный интеллект: создавайте умные анимации
• Создание приложения для удаленной камеры на Android
• Google только что удалил мое 10-летнее бесплатное open source приложение для Android
• Android Showcase: лучшие практики Android-разработки
Разработка
• (+31) Я самый большой скупердяй в инди-разработке игр
• (+16) Ограничения 16-битных игр и их воссоздание в Unity
• (+16) Cоздание визуальных компонентов в Unity UI. Система частиц
• (+11) Пиксельный Lo-fi в Unity
• (+2) Статическая типизация в React приложении
• (+1) Мобильные отчеты на Oracle BI EE 12c — на раз, два, три
• Видео DevGAMM Moscow 2019
• AppsCast #13: Accessibility
• Podlodka #126: Осознанность
• Счетная палата не нашла приложения Росстата
• Что общего между строительством оперного театра и разработкой?
• Coursera запускает практическую Coursera Labs
• Treefort: обсуждение roadmap-а с пользователями
• Научим плохому: 6 худших советов по созданию продуктов для Chief Digital Officer
• 6 шагов: Как отличить хороший дизайн от плохого
• Четкий фокус с доходом в $50 млн
• Узнать, что продукт стал слишком сложным, и упростить его
• Принципы и лучшие практики онбординга пользователей
• Сколько стоит приложение
• Спроектировать разные состояния интерфейса и не запутать пользователя
• В каких случаях необходимы кнопки с индикатором загрузки
• Выбор первого языка программирования для детей и начинающих
• Концепции UI для книжного приложения
• Переосмысливаем календарь
• Как разработчику справляться со стрессом: практические советы
• Оценка безопасности строительной площадки на iOS с помощью машинного обучения
• Почему я перевел разработку Social Radio на Flutter
Аналитика, маркетинг и монетизация
• (+16) “Есть все, что нужно, и ничего не бесит” — устами клиента глаголет истина
• (+10) Как изменить стоимость созданной подписки в вашем приложении. App Store Connect и Google Play Console
• Большая рыба: как анализировать пользователей, чтобы потом они приносили прибыль
• Приобретение пользователей для мобильных игр в 2019: отчет Liftoff и AppsFlyer
• Акции в играх: как найти оптимальную стратегию скидок
• Мобильный eCommerce: привлечение установок
• Сколько нужно загрузок для первого места в App Store и Google Play в 2019?
• Самые зарабатывающие приложения в России в июле 2019
• Мобильные приложения для пожилых людей: огромный и недооцененный рынок
AI, Устройства, IoT
• (+47) Записки IoT-провайдера. Проклятие импульсного выхода
• (+21) Распознавание лиц с помощью сиамских сетей
• (+19) Как я учил змейку играть в себя с помощью Q-Network
• (+18) Как я построила прогнозную модель call-центра, чтобы их звонки не бесили пользователей
• Samsonite и Panasonic разрабатывают умный чемодан
• Facebook тренирует универсальный ИИ в Minecraft
• Xiaomi готовит умный шарф
• Swift на Raspberry Pi
• Большая часть VR – полная ерунда
< Предыдущий дайджест. Если у вас есть другие интересные материалы или вы нашли ошибку — пришлите, пожалуйста, в почту.