Несущиеся слоны: опыт 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.
Отличный старт для начинающих разработчиков - канал EasySwift:
👉Гайды по iOS разработке
👉Новости и обзоры
👉Несмешные шутки
Нажми сюда, чтобы подписаться @swift_ioss
Первый в этом году большой еженедельный дайджест - возвращаемся к работе со 117 материалами. Прочитайте, обсудите, поставьте, поделитесь, подпишитесь и все такое прочее, буду благодарен 😀
Читать полностью…Новости и гайды по iOS разработке, статьи об управлении командой и создании продуктов в одном телеграм канале — @iosenjoyer.
Читать полностью…Сегодня выплата денег из 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
Настоящий закат React Native?
1. React Native — одно из самых популярных решений для кроссплатформенной разработки. В AppFigures изучили количество новых приложений и игр для iOS и Android, использующих React Native.
2. Популярность React Native значительно выросла в 2018 году. Количество приложений и игр, созданных с помощью React Native тогда выросло сразу на 111% (тогда, кстати, и вышла программная статья "Закат React Native в Airbnb", определяющая проблемы платформы).
3. Дальше темпы замедлились, но популярность продолжала расти, с тех пор ежегодно количество выпущенных приложений увеличивалось на двузначное количество процентов.
4. В 2022 году количество приложений, созданных с помощью React Native, сократилось сразу на 43%. В абсолютных цифрах, в 2021 году было выпущено 79K новых приложений и игр с React Native, а в 2022 году — всего 45K.
5. В целом количество новых приложений сократились в 2022 году. Это, безусловно, одна из причин, по которой выпуски не нативных приложений упали. Однако в целом количество новых релизов сократилось примерно на 12%, а выпуски React Native упали в разы больше.
И что: спор между нативом и кроссплатформой с упрощением первого подхода (кажется) подходит к концу. Впрочем, решения вроде KMM, шарящие бизнес-слой, продолжат свой рост? Что думаете?
Видео за неделю
• (iOS)
Видео BA: Swiftable 2022
• (iOS)
Snapchat Shared Transitions - Animation's - Grid Matched Geometry - Xcode 14 - SwiftUI Tutorials
• (iOS)
How to Use Custom Fonts in SwiftUI
• (iOS)
Will ChatGPT Destroy iOS Developer Jobs? A Demonstration
• (And)
Моды Android приложении?: Instander & Google Camera by The Dise
• (And)
The Top 3 Clean Architecture Mistakes in Android
• (And)
How to Create a Magic Text That Always Fits Its Container – Jetpack Compose Tutorial
• (And)
How does the .asLiveData() operator work? Kotlin Flow for Android Development
• (Crs)
Курс по Flutter: вход в профессию Flutter-разработчика
• (Dev)
Путь Full Stack QA
• (Dev)
Podlodka #303: .NET, часть 1
• (Dev)
How to Make AI-Generated App Icons & Mockups with Midjourney
Хороший матч дорогого стоит. Говорят, что Hinge из обоймы Match Group, внедряет новый уровень подписки, который будет стоить от 50 до 60 долларов в месяц или до 720 долларов в год. Новый тариф предназначен для «высокомотивированных дейтеров» и будет предлагать расширенные возможности представления себя в приложении. Но это еще ягодки. По неподтвержденной информации, Tinder внутри тестирует интерес пользователей к подписке за 500 долларов в месяц или 6000 долларов в год. В настоящее время неясно, какие дополнительные услуги будут предлагаться при таком дорогом членстве - вероятно, собственный лунапарк, не меньше 🚀
Разработка
• Hinge и Tinder тестируют дорогие подписки
• Приложения с подпиской 2023 — отчет RevenueCat
• Но это (не)точно: чего ждать мобильным разработчикам в 2023-м году
• The three most important lessons I’ve learned as a UX Designer in 2022
• Designing an Effective User Onboarding Experience
iOS
• Безопасное программирование в Swift
• Nuke: загрузка и показ изображений
• Control Your SwiftUI App With Face Recognition Using SceneKit
• abdelmeniemmohamed/ios-app-security-best-practices-fecfb13d0744">iOS App Security: Best Practices
• gremlinflat/how-i-optimize-memory-consumption-for-content-rich-apps-9f1be8fe22af">How I Optimize Memory Consumption for Content-Rich Apps
• The Secrets of Hashable in Swift
• Top 10 mistakes swift developers do
• AutoLayoutBuilder —My Swift Package to Reduce Boilerplate Code
• Drawing with UIKit’s UIBezierPath
Android
• Как работает Activity. Часть 2
• impure/i-think-ive-given-up-on-android-da137af0ea9c">I Think I’ve Given Up On Android
• KConMapper — How To Automate Mapping Function Creation With Kotlin’s KSP
• Kotlin Data Class
Кроссплатформа
• UI Роутер в Unity
• Flutter and ObjectBox – High-Performance NoSQL Database
• Material 3 for Flutter