SocialPeta опубликовала итоговое исследование по рынку мобильных игр и приложений за 2022 год
Отчет включает порядка 200 страниц аналитики. В ней содержатся маркетинговые данные о ситуации на глобальном рынке мобильных игр и приложений, обзор ситуации в регионах и в различных категориях, информация о чартах и трендах в создании креативов, а также прогнозы от Singular, Tenjin, Digital Turbine, Moloco, Storemaven, AdQuantum и других компаний.
Скачайте полный отчёт здесь:
https://www.socialpeta.com/academy/socialpeta-2022-mobile-marketing-whitepaper
Интересно, что в то время, как разработчики формируют целые экосистемы, Twitter закрывает бесплатный доступ к API. Сколько будет стоить полноценный доступ пока неизвестно, но Маск уже пошел на попятную - сказал для правильных ботов будет Write-only доступ бесплатно. Как будут измерять правильность тоже пока непонятно. В общем, колбасит человека знатно 🚬
Разработка
• Twitter закрывает бесплатный доступ к API
• Пренебрегаете Legacy кодом? Зря, потенциально это настоящая золотая жила для обучения
• Flutter Dev Podcast #39: Flutter и PWA
• Домашняя автоматизация растет — загрузки Home Assistant выросли на 122% за год
• Почему EA закрыла Apex Legends Mobile
• Ozon Tech Community A/B-testing Meetup
• Podlodka #305: цвета и цветовые пространства
• Slack Machine: боты для Slack
• В чем разница между unit и компонентным тестированием
• The ultimate guide to proper use of animation in UX
iOS
• Google готовит новый браузер для iOS на собственном движке
• Выручка Apple в 1 квартале 2023 снизилась на 5%
• Swift-код в качестве пользовательских команд LLDB
• Styling Components in SwiftUI
• A path of pain with URLCache eviction and subclassing
• Observing the content offset of a SwiftUI ScrollView
• How to cancel a background task in Swift
• From Zero to App Store With ChatGPT
• The Adapter Design Pattern in Swift
• A comprehensive guide to Coordinator Pattern in Swift
Android
• Несущиеся слоны: опыт Square в улучшении системы сборки для Android
• Dashlane Android Apps: открытые менеджеры паролей
• Jetpack Compose Battle: онлайн-собеседования Senior разработчика
• Introducing the Kotlin Playground
• Fundamentals of Compose layouts and modifiers
• Leveraging the Snapshot Mutation Policies of Jetpack Compose
• Composing the desktop
• Scheduling notifications in Android
• Provider Pattern in Jetpack Compose
• Building a Video Chat App: WebRTC on Android
Кроссплатформа
• Использование шейдеров во Flutter. Часть 2
• Animated Icons: The Missing Piece to Your Bottom Nav in Flutter & Rive
• felixdavid12/top-7-best-practices-in-flutter-1dc3ebd2a55">Top 7 best practices in Flutter
Новый большой еженедельный дайджест - 97 материалов за неделю. Прочитайте, обсудите, поставьте 👍, поделитесь, подпишитесь и все такое прочее, буду благодарен 😀
Читать полностью…Несущиеся слоны: опыт Square в улучшении системы сборки для Android
Это не техническое глубокое погружение. Наоборот, это высокоуровневый обзор того, что мы сделали, почему мы это сделали, что мы получили в результате усилий и почему мы считаем, что наш подход можно обобщить.
• Покажите мне данные
• Путешествие начинается
• Шардинг CI: особое примечание
• Серебряные пули
• Постепенные улучшения, накопление выгоды
buildSrc мертв. Да здравствует build-logic!
Будьте ленивыми
Удалите скрипты
Устраните межпроектную конфигурацию
Тестируйте свою сборку
Используйте кэш конфигурации
• Путешествие продолжается
• Шаблоны решений: серебряные пули и постепенная выгода
Статья: https://apptractor.ru/sqgrdl
Платформа: Android
Как мы сократили время запуска нашего iOS-приложения на 60%
Время запуска приложения является важным показателем для пользователей, поскольку это их первое взаимодействие с приложением, и даже незначительные улучшения могут иметь значительное влияние на пользовательский опыт. Первые впечатления являются важным фактором конверсии потребителей, а время запуска часто указывает на общее качество приложения. Кроме того, как показывают исследования, увеличение задержки равнозначно снижению продаж.
В DoorDash мы очень серьезно относимся к скорости запуска приложений. Мы одержимы оптимизацией опыта наших клиентов и постоянными улучшениями. В этой статье мы рассмотрим три отдельные оптимизации, которые сократили время, необходимое для запуска нашего iOS-приложения, на 60%.
1. Изменили String(describing:) на ObjectIdentifier()
2. Прекратили преобразовывать ненужные объекты в AnyHashable
3. Проверили инициализации сторонних фреймворков
Статья: https://apptractor.ru/drdsh60
Платформа: iOS
Привет, это команда Тинькофф 💡
Наше большое комьюнити мобильных разработчиков решает крутые задачи — создает высоконагруженные сервисы для 27 миллионов клиентов. Мы экспериментируем и ищем новые решения. Приглашаем в команду mobile-разработчиков с опытом от трех лет!
Работать с нами значит:
— не ограничивать свои скиллы и вводить в сервисы новые фичи;
— делать жизнь миллионов людей удобнее и технологичней;
— расти в грейде по скиллам, а не по стажу в компании;
— становиться заметным в комьюнити мобильных разработчиков.
А еще мы всегда «за» действительно комфортную работу. Поэтому большинство бытовых забот делегируем компании: от расширенного ДМС и юридической помощи до питания и разных активностей.
Откликнуться и узнать подробнее о команде mobile-разработчиков Тинькофф: https://l.tinkoff.ru/mobile.stream
Трендинговые репозитории GitHub за январь для языка Kotlin:
1. v2rayNG - клиент V2Ray для Android (+717)
2. ViMusic - стриминг музыки с YouTube Music (+709)
3. Now In Android - лучшие практики Android-разработки в новостном приложении Google (+671)
4. Tachiyomi - открытый ридер манга для Android (+539)
5. ChatGPT Android - чат с ИИ с использованием Stream Chat SDK для Compose (+442)
6. Сloudstream - стриминг и скачивание кино, сериалов и аниме (+410)
7. Seal -скачивание видео/аудио с YouTube (+385)
8. bv - приложение Android TV для Bilibili (+340)
9. Saikou - клиент Anilist с аниме и манга (+302)
10. BiliRoaming - клиент Bilibili с фишками и перками (+300)
11. Maestro - автоматизация тестирования UI (+258)
12. Matsuri - V2Ray/proxy toolchain для Android (+251)
13. Android Developer Roadmap - план развития Android-разработчика (+241)
14. Сompose JB - Compose Multiplatform от JetBrains (+232)
15. Balloon - всплывающие подсказки (+188)
16. Unciv - открытая «Цивилизация» (+186)
17. Ivy Wallet - приложение для управления деньгами с открытым исходным кодом (+163)
18. Anki Android - карточки для запоминания и повторения (+143)
19. Uhabits - открытое приложение для формирования привычек (+139)
20. Komga - медиасервер для комиксов и манга (+139)
21. Fenix - Firefox для Android (+116)
22. Sunflower - лучшие практики Android-разработки в приложении о растениях (+113)
23. Ktlint - линтер для Kotlin (+64)
24. TV bro - браузер, оптимизированный для ТВ (+55)
25. Purpur - сервер для Minecraft (+46)
Если вам, как и мне, всегда казалось, что с концепцией MVP и “бережливого стартапа” что-то не так, то вот в статье рассказывают по пунктам что-же именно (моя любимая цитата - "для меня самое сложное в идее минимально жизнеспособного продукта заключается в том, что вы не знаете, что такое минимум, и вы не знаете, что такое жизнеспособный"). Стоит учесть, что автор “продает” свою методологию “осознанного стартапа”, но в целом его идеи и предлагаемые альтернативы кажутся очень здравыми. Так что если вы разрабатываете собственные продукты - посмотрите, может будет полезно.
Разработка
• 4 главные проблемы с методологией Бережливого стартапа
• VK открывает набор на бесплатные курсы по ручному тестированию и углубленному Python
• Приложение Rewind позволяет «путешествовать во времени» с помощью музыки
• Складной iPad может появится в следующем году
• Как устроена бесшовная авторизация в онлайн-кинотеатре
• Что делать, если в начале спринта у тестировщика нет задач?
• Оптимизация тестов для Continuous Integration
• Victa — беговое приложение и шагомер для любителей игр и аниме
• Five stars code reviews
iOS
• Loop for iOS: шаблон приложения для приема инсулина
• Recreating Apple Wallet Payment Ring with SwiftUI
• Reusable Components for Scalable Projects with UIKit Programmatically Swift 5
• Lazy NavigationLink for SwiftUI
• arash.good93/annotation-injection-with-compile-time-safety-in-swift-d9866b91ebb7">Annotation Injection with compile-time safety in Swift
• Mastering charts in SwiftUI. Custom Marks.
Android
• Make your Android app a share target. Receive simple data from other applications with Hilt and Compose
• Picture-in-picture (PiP) mode in Android
• Protecting Project Integrity
• Leveraging the Snapshot Mutation Policies of Jetpack Compose
Кроссплатформа
• 12 методик, которые помогут создавать приложения на Flutter легко и просто
• 8 Flutter Widgets Every App Should Contain
• Introducing Dart 3 alpha
• KMP: A Use Case For Common UI Behavior
• TensorFlow Lite Tutorial for Flutter: Image Classification
Приглашаем мобильных разработчиков выступить на конференции Mobius 2023 Spring!
Конференция будет идти четыре дня: 12–13 мая в онлайне и 19–20 мая в офлайне в Москве. Приглашаем вас выступить на ней.
Стать спикером Mobius — это возможность:
👉 Развить личный бренд и улучшить навык публичных выступлений.
👉 Обсудить рабочие задачи в неформальной обстановке.
👉 Попасть на все конференции весны от JUG Ru Group бесплатно.
👉 Пообщаться с комьюнити и Программным комитетом.
Выбирайте любой формат — доклад, воркшоп, дискуссию или что-то свое. Вам помогут подготовиться, проведут репетиции, а после конференции вы получите запись в 4K на YouTube, чтобы поделиться ей с друзьями и коллегами.
Выбирайте тему на сайте или предлагайте свои идеи и подавайте заявку до 20 февраля.
Билеты на Mobius 2023 Spring уже в продаже.
Новый большой еженедельный дайджест - 105 материалов за неделю. Прочитайте, обсудите, поставьте, поделитесь, подпишитесь и все такое прочее. Моя благодарность вашей оценке не будет знать никаких границ 😀
Читать полностью…На конференции Flutter Forward в Кении Google рассказал о будущем платформы. В отличие от закатывающегося React Native, планы на Flutter большие. Сейчас вступает в строй новый “гладкий и шелковистый” рантайм для рендеринга Impeller, в новых версиях Google улучшит “встраиваемость” фреймворка (будет проще использовать в приложении на другом языке), упростится работа с системными API, все будет компилится в WebAssembly, будет поддерживаться RISC-V и пр. В общем, Flutter, кажется, все больше становится реальной альтернативой и скоро будет способен вменяемо работать на “всех поверхностях”.
Разработка
• Будущее платформы на Flutter Forward: новая графика, WebAssembly и RISC-V
• 20 советов для разработчиков игр от разработчиков игр
• FunCorp/how-to-reduce-the-bloated-testing-process-1a64e8585321">How to reduce the bloated testing process
• TARS: A product metric game changer
iOS
• SwiftUI Navigation: упрощение навигации в SwiftUI
• ChatGPT in an iOS Shortcut — Worlds Smartest HomeKit Voice Assistant
• Multi-select Filter in Swift
• Prevent copy & paste into other iOS apps
• mina.a.ghalii/increase-app-performance-method-dispatch-ios-f577f9152e55">Increase App Performance (Method Dispatch iOS)
• Store an Array of Custom Data Types in Core Data With Transformable and NSSecureCoding
• dinozavr2005/big-o-notation-in-swift-a05afc36dc3d">Big O notation in Swift
Android
• Android 14 будет блокировать устаревшие приложения
• Делаем Android-приложение Airbnb более доступным
• Google меняет политики Android в Индии
• 5 Beginner Testing Mistakes
• JWT Authentication and Refresh Token in Android with Retrofit Interceptor & Authenticator
• Behavior Driven Mobile Testing
• How to Make the Firebase Database SDK Work Better With Kotlin
Кроссплатформа
• Flutter 3.7 — Что нового во Flutter
• Создание WEBGL приложения Вконтакте на Unity
• Dart — What I Learned From (Re)Learning It
• Adapting Wonderous for Landscape
Новость вчерашняя, но я вежливый и не стал писать, пока все не стало публичным. В общем, кто-то очень недобрый выложил в открытый доступ полное дерево исходных текстов всех сервисов из репозиториия Яндекса. Там и поиск, и Алиса, и даже Такси есть (по ссылке обзор контента).
Важно понимать: по сути это довольно бесполезно, подходит для изучения кода, но запустить из этого свой яндекс не выйдет. Во-первых, попробуйте хоть что-то оттуда собрать, это очень неочевидно и часто требует внутренней инфраструктуры Яндекса. Во-вторых, для ИИ-проектов нет самого главного — натренированных весов, т.е. модель, которая у вас получится после сборки, просто не обучена. Датасета для обучения тоже нет.
Это безусловно не взлом, а слив кого-то из сотрудников. И код не свежий, это срез репозитория на символическую дату 24 февраля прошлого года.
Тем не менее, 40+ гигабайт сорцов — прецедент серьезный и явно политический. И даже не спросишь «а что случилось».
https://arseniyshestakov.com/2023/01/26/yandex-services-source-code-leak/
Niantic на основе Lightship и Campfire выпускает NBA All World - как про покемонов, только про баскетбол. Насколько я понял, механика вообще не изменится - локации, команды, соревнования - только вместо покемонов будут баскетболисты NBA. Повторит ли новая игра их успех вопрос интересный, список закрытых проектов у Niantic уже внушительный. Не сыграла даже такая казалось бы великая франшиза, как Гарри Поттер, так что судьба NBA совсем не предрешена 🏀
Разработка
• Niantic запускает NBA All World
• $4.6 млн: Oneleaf — приложение для гипноза
• Coding is Not Enough: The Importance of Investing in Domain Knowledge
• Best 6 geometric font for your next clean interface design
• This is How Snapchat Breaks UI Principles
iOS
• Slice that Collection: A Swift guide
• New Scanning and Text Capabilities with VisionKit
• How To Speed Up Swift By Ordering Conformances
• The Nested Observables Problem in SwiftUI
Android
• Обратный инжиниринг и анализ приложений для Android: пошаговое руководство
• Jetpack Compose Migration: Best Practices and Strategies
• Making Airbnb’s Android app more accessible
• Optimize or Die. Profiling and Optimization in Jetpack Compose
• Jetpack Compose for Wear OS
Кроссплатформа
• 1Coin: управление деньгами на Kotlin Multiplatform
• Flutter — Navigate with GoRouter
• What’s new in Flutter 3.7
Несколько раз в год SlashData проводит всемирный опрос Developer Nation и я, среди прочих, традиционно помогаю с привлечением разработчиков.
Сейчас проходит новое исследование - в опрос включены краткие и понятные вопросы по 13 направлениям: мобильные, десктопные, облачные и веб-приложения, промышленный интернет вещей, ПО для потребительской электроники, встроенное ПО, виртуальная и дополненная реальность, приложения и расширения для сторонних платформ, игры, машинное обучение, искусственный интеллект, анализ данных.
Зачем это все: вы можете выиграть призы, но главное - сформировать объективную картину происходящего в нашей отрасли, определить процессы в IT. Ответы на вопросы не займут много времени, так что уделит его исследованию и станьте частью Нации Разработчиков.
❓С чего начать путь в iOS-разработку?
🔵24 января в 20:00 мск приходите на вебинар специализации «iOS Developer» в OTUS! На занятии мы обсудим Swift Charts — новый фрейморк от компании Apple. Тема открытого урока: «Swift Charts — строим красивые графики из коробки».
Вместе с практикующим экспертом мы рассмотрим возможности API Swift Charts и с его помощью создадим красивые диаграммы для приложения. Продолжить изучение iOS-разработки вы сможете дальше на онлайн-курсе.
➡️Для участия зарегистрируйтесь: https://otus.pw/9RfY/
Реклама. Информация о рекламодателе на сайте www.otus.ru.
Android и предустановленное ПО на Galaxy S23 занимает до 60 Гб
Galaxy S23, кажется, поставил новый рекорд по распространению Bliatware Bloatware. Пишут, что из коробки новый смартфон использует около 60 Гб для системы. Если у телефона хранилище 128 Гб, то это означает, что почти половина его занята под Android и встроенные приложения. Это в 4 раза больше размера обычного системного раздела Pixel 7 Pro в 15 Гб. Или размер сразу 2 стоящих рядом Windows 11.
1. Это своя оболочка Samsung для Android, которая совсем не славится малыми объемами.
2. Собственные приложения Samsung, копирующие Google.
3. Предустановленные приложения от Samsung, вроде Netflix, Microsoft Office, Spotify, Linkedin и прочего.
4. Предустановленные приложения от оператора.
5. Что совсем прикольно, смартфон со всем этим уже не может использовать A/B системные разделы, представленные в Android 7.0, с помощью которых можно обновлять ОС в фоновом режиме.
И что: не надо так 🙃 С другой стороны, надо же кому-то свою же память продавать?
Домашняя автоматизация становится мейнстримом
1. Лидер в лице Samsung SmartThings в прошлом году получил 12 миллионов установок, но есть и меньшие конкуренты, которые показывают невероятный рост.
2. Home Assistant — еще одна популярная платформа домашней автоматизации. У нее открытый исходный код, большое сообщество пользователей и разработчиков, интеграция с различными устройствами и платформами.
3. Home Assistant закончил 4 квартал 2022 год с примерно 156 тысячами загрузок, что является самым высоким показателем среди всех кварталов. По сравнению с первым кварталом 2020 года, ежеквартальные загрузки выросли на 122%.
4. В 2022 году Home Assistant скачали почти полмиллиона человек. Для решения с открытым исходным кодом, которое требует “небольшой доработки напильником”, это отличная новость.
И что: для отрасли в целом это, наверное, означает, что Интернет вещей наконец становится обыденностью. Подумайте, может ли ваш продукт встроиться в домашнюю автоматизацию?
Видео за неделю
• (iOS En)
What's new for enterprise developers
• (iOS En)
Discover Metal Performance HUD
• (iOS En)
Add SharePlay to your multiplayer game with Game Center
• (iOS En)
Migrate custom intents to App Intents
• (iOS En)
Implement Apple Pay and order management
• (iOS En)
Integrating voice and video calling into iOS apps with CallKit
• (iOS En)
Lottie 4 SwiftUI
• (And Ру)
Jetpack Compose Battle: онлайн-собеседования Senior разработчика
• (And En)
How to Create an Animated Counter Text with Jetpack Compose
• (And En)
The Full Guide to ANNOTATIONS In Kotlin
• (And En)
Introduction to Compose Layouts and Modifiers - MAD Skills
• (And En)
Fundamentals of Compose Layouts and Modifiers - MAD Skills
• (Dev Ру)
Podlodka #305: цвета и цветовые пространства
• (Tst Ру)
Ozon Tech Community A/B-testing Meetup
Посмотрели какое-то другое видео? Скиньте мне -> 🧑🏻💻
Сегодня выплата денег из App Store, проверьте банковский счет 💶 Должны прийти все деньги за декабрь 2022. Если сравнить с декабрем прошлого года - как ваши успехи?
Разработка
• Supercell представила новую игру Squad Busters
• Our Company Fired the Best Developer and Project Manager
• I Made $1000 From a Mobile Game I Designed in One Day, Without Coding
• Neglecting Legacy Code? It’s a Potential Gold Mine of Learning
iOS
• Как мы сократили время запуска нашего iOS-приложения на 60%
• SyncKit: синхронизация Core Data или Realm
• Соотношение сторон и масштабирование изображений в Image компоненте
• Code a Snake Game With Button Controls Using SwiftUI
• NSURLSession connection leak
• Parsing in Swift: a DTO-based Approach
Android
• Как настроить Gitlab CI/CD для Android и Firebase App Distribution для доставки сборок
• Как мы проблемы UI в виджетах решали
• 5 Android Studio features you don’t want to miss
• How We Kept Our App On a Diet
• Jetpack Compose Tutorial: Replicating Dribbble Audio
Кроссплатформа
• 12 методик, которые помогут создавать приложения на Flutter легко и просто
• How it’s made: Holobooth
Кажется, что User Choice Billing в Google Play за почти год наконец добрался до “прода”. Spotify в рамках тестирования с ноября уже развернул сторонний биллинг в 140+ странах, то есть практически на всех основных рынках. Когда его дадут всем разработчикам не совсем понятно, но видимо совсем скоро, так что можно уже готовится. У Google есть специальные рекомендации по UX сторонней оплаты, если планируете - надо ознакомиться
Разработка
• Spotify внедрил сторонний биллинг на 140+ рынках
• Основатели Instagram готовят приложение для чтения новостей
• Зарплаты IT-специалистов в России сократились
• В RuStore появились Сбер ID и оплата по SberPay
• Рыба потратила деньги владельца, играя в покемонов на Nintendo Switch
• Как определить размер выборки для бутстрэпа старым дедовским способом
• Use Pocketbase — Open Source Backend
• Automate Changelog Generation with GitLab
• Developer-first open-source Zapier alternative
iOS
• Лучшие репозитории Swift на GitHub за январь 2022
• paulwall_21/quickly-find-retain-cycles-in-your-app-with-this-one-trick-4c3caf243091">Quickly find retain cycles in your app with this one trick
• The Coordinator Pattern: A Simple, Scalable Solution for iOS App Navigation
• yatimistark/ios-developer-interview-questions-and-tasks-1939b6f4f0e0">iOS Developer Interview: Questions and Tasks
• How We Reduced Our iOS App Launch Time by 60%
• Swift IOS Interview Questions And Answers
• Mastering Error Handling in SwiftUI: A Guide to Presenting Errors
Android
• Лучшее репозитории Kotlin на GitHub за январь 2022
• domen.lanisnik/data-objects-in-kotlin-1a549bfad657">Data Objects in Kotlin
• banmarkovic/jetpack-compose-clear-back-stack-popbackstack-inclusive-explained-14ee73a29df5">Jetpack Compose clear back stack, popUpTo/popBackStack inclusive explained
• Principles & Practice in Repository Layer
• Stampeding Elephants
Кроссплатформа
• A pragmatic guide to BuildContext in Flutter
Рыба потратила деньги владельца, играя в покемонов на Nintendo Switch
Положительно, в этой новости прекрасно все:
1. Японский ютубер создал специальную настройку, позволяющую его любимой рыбе играть в покемонов на его Nintendo Switch.
2. Бойцовая рыбка управляет игрой, плавая в разных частях своего аквариума, которые оснащены датчиками, а все это транслируется в прямом эфире на YouTube.
3. Во время игр сбой привел к тому, что Nintendo Switch вывалилась на домашний экран.
4. После этого движение рыбы привело к открытию Nintendo eShop, и домашнее животное потратило 4 доллара из денег своего владельца на покупку очков. Рыбе также удалось загрузить приложение для игр Nintendo 64, потратить виртуальную валюту на новый аватар, запросить электронное письмо с подтверждением от PayPal и изменить имя учетной записи.
5. Наконец, рыбка смогла выключить консоль Switch до того, как человек понял, что происходит.
И что: ИИ, ChatGPT... Вот к рыбам бы присмотреться 🐟
Трендинговые репозитории GitHub за январь для языка Swift:
1. IceCubesApp - клиент Mastodon на SwiftUI (+1411)
2. CodeEdit - открытый редактор кода для macOS (+805)
3. MochiDiffusion - Stable Diffusion на Mac (+439)
4. Swift Composable Architecture - целостная и понятная архитектура для создания приложений с учетом композиции, тестирования и эргономики (+310)
5. Swift CoreML Diffusers - приложение, демонстрирующее Stable Diffusion в Core ML (+268)
6. AltStore - альтернативный магазин приложений (+197)
7. Alamofire - HTTP-клиент (+184)
8. Clean Architecture SwiftUI - пример приложения на основе чистой архитектуры (+162)
9. Damus - клиент для социальной сети nostr (+143)
10. NetNewsWire - RSS ридер (+123)
11. Swift Async Algorithms - фирменные алгоритмы Apple (+113)
12. SwiftUI Navigation - простая навигация для SwiftUI (+110)
13. SwiftFormat - инструменты форматирование Swift-кода (+87)
14. SQLite.swift - обертка для SQLite3 (+86)
15. Sileo - менеджер пакетов (+79)
16. Nuke - загрузка изображений (+79)
17. TrollTools и TrollBox - кастомизация iOS (+76)
18. GRDB.swift - инструменты для работы с SQLite (+68)
19. DeviceKit - value-type замена для UIDevice (+64)
20. Swift Snapshot Testing - тестирование снепшотов (+48)
21. Moya - абстракция сетевого уровня (+46)
22. KeychainAccess - обертка для Keychain (+41)
23. Facebook* iOS SDK - SDK запрещенной сети (+34)
24. Stripe iOS - SDK платежной системы (+22)
Забавные новости из мира открытых лицензий. Оказывается, что правила Dungeons & Dragons а) кому-то принадлежали; б) теперь они стали Creative Commons. Если серьезно, с 2000 года существовала лицензия, которая позволяла сторонним создателям использовать игровую систему для продажи своих собственных книг заклинаний, модулей, виртуальных столов. И вот несколько недель назад Wizards of the Coast решила всех перевести на новую лицензию, которая бы сделал невозможной их работу. Пользователи и создатели малость офигели и намекнули WoTC, что они не правы. Удивительно, но владельцы признали, что сильно накосячили и сейчас талмуд правил в 403 страницы открыли по Creative Commons. Не уверен, что всем эти знания пригодятся, но добро победило. И можно (наверное) сделать что-нибудь в мире Dungeons & Dragons.
Разработка
•Правила Dungeons & Dragons опубликованы в Creative Commons
•Уязвимости Galaxy Store дают возможность установки любых приложений
•55 млн установок за 3 года: бизнес на мобильных приложениях в нише фото/видео редакторов
•Как стать разработчиком мобильных приложений: Профориентация
•Podlodka #304: .NET, часть 2
•У GitHub 100 миллионов активных пользователей
•Should There Be a Developer Mental Health Day?
•Maintainable No-Code UI Automation for Mobile with Maestro Studio
iOS
•Поиск callback-ов кнопок в рантайме iOS
•Native iOS Touch Events w/ Rust
•SwiftUI — Using Frames To Align
•Use Core ML To Build a Minority Report-Inspired User Interface in iOS
•A Scalable Alternative to Switch-case: Abstract Factory in Swift
•Infinite Scrolling Using SwiftUI and View Model (MVVM)
Android
•WhatIf: синтаксический сахар Kotlin
•Jetpack Compose Codelabs: практическое обучение Compose
•Креативный кодинг с Kotlin и Compose
•Библиотека Room для начинающего Android-разработчика
•RuStore: разработка магазина приложений
•What should you expect when migrating your Android project to Kotlin 1.7.0?
•Kotlin Sealed Interfaces with KotlinX Serialization JSON
•Operator overloading in Kotlin
•Is the New Gradle Version Catalog Worth It for Your Android Projects?
Кроссплатформа
•Самые популярные кроссплатформенные фреймворки
•Использование шейдеров во Flutter. Часть 1
•Why follow “Clean Architecture” in Flutter?
•Why You Should Use BLoC As Your State Management for Your Flutter App
На прошлой неделе писал про "закат" React Native, сейчас в AppFigures в целом исследовали популярность кроссплатформенных фреймворков.
1. Количество приложений на двух платформах - на графике. На данный момент самым популярным ненативным фреймворком является Unity.
2. Удивительно, но веб-обертки занимают два места из пяти - Cordova и Ionic поверх нее.
3. Релизы по годам - на графике.
5. Видно, что веб-приложениям все-таки пришел конец, у них самое большое падение.
6. Flutter стал мейнстримом в еще в 2021 и у него самое маленькое падение в 2022.
7. Связано ли падение React Native с Flutter? Отчасти, однако, скорее всего, большая его часть обусловлена именно общей ситуацией на рынке - упрощением нативной разработки и соответствующим отходом от кроссплатформы.
Видео за неделю
• (iOS)
Do iOS 2022 Conference Videos
• (iOS)
Exploring the DoorDash app internal API
• (iOS)
SwiftUI Collapsible Header Menu
• (iOS)
How to easily test InApp Purchases in an iOS app
• (And)
RuStore: разработка магазина приложений
• (And)
How to Create an Animated Counter Text with Jetpack Compose
• (And)
How to EASILY Download Any File in Android With DownloadManager
• (Crs)
Flutter Forward Videos
• (Dev)
55 млн установок за 3 года: бизнес на мобильных приложениях в нише фото/видео редакторов
• (Dev)
Как стать разработчиком мобильных приложений: Профориентация
• (Dev)
Podlodka #304: .NET, часть 2
Добавить еще -> 🧑🏻💻
Откройте новые карьерные возможности в iOS-разработке — научитесь решать сложные задачи!
⚡️ Приглашаем 2 февраля в 20:00 на открытый урок «Устройство многопоточности в iOS: Actor и async/await» от OTUS.
На занятии мы обсудим:
— Устройство многопоточности на уровне iOS
— Новую структурированную многопоточность переход от GCD и основную проблему GCD
— Реальные примеры на async/await
— Использование Actors в продакшене
— Перспективы развития новой многопоточности
👉🏻 Регистрация на вебинар: https://otus.pw/ocCv/
Урок рассчитан на iOS Developers с опытом работы от 1 года.
Google меняет политики Android в Индии
В соответствии с требованиями местного регулятора:
1. OEM-производителям можно будет устанавливать только некоторые приложения Google, а пользователи смогут удалять их.
2. Пользователи смогут выбирать поисковую систему при настройке устройства.
3. Можно будет создавать свои несовместимые форки ОС.
4. Оплата по выбору пользователя в Google Play будет доступна для всех приложений и игр, начиная со следующего месяца.
5. Упрощает установка приложений и магазинов приложений из сторонних источников.
И что: сторонний биллинг и все прочее видимо скоро появится и на всех остальных рынках. Можно потренироваться на Индии с ее полумиллиардами пользователей.
Из “сегодня” видно, что это рано или поздно должно было случиться. Oneleaf — приложение, которое поможет вам начать работу с (само)гипнозом и следовать различным программам, чтобы бросить курить, уменьшить беспокойство или похудеть.
1. Oneleaf предлагает несколько 21-дневных программ, которые помогут вам с курением, контролем веса или плохим сном.
2. Для разработки этих сеансов компания работала с профессионалами в области гипноза.
3. Стартап записал их сеансы и добавил несколько бинауральных ритмов для фоновой музыки. В результате вы получаете audio-only опыт, который вы можете использовать в любое время со своего телефона. Каждый сеанс длится от 20 до 30 минут.
4. Пользователи должны заплатить 68 долларов в год за доступ к библиотеке контента Oneleaf. Есть также покупки в приложении, которые позволяют разблокировать конкретную программу.
5. Сам Oneleaf привлек 4.6 миллиона долларов от Frst, Kima Ventures, Raise Ventures и нескольких бизнес-ангелов.
И что: теперь "и для этого есть приложение" 😵💫 Предложите что-нибудь новенькое.
У AppsFlyer вышел новый отчет о разустановке удалении приложений. В среднем по больнице на 30 дней удаляют 49% приложений - больше всего в играх (66%), меньше всего в путешествиях (31%). При этом почти 50% из всех удалений, произошедшие в течение 30 дней с момента загрузки, происходят в течение первых 24 часов. То есть хотите просто и быстро уменьшить отток - ошарашьте пользователя за первые сутки так, чтобы он и думать не мог удалить ваше приложение.
Разработка
• Удаление приложений в App Uninstall Report 2023 от AppsFlyer
• В VK Рекламе заработал ретаргетинг
• Самые высокооплачиваемые вакансии января в области разработки приложений
• Разбор баланса My Mini Mart
• What is the hardest thing in software development?
iOS
• Видео Do iOS 2022
• SwiftUI Shimmer: мерцание SwiftUI
• Нельзя просто так взять и написать полезный iOS фреймворк… Или можно?
• Combine: часть 1. Погружение в реактивное программирование
• Create a UINavigationController With a Gradient as a Background
• Dynamically Change App Icons for a Unique User Experience with SwiftUI
• Three Ways to communicate via WatchConnectivity
• Enhancing mobile app user experience through efficient caching in Swift
• cleanrun/refactoring-an-mvvm-ios-app-into-viper-2a07cab2210f">Refactoring an MVVM iOS app into VIPER
Android
• Новый Logcat: 5 функций для эффективной отладки Android-приложений
• adb: tap, swipe и два дымящихся event'а
• Higher order functions in Kotlin — Under the hood
• Slowing down your code with Coroutines
• Testable Database Repositories in Kotlin
• Mastering Exception Handling in Android Development: Tips and Tricks for Ensuring Stability and Security
• asmaeziani47/reverse-engineering-and-analyzing-android-apps-a-step-by-step-guide-67b8af9bf152">Reverse Engineering and Analyzing Android Apps: A Step-by-Step Guide
Кроссплатформа
• pairroxztechnologies/practices-to-simplify-flutter-app-development-in-2023-fc8d95eb801e">Practices to Simplify Flutter App Development in 2023
• Playful typography with Flutter
Помните, как мы смеялись над покупкой Gas и совет был через пару лет начать делать новое? Так вот, вообще уже ни фига не смешно - ТОЧНО такое же социальное приложение с анонимными комплиментами для подростков Slay из Германии на прошлой неделе получило инвестиции в 2.63 млн долларов. Соответственно, изменю совет - делайте анонимные комплименты для подростков уже сейчас, на каком-нибудь одном рынке (предполагаю Азию или Южную Америку). Внимание и инвестиции обеспечены 🙈
Разработка
• $2.63 млн: Slay — анонимные комплименты для подростков
• Делайте тесты умнее, а не сложнее
• Microsoft сокращает команды виртуальной реальности
• Путь Full Stack QA
• Podlodka #303: .NET, часть 1
• Новое исследование показывает, что потребители лояльны к опыту, а не к брендам
• Awesome Software and Architectural Design Patterns: лучшие шаблоны проектирования
• *Meta vs TikTok – где эффективнее продвигать русскоязычное приложение на iOS?
• Current UI trends: how to impress users with your designs
• I Removed 500 if Statements With Functional Programming
• Free certifications for developers
iOS
• Табличная классификация и регрессия Apple ML
• farshadjahanmanesh/swiftui-layout-protocol-ios-16-0-4d3420d8d6c4">SwiftUI Layout Protocol — iOS 16.0+
• How Senior iOS Engineers Style Code: Performance And Clarity
• Create Your First Swift Package Command Plugin
• Façade Design Pattern in Swift, and Its Important Use-Cases
• Swift Learning Roadmap 2023 — The Ultimate Guide
• Using Tuples to do Sorting Operations in Swift
Android
• Myne: бесплатные книги для Android с Jetpack Compose
• Функциональное мышление
• Моды Android приложений: Instander & Google Camera by The Dise
• Jetpack Compose and Composable Preview
• Connecting Android Apps with Server using gRPC
• New Logcat: 5 Features for Effective Android App Debugging
• Learning Android’s Room Database Made Easy
• WebSockets in Android with OkHttp and ViewModel
Кроссплатформа
• Количество React Native приложений упало вдвое
• Build an Animated Soccer Rating Hexagon in Flutter
• Creating inclusive apps with Flutter: Best practices for accessibility