Android Good Reads
Kotlin Multiplatform по чуть чуть проникает в официальные документации по Android. Теперь есть шаблон для кроссплатформенного модуля, а так же 2 новые кодлабы: 👉 KMP getting started 👉 Миграция Room на KMP Краткий обзор KotlinConf от гугл команды: https://android…
Вы не ждали, но появились бесплатные курсы по KMP от команды JB.
На 4 неделю на вебинар обещают позвать даже Jake Wharton и Zac Sweers
На 4 неделю на вебинар обещают позвать даже Jake Wharton и Zac Sweers
JetBrains: Developer Tools for Professionals and Teams
Level Up with Kotlin Multiplatform | JetBrains Learning Journey
Master Kotlin Multiplatform before 2026! Join JetBrains’ 4-week KMP learning journey with expert courses, talks, and career insights.
👍13🔥5🤣2
Оркестрация Maestro UI тестов
Тесты могут гоняться очень долго, особенно end-2-end. Тут разбирают Maestro фреймворк. В статье гоняют их в Firebase Test Lab, так что время буквально деньги!
Тесты могут гоняться очень долго, особенно end-2-end. Тут разбирают Maestro фреймворк. В статье гоняют их в Firebase Test Lab, так что время буквально деньги!
www.doist.dev
Orchestrating our UI test suite with Maestro
How we nailed reliability, halved costs, and improved runtime performance of our tests
👍1
Android Good Reads
Опрос подписчиков Android Good Reads Помогите мне разобраться с тем, как лучше вести канал – расскажите немного про себя, свой опыт в разработке, а главное – про то, какие темы канала вам интереснее всего! Опрос небольшой, минуты за 3 точно справитесь. А…
Результаты опроса!
🚀 Compose и KMP — новые короли контента. Базовые туториалы больше не интересны. Есть огромный запрос на "Deep Dive" в кишки Jetpack Compose и реальные кейсы внедрения Kotlin Multiplatform
🤖 AI-кодинг: Сдержанный оптимизм. Хайп улегся. Большинство рассматривает AI-инструменты (вроде Copilot) как полезных помощников для рутины, но не как замену инженеру. Страха нет, есть прагматичный интерес к повышению эффективности.
⚡️ TL;DR рулит, но лонгриды живы. 70% предпочитают сначала прочитать короткую выжимку (саммари) поста. Но если тема "зацепила" — переходят к полному оригиналу статьи. Будем учитывать это при подаче материалов!
🚀 Compose и KMP — новые короли контента. Базовые туториалы больше не интересны. Есть огромный запрос на "Deep Dive" в кишки Jetpack Compose и реальные кейсы внедрения Kotlin Multiplatform
🤖 AI-кодинг: Сдержанный оптимизм. Хайп улегся. Большинство рассматривает AI-инструменты (вроде Copilot) как полезных помощников для рутины, но не как замену инженеру. Страха нет, есть прагматичный интерес к повышению эффективности.
⚡️ TL;DR рулит, но лонгриды живы. 70% предпочитают сначала прочитать короткую выжимку (саммари) поста. Но если тема "зацепила" — переходят к полному оригиналу статьи. Будем учитывать это при подаче материалов!
👍6🔥4🤣2
Baseline Profile + Remote Config - рабочее решение для разных окружений
Кратко:
👉 Почему не получилось просто заинжектить всё через
👉 Варианты переключения окружения в тестах
👉 Как определить окружение
👉 Отдельный
Кратко:
baseline профили помогают повышать скорость выполнения кода примерно на 30% уже с первого запуска. Но статья про другую боль - что делать, если приложение активно использует Remote Config, а baseline гоняется на релизной сборке.👉 Почему не получилось просто заинжектить всё через
DI👉 Варианты переключения окружения в тестах
👉 Как определить окружение
baseline внутри DI👉 Отдельный
BuildConfig модуль и флагDeveloper Notes
Baseline Profile + Remote Config - рабочее решение для разных окружений
Привет. Это небольшая заметка о том, с чем я столкнулся при работе с baseline profile.
Коротко: baseline профили помогают повышать скорость выполнения кода примерно на 30% уже с первого запуска.
Но статья не про то, как их настраивать по документации, а про…
Коротко: baseline профили помогают повышать скорость выполнения кода примерно на 30% уже с первого запуска.
Но статья не про то, как их настраивать по документации, а про…
❤4👍3🔥2
JetBrains представила новую IDE - AIR
Сделана только для кодинга через агентов, поддерживает только claude (Удивительно, что не их Junie).
И что?
Я верю что такой стиль разработки прочно впишется на долго и рад видеть не очередной форк VSCode, а IDE от профи для профи
Сделана только для кодинга через агентов, поддерживает только claude (Удивительно, что не их Junie).
И что?
Я верю что такой стиль разработки прочно впишется на долго и рад видеть не очередной форк VSCode, а IDE от профи для профи
air.dev
Air: Multitask with agents, stay in control
Air is an agentic development environment. Delegate complex coding tasks to AI agents that work in parallel – always under your oversight.
😁9🔥7🥴4🤯2❤1👍1🤣1
This media is not supported in your browser
VIEW IN TELEGRAM
Маленький экран — серьёзный вызов!
В VK мобильные разработчики создают опыт, который помещается в карман, но работает на миллионах устройств. Узнайте об их подходах к сложным задачам и ключевых результатах. По ссылке — ролики и даже вакансии!
В VK мобильные разработчики создают опыт, который помещается в карман, но работает на миллионах устройств. Узнайте об их подходах к сложным задачам и ключевых результатах. По ссылке — ролики и даже вакансии!
👎19❤3👍2💅1
Kotest: Современный фреймворк для моков и тестов на мультиплатформе
Немного непривычный, в традиционном понимании, фреймворк для написания тестов:
В самой статье еще 9 примеров разных стилей написания тестов. Лучше 1 раз это увидеть...
Сам проект: https://kotest.io/
Немного непривычный, в традиционном понимании, фреймворк для написания тестов:
class StringSpecExample : StringSpec({
"length of hello should be 5" {
"hello".length shouldBe 5
}
})В самой статье еще 9 примеров разных стилей написания тестов. Лучше 1 раз это увидеть...
Сам проект: https://kotest.io/
🥴9👍3😨1
Линтер отдельно для Compose
Если, по каким-то причинам, ваша команда только-только вкатывается в Compose, а бить всех по рукам в каждом втором пулреквесте надоело - вот линтер с кучей правил и бест практисов, делающий это за вас. Решение только для тех кто только-только начинает и не хочет дописывать в базовый линт/detekt очевидные кастомные правила
Кстати, а у detekt полноценный мажорный апгрейд до версии 2.0!
Если, по каким-то причинам, ваша команда только-только вкатывается в Compose, а бить всех по рукам в каждом втором пулреквесте надоело - вот линтер с кучей правил и бест практисов, делающий это за вас. Решение только для тех кто только-только начинает и не хочет дописывать в базовый линт/detekt очевидные кастомные правила
Кстати, а у detekt полноценный мажорный апгрейд до версии 2.0!
GitHub
GitHub - AndroidPoet/compose-guard: Real-time detection of Jetpack Compose best practices and rule violations directly in Android…
Real-time detection of Jetpack Compose best practices and rule violations directly in Android Studio. - AndroidPoet/compose-guard
👍7🔥5❤1
Android Good Reads
Какое совпадение. Пост про вайбкодинг и снова cloudflare упал
Сделать похожую штуку в шуточной манере для своего проекта можно тут:
https://stacktower.io/
https://stacktower.io/
😁5
Android Good Reads
Оркестрация Maestro UI тестов Тесты могут гоняться очень долго, особенно end-2-end. Тут разбирают Maestro фреймворк. В статье гоняют их в Firebase Test Lab, так что время буквально деньги!
Android UI-тесты с Maestro без тяжелой инфраструктуры
Еще немного практики про Maestro тесты.
Не совсем согласен с автором на счет расположения их в
Еще немного практики про Maestro тесты.
Не совсем согласен с автором на счет расположения их в
pre-push, однако такой флоу можно легко поместить в наиболее удобное для вас место.👍4
Если у вас есть свободный час времени, подключайтесь на традиционный новогодний стрим подкаста Подлодка – будем подводить итоги года, рассказывать про наши главные открытия, самые полезные книги и всякое такое. А главное – разыграем среди зрителей Switch 2!
👉Начинаем через 10 минут
👉Начинаем через 10 минут
👎8👍4🥴3❤1
Forwarded from Mobile VK Hub
This media is not supported in your browser
VIEW IN TELEGRAM
Конец года, и снова заканчиваются все подписки 😱
Узнали? Согласны? Не беда — мы как раз разыгрываем промокоды на год от Облака Mail и VK Музыки!
Условия участия простые:
🔹 подпишитесь на наш канал @mobilehubvk
🔹нажмите кнопку «Участвовать»
🔹 дождитесь 30 декабря — в этом посте мы выберем случайным образом 6 победителей
Информацию об организаторе, правилах и призах ищите по ссылке.
Удачи!
Узнали? Согласны? Не беда — мы как раз разыгрываем промокоды на год от Облака Mail и VK Музыки!
Условия участия простые:
🔹 подпишитесь на наш канал @mobilehubvk
🔹нажмите кнопку «Участвовать»
🔹 дождитесь 30 декабря — в этом посте мы выберем случайным образом 6 победителей
Информацию об организаторе, правилах и призах ищите по ссылке.
Удачи!
👎11❤3👍2💅1
Подборка лучших постов за 2025 год 📱
👉 А как вы работаете с ожиданиями пользователя?
👉 keepScreenOn в Jetpack Compose
👉 Glitch effect в Compose. А тут вышла интересная серия постов. Мы закинули собственную реализацию, а так же сравнительный анализ с шейдерами
👉 Шпаргалка по размещению Composable элементов
👉 Rich Errors в Kotlin 2.4. Анонс был пол года назад, а 2.4 версия еще не близко!
👉 Разбираем порядок вызова DisposableEffect, LaunchedEffect и Composable
👉 С чего мне начать изучать про KMP
👉 Рефлексия по поводу инцидентов cloudflare под конец года
Полезный контент занимает львиную часть топа, но есть и пара мемов, попавших в боль! Ну и вообще, с наступающим, держитесь там, продолжайте ставить реакты к статьям и вести холивары в комментариях!
👉 А как вы работаете с ожиданиями пользователя?
👉 keepScreenOn в Jetpack Compose
👉 Glitch effect в Compose. А тут вышла интересная серия постов. Мы закинули собственную реализацию, а так же сравнительный анализ с шейдерами
👉 Шпаргалка по размещению Composable элементов
👉 Rich Errors в Kotlin 2.4. Анонс был пол года назад, а 2.4 версия еще не близко!
👉 Разбираем порядок вызова DisposableEffect, LaunchedEffect и Composable
👉 С чего мне начать изучать про KMP
👉 Рефлексия по поводу инцидентов cloudflare под конец года
Полезный контент занимает львиную часть топа, но есть и пара мемов, попавших в боль! Ну и вообще, с наступающим, держитесь там, продолжайте ставить реакты к статьям и вести холивары в комментариях!
Please open Telegram to view this post
VIEW IN TELEGRAM
👍8🔥5❤3
Так как KMP занимаем отдельное место в моем сердечке - с ним напрямую связана моя работа нынче. Вот вам подборка статей про вкатывание в KMP:
👉 Зачем этот ваш KMP нужон?
👉 Как перекатывать на него свой проект
👉 А как перекатывать всю команду в него?
👉 Истории внедрения, возникшие проблемы и решения
👉 Большой гайд если вы работаете в бигтехе, как внедрить?
👉 Ну и простой пример как сделать апку
👉 Зачем этот ваш KMP нужон?
👉 Как перекатывать на него свой проект
👉 А как перекатывать всю команду в него?
👉 Истории внедрения, возникшие проблемы и решения
👉 Большой гайд если вы работаете в бигтехе, как внедрить?
👉 Ну и простой пример как сделать апку
👍6🔥3
This media is not supported in your browser
VIEW IN TELEGRAM
Анимируем смену на темную/светлую тему
Красиво/аккуратно прям как в Telegram клиенте, но без тонны легаси и с поддержкой Compose MP
Github (5⭐️ ) : https://github.com/gleb-skobinsky/ThemeAnimator
Красиво/аккуратно прям как в Telegram клиенте, но без тонны легаси и с поддержкой Compose MP
Github (5
Please open Telegram to view this post
VIEW IN TELEGRAM
👍14🔥4
Очередная напоминалка от Google Play. 31 Марта 2026 года немного изменится вид иконок в Google Play Store, увеличив радиус скругления.
Я хотел было возмутиться, что им там делать нефиг, но они, на самом деле, подгоняют всё под material3
Гайдлайны тут
Я хотел было возмутиться, что им там делать нефиг, но они, на самом деле, подгоняют всё под material3
Гайдлайны тут
😱7🤣5👍4
Android Good Reads
Продолжаем историю с Glitch эффектом. Как сделать этот же эффект не через Composable, а с помощью Android AGSL shaders. Внутри вас ждет: 👉 Что такое шейдеры 👉 Реализация 👉 Детальный сравнительный анализ производительности обоих подходов В статье очень много…
This media is not supported in your browser
VIEW IN TELEGRAM
Еще про шейдеры
👉 Внутри пошагово, с примерами и объяснениями разбирают применение шейдеров
👉 Это важно, чтоб ваше приложение было более производительное
👉 Чуть более хайповая статья от того же автора про то как сделать Upside-Down эффект из Stranger Things
👉 Про шейдеры на BottomNavBar - совсем простенько, зато юзкейз!
Репозиторий с кодом и примерами: https://github.com/makzimi/glitch-shader
👉 Внутри пошагово, с примерами и объяснениями разбирают применение шейдеров
👉 Это важно, чтоб ваше приложение было более производительное
👉 Чуть более хайповая статья от того же автора про то как сделать Upside-Down эффект из Stranger Things
👉 Про шейдеры на BottomNavBar - совсем простенько, зато юзкейз!
Репозиторий с кодом и примерами: https://github.com/makzimi/glitch-shader
🔥4👍2
Jetpack Compose Memory Leaks: A Reference-Graph Deep Dive
Разбор ошибок при работе с Compose приводящим к утечкам памяти. В итоге:
👉 Чаще используйте
👉 Никогда не храните
👉 Избегайте использования
👉 Используйте
👉 Добавляйте ключи к
👉 Не захватывайте контекст
Разбор ошибок при работе с Compose приводящим к утечкам памяти. В итоге:
👉 Чаще используйте
DisposableEffect(owner) во избежании проблем с зануливанием слушателей👉 Никогда не храните
Composable-лямбды или UI-объекты во ViewModel или синглтонах. Вместо этого храните состояние (StateFlow) и события (SharedFlow)👉 Избегайте использования
GlobalScope и областей видимости всего приложения для работы, связанной с UI👉 Используйте
LaunchedEffect или viewModelScope в зависимости от того, к чьему жизненному циклу привязана задача👉 Добавляйте ключи к
remember. Если объект зависит от X, используйте remember(X)👉 Не захватывайте контекст
Activity в долгоживущие колбэки . Используйте rememberUpdatedState или перепроектируйте архитектуру так, чтобы UI-слой занимался UI-задачами. Актуально не только для ComposeHackernoon
Jetpack Compose Memory Leaks: A Reference-Graph Deep Dive | HackerNoon
Jetpack Compose memory leaks are usually reference leaks. Learn the top leak patterns, why they happen, and how to fix them.
👍9❤2
Compose MP 1.10
👉
👉 Navigation 3 поддерживается, но пока сыровато
👉 Compose Hot Reload стабильный
Не из пресс релиза
👉 Депрекейтнули dependency aliases,
👉 Депрекейтнули
👉 Минимальная версия Kotlin - 2.2.10
👉 Вытащили
👉 Поддержка AGP 9.0.0 - я пытался перехать на AGP 9.0, но то кастомные плагины ломаются, то зависимости перестают работать. Не могу ничего сказать
👉
@Preview теперь и в commonMain👉 Navigation 3 поддерживается, но пока сыровато
👉 Compose Hot Reload стабильный
Не из пресс релиза
👉 Депрекейтнули dependency aliases,
compose.ui теперь всё👉 Депрекейтнули
PredictiveBackHandler 👉 Минимальная версия Kotlin - 2.2.10
👉 Вытащили
DialogProperties и PopupProperties в стабильные 👉 Поддержка AGP 9.0.0 - я пытался перехать на AGP 9.0, но то кастомные плагины ломаются, то зависимости перестают работать. Не могу ничего сказать
The JetBrains Blog
Compose Multiplatform 1.10.0: Unified @Preview, Navigation 3, and Stable Compose Hot Reload | The Kotlin Blog
Compose Multiplatform 1.10.0 has been released with common @Preview annotation, support for Navigation 3 on non-Android targets, and bundled stable Compose Hot Reload.
👍3🔥3❤1👎1