Мобильное Чтиво
1.62K subscribers
287 photos
45 videos
166 links
Очень серьезный канал про мобильную разработку. Веду канал я — @maxkachinkin
Download Telegram
🐈 Про Perfetto 🐈

Вышла классная статья на Хабре от Андрея Гришанова (Dodo Engineering) про Perfetto.

Всем, кто хочет изучать лаги, junk-фреймы и прочее — вэлкам!

Что в статье:
- что такое Perfetto и чем он отличается от Profiler
- как писать свои trace-секции в коде
- как снимать трейсы через Studio / System Tracing / CLI
- как потом анализировать это всё через SQL
- и как это автоматизировать и прикрутить в CI

На мой взгляд Perfetto супер крутая штука. Когда первый раз попробовал, то больше не понимал, зачем пользоваться профайлером студии :)

💬
У кого были интересные кейсы по работе с Perfetto? Расскажите, мне очень интересно! Может вы гоняете на CI и находили реальную деградацию? Или может вы его на проде запускаете? Или просто историю, как поймали неуловимый баг?

#android #performance #perfetto #profiling #mobiledev #engineering
Please open Telegram to view this post
VIEW IN TELEGRAM
👍11🔥73🤝1
🎄 Итоги Мобильного Чтива 2025 🎄

Друзья, большое всем спасибо за ваше участие, комменты, сердечки, огоньки и какашки!

- спасибо 615 новым подписчикам и 983 уже постоянным!
- спасибо за 699 комментов и 1.8k реакций! Это очень ценно и дает силы и вдохновение делать новые посты!

Я с большим удовольствием сделал эти 82 поста за год!

P.S. Самый популярный пост про Shader Upside-Down, ну я так и ожидал 😅
13🎉54👍4🎄2
90% разработчиков уже используют AI на работе

Всем привет в 2026 году!

Мне захотелось начать этот год с ретроспективы на AI в 2025. И я нашел кое-что интересное!

Ребята из Google выкатили свежий отчёт DORA 2025 про состояние AI в разработке. Почти 5000 разработчиков со всего мира поделились своим опытом.

Я начал его читать, и он очень большой 😮 Я буду постепенно делиться с вами самыми интересными инсайтами для меня. Там реально много прикольного!

Первый факт, который меня зацепил:

- 90% разработчиков уже используют AI на работе! Это +14% к прошлому году (они делали такой же отчет год назад тоже).

Т.е. вопрос больше не “стоит ли внедрять AI?”, а как выжать из него максимум.

При этом интересно:

- Только 7% всегда обращаются к AI при решении задач
- 39% используют его лишь иногда
- Медианный разработчик тратит ~2 часа в день на работу с AI

То есть AI уже стал базой, но далеко не все используют его реально постоянно.

📊 Полный отчёт

Сколько я работаю с AI? У меня нет счетчика, чтобы сказать точно. Но мне кажется, что когда работаю с кодом, то где-то 50-70% времени. Когда работаю над другими задачами, сильно it depends. Но тоже много 😅

💬 Сколько часов в день вы используете AI? Ну примерно. 2? 4? 8? 24? 😂

#AI #DORA
🔥7👎2😱21👍1
🔉AI — это усилитель. Усиливает как хорошее, так и плохое.

Продолжаю читать DORA 2025, и вот главный инсайт на сегодня:

- AI усиливает то, что уже есть
- Сильные команды становятся ещё сильнее
- Слабые команды получают ещё больше хаоса

Если так подумать, то вроде как очевидная история, но я раньше не задумывался об этом. А теперь как задумался.

Если у вас бардак в процессах, AI не наведёт порядок. Он просто ускорит производство этого бардака. Как говорил мне один знакомый звукорежиссер:
shit in = shit out.

Исследователи прямо пишут: наибольшая отдача от AI приходит НЕ от самих инструментов, а от:

- Качества решений
- Понятности рабочих процессов
- Слаженности команды

Без этого фундамента AI создаёт локальные островки продуктивности, которые тонут в хаосе downstream-процессов.

Мой вывод. Внедрение AI — это в первую очередь не про покупку подписки на Copilot. Это про трансформацию всей организации.

Например, у нас в Додо 🦤 всем закупили AI инструменты. И это круто, важно и необходимо. Но точно недостаточно! И я вижу как мы, как команда, постепенно учимся ими пользоваться. По пути фиксим сои косяки, добавляем какие-то best-practice и т.д.

💬 Что думаете? Мне очень зашла эта мысль.

#AI #DevOps #команды
👍11🔥8
Media is too big
VIEW IN TELEGRAM
🔮 Upside Down из Stranger Things на Android

Я обещал написать статью про Upide-Down shader и написал! Хотя это скорее только 1ая часть, потому что там оказалось много. Про Glitch и корни будут потом другие части (хотя про глитч я тут подробно рассказывал, но в статью все равно оформлю).

Эта статья о том, как сделать именно эффект "Изнанки" из Stranger Things с помощью AGSL шейдера в Jetpack Compose.

Вот что там под капотом:

🎨 Color grading
Изнанка это холодное, ненасыщенное, мёртвое место. Показываю как сдвигать цвета в синий и убить насыщенность.

🌑 Darkness & contrast
Показываю как затемнять, поднимать контраст.

Floating particles
Вишенка на торте — летающие частицы. Использую псевдо-рандом для размера и траектории каждой частицы.

📝 Статья написана пошагово даже если вы никогда не писали шейдеры, должно быть понятно. Плюс там полный рабочий код, ссылка на репу и т.д.

🔗 Статья на ProAndroidDev
Потом бахну и на Хабре!

This is code red!
I repeat CODE RED!! 🔴

#android #compose #agsl #shaders #strangerthings #ост #изнанка
🔥187👾4
30% практически не доверяют коду, который генерирует AI

Интересная статистика из DORA 2025:

- 80%+ разработчиков говорят, что AI повысил их продуктивность

Но при этом:

- 30% практически не доверяют коду, который генерирует AI

Парадокс доверия к AI 😂

Разработчики сравнивают это с ответами на Stack Overflow. Типо полезно, но слепо доверять нельзя.

И это, кстати, норм! По-русски звучит как доверяй, но проверяй.

🧠 Я вот стараюсь весь код, сгенерированный AI просмотреть. Каюсь, иногда быстро пробегаюсь по некоторым очевидным кускам. И потом мне коллеги пишут комменты на PR-ах, и от этого очень стыдно бывает 😬, что сам внимательно не все посмотрел. Но по более критичным кускам всегда подробно смотрю.

Было ли у меня такое, что я коммитил код, не разбираясь в нем построчно? Да, но только связанные процессами, типо CI скрипты и тому подобное. С кодом основного проекта такого никогда не делал.

💬 А вы как относитесь к AI-генерированному коду? Проверяете всегда? Или, честно, забиваете иногда?)

#AI #код #разработка
😁7🤔3
This media is not supported in your browser
VIEW IN TELEGRAM
🎲 Впервые в жизни мне реально понадобился псевдо-рандом

Я догадывался, что кому-то где-то это надо. Но так вышло, что раньше лично я никогда не сталкивался.

Я про то, что обычно псевдо-рандом — это такой трейд-офф. Типо "ну и ладно, что не 100% случайно, но похоже на случайность".

Но тут мне понадоболось, чтобы выглядело как рандом, но:
- на один и тот же вход я получал один и тот же выход. И так каждый раз.

Кейс простой (я про тот же Upside-Down шейдер 😅): надо нарисовать летающие частицы в шейдере.

В шейдере нет стейта. Надо или тащить его туда извне, каждый кадр, или расчитвать его на лету!

И тут именно псевдо-ранадом помогает. Если частицы реально случайные каждый кадр, то они просто мерцали бы и всё.

Но если псевдо-рандом детерминированный, то он и есть "стейт"! Псевдо-рандом — как стейт!

💡 Таким образом я могу легко вычислить всё (размер и позицию) просто из id частицы.

Подробнее это все есть в статье!

Подозреваю, что для опытных писателей шейдеров, это баянистый-баян, ну уж извините. Делюсь тем, что интересно самому 😉

💬 Расскажите, вам когда-то нужен был специально псевдо-рандом?

#android #compose #agsl #shaders
🔥17👍6
💨 AI ускоряет разработчика — теперь официально!

В прошлогоднем отчёте DORA были тревожные данные: AI СНИЖАЛ throughput и УВЕЛИЧИВАЛ нестабильность!

Год спустя картина поменялась:

Стало лучше:
AI теперь улучшает скорость доставки (throughput)
AI улучшает производительность продукта
Больше времени уходит на "ценную работу" (раньше было наоборот!)

Но!
Всё ещё проблемы:
Нестабильность доставки по-прежнему растёт (я об этом напишу отдельным постом, там интересно)
Выгорание и friction остаются на том же уровне

Ну что, примерно всё ожидаемо. Мы учимся работать с AI эффективнее. Я это ощущаю на себе тоже. Если поначалу в коммьюнити был еще скептицизм, то он уходит все быстрее и быстрее.

Единственное, мне кажется что процессы пока не успевают за этими изменениями. AI ускоряет разработчика, но pipeline'ы, ревью, QA — всё это осталось прежним пока и становится бутылочным горлышком.

Ну всё, друзья! Теперь есть ресерч, где официально “доказано”, что AI ускоряет разработчика. Теперь не отмажемся 😉

#AI #DevOps #DORA
👍10😱2
🔧 7 практик, которые усиливают эффект от AI

DORA выделили 7 практик, которые УСИЛИВАЮТ пользу от AI. Вот они:

1️⃣ Понятная AI-политика — разработчики должны знать, что можно, а что нельзя. Полностью согласен. Сам часто слышу много вопросов с тем, что не понятны ограничения по работе в компании. Что можно “скармливать” AI, что нельзя? У нас в Додо буквально недавно эту политику озвучили, но думаю, что может не все еще успели.

2️⃣ Здоровая data-экосистема — качественные, доступные, объединённые данные. С этим, у нас сложно. Кажется это next левел для нас. Но я хочу сделать хотя бы RAG для нашего проекта ;)

3️⃣ AI с доступом к внутренним данным — подключите AI к вашим системам. Наш мессенджер уже имеет AI бота с доступом к базе знаний.

4️⃣ Качественная внутренняя платформа — 90% компаний уже внедрили platform engineering. Тут я не совсем понял, о чем речь. Возможно только про бигтехи речь. Потому что не у всех есть внутренняя платформа.

5️⃣ Сильные практики версионирования — частые коммиты + лёгкие откаты. Полностью согласен. Это и без AI надо было делать, а с AI и подавно!

6️⃣ Работа маленькими батчами — меньше изменений = лучше результат.

7️⃣ Фокус на пользователе — без этого AI может даже навредить команде. Опять же, я бы тут это отнес к общим практикам, которые хороши были и до эпохи AI.

💬 Какие практики вы бы от себя еще добавили сюда?) Я бы добавил мою любимую — сначала тщательно спланируй, а потом пиши код.

#AI #DevOps
👍9🔥5
🫧 IT-шка всё? Теперь супер сложно найти работу?

Все говорят, что рынок просел, и вроде данные это подтверждают. Я и по собственным ощущениям это чувствую.

Пробежался по цифрам. Например, что происходит в России 🇷🇺:
- Вакансий меньше, кандидатов больше
Данные hh.ru показывают рост числа активных резюме на платформе (более 3,2 млн резюме, +25% к прошлому году), что создаёт жесткую конкуренцию.
- Конкуренция выросла
Индекс конкуренции (количество резюме на вакансию) в IT вырос до ~12,8 (т.е. более 12 резюме на одну позицию).


США 🇺🇸:
IT-вакансии ниже прежних уровней.
Данные по Indeed. Индекс вакансий для Software Development на Indeed остаётся существенно ниже исторических максимумов, отражая снижение активности размещения объявлений в 2025 году.


Ну и Европа 🇪🇺:
По данным Ravio, в 2025 году hiring rate (~29%) в технике остался примерно таким же, как в 2024. Т.е. не было роста найма, просто плато с очень жёстким отбором и фокусом на специфичные навыки.

📊 Итог:
- число вакансий и темпы найма сокращаются везде
- Конкуренция растёт
- Откликов на одну позицию стало больше
- Компании выделяют бюджеты в основном под AI-и-ML-таланты, а не под массовый найм.

😱😱😱

💬
Очень хочется узнать ваш опыт и ваше мнение. Я через минуту бахну опрос. Напишите, пожалуйста, как у вас с этим. Или если у вас есть история — напишите коммент тут!

#hiring #jobs
😱91👍1
🔠 T-Shape мобильного разработчика

Про T-shape сейчас говорят вообще все. Видосы, статьи, подкасты, куда ни ткни. Ну и я скажу.
Но если раньше это была такая прикольная, но необязательная штука, то сейчас с приходом AI всё поменялось.

Что вообще такое T-shape, кто не знает. Очень просто:
- ты глубоко знаешь одну область (например, Android)
- и достаточно широко ориентируешься в других (бэк, веб, iOS, ещё что-то)

Раньше T-shaped’иться было… ну, не то чтобы сложно, но трудозатратно. Это все-таки занимало время. Чтобы сходить в соседнюю технологию, нужно было приложить усилия, время. Поэтому делали это не все.

А сейчас?
Сейчас с AI делать простые вещи в смежных областях стало гораздо проще.
Если ты в целом понимаешь, как работает разработка, как устроены системы и как писать код, то ты можешь:
- быстро что-то собрать на вебе
- написать простой бэк
- залезть в другую платформу
и при этом сделать реальный импакт, а не я посмотрел туториал.

И вот моё личное, субъективное мнение:
T-shape — это маст на ближайшем горизонте. Ну просто маст. 👩‍💻

При прочих равных компании будут выбирать инженеров, которые:
- конечно сильны в своей основной области
- но при этом могут сходить в сторону и помочь там, где горит

Конкуренцию будут выигрывать именно такие ребята. Хотим мы этого или нет.

Окей, куда t-shaped’иться мобильному разработчику?

Самые очевидные кандидаты в наших же кросс-функциональных командах:
- другие мобильные платформы (iOS, Flutter, React Native)
- бэк
- веб

Это то, с чем мы работаем бок о бок каждый день. Туда заходить проще всего.

Можно и в AI engineering / data science, попробовать, хотя тут уже сложнее. И есть риск, что пока вы туда глубоко погружаетесь, хайп уже уедет куда-то дальше 😅

Если же думать как инвестицию на 5–10 лет вперёд, у меня есть ощущение, что следующим большим хайпом будет robotics. 🤖
Начинаем T-shape в robotics, и через 5-10 лет будем востребованными специалистами!

💬 Вопрос к вам:
- Вы уже t-shaped?
- Вы в процессе?
- Или в гробу вы видали этот t-shape?)

Очень интересно почитать ваши мысли!

P.S. Для неолдов. На картинке "Mr. T".

#tshape
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥104👍1😱1
Помоги выбрать тему Podlodka Android Crew 15

Голосуй за тему здесь!

Мы собрали топ-3 темы, к каждой теме мы прикинули примеры сессий и теперь хотим понять, что вам ближе всего?

- Карьера Android-разработчика
- Advanced UI
- Безопасность

Давайте выберем тему сезона вместе! Проходите по этой ссылке и голосуйте!

#podlodka #conference
🔥8
Что меня спрашивали на собесе в финтех компанию

Сегодня у меня история.

Но сначала анонс 🚨
Новая Подлодка будет про БЕЗОПАСНОСТЬ
👉 Call For Papers

Если есть что рассказать про Android-безопасность — пишите туда или мне в личку 🙂

К истори!

Пару лет назад я собесился в одну западную финтех-компанию (собес прошёл, но оффер я не принял, понтанулся 😅).

Формат такой: дали тестовое, и потом 2 часа обсуждения решения. Знаю, что многие не любят тестовые, да и я сам тоже. Но такой был формат, я согласился. И там был упор на безопасность.

Задание было такое:
Написать приложение, где пользователь вводит текст и пароль, текст шифруется этим паролем, сохраняется максимально секьюрно на диске и потом может быть расшифрован обратно.

Я делал так:
- переводим пароль в ключ (Argon2id + соль). Потому что пароль не используем никогда напрямую, плохая практика. Для реализации берем org.signal:argon2
- шифруем через AES-256-GCM с новым IV
- храним соль + IV + зашифрованный текст

Для хранения выбрал обычный файл в internal storage, а не EncryptedSharedPreferences. Специально, из-за известных кейсов потери данных через Keystore. Терять зашифрованные данные такое себе.

Ну и потом весь разговор был не про алгоритмы, а про trade-off’ы и риски. Почему сделал так, а не иначе.

Мое решение им зашло, ответы удовлетворили, предложили Senior Software Engineer 😅

💬 А у вас было что-то подобное на собесах?

#security #interview
🔥15👍83
🎩 Когда примерил шапочку продакта

Одна из вещей, которая меня реально мотивирует, это когда я могу предложить идею, собрать вокруг неё движ, и она не умирает в чате, а доезжает до прода. 🚀

Недавний пример из Drinkit 🐳

У нас был внутренний хакатон, я собрал команду, чтобы сделать AI-помощник в приложении, который помогает кастомизировать напиток: типа “хочу что-то освежающее, без лактозы, но не слишком сладкое” и дальше AI магия делает тебе напиток ☕️🤖

Мы выиграли хакатон, и фичу решили пустить в прод.

Забегая вперёд:
я думал, что это “ну дня 2–3 допилить”. По факту это превратилось в 1–2 недели. Но всеравно это быстро, я считаю.

Расскажу немного про фичу.

🔥 Техническая часть
На Android я взял Firebase SDK, где есть Firebase AI Logic (вышла в прошлом году).
Под капотом Gemini, и ты довольно быстро можешь подключить AI к своему приложению.

Для хакатона это идеальное решение.
Для прода мы тоже решили оставить это, единственное надо:
- нормально посчитать экономику 💸
- поставить гейты, чтобы нельзя было абьюзить
- и держать процесс под контролем

Сейчас фича тестируется в Казахстане 🇰🇿

Когда я начинал делать фичу, я думал “ну, будет запрос-ответ к LLM и всё”.

А в итоге это вылилось в маленький самописный агент в мобильном приложении с ReAct лупом.
То есть не просто ответь, а “подумай → вызови нужные тулзы → посмотри результат → уточни → собери ответ”.

Это вышло интересно для меня инженерно, не так скучно как я думал.

📊 А где продакт?

Конечно, как уважающий себя продакт, я сделал продуктовый даш:
- конверсии
- заказы с AI-помощником
- причины ошибок
- и прочие мелочи

Но честно: по продуктовым метрикам пока далеко до экономического успеха 😅 Мягко говоря.

Фича всё ещё в тестировании, будут доделки, посмотрим.

Но даже так, такие истории меня вдохновляют. Потому что это тот редкий момент, когда ты не просто написал код, а попробовал сделать штуку, которая может дать бизнес value.

🧠 Что дальше
Раз у нас получился (почти случайно) самописный агент, то у меня есть идея попробовать не писать ReAct луп руками, а заменить его на Koog SDK (чтобы меньше велосипедить).

Посмотрим, доедет ли это тоже до прода 😏

💬 Были у вас истории, где вы, будучи разработчиком, затащили что-то продуктовое?
Расскажите в комментах, люблю такие кейсы.

P.S. На фото я. Пью AI сгенерированный напиток!

#android #ai #product #drinkit #firebase #gemini #mobiledev
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥24👍511🦄1
Увидимся на Мобиусe весной 🌱🌺🌿
15🙏13🔥7
🎧 Агентам тоже хочется послушать музыку

Сижу, усердно заставляю работать агентов работаю. И тут бац, запрос от Курсора 😅

Видать, ему тоже больше в кайф работать под музычку 🎧
Please open Telegram to view this post
VIEW IN TELEGRAM
😁25🤔7
📋 Мобильный DevCrowd возвращается! Го заполним!

Друзья, кто помнит DewCrowd?
C 2022 года не выходило исследований, и вот оно возвращается! 😁

Встречайте!
👉 Большое исследование мобильных разработчиков - 2026 👈

В этот раз я принимал участие в создании этого опроса! Мне реально не хватает полной картины, что сейчас происходит и куда идет мобилка.

💡Вот примерно о чем там будет:
• кто победил — натив или кроссплатформа?
• AI уже пишет за вас или только мешает?
• Куда растут зарплаты и куда уходят люди?

Заполнение займет ~12 минут. А в апреле будет полный отчёт с цифрами!

Пересылайте друзьям и коллегам мобильным разработчикам! Тут важная фишка: чем больше ответов, тем точнее картина! Поэтому если мы все заполним, то мы потом сами увидим более реальную картину.

#devcrowd
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥7👍5👎32
📱 Koog отлично подходит для мобилки

Последнее время я пробовал делать разные AI-фичи: писал ручные React loop’ы и параллельно щупал разные фреймворки. В том числе Google ADK и Koog от JetBrains.

И я поймал себя на мысли, что уже выработался довольно стабильный паттерн, как собирать AI-агента. Его можно описать буквально тем кодом, который на картинке.

Идея простая: агент собирается из building blocks.

Что обычно нужно:
• Executor — клиент, который общается с LLM-провайдером
• Model — какую модель используем
• Tool registry — набор инструментов, которыми может пользоваться модель
• Strategy — как именно агент работает: один вызов, последовательность шагов, граф и т.д. Можно использовать готовую стратегию, а можно писать свою.
• Ну и остальные настройки, типа system prompt и temperature

Дальше всё довольно гибко: захотели поменяли модель, захотели поменяли клиент, добавили/убрали tools, переключили стратегию. Даже если написали на клиенте, то управлять этим можно через некий конфиг. Код не разрастается, а поведение реально можно крутить.

Тут, конечно, особое внимание на безопасность на использование API ключей.

Отдельный плюс Koog: он Kotlin + KMP, поэтому нормально живёт в мобильной разработке. Я попробовал его на мобилке, гонял разные модели от OpenAI и Gemini до YandexGPT — в целом все складывается прикольно.

В итоге кода мало, эффект большой.

💬 А какие вы инструменты для написание агентов использовали? Писали руками? ADK? Koog? Что-то еще? Расскажите, мне это сейчас очень интересно!

#kotlin #kmp #ai #agents #koog #android #ios
👍8🔥5
🇰🇿 Увидимся в Алмате!

Друзья, на следующей неделе я буду в Алмате и выступлю на митапе GDG Almaty Spring Meetup!

Всех приглашаю там затусить! 💃

Я расскажу про Firebase AI, другие спикеры расскажут кучу всего интересного про AI! Приходите, пообщаемся, понетворкаемся!

Это будет:
• в среду, 11 марта, 19:00
• MOST IT Hub
📍 г. Алматы, ул. Ходжанова 2/2, БЦ Fortis

#GDG #Almaty #AI
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥13👍9😱2👏1🤮1