В этом выпуске творческая переработка MVVM и TCA, революционное изменение в обработке ошибок в Kotlin и ускорение React Native, 40 ударов палкой и глупые ошибки Google, лабораторные микроскопы, переезд с Java на Swift и многое другое. Заходите!

Подписывайтесь на мой Telegram-канал Mobile Insights, где еще больше материалов для мобильных разработчиков.
iOS
• Swift в Apple: перенос службы мониторинга паролей с Java
• Творческая переработка MVVM и TCA на примере iOS
• Привязать карту: что может быть проще?
• Архитектура для кросс-функциональных команд
• Как не наломать дров с Live Activity
• Баланс между скоростью и надежностью: переиспользовать нельзя перепроверять
• Обновился сайт Swift.org
• Победители Apple Design Awards 2025
• Уникальные значения — удаление дубликатов из массива в Swift
•
Tips and tricks for when using SwiftUI’s ViewBuilder
•
Understanding toolbars in SwiftUI
•
The Framework Next Door
•
Art of the State
•
FlipKit — a flippin’ good library for SwiftUI
•
Unique values in Swift: Removing duplicates from an array
•
SwiftUI: A Little Customization to SF Symbol
•
Applying Transformations Within the Graphics Context of a SwiftUI Canvas View
•
Syncing TipKit with CloudKit
•
Swift Concurrency: Old vs New — What’s the real Difference?
•
Unlocking MetricKit: See What Your App Is Really Doing on Users’ Devices
•
SwiftUI: Rich Text Editor From Scratch
•
Faster GitHub Actions CI for Swift Projects
•
Mitigating SwiftSyntax build times
•
Building Reusable SwiftUI Modules with Swift Package Manager: A Practical Guide
•
Creating an Interactive Card Stack in SwiftUI
•
Creating a Live Audio Waveform in SwiftUI
•
Adding Swift Package Manager Support to a Legacy Objective-C Project
•
Types of Window Scenes | SwiftUI
•
Swift: Dead Simple Formatting (Dates, Numbers, Currency, Measurement, Time)
•
10 Years of Swift – A Decade in Review
•
Better Error Messages with ErrorKit
•
Pull To Search SwiftUI | Expandable Search Bar
•
iOS App Testing with SwiftLens: A SwiftUI UI Testing Framework
•
SwiftSMTP — отправка почты через SMTP с помощью SwiftNIO
•
ChessKit — шахматная логика на Swift
Android
• Meta и Яндекс деанонимизируют пользователей брузеров Android
• Rich Errors в Kotlin 2.4 — революционное изменение в обработке ошибок
• Live Updates в Android 16 — исследуем новые уведомления
• Марширующие муравьи — делаем кастомный модификатор для границ
• Как создать импульсный эффект в Jetpack Compose
• Как ИИ помог создать систему видеонаблюдения на Android
• Катим в прод, не тестируя
• Figma + Compose. Упрощаем верстку
• Что хотят работодатели от Android-разработчика
• Топ-5 обновлений Google I/O, о которых вам нужно знать
• Кодревью опенсорс проекта или как выглядят 10 лет технического долга
• Сколько памяти нужно для сборки? Android-разработчикам о JVM
• Что скрывает State в Compose
•
Better Previews in Compose with State Hoisting + MVI template
•
Kotlin 2.2 — guards when with subject, more than a technical question
•
Say Goodbye to Third-Party PDF Libraries: AndroidX PDF Is Here
•
My Experience Interviewing for an Amazon Android Software Engineer Role in London
•
How to Create Chrome-Inspired Custom Tabs in Jetpack Compose
•
Offline Voice Control: Building a Hands-Free Mobile App with On-Device AI
•
Managing Navigation in Jetpack Compose Using ViewModel: A Scalable Approach
•
Implementation of a custom soft keyboard in Android using Compose
•
Why is it important to test your ViewModel, not just the Repository or UseCase?
•
Testing ViewModels Lifecycle & State
•
Kotlin Coroutines Cheat Sheet
•
Testing a LottieAnimation in Compose
•
Now in Android: 117 – What’s new in Android development at Google I/O 2025 (part 1)
•
Tech Interviews, Talks & More — My Day at KotlinConf 2025 In Copenhagen
•
Testing software is awful: Here is how we can fix it
•
State Hoisting: Eine Jetpack Compose Best Practice
•
ReadMoreTextView — разворачиваемый Text для View и Compose
Кроссплатформа
• React Native тормозит? Проверь эти 8 узких мест в производительности, прежде чем винить фреймворк [ЧЕК-ЛИСТ]
• Kotlin Multiplatform: как усовершенствовать процесс разработки iOS
•
Best practices локальной аутентификации на Flutter
•
Internationalization (I18n) in Kotlin Multiplatform
•
Flutter boilerplate to launch apps fast
•
Truthy and Falsy techniques, applied to list processing in Dart
•
Build a Smart, AI-Powered DataGrid in Flutter for Predictive Data Analysis
•
Kotlin Multiplatform (KMP) at McDonald’s
•
WallStreet — кроссплатформенные обои на Compose/Kotlin Multiplatform
•
Tomoyo — пример Kotlin Compose Multiplatform приложения
Разработка
• Это личное! Как femtech-приложения защищают наши данные
• Mistral запустила платформу разработки Code
• /e/OS 3.0: мобильная платформа для тех, кто ценит приватность
• У выпускников факультетов информатики возник высочайший уровень безработицы
• Как построить свою ферму устройств и упростить работу с устройствами и эмуляторами: делимся опытом создания DeviceHub
• 40 ударов палкой и Kotlin Multiplatform: как устроена мобильная разработка в Катаре (интервью)
• Как избавиться от рекурсии и исправить глупую ошибку в Google
• IT-коучинг, Developer Advocate, софт-скиллы
• Эволюция карьерного роста: путь от Intern до Senior
• Вайбкодим всей командой — AI, Cursor, Claude, ChatGPT, MCP
• Uber сделал специальные функции для пожилых людей
• Уязвимости в российских мобильных приложениях 2024
•
How do experienced engineers actually review code?
•
The humble senior developer
•
Why GUIs are built at least 2.5 times
•
How to Prepare for a Mobile System Design Interview
Аналитика, маркетинг и монетизация
• App Store обеспечил продажи на $1.3 триллиона
• Самые скачиваемые и зарабатывающие приложения в России в мае 2025
• Как сделать 3 миллиона загрузок на органике с ASO и попасть в Apple Best of
• ASO в iOS. Подписки. Как сделать 100к MRR на органик приле
• Гайд: Как заменить скриншоты для iOS-приложения в App Store без билда и новой версии?
•
How to turn freemium users into loyal subscribers
AI, Устройства, IoT
• Мифы цифровой революции: почему гиперлупы не летают, а ИИ не правит миром (пока что)
• Бизнесу не нужно внедрять ИИ. Рассказываю, как ИИ-хайп ослепил российские компании
• Структурированная генерация в LLM
• Как мы превратили iPhone в лабораторный микроскоп с AI и BLE: real-world edge-приложение
• Новая робототехническая модель Hugging Face может работать на MacBook
• Google выпустил приложение, которое позволяет загружать и запускать ИИ-модели локально
← Предыдущий дайджест. Если у вас есть другие интересные материалы или вы нашли ошибку — пришлите, пожалуйста, в почту.

Подписывайтесь на мой Telegram-канал Mobile Insights, где еще больше материалов для мобильных разработчиков.

• Swift в Apple: перенос службы мониторинга паролей с Java
• Творческая переработка MVVM и TCA на примере iOS
• Привязать карту: что может быть проще?
• Архитектура для кросс-функциональных команд
• Как не наломать дров с Live Activity
• Баланс между скоростью и надежностью: переиспользовать нельзя перепроверять
• Обновился сайт Swift.org
• Победители Apple Design Awards 2025
• Уникальные значения — удаление дубликатов из массива в Swift
•

•

•

•

•

•

•

•

•

•

•

•

•

•

•

•

•

•

•

•

•

•

•

•

•

•


• Meta и Яндекс деанонимизируют пользователей брузеров Android
• Rich Errors в Kotlin 2.4 — революционное изменение в обработке ошибок
• Live Updates в Android 16 — исследуем новые уведомления
• Марширующие муравьи — делаем кастомный модификатор для границ
• Как создать импульсный эффект в Jetpack Compose
• Как ИИ помог создать систему видеонаблюдения на Android
• Катим в прод, не тестируя
• Figma + Compose. Упрощаем верстку
• Что хотят работодатели от Android-разработчика
• Топ-5 обновлений Google I/O, о которых вам нужно знать
• Кодревью опенсорс проекта или как выглядят 10 лет технического долга
• Сколько памяти нужно для сборки? Android-разработчикам о JVM
• Что скрывает State в Compose
•

•

•

•

•

•

•

•

•

•

•

•

•

•

•

•

•


• React Native тормозит? Проверь эти 8 узких мест в производительности, прежде чем винить фреймворк [ЧЕК-ЛИСТ]
• Kotlin Multiplatform: как усовершенствовать процесс разработки iOS
•

•

•

•

•

•

•

•


• Это личное! Как femtech-приложения защищают наши данные
• Mistral запустила платформу разработки Code
• /e/OS 3.0: мобильная платформа для тех, кто ценит приватность
• У выпускников факультетов информатики возник высочайший уровень безработицы
• Как построить свою ферму устройств и упростить работу с устройствами и эмуляторами: делимся опытом создания DeviceHub
• 40 ударов палкой и Kotlin Multiplatform: как устроена мобильная разработка в Катаре (интервью)
• Как избавиться от рекурсии и исправить глупую ошибку в Google
• IT-коучинг, Developer Advocate, софт-скиллы
• Эволюция карьерного роста: путь от Intern до Senior
• Вайбкодим всей командой — AI, Cursor, Claude, ChatGPT, MCP
• Uber сделал специальные функции для пожилых людей
• Уязвимости в российских мобильных приложениях 2024
•

•

•

•


• App Store обеспечил продажи на $1.3 триллиона
• Самые скачиваемые и зарабатывающие приложения в России в мае 2025
• Как сделать 3 миллиона загрузок на органике с ASO и попасть в Apple Best of
• ASO в iOS. Подписки. Как сделать 100к MRR на органик приле
• Гайд: Как заменить скриншоты для iOS-приложения в App Store без билда и новой версии?
•


• Мифы цифровой революции: почему гиперлупы не летают, а ИИ не правит миром (пока что)
• Бизнесу не нужно внедрять ИИ. Рассказываю, как ИИ-хайп ослепил российские компании
• Структурированная генерация в LLM
• Как мы превратили iPhone в лабораторный микроскоп с AI и BLE: real-world edge-приложение
• Новая робототехническая модель Hugging Face может работать на MacBook
• Google выпустил приложение, которое позволяет загружать и запускать ИИ-модели локально
← Предыдущий дайджест. Если у вас есть другие интересные материалы или вы нашли ошибку — пришлите, пожалуйста, в почту.