Автор приложения Elite Hoops и одного из популярных блогов про Swift и iOS-разработку, поделился своими результатами за год. Если кратко, то у него 860 платящих клиентов и $3,000 MRR. Если не кратко, то всего его выводы, как ни банально, сводится к маркетингу и тому, что им надо заниматься. Из интересного - маркетинг через побочный проект побочного проекта и Supabase для обратной связи в приложении.
Разработка
• Один год Elite Hoops: 12 маленьких уроков
• Integrating Appium and Cypress for Unified Test Automation
• Code review antipatterns
Маркетинг
• 17 Издание Индекса эффективности от AppsFlyer
• Топ быстрорастущих приложений в России в октябре
Кроссплатформа
• Kotlin Multiplatform Developer Roadmap — план изучения Kotlin Multiplatform
• Самые важные пакеты в экосистеме Dart и Flutter на Pub 2024
• Как подружить Flutter и Huawei — настраиваем App Gallery. Часть 1
• Не пытайтесь динамически загружать код в ваше Flutter-приложение
• oleksandr.kriatov/automated-code-analysis-for-flutter-integrating-sonarcloud-with-github-actions-e82cfe951620">Automated Code Analysis for Flutter: Integrating SonarCloud with GitHub Actions
• kerry.bisset/trying-to-start-a-multiplatform-company-store-with-kotlin-rpc-koin-ktor-and-wasm-57d60a356e01">Trying to Start a Multiplatform Company Store with Kotlin RPC, Koin, Ktor, and WASM
iOS
• Swift Testing: How to Test Your iOS App’s Network Layer
• Calculating the semantic distance between words with the Natural Language framework
• What was early iOS development like
Android
• Тесты для функций Compose в Amdroid
• kerry.bisset/understanding-the-impact-of-multiple-navhosts-on-back-navigation-and-viewmodel-management-in-fe63a9b73f45">Understanding the Impact of Multiple NavHosts on Back Navigation and ViewModel Management in Jetpack Compose
• himv1998/swiggy-sde-2-inteview-experience-android-7906956a924a">SWIGGY SDE-2 Inteview Experience (Android)
• Android Studio Ladybug Feature Drop
• myofficework000/7-kotlin-flow-operators-that-you-must-know-62eb726e3ff4">7 Kotlin Flow Operators that you must know
#ios #android #mobile #dev
Рассказывают, что Google работает над официальным способом запуска Linux-приложений на Android. Весь способ будет сосредоточен в приложении Terminal, которое является частью Android Virtualization Framework (AVF) и содержит WebView, который подключается к виртуальной машине Linux на локальном IP-адресе, позволяя вам выполнять команды Linux с Android-хоста. Изначально приходилось вручную включать это приложение Terminal с помощью команды оболочки, а затем самостоятельно настраивать виртуальную машину Linux. Сейчас Google работает над тем, чтобы Terminal стал универсальным приложением, которое загружает, настраивает, запускает и взаимодействует с экземпляром Debian в виртуальной машине. Зачем нам Linux приложения? Ну, например, на Chromebook-ах работает Linux-версия Android Studio (правда, в версии для x86, в отличие от большинства Android на ARM). Так что, вероятно, это некий шаг в сторону разработчиков и превращения Android-устройств в более полезные терминалы.
Разработка
• Путь тестировщика: ошибки, опыт, деньги
• Мобильная разработка в Алисе и YaOS: как это работает
• Перформанс мобильных приложений
• Дизайн-система 2.0: менеджеры нужны
• Двое за ноутом, не считая copilot’а, или Как внедрить парное программирование
• Так много тимлидов хороших и разных. А я какой?
• Стартап мечты превратился в кошмар
• LinkedIn сообщает о 10 миллионах фрилансеров на Services Marketplace
• 3 Career Principles that got me to Director at Google
Маркетинг
• Самые скачиваемые и зарабатывающие приложения в мире в сентябре 2024
• Как определить целевую аудиторию и повысить охваты вашего мобильного приложения: полное руководство
• Elite Hoops Year One: 12 Bite-Sized Lessons
• How Uber Eats makes you think you want to order food
Кроссплатформа
• Flutter Web глазами мобильного разработчика
• Building a Cross-Platform Camera App with CameraK and Compose Multiplatform
• Making Compose Multiplatform apps feel at home: removing ripple animation on iOS
#mobile #dev
iOS
• Создаем анимацию печати текста на печатной машинке в SwiftUI
• TinyStorage — простая и легкая замена UserDefaults для постоянного хранения данных
• Собеседование iOS-разработчика: проектирование и лайфкодинг
• Introducing Recap: What's Old Is What's New Again
• uwaisalqadri/maintaining-syntactic-sugar-for-optional-in-swift-dfb7f9019fba">Maintaining Syntactic Sugar for Optional in Swift
• Replacing Fastlane with Shell scripts
• Security-scoped bookmarks for URL access
• SaezChristopher/%EF%B8%8F-how-we-reduced-the-build-time-by-2-with-out-xcode-at-shopmium-part-1-f66f6ec51b05">How we reduced the build time by 2 with(out) Xcode at Shopmium
#ios
Видео и подкасты за неделю @AppFiles
• (iOS Ru)
Собеседование iOS-разработчика: проектирование и лайфкодинг (+ все собеседования)
• (iOS En)
Improve Scroll Transitions | SwiftUI
• (iOS En)
Grid Multi-Selection using Pan Gesture | SwiftUI
• (iOS En)
How to Fix UIKit and SwiftUI Menu Buttons (make them easier to tap)
• (iOS En)
TDD Basics with SwiftUI
• (iOS En)
Adopt iPhone 16 Camera Control into your SwiftUI App
• (iOS En)
WWDC22: Design protocol interfaces in Swift
• (And En)
Now in Android: 110 - Android 15, Credential Manager, Android Studio Koala, Compose for TV
• (And En)
FULL Guide to Kotlin's Inline Keyword (inline, crossinline & noinline)
• (And En)
Micro Open Source: From Passion to Pet Project Publication
• (Crs Ru)
Flutter Web глазами мобильного разработчика
• (Crs En)
Build a Book Library App for Android & iOS using ROOM KMP (MVVM)
• (Dev Ru)
Мобильная разработка в Алисе и YaOS: как это работает
• (Dev Ru)
Путь тестировщика: ошибки, опыт, деньги
• (Dev Ru)
Перформанс мобильных приложений
• (Dev Ru)
Дизайн-система 2.0: менеджеры нужны
• (Dev Ru)
Двое за ноутом, не считая copilot’а, или Как внедрить парное программирование
• (Dev Ru)
Так много тимлидов хороших и разных. А я какой?
• (Dev Ru)
Стартап мечты превратился в кошмар
• (Dev En)
Databases In-Depth – Complete Course
• (Dev En)
Electron Course - Code Desktop Applications (inc. React and Typescript)
• (Dev En)
AWS Certified AI Practitioner (AIF-C01) – Full Course to PASS the Certification Exam
#ios #android #mobile #video
Android
• Android 16 может позволить вам поместить любое приложение в плавающий пузырь
• Selenoid на Android – от А до Я
• Авто-трекинг производительности Room Database
• kappdev/how-to-create-a-pulse-effect-in-jetpack-compose-265d49aad044">How to Create a Pulse Effect in Jetpack Compose
• The day we (almost) lost 1,000 customers
• sc128496/bypassing-multiple-checks-on-android-applications-a-security-researchers-experience-2ec1a3005b60">Bypassing Multiple Checks on Android Applications: A Security Researcher’s Experience
#android
Выиграй 4 000 000 ₽ на True Tech Champ
МТС приглашает опытных и начинающих разработчиков поучаствовать в чемпионате. В треке «Программирование роботов» нужно будет создать алгоритм для прохождения лабиринта. Победит тот, чей робот окажется самым быстрым. При этом не обязательно разбираться в устройстве роботов: эксперты трека уже сконструировали их и создали прошивку. Для участия достаточно уметь программировать на одном из языков: С++, C#, Go, Python, JS, Java.
Регистрация открыта до 12 октября, отборочные онлайн-этапы уже стартовали!
До финала смогут дойти на равных разработчики вне зависимости от стека или уровня: питонисты или джависты, джуны или сеньоры. А с полуфиналов начнётся командный этап — можно собрать свою дримтим.
Участникам дадут доступ к API и подробные инструкции. Эксперты трека будут помогать, направлять и отвечать на вопросы на вебинарах.
Зарегистрироваться можно по ссылке.
Android
На Medium статья "10 причин НЕ использовать Jetpack Compose" собрала 139 апвоутов, но все ее положения опровергли в первом же комментарии. До которого я добрался только переведя всю статью. Оказалось, что за хайповым заголовком скрывается хайповый же контент в стиле "О Боже, придется переписать тесты". Ну надо же, кто бы мог предположить. Прочитайте хотя бы чтобы мне просмотров нагнать ☺️
• 10 причин НЕ использовать Jetpack Compose
• Паря в космосе: анимации с помощью Compose и Canvas
• Transcribro — распознавание речи на устройстве
• Как улучшить качество WebRTC-звонков на примере сервиса VK Звонки
• Introducing Ink API, a new Jetpack library for stylus apps
• Mastering FileProvider in Android: Secure File Sharing Explained
• Place Scope Handling on Auto-Pilot with Koin & Compose Navigation
• Drawing Custom Alerts on Top of Bottom Sheets in Jetpack Compose
• Upgrading from AGP 7.4.1 to 8.5.2: A Developer’s Diary
#android
Ночной кошмар любого разработчика - посыпавшаяся база данных в приложениях у клиентов. В первой статье случай более легкий, просто не восстанавливался бэкап, но все равно, холодным потом покрыться можно. Впрочем, исправление оказалось довольно простым (дампим старую - создаем новую), так что покрыться ненадолго. Главная фраза статьи: “low-end Android — странные звери” 🤖
Разработка
• Восстановление базы для миллионов пользователей
Маркетинг
• Revyze — «TikTok для образования» — перенимает методики Duolingo
• Что такое Product-Market Fit
• How to get started with User-Generated Content
Кроссплатформа
• Что такое Home-виджеты и как их подружить с вашим приложением на Flutter
• Build a Book Library App for Android & iOS using ROOM KMP (MVVM)
• Advanced Flutter Techniques Every Mobile Developer Should Know
• Qt 6.8 LTS Released!
• Building offline-first mobile apps with Supabase, Flutter and Brick
#mobile #dev
iOS
• Реализация Shared With You в SwiftUI
• Swipe Cell SwiftUI — swipe-to-reveal для SwiftUI
• Virtualizing iOS on Apple Silicon
• Supporting Interactive Input in CLI Tools Using Property Wrappers
• Transcribing audio from live audio using the Speech framework
• Using Binaries as Libraries
• Announcing the Swift Student Challenge 2025
#ios
Discord интересно пишет о том, как они сокращали трафик к мобильным и не очень клиентам. В основу положили новых механизм компрессии, который немного потюнили (и кстати, не всегда, успешно). Кроме того, значительно уменьшили передачу данных пассивным сессиям. А в результате получилась экономия трафика на 40%.
Разработка
• Как Discord сократил Websocket трафик на 40%
• Уволить нельзя терпеть
• Lua – идеальный встраиваемый язык
• OpenAI запускает «Холст» для программирования с ChatGPT
• Лучшие 14-дюймовые ноутбуки 2024
• MongoDB Atlas Data API End-of-Life and Deprecation
• Building an Uber clone
• Does it scale (down)?
Маркетинг
• Музыкальный эксперимент TikTok внезапно завершился
• Доходы от приложений с подпиской достигли нового рекорда
Кроссплатформа
• Что такое covariant в Dart
• Build Your First Android and iOS Mobile App With Kotlin Multiplatform
#mobile #dev
iOS
• LinksKit — удобное представление SwiftUI для отображения общих ссылок
• Как мы запекали 3D-пиццу
• Есть ли ORM круче SwiftData
• Макросы спустя полгода: не все так гладко
• DriverKit: гоняем данные по проводу без мам, пап и MFi
• Beware UserDefaults: a tale of hard to find bugs, and lost data
• Видео Server-Side Swift Conference 2024
• Why I Stopped Building for visionOS (And What Could Bring Me Back)
• What Are 3 Truths About Becoming Successful IOS Tech Lead?
• How to Make Menu Buttons Easy to Tap in UIKit and SwiftUI
• The perfect iOS networking layer does not exist
#ios
Почему рисуют звезды
Все-все новости и статьи за неделю - ускорение запуска приложений и спойлер-эффект кна Swift, сборщик метрик Android-проекта и рисование звезд, замена Firebase, идеальный встраиваемый язык, приложение для заметок, которое не стремится сделать вас более продуктивным и многое другое. Заходите!
С мест докладывают, что новый диалог шаринга контактов в iOS 18 подрывает виральность у социальных приложений. Ранее можно было либо делиться с приложением всем списком контактов, либо не делиться вообще. Сейчас все это уточнилось до контактов отдельных людей. И все стонут, что обмен контактами резко сократился. Никита Бир (TBH, GAS) говорит, что после вступления в силу изменений в iOS 18, а число пользователей, поделившихся 10 или менее контактами, выросло на 25%. Вывода два. Во-первых, если у вас упало количество шарингов, то это у всех, не переживайте. Во-вторых можно процитировать того же Бира: кажется, что хорошо продуманные продукты, использующие уникальные каналы распространения, все еще могут захватить мир — иногда за считанные дни. И гранулярный доступ к контактам вряд ли им будет препятствовать.
Разработка
• Poolside, занимающийся ИИ-программированием, привлек $500 млн
• ⅔ российских компаний используют ИТ-шеринг
• 3 совета для улучшения читабельности кода
• Why do programmers need private offices with doors?
• From Manual Pain to Automation Chaos: Finding the Right Balance
• Giving depth to your App Icons
Маркетинг
• Самые скачиваемые и зарабатывающие приложения в России в сентябре 2024
Кроссплатформа
• Texty — текст с различными стилями, эффектами и анимацией для Compose Multiplatform
• Multiplayer drawing with Flutter and Serverpod. Full tutorial.
#mobile #dev
🔨 iOS
• Почему ваша задача выполняется в главном потоке?
• Новый запрос на обмен контактами в iOS 18 стал угрозой для новых социальных приложений
• Как реализовать спойлер-эффект как в Telegram на Swift?
• Recreate Apple's Stopwatch: Mastering Millisecond Precision in SwiftUI
• How XcodeGen reduced the TDD in Swift codebase by 58,000+ lines
• How to Perfectly Merge SwiftUI and UIKit Navigation: A Step-by-Step Guide
• harish_rajora/how-to-use-accessibility-inspector-for-ios-apps-ba9f15efa7fd">How to Use Accessibility Inspector for iOS Apps
• CoreML in Action: From Concept to Code
• S.O.L.I.D. in Swift
#ios
🤖 Nvidia выпустила новое семейство больших мультимодальных языковых моделей NVLM 1.0, возглавляемое NVLM-D-72B с 72 миллиардами параметров. Сделав весовые коэффициенты моделей общедоступными и пообещав выпустить обучающий код, Nvidia отказалась от тенденции держать передовые ИИ-системы в закрытом доступе. Пишут, что выпуск NVLM 1.0 знаменует собой поворотный момент в развитии ИИ. Выкладывая в открытый доступ модель, конкурирующую с гигантами, Nvidia не просто делится кодом — она бросает вызов самой структуре индустрии ИИ. Вопрос теперь не в том, изменится ли ландшафт, а в том, насколько кардинально — и кто сможет достаточно быстро адаптироваться, чтобы процветать в этом новом мире открытого ИИ.
Разработка
• Nvidia открыла новую ИИ-модель, готовую соперничать с GPT-4
• Aspect Build получил $3.85M на улучшение работы с Bazel
• Разработчики получают мало пользы (если вообще что-то получают) от ИИ-помощников
• Когда в автомобиле нет системы GNSS…
• michalankiersztajn/3-must-have-tips-for-improving-code-readability-f7ec584e041c">3 Must-Have Tips for improving code readability
• Evolving GitHub Issue
• A Local-First Case Study
Маркетинг
• Maximize Your AppStore Success: Two Underutilized Apple Programs for Indies
Кроссплатформа
• Realistic folder opening animation in Flutter
• kshitizdayal14/2d-game-in-flutter-using-flame-af94731ec28e">2D Game in Flutter using Flame
#mobile #dev
Вот он – шанс погрузиться в разработку игр, если очень давно хочется!
Я много пишу про то, что игры - большая часть мобильного рынка и один из главных драйвер роста индустрии. Если вы еще не сделали свою первую игру, то самое время начать. RuStore, один из лидирующих магазинов приложений в России, проводит конференцию о мобильных играх.
RuStore Mobile Conf: GameDev — это площадка для общения и обмена опытом между разработчиками мобильных игр, бизнесом и экспертами индустрии. На конференции поговорят про все ключевые аспекты создания игр — от идеи до монетизации.
Участвуйте:
• Когда: 2 ноября;
• Совершенно бесплатно;
• Можно представить свою игру и получить фидбэк от спикеров.
Не упустите! Ссылку на регистрацию прикрепляю
Android
• Google готовится запустить Linux-приложения на AndroidДень, когда мы (почти) потеряли тысячу клиентов
• Зачем нужен crossinline — вопросы с собеседований
• Xbox начнет продажи игр в приложении для Android
• MusicSearch — песни, исполнители и все, что с ними связано
• Обходим ошибку в системных настройках печати на телефонах RealME
• Ktor 3.0 Is Now Available With New Features and Improved Performance
• michalankiersztajn/kotlin-design-patterns-builder-explained-b95f14ea730c">Kotlin Design Patterns: Builder Explained
• Seamless Real-Time Location Tracking with gRPC, Kotlin & Jetpack Compose
• One click dependencies fix
#android
Остерегайтесь парения в космосе
Вся разработка за неделю - странное поведение UserDefaults и признание Google Play монополией, анимации космоса и авто-трекинг производительности, роль продуктового дизайнера, как перехватывают зашифрованный HTTP-трафик, новый рекорд приложений с подпиской и многое другое. Заходите!
🔨 Автор статьи “Остерегайтесь UserDefaults” открыл прекрасное. Оказывается, iOS иногда все-таки шифрует данные в UserDefaults (как она решает что шифровать я так и не понял, но не суть). А расшифровать их можно только когда пользователь разблокировал устройство. Учитывая Live Activity на экране блокировки и предварительный разогрев приложений получаем превосходную коллизию, когда UserDefaults не может выполнять то, собственно для чего создавалась (например, получает даже не nil
, а 0
вместо количества заходов пользователя в приложение):
Суть UserDefaults в том, что он должен надежно хранить простые, нечувствительные данные, чтобы к ним можно было обратиться в любой момент. Тот факт, что теперь эта ситуация кардинально изменилась, и что ваше приложение может быть запущено фактически в любое время, делает ситуацию невероятно запутанной, опасной и трудной для отладки.
iOS
• Остерегайтесь UserDefaults: история о труднопонимаемых ошибках и потерянных данных
• Пишите на Swift как Apple
• DevTutor for SwiftUI — примеры SwiftUI
• Applying visual effects combined with scrolling in SwiftUI
• How to listen for property changes in an @Observable class using AsyncStreams
• Mastering Swift’s RunLoop: A Comprehensive Guide
• Mastering container views in SwiftUI. Values.
• dhairyavora_35186/swift-memory-handle-with-care-a-fun-dive-into-advanced-ios-memory-management-4a0b2792a5e5">Swift Memory: Handle with Care! A Fun Dive into Advanced iOS Memory Management
#ios
Разработка
• Бывшие члены команды Google Maps создали доску для совместной работы на основе ИИ
• «Яндекс» увеличил награду для охотников за ошибками в мобильных приложениях до миллиона рублей
• My First Game with Carimbo, My Homemade Engine, For my Son
• Cognitive Load is what matters
Маркетинг
• В приложение Philips Hue добавили дополненную реальность
Кроссплатформа
• Humble Opinion About Getx
iOS
• uwaisalqadri/write-swift-like-apple-4c4331cf140c">Write Swift Like Apple
• UserDefaults and Observation in SwiftUI: How to Achieve Precise Responsiveness
• Crafting a Typewriter Text Animation in SwiftUI
• Introducing Tiny Storage: a small, lightweight UserDefaults replacement
#ios
Android
• Google должен открыть Android для сторонних магазинов
• Hidden Gems of the Kotlin Standard Library - List
• Enhance Your App’s Performance: Optimizing API Calls with OkHttp Caching
• 10 reasons to NOT use Jetpack Compose
• nachare.reena8/a-deep-dive-into-android-hardware-backed-keystore-3b0149356870">A Deep Dive into Android Hardware-Backed Keystore
#android
🤖 Google должен открыть Android для сторонних магазинов
Магазин приложений Google для Android является незаконной монополией - и теперь ему придется измениться.
Сегодня судья Джеймс Донато вынес окончательное решение по делу Epic против Google, предписав Google фактически открыть магазин приложений Google Play для конкурентов как минимум на три года. Google должен будет распространять конкурирующие магазины приложений сторонних разработчиков внутри Google Play, а также предоставить им доступ к полному каталогу приложений Google Play, если только разработчики не откажутся от этого в индивидуальном порядке.
Кроме того, начиная с 1 ноября 2024 года Google также должен:
• Прекратить требовать использовать Google Play Billing для приложений, распространяемых в Google Play Store.
• Позволить разработчикам Android рассказывать пользователям о других способах оплаты в Play Store.
• Разрешить разработчикам Android размещать ссылки на способы загрузки их приложений за пределами Play Store.
• Разрешить разработчикам Android устанавливать свои собственные цены на приложения независимо от Play Billing.
И нельзя будет:
• Делиться доходами от приложений «с любым физическим или юридическим лицом, которое распространяет приложения для Android» или планирует запустить магазин приложений или платформу для приложений.
• Предлагать разработчикам деньги или льготы за эксклюзивный или первый запуск их приложений в Play Store.
• Предлагать разработчикам деньги или льготы, чтобы они не запускали свои приложения в конкурирующих магазинах.
• Предлагать производителям устройств или операторам связи деньги или льготы за предустановку Play Store.
• Предложите производителям устройств или операторам связи деньги или льготы за отказ от предустановки конкурирующих магазинов
По идее, Google по-прежнему будет контролировать безопасность и надежность. В судебном запрете говорится, что Google может «принять разумные меры», которые являются «строго необходимыми и узкоспециализированными» и «сопоставимы» с тем, как компания сейчас регулирует работу Google Play Store. Кроме того, Google сможет взимать плату за такие меры.
Сам Google заявляет, что изменения приведут к «целому ряду непредвиденных последствий, которые навредят американским потребителям, разработчикам и производителям устройств». Компания будет подавать апелляцию и просить о приостановке всех этих мер.
Дополнительное чтение: как Google проиграл там, где Apple выиграла
Android
• KLogX — логирование для Kotlin
• Как грузить данные во ViewModel?
• Делегаты и делегированные свойства в Kotlin
• Как перехватывают зашифрованный HTTS-трафик на мобильном устройстве
• Mastering FileProvider in Android: Secure File Sharing Explained
• domen.lanisnik/pull-to-refresh-with-compose-material-3-26b37dbea966">Pull to Refresh with Compose Material 3
• Expandable FlowRow with Indicator
• Coil: My Favorite Image Loading Library for Jetpack Compose
• Repairing database on the fly for millions of users
#android
Яндекс снял мини-сериал про мобильную разработку
Здесь Алексей Гладков, автор блога Mobile Developer, и 7 топовых разработчиков из Яндекса будут вместе пилить пет-проект с дедлайном в [ДАННЫЕ УДАЛЕНЫ]. На всё про всё у них есть 4 эпизода. В финале покажем, что из этого получилось.
В первой серии ребята устроили смертельную битву Flutter vs Kotlin. Противостояние зашло так далеко, что пришлось бегать по офису и доставать вопросами разработчиков, роботов-доставщиков и даже одного случайного Романа Елизарова.
В следующих сериях: выбор между монолитами и многомодульностью, ТЗ маркером на доске, мучительные выборы тимлида и проработка фич.
Первую серию нашего мини-ситкома про технологии, факапы и их решения смотрите на канале YandexforMobile/?erid=2SDnje3vvTc">Yandex for Mobile.
Видео и подкасты за неделю @AppFiles
• (iOS Ru)
Как мы запекали 3D-пиццу
• (iOS Ru)
Есть ли ORM круче SwiftData
• (iOS Ru)
Макросы спустя полгода: не все так гладко
• (iOS Ru)
DriverKit: гоняем данные по проводу без мам, пап и MFi
• (iOS En)
Recreate Apple's Stopwatch: Mastering Millisecond Precision in SwiftUI
• (iOS En)
Видео SwiftCraft 2024
• (iOS En)
Alternative App Icons in Xcode 16
• (iOS En)
New in Xcode16: the macro @Previewable
• (iOS En)
SwiftUI - Support Prior iOS Versions - Backward Compatibility
• (iOS En)
Embedded Swift and 16x16 LED Matrix Animation Overview
• (iOS En)
Preview Updates in Xcode 16
• (iOS En)
Auto Scrolling Infinite Carousel - iOS 18
• (And En)
Integrating the Gemini API in Android
• (And En)
How to Navigate From ViewModels With a Custom Navigator
• (And En)
Android Application with Microsoft Identity Platform
• (And En)
Applying the Factory Method and Abstract Factory Patterns in Kotlin
• (Crs En)
Multiplayer drawing with Flutter and Serverpod. Full tutorial.
• (Dev Ru)
Уволить нельзя терпеть
• (Dev Ru)
Lua – идеальный встраиваемый язык
• (Dev En)
The reality of the developer job market with ex-Googler YK Sugi
#ios #android #mobile #video
🧰 Android
• Новый подход к безопасному управлению состояниями в Kotlin-приложениях
• A quick glance at AppWidget
• jhavidit/implementing-type-safe-multi-module-nested-navigation-in-bottom-navigation-using-jetpack-compose-890576c0bebf">Implementing Type-Safe Multi-Module Nested Navigation in Bottom Navigation using Jetpack Compose
• Weather App For Android Wear OS Using Compose
• How to “Safely” Migrate from Retrofit to Ktor
#android
Пишите больше «бесполезных» программ
После моей последней статьи в блоге о Hurl (новый язык программирования) кто-то спросил меня, и я цитирую: «… зачем?». Простой ответ — «ради шутки». Но более длинный ответ заключается в том, что бесполезное программное обеспечение — это фантастический способ исследовать и испытывать радость от компьютеров. Игра — важная часть исследования и радости.
—
#самоповтор из 2023 года. Поделитесь в комментариях, что бесполезно интересного вы написали за последнее время?
🧰 Android
• Gemini Nano теперь доступен на Android в экспериментальном режиме
• Как устроен сборщик метрик Android-проекта
• Using kotlin-inject in a Kotlin/Compose Multiplatform project
• Factory Method and Abstract Factory Patterns in Kotlin
• How to bring your AI Model to Android devices
#android