"alert": {
"body": "Всем привет!"
}Нужны красивые push-уведомления с картинками, кнопочками или полностью кастомным UI?
Дима Шадрин рассказал, как это реализовать без регистрации и смс.
https://youtu.be/Av0MQBNQ4Xw
Привет! Решили достать из ящика залежавшийся небольшой обзор KMM (Kotlin Mobile Multiplatform), сделанный сразу после выхода в альфу.
Полезно будет тем, кто практически не в курсе что такое KMM:
- Что это в 2х словах 🤘
- Что там в плагине для Android Studio 🥽
- Ммм, плагин помогает настроить проект и запустить и подебажить на симуляторе iOS
- Упоминание Flutter (кстати, всё по теме) 😁
- Плюсы/минусы
🍿 Посмотреть: https://youtu.be/qdJmLk6SUm0
Полезно будет тем, кто практически не в курсе что такое KMM:
- Что это в 2х словах 🤘
- Что там в плагине для Android Studio 🥽
- Ммм, плагин помогает настроить проект и запустить и подебажить на симуляторе iOS
- Упоминание Flutter (кстати, всё по теме) 😁
- Плюсы/минусы
🍿 Посмотреть: https://youtu.be/qdJmLk6SUm0
YouTube
Kotlin Multiplatform Mobile. Краткий обзор
Краткий обзор на Kotlin Multiplatform Mobile после его выхода в альфу. Макс собрал инфу и рассказал впечатление:
- Круто, как и всё от JB 🤘
- Что там в плагине для Android Studio 🥽
- Ммм, плагин помогает настроить проект и запустить и подебажить на симуляторе…
- Круто, как и всё от JB 🤘
- Что там в плагине для Android Studio 🥽
- Ммм, плагин помогает настроить проект и запустить и подебажить на симуляторе…
Привет! Уже приходилось внедрять сервисы Huawei? 🇨🇳
Если нет, то делимся опытом нашей команды:
- Как выбирали подход к интеграции 🥽
- Как подключить HMS
- Особенности и ньюансы сервисов: Maps, Location, Push, Account, Сrash 🧐
- Puzzlers! Самые неоднозначные моменты при интеграции и как с ними справиться 🧩
🥡 Полезного просмотра: https://youtu.be/RaQMvKx-FKk
PS. Досмотрите до паззлеров, там есть очень забавные штуки 😁
Если нет, то делимся опытом нашей команды:
- Как выбирали подход к интеграции 🥽
- Как подключить HMS
- Особенности и ньюансы сервисов: Maps, Location, Push, Account, Сrash 🧐
- Puzzlers! Самые неоднозначные моменты при интеграции и как с ними справиться 🧩
🥡 Полезного просмотра: https://youtu.be/RaQMvKx-FKk
PS. Досмотрите до паззлеров, там есть очень забавные штуки 😁
YouTube
Huawei Mobile Services
Обзор нашего опыта добавления Huawei Mobile Services в проект. Женя делится опытом команды:
- Как выбирали подход к интеграции 🥽
- Как подключить HMS
- Особенности и ньюансы сервисов: Maps, Location, Push, Account, Сrash
- Puzzlers! Самые неоднозначные моменты…
- Как выбирали подход к интеграции 🥽
- Как подключить HMS
- Особенности и ньюансы сервисов: Maps, Location, Push, Account, Сrash
- Puzzlers! Самые неоднозначные моменты…
Привет 👋
Не забыли, что помимо Mac 💻, iPhone 📱 и Watch ⌚️ Apple все еще выпускает крышесносные iPad?
Саша Чекель рассказал про крутые возможности iPadOS и как можно использовать iPad в роли компьютера.
К вашему вниманию:
https://youtu.be/dLRv5zfjOrc
Не забыли, что помимо Mac 💻, iPhone 📱 и Watch ⌚️ Apple все еще выпускает крышесносные iPad?
Саша Чекель рассказал про крутые возможности iPadOS и как можно использовать iPad в роли компьютера.
К вашему вниманию:
https://youtu.be/dLRv5zfjOrc
YouTube
iPad как компьютер
iPad это просто большой iPhone, или у них все-таки есть какие-нибудь значительные отличия?
Саша Чекель рассказал нам про крутые фичи iPad и как его можно использовать в роли полноценного компьютера.
В докладе:
- Немного про size classes
- Инструменты для…
Саша Чекель рассказал нам про крутые фичи iPad и как его можно использовать в роли полноценного компьютера.
В докладе:
- Немного про size classes
- Инструменты для…
У нас растут команды Android и iOS, поэтому если хотите расти с нами, то напишите на hrspb@redmadrobot.com 🌳
Привет, друзья! Продолжаем совершенствоваться? 🤓
В этот раз рассказываем о практике внедрения Ktlint:
- О кодстайле и зачем автоматизировать проверку? ☝️
- Ktlint и отличие от форматирования кода в студии
- Знакомство с editorconfig
- Как настроить работу с Ktlint ⚙️
- Как внедрить в процесс разработки на CI 😎
📺 Посмотреть: https://youtu.be/cHzOTlEllVY
PS. Кому интересно, почему Jake Wharton не рекомендует использовать wildcard(*) import: https://github.com/android/kotlin-guides/issues/65
В этот раз рассказываем о практике внедрения Ktlint:
- О кодстайле и зачем автоматизировать проверку? ☝️
- Ktlint и отличие от форматирования кода в студии
- Знакомство с editorconfig
- Как настроить работу с Ktlint ⚙️
- Как внедрить в процесс разработки на CI 😎
📺 Посмотреть: https://youtu.be/cHzOTlEllVY
PS. Кому интересно, почему Jake Wharton не рекомендует использовать wildcard(*) import: https://github.com/android/kotlin-guides/issues/65
YouTube
Ktlint: практика внедрения
Автоматизируем проверку стиля кода на проекте. Виталик рассказал о практике внедрения Ktlint:
- Что такое кодстайл и зачем автоматизировать его проверку?
- Ktlint и отличие от форматирования кода в студии
- Знакомство с editorconfig
- Как настроить работу…
- Что такое кодстайл и зачем автоматизировать его проверку?
- Ktlint и отличие от форматирования кода в студии
- Знакомство с editorconfig
- Как настроить работу…
С наступающим 2021 годом!
Если у вас всё уже готово к празднику и есть свободные 15 минут, то мы нашли не опубликованный ранее митап!
В нём Миша рассказал о Scoped Storage и почему не стоит его бояться:
- Освежим способы обращения к файлам 📖
- Моменты из практики 😎
- Чек-лист для проверки ✅
- Про пермишены
- О миграции ➡️
🎄Успеть посмотреть: https://youtu.be/YVniFfQ83dU
PS. На 2x быстрее 🎅
Если у вас всё уже готово к празднику и есть свободные 15 минут, то мы нашли не опубликованный ранее митап!
В нём Миша рассказал о Scoped Storage и почему не стоит его бояться:
- Освежим способы обращения к файлам 📖
- Моменты из практики 😎
- Чек-лист для проверки ✅
- Про пермишены
- О миграции ➡️
🎄Успеть посмотреть: https://youtu.be/YVniFfQ83dU
PS. На 2x быстрее 🎅
Привет! Празднуете? 🎄🍬🍾
А мы подготовили подарочек: Ещё один митап про Gradle!
🎁 Дима уже делал объемный доклад по фичам, а теперь решил дать практические советы по работе с Gradle:
- IDE не поможет 🙅♂️
- naming-сonventions
- Аргументы за Kotlin для скриптов 🦾
- Как правильно шарить зависимости между подпроектами 👍
- Обновление версий зависимостей
- Используйте конфигурации, чтобы не включать в релиз лишний код 💡
- О структуре проекта (базовые модули)
- Про matchingFallbacks
- Убирайте лишние build variant'ы 🧹
- Не всегда нужен android plugin ☝️
- Красивые номера сборок на CI
🎅 Ho-ho-ho, Gradle: https://youtu.be/Amjn9gVvPHo
А мы подготовили подарочек: Ещё один митап про Gradle!
🎁 Дима уже делал объемный доклад по фичам, а теперь решил дать практические советы по работе с Gradle:
- IDE не поможет 🙅♂️
- naming-сonventions
- Аргументы за Kotlin для скриптов 🦾
- Как правильно шарить зависимости между подпроектами 👍
- Обновление версий зависимостей
- Используйте конфигурации, чтобы не включать в релиз лишний код 💡
- О структуре проекта (базовые модули)
- Про matchingFallbacks
- Убирайте лишние build variant'ы 🧹
- Не всегда нужен android plugin ☝️
- Красивые номера сборок на CI
🎅 Ho-ho-ho, Gradle: https://youtu.be/Amjn9gVvPHo
Привет! Все же слышали уже о Clubhouse?
Есть рецепт: включаете видео c нашего канала, закрываете глаза и представляете, что вы с нами на созвоне 😆
Как раз опубликовали наше обсуждение старого доклада Дяди Боба о профессионализме в разработке:
- Молодая индустрия. (А какой у вас опыт разработки?👨🦳)
- Ремесло программиста 🛠
- Короткие итерации (не только спринты) ♻️
- Не будьте заблокированы 😉
- Кричащие архитектуры
- Постепенное улучшение. Без полных переписываний 🥾
- Чистый код 👓
- Делайте быстро vs Делайте хорошо
- Мысли про TDD и бухгалтерию
- QA не должны находить баги 🐞
- Уметь говорить "Нет"
👋 Присоединяйтесь: https://youtu.be/bG5pPc0aqaQ
Есть рецепт: включаете видео c нашего канала, закрываете глаза и представляете, что вы с нами на созвоне 😆
Как раз опубликовали наше обсуждение старого доклада Дяди Боба о профессионализме в разработке:
- Молодая индустрия. (А какой у вас опыт разработки?👨🦳)
- Ремесло программиста 🛠
- Короткие итерации (не только спринты) ♻️
- Не будьте заблокированы 😉
- Кричащие архитектуры
- Постепенное улучшение. Без полных переписываний 🥾
- Чистый код 👓
- Делайте быстро vs Делайте хорошо
- Мысли про TDD и бухгалтерию
- QA не должны находить баги 🐞
- Уметь говорить "Нет"
👋 Присоединяйтесь: https://youtu.be/bG5pPc0aqaQ
YouTube
Профессионализм в разработке
Обсудили тезисы старого доклада от Дяди Боба (https://youtu.be/zwtg7lIMUaQ) про профессионализм в разработке:
- Молодая индустрия. (А какой у вас опыт разработки?👨🦳)
- Ремесло программиста 🛠
- Короткие итерации (не только спринты) ♻️
- Не будьте заблокированы…
- Молодая индустрия. (А какой у вас опыт разработки?👨🦳)
- Ремесло программиста 🛠
- Короткие итерации (не только спринты) ♻️
- Не будьте заблокированы…
Привет! Как вы знаете, JFrog закроет Jcenter и Bintray. Делимся своим обсуждением:
- Откуда Gradle берет зависимости 🙄
- Сроки закрытия Jcenter and Bintray ⏳
- Что же делать разработчикам?
- Обзор альтернатив с плюсами и минусами (Maven, Jitpack, Github) 🪑🪑
🌅 Смотреть тут: https://youtu.be/5OIhOj4i0Q4
- Откуда Gradle берет зависимости 🙄
- Сроки закрытия Jcenter and Bintray ⏳
- Что же делать разработчикам?
- Обзор альтернатив с плюсами и минусами (Maven, Jitpack, Github) 🪑🪑
🌅 Смотреть тут: https://youtu.be/5OIhOj4i0Q4
YouTube
Хранение "бинарей"
Небольшой доклад о том, что делать и чем пользоваться после закрытия Bintray и Jcenter:
- Откуда Gradle берет зависимости 🙄
- Сроки закрытия Jcenter and Bintray ⏳
- Что же делать разработчикам?
- Обзор альтернатив с плюсами и минусами (Maven, Jitpack, Github)…
- Откуда Gradle берет зависимости 🙄
- Сроки закрытия Jcenter and Bintray ⏳
- Что же делать разработчикам?
- Обзор альтернатив с плюсами и минусами (Maven, Jitpack, Github)…
red_mad_dev
Привет! Празднуете? 🎄🍬🍾 А мы подготовили подарочек: Ещё один митап про Gradle! 🎁 Дима уже делал объемный доклад по фичам, а теперь решил дать практические советы по работе с Gradle: - IDE не поможет 🙅♂️ - naming-сonventions - Аргументы за Kotlin для скриптов…
Привет!
Сегодня у нас на хабре вышла статья по Gradle Tips and Tricks (аналог митапа)! 🤘
https://habr.com/ru/company/redmadrobot/blog/544630/
Сегодня у нас на хабре вышла статья по Gradle Tips and Tricks (аналог митапа)! 🤘
https://habr.com/ru/company/redmadrobot/blog/544630/
Хабр
Советы по работе с Gradle для Android-разработчиков
Всем привет! Я пишу приложения под Android, в мире которого система сборки Gradle является стандартом де-факто. Я решил поделиться некоторыми советами по работе с системой с теми, у кого нет чёткого...
Продолжаем сезон статей! 📚 Виталик поделился опытом того, как нам не удалось переехать с
Читается очень интересно: https://habr.com/ru/company/redmadrobot/blog/544318/
card.io на CameraX+ML Kit.Читается очень интересно: https://habr.com/ru/company/redmadrobot/blog/544318/
Хабр
CameraX+ML Kit для распознавания номера карты в действии
Привет, меня зовут Виталий Беляев, я Android-разработчик в red_mad_robot. В этой статье я расскажу про опыт интеграции CameraX с ML Kit на замену библиотеки card.io, и что в итоге из этого получилось....
Как связана технология Bluetooth с черникой и датским королём?
Ответ на этот вопрос вы найдете в докладе Олега Соловьева про Bluetooth в iOS.
Милости просим:
https://youtu.be/-Gfe2lrqrl0
Ответ на этот вопрос вы найдете в докладе Олега Соловьева про Bluetooth в iOS.
Милости просим:
https://youtu.be/-Gfe2lrqrl0
YouTube
Bluetooth в iOS
Все знают про технологию Bluetooth, но не у всех доходили руки ее поковырять. Олег Соловьев из питерского офиса, рассказал что это такое и как с этим работать.
Привет!
Мы тут попробовали новый формат "хаотичное изучение" на примере корутин в Kotlin. 🤠
Прошлись по темам и советам из best practices:
- Inject Dispatchers,
- Dispatcher,
- withContext,
- NonCancellable,
- viewModelScope и другие,
- Делай suspend функции main-safe,
- ViewModel должна создавать корутины,
- StateFlow и SharedFlow,
- Не показывай мутабельные типы,
- Как подписаться во view,
- Data и Domain слои показывают suspend и Flow,
- Cоздание корутин в Data и Domain слоях
🧰 Заглядывайте: https://youtu.be/cHERit7LNGM
Мы тут попробовали новый формат "хаотичное изучение" на примере корутин в Kotlin. 🤠
Прошлись по темам и советам из best practices:
- Inject Dispatchers,
- Dispatcher,
- withContext,
- NonCancellable,
- viewModelScope и другие,
- Делай suspend функции main-safe,
- ViewModel должна создавать корутины,
- StateFlow и SharedFlow,
- Не показывай мутабельные типы,
- Как подписаться во view,
- Data и Domain слои показывают suspend и Flow,
- Cоздание корутин в Data и Domain слоях
🧰 Заглядывайте: https://youtu.be/cHERit7LNGM
А вот и продолжение "хаотичного изучения" Kotlin корутин. 👨🌾
Рассмотрели:
- Как же создавать корутины в Data и Domain слоях
- coroutineScope и supervisorScope
- Job
- Deferred и async/await
- Использование внешнего скоупа
- Как создать внешний скоуп
- Избегай GlobalScope
- CoroutineScope
- CoroutineContext
- CoroutineScope vs CoroutineContext
- Делай свои корутины cancellable
- Помни про исключения
🧲 Притягивайтесь: https://youtu.be/6Apj_v9ZkBs
Рассмотрели:
- Как же создавать корутины в Data и Domain слоях
- coroutineScope и supervisorScope
- Job
- Deferred и async/await
- Использование внешнего скоупа
- Как создать внешний скоуп
- Избегай GlobalScope
- CoroutineScope
- CoroutineContext
- CoroutineScope vs CoroutineContext
- Делай свои корутины cancellable
- Помни про исключения
🧲 Притягивайтесь: https://youtu.be/6Apj_v9ZkBs
YouTube
Coroutines. Хаотичное изучение. Часть 2
Продолжение "хаотичного изучения" Kotlin Coroutines. 👨🌾
В этот раз обсудили такие советы и темы:
- Как же создавать корутины в Data и Domain слоях
- coroutineScope и supervisorScope
- Job
- Deferred и async/await
- Использование внешнего скоупа
- Как создать…
В этот раз обсудили такие советы и темы:
- Как же создавать корутины в Data и Domain слоях
- coroutineScope и supervisorScope
- Job
- Deferred и async/await
- Использование внешнего скоупа
- Как создать…
Нырнём чуть глубже 🏊♀️
Амир Зигангараев рассказал, показал и обсудил с коллегами как работает Memory Layout в Swift.
https://youtu.be/gh7eETKiKs0
Амир Зигангараев рассказал, показал и обсудил с коллегами как работает Memory Layout в Swift.
https://youtu.be/gh7eETKiKs0
Продолжаем погружение 🤿
Амир Зигангараев рассказал в своём докладе про Type Metadata в Swift.
Настала и ваша очередь узнать, что ещё может рассказать о себе каждый тип:
https://youtu.be/lF64jxSOcdw
Амир Зигангараев рассказал в своём докладе про Type Metadata в Swift.
Настала и ваша очередь узнать, что ещё может рассказать о себе каждый тип:
https://youtu.be/lF64jxSOcdw
Привет! Пока у нас затишье, поделимся дебютным youtube-видео наших братьев андроидов из московского офиса🤖
Это рассказ про всеми любимый Gradle в 2-х частях:
- Теория про проблемы, миграцию на Kotlin DSL, основные API 📚
- Live Coding собирающий все реальные косяки написания плагинов и задач Gradle 💻
▶️ Приятного просмотра: https://youtu.be/8tsSSIOFxZg
Это рассказ про всеми любимый Gradle в 2-х частях:
- Теория про проблемы, миграцию на Kotlin DSL, основные API 📚
- Live Coding собирающий все реальные косяки написания плагинов и задач Gradle 💻
▶️ Приятного просмотра: https://youtu.be/8tsSSIOFxZg
YouTube
Gradle "без боли" / Почему Kotlin DSL? / Пишем плагины - Осип Фаткуллин
Разбираемся для чего нужен Gradle, чем же плох Groovy и почему мы в red_mad_robot MSK переехали на Kotlin DSL. Разбираем какие есть неочевидные APIшки в Gradle про которые точно нужно знать если собираетесь писать плагины. А ещё будет много практики!
Первый…
Первый…
Привет! Давненько не делились. Наверное, во всём виновата жара в Питере 😅.
Зато мы с интересной темой о DataStore:
- Как обычно храним данные и минусы SharedPreferences 📚
- Что предлагает DataStore и в чем выигрыш ➕
- Preferences DataStore
- Пример работы, миграций, обсуждение ключей 📝
- Proto DataStore
- Пример работы с ним и выбора схемы 📝
- Обменялись мнениями о необходимости Proto DataStore 💬
🗄 Смотреть тут: https://youtu.be/3ijVgkm1QUk
Зато мы с интересной темой о DataStore:
- Как обычно храним данные и минусы SharedPreferences 📚
- Что предлагает DataStore и в чем выигрыш ➕
- Preferences DataStore
- Пример работы, миграций, обсуждение ключей 📝
- Proto DataStore
- Пример работы с ним и выбора схемы 📝
- Обменялись мнениями о необходимости Proto DataStore 💬
🗄 Смотреть тут: https://youtu.be/3ijVgkm1QUk
Привет!
А у нас появилась пара вакансий:
– Во-первых, хотим позвать 1 джуна и 1 начинающего мидла в Android команду.
С небольшим опытом, но большим желанием расти с нами 🚀
– А ещё расширяется iOS команда, ищет мидлов с 2+ лет опыта.
Чтобы делать крутые проекты и развиваться вместе 🦾
Если хотите сами или есть кто-то на примете – напишите на hrspb@redmadrobot.com ⛳️
А у нас появилась пара вакансий:
– Во-первых, хотим позвать 1 джуна и 1 начинающего мидла в Android команду.
С небольшим опытом, но большим желанием расти с нами 🚀
– А ещё расширяется iOS команда, ищет мидлов с 2+ лет опыта.
Чтобы делать крутые проекты и развиваться вместе 🦾
Если хотите сами или есть кто-то на примете – напишите на hrspb@redmadrobot.com ⛳️
Привет!
Недавно Дима поделился своими знаниями про возможности Firebase. И более подробно рассказал про Realtime Database.
Интересный обзор получился:
- Обзор Authentication 🔑
- Сравнение Realtime Database и Cloud Firestore ⚔️
- Обзор Cloud Storage
- Обзор Hosting
- Обзор и пояснение отличий Cloud Hosting сервисов ℹ️
- Обзор Cloud Functions 🤘
- Подробно о Realtime Database 🗄
- Rules (правила), впечатления из практики, rules playground
- Backups, легче простого
- Обсудили планы, цены и квоты
- Как работать с Realtime Database 👨💻
- Кратко про пагинацию с Firebase
👨💻 Посмотрите тоже: https://youtu.be/roavj5Gc0aI
Недавно Дима поделился своими знаниями про возможности Firebase. И более подробно рассказал про Realtime Database.
Интересный обзор получился:
- Обзор Authentication 🔑
- Сравнение Realtime Database и Cloud Firestore ⚔️
- Обзор Cloud Storage
- Обзор Hosting
- Обзор и пояснение отличий Cloud Hosting сервисов ℹ️
- Обзор Cloud Functions 🤘
- Подробно о Realtime Database 🗄
- Rules (правила), впечатления из практики, rules playground
- Backups, легче простого
- Обсудили планы, цены и квоты
- Как работать с Realtime Database 👨💻
- Кратко про пагинацию с Firebase
👨💻 Посмотрите тоже: https://youtu.be/roavj5Gc0aI
👍1