Dodo Mobile
4.47K subscribers
183 photos
35 videos
17 files
378 links
Канал о мобильной разработке в Dodo Brands. Канал ведёт Михаил Рубанов: @akaDuality

Вакансии https://dodobrands.notion.site/Dodo-Brands-a0e9e9ad779442a2aa322ddb52543d0a
Download Telegram
Как избежать утечек памяти при использовании Task, Combine, CurrentValueSubject и AsyncStream

Сегодня на гильдии разбирали асинхронщину в демо-проекте. Запускали в нем «тяжелую работу» разными способами и изучали, как это влияет на память.
И следом учились отменять эту тяжелую работу: стопали Task, наворачивали свой выход из выделенной DispatchQueue, отменяли подписки в правильный момент и переставали слушать AsyncStream.

Делимся записью во встречи с вами, потому что нам не жалко.

https://www.youtube.com/watch?v=g75oEjQ0eys
Интерфейсы в Apple Vision Pro

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

Но про интерфейсы очков я уже писал!
Forwarded from LikeaDuck🦆
#job #вакансия #додо

Наконец, поделюсь жемчужиной моих вакансий - QA Mobile Team Lead. Это - единственная вакансия, на которую не будет ссылок на формальное описание, все напишу здесь. Мы полностью переделываем наше мобильное приложение Dodo Pizza. Этим занимаются, в основном, 4 команды, в каждой из которых есть QA Mobile Engineer. Эти 4 команды объедены в юнит, на уровне которого есть главный Product Lead, отвечающий за все в нашем мобильном приложении, есть техлиды разработки, отвечающие за общий технический вижн всех 4 команд, и наконец, мы хотим что бы там же был QA Lead, отвечающий за процесс, метрики и результаты тестирования на уровне всего юнита.

Что это означает на практике? Что придется ходить в разные команды (те самые 4 фичатимы в рамках юнита), очень плотно взаимодействовать с QA инженерами в этих командах, лидировать общие точки в тестировании - мы хотели бы иметь общий бэклог багов, общую статистику по юниту в целом, а не по отдельным командам, хотели бы чаще общаться с саппортом. Конечно, где-то придется показывать не словом, а своим примером, но у нас все лидеры на это способны: так, я весь 2023 год активно контрибьютил в нагрузочные тесты на Java и занимался manual тестированием Drinkit, когда было некому. И все же, тебе не придется каждое утро на дэйли говорить "я вчера занимался...", но мы будем обсуждать с тобой конкретные метрики, цифры, удовлетворенность качеством приложения и вот это все. Это настоящая лидерская позиция, слово "Lead" тут не для галочки.

🙌 Пожалуйста, отзовитесь 🙌, если вы разбираетесь в мобильном тестировании, прочитали какую-нибудь книжку по менеджменту и если вас на работе оценивают не по тому, как вы поработали руками (сколько багов нашли или кейсов написали), а по тому, как поработала ваша команда и какие на выходе получились результаты у команды. Это очень, очень важная разница в майндсете. По технике у нас Kotlin + Kaspresso, Swift + XCUITest, GHA, AllureTestops, запускаем тесты на эмуляторах, тестируем на реальных устройствах + иногда на эмуляторах.
Сегодня встреча про доступность

Через несколько часов проведу эту встречу: пообщаемся с очень заряженными ребятами, приходите послушать.

И на курс проходите: мы уже десятый раз его проводим, материала со всех сторон огромное количество. Я на курсе тоже рассказываю все что знаю + разбираем ваши примеры, готовы закопаться в любой кейс
Сегодня, 7 февраля в 19:00 (по мск) пройдет второе мероприятие в рамках 5 конференции по цифровой доступности. Сегодня встретимся с теми, кто на своем энтузиазме продвигает тему инклюзии. Обсудим, как ребята пришли к этому, что помогает поддерживать мотивацию, как взаимодействуют с коллегами, в чем заключается их роль, с какими трудностями сталкиваются и как их преодолевают. Приходите!

А для тех, кому интересно
– глубоко погрузиться в пользовательский опыт людей с нарушением мотрики, зрения, слуха и другими особенностями,
– научиться понимать их ментальные модели и проектировать для них,
– создавать инклюзивный дизайн,
– уметь разрабатывать доступно
– и правильно тестировать
приходите к нам на курс по цифровой доступности Accessibility Unity, который стартует уже вот-вот, 17 февраля!
Пицца в AR

Запустили пепперони-сердце в дополненной реальности: пицца сама ляжет к вам на стол, вы сможете оценить ее размер, покрутить, увеличить, повешать на стену, сделать пиццу-одеяло, а в конце поделиться получившейся открыткой.

Посмотреть можно на iOS и Android, нужна последняя версия приложения. Продается не во всех пиццериях, посмотреть можно тут:
⁃ Елабуга (Россия),
⁃ Минск (Беларусь)
⁃ Астана (Казахстан).

Это тестовый запуск, поэтому очень важна обратная связь, пишите прямо в комментарии. Особенно интересно на каких телефонах тормозит или работает не так, как вы ожидаете.

Фан-факт: итоговая пицца занимает 3мб, это примерно размер всего 5-6 фотографий.

Посмотреть как работает
На ближайшей подлодке по андроиду от нас будет целых два мощных доклада: про перформанс и про AR!

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

И подпишитесь на канал Максима Качинкина, он там тоже розыгрыш устроил
Привет! Это Podlodka Crew, организатор онлайн IT-конференций.
25 марта стартует новый сезон по Android-разработке с темой «Оптимизация UI».
🟢 Узнаем, как улучшить производительность Android-приложений, избавившись от заикания интерфейса.
В докладе «JankStats: Лекарство от икоты для твоего UI» от Алексея Туркина мы рассмотрим инструмент JankStats для мониторинга UI-производительности, узнаем, как интегрировать его в проекты, анализировать данные и улучшать пользовательский опыт. Также рассмотрим, как использовать собранные данные для аналитики и понимания производительности приложения.
🟢 Попрактикуемся в использовании дополненной реальности в Android-разработке на примере Додо пиццы. Василий Галузин из Dodo engineering расскажет про возможности и производительность AR.
🟢 Попробуем использовать интегральные метрики производительности UI вместе с Павлом Воробкаловым из Яндекс. Наконец-то можно заменить тысячи метрик одной интегральной. Расскажем, как это делать и какие метрики из Web-разработки можно использовать для Android. Обучимся рассчитывать метрики с помощью Mobile Velocity Index.
🟢 Узнаем, как увеличивать производительность приложения с помощью Tracer. Создатель Tracer Кирилл Попов из VK в формате интервью ответит на вопросы об устройстве этого инструмента, объяснит суть и пользу профилирования приложений в проде.
🟢 Обсудим лучшие практики оптимизации Compose вместе с Антоном Хорошкевичем из Авито. Вместе рассмотрим основные аспекты производительности Compose на реальных кейсах. Научимся писать код так, чтобы не нарваться на проблемы.

Билеты уже на сайте:
https://podlodka.io/droidcrew

Поспеши забрать свой, чтобы досконально разобраться в производительности UI приложений. 📱
misha template.png
2.6 MB
Пятничный фотошоп-батл за респект: с нас шаблон, с вас мемы, результаты в сторис в чате, потом постом опубликую
Доступность потерпела неудачу?

Известный Якоб Нильсен подвел итог 30 лет доступности: ребят, ну не получилось же. И пофантазировал на тему того чем AI сможет помочь в проектировании интерфейса в будущем. Вроде бы все в этом логично, но в интернете статья просто взорвала всех, кто в теме: где-то передергиванием фактов, где-то ошибками, где-то перекладыванием отвественности.

Анжелика Герман перевела статью и собрала комментарии людей, которые хорошо погружены в тему. Я тоже рассказал что думаю: технологии не помогут, потому что нет людей, которые вкладываются в доступность, первопричина никуда не денется.

Прочитать
Подлодка: как дизайнить для скринридера

10 апреля расскажу как дизайнить для скринридера. Это будет интро-лекция в тему, расскажу:
⁃ почему для скринридера надо делать что-то дополнительно
⁃ какие свойства есть для настройки
⁃ посмотрим какие проблемы есть в приложении
⁃ адаптируем экран в приложении VoiceOver Designer
⁃ Проверим как работает прототип через скринридер

На встрече могу разобрать ваш интерфейс, скидывайте скриншот в комментарии

https://www.youtube.com/watch?v=0m9JCIQ-ves
С пылу с жару актуальный техрадар Додо Пиццы для iOS

Обновили техрадар на 2024. На нём показано какие инструменты мы уже активно используем, что лишь аккуратно пробуем, к чему присматриваемся на будущее, а так же от чего отказались и не хотим с этим больше общих дел иметь.

Вообще там не только про инструменты, но ещё и про техники, фреймворки и даже про платформы.

🧭 Посмотреть техрадар Додо Пиццы для iOS 2024

Глянуть FAQ, чтобы не запутаться в кольцах и квадрантах
Привет! На связи Podlodka Crew. Мы организовываем онлайн конференции по разным аспектам разработки.
Пришли рассказать вам про новый сезон конференции по iOS, который стартует уже 15 апреля.

Темой этого сезона мы особенно гордимся — это хардкорный UI.
Эксклюзивные доклады и воркшопы, спикеры с глубокой и уникальной экспертизой. Вместе мы обучимся сложным инструментам и узнаем как делать то, что не умеет большинство iOS-разработчиков.

Вас ждут знания, которыми мало кто владеет и ещё реже обучает:
💜 Создадим собственный графический редактор, освоим искусство превращать тачи в пиксели. Григорий Остробород расскажет как устроена «типичная рисовалка» интерфейса. Раскроет нюансы взаимодействия с пользователем и подскажет, где подстелить соломку на этом пути.
💜 Разберёмся с UICollectionViewLayout, UICollectionViewCompositionalLayout на мастер-классе с Александром Филимоновым. Рассмотрим, когда переходить на эти инструменты, попрактикуемся делать Layout красиво, изучим его влияние на скрол, анимации, производительность и доступность.
💜 Познаем тонкости работы с Unix-терминалом и выясним, как создавать удобные интерфейсы в командной строке с Владимиром Озеровым.

А еще вас ждет разбор инструментов для измерения перформанса таблиц, коллекций и кода

🔺Хотите вывести свой перфоманс на качественно новый уровень?
Тогда забирайте билет по ссылке:
https://podlodka.io/ioscrew
Please open Telegram to view this post
VIEW IN TELEGRAM
Я тоже буду на подлодке, расскажу как мы сделали 3д-пиццу: как сделать реалистичную модель, оптимизировать ее, как запустить это на телефоне и как сделать отзывчивые жесты в AR. По сути доклад сведется к «как за вечер прикрутить дополненную реальность».

У меня есть промокод на посещение, подарю тому, что в комментах расскажет клевую историю, как в работе помогла одна из наших статей. Мы их уже под 50 штук написали, попадание точно должно быть 😄
Граф, вы целы? 😧

Kodein DI — типичный представитель runtime фреймворков со всеми их особенностями и недостатками. Один из них, например, заключается в том, что свой граф он строит только при выполнении кода.

Что это значит на практике? Например, то, что о пропущенной зависимости вы узнаете непосредственно в процессе работы приложения. Только представьте: вы пропустили на регрессе какой-то кейс, и у вас случился краш в продакшене из-за DI! Настоящий кошмар, согласитесь?

Однако отказываться от Kodein ID и других runtime фреймворков не стоит. О том, почему мы продолжаем ими пользоваться, и как их сделать более надёжными, Максим Качинкин, наш Android Tech Lead, рассказал в своей третьей статье из цикла материалов про Kodein DI для Android.
250 тыщ на клавы

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

Смотреть на клавиатуры