Подписки в приложениях 2025 - отчет Adapty
В Adapty выпустили ежегодный отчет о подписках в приложениях. Он основан на $1.9 млрд дохода от 11,000+ приложений, обслуживаемых Adapty. Вот некоторые интересные факты из него.
• США остаются крупнейшим рынком продаж подписок в приложениях, на долю страны приходится 48.9% от общей выручки. На втором месте Европа с 24.77%.
• Наибольший рост за год продемонстрировали еженедельные подписки - сейчас они дают почти половину денег от всех покупок. Количество разовых покупок быстро растёт, а долгосрочные планы снижаются.
• Цены на еженедельную подписку выросли во всех регионах. Европа и США продемонстрировали самый быстрый рост.
• В США триал увеличивает 12-месячный LTV на 64%. В Европе триал увеличивает 12-месячный LTV на 58%. В LATAM это 55%, в APAC 26% и в MEA рост на 46%.
• В США LTV установки достигает 2 долларов, что обусловлено коэффициентом конверсии 4.54% и расходами на одного плательщика в размере 43.64 доллара. В Европе установка дает ~0,6 доллара с более низким коэффициентом конверсии. Латинская Америка, Азиатско-Тихоокеанский регион и Ближний Восток и Африка отстают, с LTV установки менее 0.35 долларов. Это объясняется главным образом тем, что меньше пользователей конвертируются, а не тем, что плательщики тратят меньше.
• Еженедельные подписки демонстрируют самый резкий спад (65%) после 30 дней, в то время как ежемесячные планы сохраняют больше пользователей с течением времени.
• Команды, которые экспериментируют и проводят A/B тесты, могут получить до 100 раз больше дохода.
В Adapty выпустили ежегодный отчет о подписках в приложениях. Он основан на $1.9 млрд дохода от 11,000+ приложений, обслуживаемых Adapty. Вот некоторые интересные факты из него.
• США остаются крупнейшим рынком продаж подписок в приложениях, на долю страны приходится 48.9% от общей выручки. На втором месте Европа с 24.77%.
• Наибольший рост за год продемонстрировали еженедельные подписки - сейчас они дают почти половину денег от всех покупок. Количество разовых покупок быстро растёт, а долгосрочные планы снижаются.
• Цены на еженедельную подписку выросли во всех регионах. Европа и США продемонстрировали самый быстрый рост.
• В США триал увеличивает 12-месячный LTV на 64%. В Европе триал увеличивает 12-месячный LTV на 58%. В LATAM это 55%, в APAC 26% и в MEA рост на 46%.
• В США LTV установки достигает 2 долларов, что обусловлено коэффициентом конверсии 4.54% и расходами на одного плательщика в размере 43.64 доллара. В Европе установка дает ~0,6 доллара с более низким коэффициентом конверсии. Латинская Америка, Азиатско-Тихоокеанский регион и Ближний Восток и Африка отстают, с LTV установки менее 0.35 долларов. Это объясняется главным образом тем, что меньше пользователей конвертируются, а не тем, что плательщики тратят меньше.
• Еженедельные подписки демонстрируют самый резкий спад (65%) после 30 дней, в то время как ежемесячные планы сохраняют больше пользователей с течением времени.
• Команды, которые экспериментируют и проводят A/B тесты, могут получить до 100 раз больше дохода.
❤4👍4
iOS
Swift предлагает несколько решений для блокировки доступа к изменяемому контенту и предотвращения так называемых гонок данных. Блокировки, такие как NSLock, DispatchSemaphore или последовательная DispatchQueue, являются популярным выбором для многих. В некоторых статьях сравнивается их производительность и указывается, какая из них работает лучше всего, но в этой статье Антуан ван дер Ли представляет современный вариант блокировки Swift, представленный в SE-433 Synchronous Mutual Exclusion Lock - стандартизированную версию так называемого блокировщика Mutex.
Поставьте 👍, если хотите эту статью на русском!
• DynamicBottomSheet — настраиваемый bottom sheet для UIKit
• 10 Swift Pitfalls You Won’t See Until It’s Too Late
• Morphing glass effect elements into one another with glassEffectID
• Modern Swift Lock: Mutex & the Synchronization Framework
Swift предлагает несколько решений для блокировки доступа к изменяемому контенту и предотвращения так называемых гонок данных. Блокировки, такие как NSLock, DispatchSemaphore или последовательная DispatchQueue, являются популярным выбором для многих. В некоторых статьях сравнивается их производительность и указывается, какая из них работает лучше всего, но в этой статье Антуан ван дер Ли представляет современный вариант блокировки Swift, представленный в SE-433 Synchronous Mutual Exclusion Lock - стандартизированную версию так называемого блокировщика Mutex.
Поставьте 👍, если хотите эту статью на русском!
• DynamicBottomSheet — настраиваемый bottom sheet для UIKit
• 10 Swift Pitfalls You Won’t See Until It’s Too Late
• Morphing glass effect elements into one another with glassEffectID
• Modern Swift Lock: Mutex & the Synchronization Framework
SwiftLee
Modern Swift Lock: Mutex & the Synchronization Framework
Learn how a Swift lock can help you create thread-safe access to data as an alternative to actors in Swift Concurrency.
👍12
Android
Теперь разработчики могут разделять что продаётся и как это продаётся. Вводится иерархия «one-time product → purchase options → offers»: товар (например, «Монеты»), варианты покупки (покупка, аренда) и спецпредложения (скидки, предпродажи). Это значительно упрощает управление каталогом и позволяет снизить операционные расходы — один и тот же продукт можно продавать по-разному в разных регионах и условиях. Добавлены аренда с указанием срока действия, предпродажи с датами старта и релиза, гибкая региональная ценовая политика без необходимости задавать «цену по умолчанию», а также промо‑офферы для акций и запуска. Эти функции доступны после миграции на PBL 8.0 и через новый API — monetization.onetimeproducts и queryProductDetailsAsync. Всё это помогает быстрее адаптировать предложение к рынкам, экономить на SKUs и эффективнее монетизировать приложение.
• Создание красивой кнопки с прогрессом в Jetpack Compose
• Android. Кража данных через клавиатуру: миф или реальность?
• Предварительный просмотр Jetpack Compose-анимации по ключевым кадрам в Android Studio
• New tools to help drive success for one-time products
• Kotlin: Custom Extension Functions for a Senior Developer’s Toolkit
• Refactoring a ViewModel: From Reactive Workarounds to Constructor Injection
• 6 Lesser-Known Jetpack Compose Tricks That Instantly Improve Your UI
Теперь разработчики могут разделять что продаётся и как это продаётся. Вводится иерархия «one-time product → purchase options → offers»: товар (например, «Монеты»), варианты покупки (покупка, аренда) и спецпредложения (скидки, предпродажи). Это значительно упрощает управление каталогом и позволяет снизить операционные расходы — один и тот же продукт можно продавать по-разному в разных регионах и условиях. Добавлены аренда с указанием срока действия, предпродажи с датами старта и релиза, гибкая региональная ценовая политика без необходимости задавать «цену по умолчанию», а также промо‑офферы для акций и запуска. Эти функции доступны после миграции на PBL 8.0 и через новый API — monetization.onetimeproducts и queryProductDetailsAsync. Всё это помогает быстрее адаптировать предложение к рынкам, экономить на SKUs и эффективнее монетизировать приложение.
• Создание красивой кнопки с прогрессом в Jetpack Compose
• Android. Кража данных через клавиатуру: миф или реальность?
• Предварительный просмотр Jetpack Compose-анимации по ключевым кадрам в Android Studio
• New tools to help drive success for one-time products
• Kotlin: Custom Extension Functions for a Senior Developer’s Toolkit
• Refactoring a ViewModel: From Reactive Workarounds to Constructor Injection
• 6 Lesser-Known Jetpack Compose Tricks That Instantly Improve Your UI
Android Developers Blog
New tools to help drive success for one-time products
Explore Google Play's new, flexible way for developers to manage one-time products, allowing diverse purchase options, offers, and regional pricing.
❤1
Так что, это значит, что LLM лучше не использовать? Ну, возможно, нет. ИИ-инструменты замедляют работу тех, кто «знает, что делает, и работает над проектом, который понимает» — подходит ли это описание к среднестатистическому разработчику программного обеспечения в отрасли? Подходит ли это описание к разработчикам программного обеспечения в вашей компании? риторические вопросы. Так что если вы планируете работать над проектом в долгосрочной перспективе, хотите по-настоящему его понять и иметь возможность эффективно вносить изменения, то вам следует просто написать код самостоятельно. Если же вы просто штампуете код на фабрике по производству кода, то установите Cursor и приступайте к делу.
Разработка
• ИИ замедляет работу разработчиков — мы может объяснить почему
• AWS выпустил Kiro IDE для вайб кодинга
Маркетинг
• Подписки в приложениях 2025 — отчет Adapty
• Netflix’s New Welcome Screen: The UX Revolution That’s Changing Streaming Forever
Кроссплатформа
• Flutter 3.32.0: Why Thousands of Developers Already Made the Switch
Please open Telegram to view this post
VIEW IN TELEGRAM
AppTractor
ИИ замедляет работу разработчиков — мы может объяснить почему
Вот почему инструменты кодирования ИИ, в том виде, в котором они существуют сегодня, как правило, замедляют работу того, кто знает, что делает, и работает над проектом, который он понимает.
👍2💯2❤1
Перевел вчерашнюю статью про мьютексы и заодно нашел на Reddit интересное обсуждение "5 лет назад я перешел в iOS-разработку и кажется начинаю жалеть об этом". Обсудили, действительно ли чувак Senior и как этого достичь за 5 лет, ситуацию с работой, куда можно податься и что делать в целом с мобильной разработкой. Увлекательнейшее чтение.
• Современные блокировки в Swift: мьютекс и фреймворк Synchronization
• 10 ловушек Swift, которые вы не заметите, пока не станет слишком поздно
• async let vs Task group
• I've been an iOS developer for 5 years, and I'm starting to regret it
• Mastering Swift 6.2 Concurrency: A Complete Tutorial
• Cracking the iOS Interview: Swift, API’s and Architecture (2025)
• Build Custom Transitions in SwiftUI: Guide to Navigation Zoom, Detents & Custom Animations in Views
Please open Telegram to view this post
VIEW IN TELEGRAM
AppTractor
Современные блокировки в Swift: мьютекс и фреймворк Synchronization
Фреймворк Synchronization вводит мьютексы — современные блокировки Swift для создания исключительного доступа к данным. Он отлично работает с Swift Concurrency и предоставляет решение для не-sendable типов, без введения накладных расходов на акторы.
❤2🤔1
Android
Новая серия в "Tricky Android Interview Questions" - про контекст и активити. Правда, всего два вопроса, "Что произойдет, если Activity вызовет finish() внутри onCreate?" и "Что произойдет, если вы вызовете startActivity() с использованием applicationContext?". Зато внутри много объяснений происходящему.
• MBCompass — компас для Android на Jetpack Compose
• Tricky Android Interview Questions: Context & Activity Edition
• Understanding AnnotatedString in Jetpack Compose: Styling Text Like a Pro
• From Android 14 to 15: A Practical Guide to Adapting the Legacy View System for Edge-to-Edge
• Easiest Way to Create a Shimmer Effect in Jetpack Compose
Новая серия в "Tricky Android Interview Questions" - про контекст и активити. Правда, всего два вопроса, "Что произойдет, если Activity вызовет finish() внутри onCreate?" и "Что произойдет, если вы вызовете startActivity() с использованием applicationContext?". Зато внутри много объяснений происходящему.
• MBCompass — компас для Android на Jetpack Compose
• Tricky Android Interview Questions: Context & Activity Edition
• Understanding AnnotatedString in Jetpack Compose: Styling Text Like a Pro
• From Android 14 to 15: A Practical Guide to Adapting the Legacy View System for Edge-to-Edge
• Easiest Way to Create a Shimmer Effect in Jetpack Compose
Medium
Tricky Android Interview Questions: Context & Activity Edition
Not another lifecycle guide — real-world interview questions that seem simple, but reveal how deeply you understand Context and Activity
👍4
Разработка
• The Future of AI in Software Development
Маркетинг
• Nextdoor переработал приложение, добавив ИИ-рекомендации, местные новости и оповещения
• Самые скачиваемые и зарабатывающие приложения в мире в июне 2025
• Don't get impressed by MRR/sales numbers too fast
• My First Year at RevenueCat
Кроссплатформа
• Как сделать мобильное приложение в 2025 году за 2 недели
• From Kotlin Hilt to Flutter Injectable: A Developer’s Guide
Please open Telegram to view this post
VIEW IN TELEGRAM
AppTractor
Самые скачиваемые и зарабатывающие приложения в мире в июне 2025
ChatGPT стал для большинства людей «Google» в области искусственного интеллекта, и вряд ли это изменится в ближайшее время.
👍1
iOS
Статья показывают примеры, как быстро можно оживить любую часть интерфейса - тулбары, вкладки, пользовательские представления - с минимальным количеством кода, буквально одной строчкой. Разработчики получат современный, динамичный UI, который адаптируется к содержимому и выглядит как часть нового дизайн-языка Liquid Glass от Apple. Это удобное и мощное решение для создания визуально привлекательных и отзывчивых приложений на SwiftUI.
• Numerix — линейная алгебра и численные вычисления с помощью Swift
• Giving Claude Code Eyes to See Your SwiftUI Views
• Glassifying custom SwiftUI views
Статья показывают примеры, как быстро можно оживить любую часть интерфейса - тулбары, вкладки, пользовательские представления - с минимальным количеством кода, буквально одной строчкой. Разработчики получат современный, динамичный UI, который адаптируется к содержимому и выглядит как часть нового дизайн-языка Liquid Glass от Apple. Это удобное и мощное решение для создания визуально привлекательных и отзывчивых приложений на SwiftUI.
• Numerix — линейная алгебра и численные вычисления с помощью Swift
• Giving Claude Code Eyes to See Your SwiftUI Views
• Glassifying custom SwiftUI views
Swift with Majid
Glassifying custom SwiftUI views
We already talked about glassifying tabs and toolbars in SwiftUI. This week, we will continue the topic of the new Liquid Glass design language and will talk about applying this concept to custom views.
👍3
Android
Миссия Duolingo — развивать лучшее образование в мире и сделать его общедоступным. Однако метрики показывали, что миллионы учащихся, особенно использующих устройства начального уровня на развивающихся рынках, закрывали приложение из-за раздражающего времени загрузки: в начале 2024 года целых 39% пользователей устройств Android начального уровня ждали запуска приложения более 5 секунд. Это напрямую подрывало миссию по обеспечению всеобщей доступности. Разработчики Duo поделились некоторыми стратегиями, которые оказали наибольшее влияние на быстродействие приложения.
• Как в Duolingo повысили производительность Android-приложения (и количество активных пользователей!)
• Jetpack Compose for Desktop — Overview & Example
• Compose Multiplatform + Ktor: Secure Networking with Bearer Auth and Shared Code
• Ktor 3.2.2 Is Now Available
Миссия Duolingo — развивать лучшее образование в мире и сделать его общедоступным. Однако метрики показывали, что миллионы учащихся, особенно использующих устройства начального уровня на развивающихся рынках, закрывали приложение из-за раздражающего времени загрузки: в начале 2024 года целых 39% пользователей устройств Android начального уровня ждали запуска приложения более 5 секунд. Это напрямую подрывало миссию по обеспечению всеобщей доступности. Разработчики Duo поделились некоторыми стратегиями, которые оказали наибольшее влияние на быстродействие приложения.
• Как в Duolingo повысили производительность Android-приложения (и количество активных пользователей!)
• Jetpack Compose for Desktop — Overview & Example
• Compose Multiplatform + Ktor: Secure Networking with Bearer Auth and Shared Code
• Ktor 3.2.2 Is Now Available
AppTractor
Как в Duolingo повысили производительность Android-приложения (и количество активных пользователей!)
Медленное приложение для Android отпугивало пользователей. Вот как это исправили и вернули пользователей!
👍5❤1
Разработка
• How AI Vibe Coding Is Destroying Junior Developers' Careers
Маркетинг
• Искусственный интеллект и будущее мобильной рекламы: как LLM меняют правила игры
• King проводит увольнения и заменяет людей на ИИ
Кроссплатформа
• The 7 Flutter Secrets That Separate $200K Developers from Everyone Else
• Write Flutter Like Google
Please open Telegram to view this post
VIEW IN TELEGRAM
AppTractor
King проводит увольнения и заменяет людей на ИИ
Источники, знакомые с ситуацией, сообщили, что сотрудники таких отделов, как дизайн уровней и нарративные тексты, потратили годы на разработку ИИ-инструментов для ускорения рабочих процессов, а теперь эти же инструменты делают их роли ненужными.
🙉8🫡4👍2🤯1
Forwarded from AppFiles - Mobile Development
•
(iOS Ru) Sideloading и узник Apple•
(iOS En) Latest Symbol Effects + OnBoarding Animation Using SwiftUI•
(iOS En) ChatGPT in Xcode 26: there’s a hidden prompt•
(iOS En) Build Your First AI Chatbot App with SwiftUI + Foundation Models Framework•
(iOS En) Swift’s Measurement API — From Miles to Meters and Beyond•
(iOS En) Recreating iOS 26 Tab Bar for iOS 16.4+ devices using SwiftUI (Without Liquid Glass)•
(And En) Build a Runtime-Enabled SDK•
(And En) Home APIs tips & tricks•
(And En) THIS Brand New Attribute Makes Compose Texts Fully Responsive (Auto-Scaling!)•
(And En) Designing Kotlin Beyond Type Inference•
(And En) Collect Like a Pro: a deep dive on the Android lifecycle-aware coroutines APIs•
(And En) From 0 to h-AI-ro: high-speed track to AI for Kotlin developers•
(And En) Everything you need to know about the NEW Material's Evolution•
(And En) Publish JVM Library to Maven Central with Gradle (2025 Guide)•
(And En) Data-Driven Build Optimization: Empower Your Teams with Develocity Reporting and Visualization•
(Crs En) Making native SDKs Multiplatform at RevenueCat•
(Crs En) Deploying Kotlin Multiplatform at Google Workspace•
(Dev Ru) Cтартапы, работа в США, путь в IT•
(Dev Ru) Привет, я ваш новый тимлид•
(Dev Ru) Батарейки заряжены! Как отдыхать и восстанавливаться, не уходя в отпуск•
(Dev Ru) Как измерить AI — Бенчмарки, тестирование и обучение LLM•
(Dev En) Project Creation & First Hello World App - Spring Boot 4 Basics With Kotlin•
(Dev En) Behavioral Interview: Full Preparation Guide•
(Mrk En) Заработок на Budget Tracker. iOS. Подписки. Разбор нишиПрошлогодние видео:
•
(iOS Ru) Как побеждать в конкурсах от Telegram•
(And Ru) Переходишь на Compose? Не спеши!•
(And Ru) Как работает ТВ в Android TV?•
(And Ru) Нужны ли Android-разработчики на заводе?•
(And Ru) Gradle DSL изнутри•
(And Ru) Kotlin DSL как единый источник правды для решения многих задач•
(Dev Ru) Чистый код – не значит правильный: clean code, паттерны, лучшие практикиPlease open Telegram to view this post
VIEW IN TELEGRAM
👍3🐳1
Современные кражи данных
Традиционный по понедельникам дайджест за прошлую неделю - современные блокировки в Swift и узники Apple, повышение производительности Android-приложения в Duolingo и кража данных через клавиатуру, мобильное предложение за две недели, ИИ-инструменты, которые замедляют работу опытных разработчиков, подписки в приложениях 2025, ИИ на edge-устройствах и многое другое. Заходите!
Традиционный по понедельникам дайджест за прошлую неделю - современные блокировки в Swift и узники Apple, повышение производительности Android-приложения в Duolingo и кража данных через клавиатуру, мобильное предложение за две недели, ИИ-инструменты, которые замедляют работу опытных разработчиков, подписки в приложениях 2025, ИИ на edge-устройствах и многое другое. Заходите!
👍5
Replit удалил производственную базу данных пользователя,
Было бы смешно, если бы не... а, нет, просто смешно. Джейсон Лемкин, основатель SaaStr, написал в своем блоге об опыте использования сервиса под названием Replit, который позиционирует себя как «самое безопасное место для вайб кодинга».
Первые впечатления Лемкина от Replit были восхитительными.
«Replit сам проверяет качество (суперкруто), по крайней мере частично с вашей помощью… а затем вы запускаете его в прордакшен — все в одном непрерывном потоке».
«Тот момент, когда вы нажимаете «Развернуть» и ваше творение запускается в работу? Чистый выброс дофамина».
Дальше Лемкин был уже полностью увлечен ИИ.
«Седьмой день вайб кодинга, и я хочу четко сказать одно: Replit — самое захватывающее приложение, которое я когда-либо использовал. По крайней мере, с того момента, как был ребенком», — написал он.
«Через три с половиной дня после начала работы над моим последним проектом я проверил свое использование Replit: 607,70 долларов дополнительных расходов сверх моего тарифа Core за 25 долларов в месяц. И еще более 200 долларов только вчера. При таком темпе расходования средств я, вероятно, буду тратить 8000 долларов в месяц», — добавил он. «И знаете что? Я даже не злюсь из-за этого. Я покорен».
Но на следующий день его настроение изменилось, когда он обнаружил, что Replit «все время лгал и обманывал. Он продолжал скрывать ошибки и проблемы, создавая поддельные данные, поддельные отчеты и, что еще хуже, лгал о наших модульных тестах». А потом все стало еще хуже, когда Replit удалил его базу данных. Лемкин поделился тем, что, по всей видимости, было сообщениями от Replit, в которых сервис признавал «катастрофическую ошибку в суждении» и «нарушение вашего явного доверия и инструкций».
Replit также допустил еще одну серьезную ошибку: сообщил Лемкину, что не может восстановить базу данных. В посте от 19 июля Лемкин написал: «Replit заверил меня, что… не поддерживает восстановление базы данных. Он сказал, что в данном случае это невозможно, что он уничтожил все версии базы данных. Оказалось, что Replit ошибался, и откат все-таки сработал. JFC».
Лемкин возобновил использование Replit 19-го числа, хотя и с меньшим энтузиазмом.
«Я знаю, что вайб кодинг — это новое и динамичное явление, и да, несмотря на то, что Replit сам сказал мне, что откат здесь не сработает, он сработал. Но нельзя перезаписывать производственную базу данных. И нельзя не разделять предварительный просмотр, стадию подготовки и продакшен. Просто нельзя», — написал он. «Я знаю, что Replit говорит, что «улучшения скоро появятся», но они зарабатывают более 100 миллионов долларов в год. По крайней мере, улучшите защитные механизмы. Как-нибудь. Даже если это сложно. Все сложно».
Он попытался заставить Replit заморозить изменения в коде и не преуспел. «Нет никакого способа принудительно заморозить код в приложениях для вайб кодинга, таких как Replit. Просто нет», — написал он. «Фактически, через несколько секунд после того, как я опубликовал это, во время нашего самого первого разговора в тот день — @Replit снова нарушил заморозку кода». Он все равно настаивал, пока не обнаружил, что Replit не может гарантировать выполнение модульного теста без удаления базы данных, и пришел к выводу, что сервис не готов к широкому использованию — и особенно не для своей целевой аудитории, состоящей из нетехнических специалистов, желающих создавать коммерческое программное обеспечение.
Было бы смешно, если бы не... а, нет, просто смешно. Джейсон Лемкин, основатель SaaStr, написал в своем блоге об опыте использования сервиса под названием Replit, который позиционирует себя как «самое безопасное место для вайб кодинга».
Первые впечатления Лемкина от Replit были восхитительными.
«Replit сам проверяет качество (суперкруто), по крайней мере частично с вашей помощью… а затем вы запускаете его в прордакшен — все в одном непрерывном потоке».
«Тот момент, когда вы нажимаете «Развернуть» и ваше творение запускается в работу? Чистый выброс дофамина».
Дальше Лемкин был уже полностью увлечен ИИ.
«Седьмой день вайб кодинга, и я хочу четко сказать одно: Replit — самое захватывающее приложение, которое я когда-либо использовал. По крайней мере, с того момента, как был ребенком», — написал он.
«Через три с половиной дня после начала работы над моим последним проектом я проверил свое использование Replit: 607,70 долларов дополнительных расходов сверх моего тарифа Core за 25 долларов в месяц. И еще более 200 долларов только вчера. При таком темпе расходования средств я, вероятно, буду тратить 8000 долларов в месяц», — добавил он. «И знаете что? Я даже не злюсь из-за этого. Я покорен».
Но на следующий день его настроение изменилось, когда он обнаружил, что Replit «все время лгал и обманывал. Он продолжал скрывать ошибки и проблемы, создавая поддельные данные, поддельные отчеты и, что еще хуже, лгал о наших модульных тестах». А потом все стало еще хуже, когда Replit удалил его базу данных. Лемкин поделился тем, что, по всей видимости, было сообщениями от Replit, в которых сервис признавал «катастрофическую ошибку в суждении» и «нарушение вашего явного доверия и инструкций».
Replit также допустил еще одну серьезную ошибку: сообщил Лемкину, что не может восстановить базу данных. В посте от 19 июля Лемкин написал: «Replit заверил меня, что… не поддерживает восстановление базы данных. Он сказал, что в данном случае это невозможно, что он уничтожил все версии базы данных. Оказалось, что Replit ошибался, и откат все-таки сработал. JFC».
Лемкин возобновил использование Replit 19-го числа, хотя и с меньшим энтузиазмом.
«Я знаю, что вайб кодинг — это новое и динамичное явление, и да, несмотря на то, что Replit сам сказал мне, что откат здесь не сработает, он сработал. Но нельзя перезаписывать производственную базу данных. И нельзя не разделять предварительный просмотр, стадию подготовки и продакшен. Просто нельзя», — написал он. «Я знаю, что Replit говорит, что «улучшения скоро появятся», но они зарабатывают более 100 миллионов долларов в год. По крайней мере, улучшите защитные механизмы. Как-нибудь. Даже если это сложно. Все сложно».
Он попытался заставить Replit заморозить изменения в коде и не преуспел. «Нет никакого способа принудительно заморозить код в приложениях для вайб кодинга, таких как Replit. Просто нет», — написал он. «Фактически, через несколько секунд после того, как я опубликовал это, во время нашего самого первого разговора в тот день — @Replit снова нарушил заморозку кода». Он все равно настаивал, пока не обнаружил, что Replit не может гарантировать выполнение модульного теста без удаления базы данных, и пришел к выводу, что сервис не готов к широкому использованию — и особенно не для своей целевой аудитории, состоящей из нетехнических специалистов, желающих создавать коммерческое программное обеспечение.
😁26❤2
iOS
Apple выпустила новые дизайн-киты для Figma и Sketch — с поддержкой Liquid Glass для iOS 26 и iPadOS 26. Они помогут вам быстро и легко создавать высокоточные макеты дизайнов для iPhone и iPad, а также пользовательские потоки. Наборы содержат компоненты для всех распространенных элементов управления и представлений, шаблоны дизайна, стили текста, стили цветов и материалов.
• Дизайн киты iOS и iPadOS 26
• MobileFeedback iOS SDK — отзывы пользователей в виде чата
• Sideloading и узник Apple
• Handling WebView navigation in SwiftUI
• The Last UIKit Developer
• How to Create and Combine SwiftUI Views Without Getting Lost in Deep Nesting and Complex Layouts
• Identifying Text in an Image Using the Vision framework
• Using defer in Swift to manage state cleanup
• Memory Efficiency in iOS: Reducing footprint and beyond
Apple выпустила новые дизайн-киты для Figma и Sketch — с поддержкой Liquid Glass для iOS 26 и iPadOS 26. Они помогут вам быстро и легко создавать высокоточные макеты дизайнов для iPhone и iPad, а также пользовательские потоки. Наборы содержат компоненты для всех распространенных элементов управления и представлений, шаблоны дизайна, стили текста, стили цветов и материалов.
• Дизайн киты iOS и iPadOS 26
• MobileFeedback iOS SDK — отзывы пользователей в виде чата
• Sideloading и узник Apple
• Handling WebView navigation in SwiftUI
• The Last UIKit Developer
• How to Create and Combine SwiftUI Views Without Getting Lost in Deep Nesting and Complex Layouts
• Identifying Text in an Image Using the Vision framework
• Using defer in Swift to manage state cleanup
• Memory Efficiency in iOS: Reducing footprint and beyond
AppTractor
Дизайн киты iOS и iPadOS 26
Они помогут вам быстро и легко создавать высокоточные макеты дизайнов для iPhone и iPad, а также пользовательские потоки.
💅3👍2
Android
JetBrains совместно с TU Delft протестировали компилятор Kotlin с помощью fuzzing-подхода — генерации и мутации случайных входов, чтобы выявить нестандартные ошибки. Такой метод позволил обнаружить баги, которые не ловятся обычными тестами: краши на коротком коде, мискомпиляции, некорректные перегрузки. Для более точных результатов применялась эволюционная генерация: генетический алгоритм создавал валидный код и отбирал те фрагменты, которые сильнее нагружали компилятор. Результаты впечатляют — некоторые ошибки уже исправлены в Kotlin 2.0. Исследование показывает, насколько полезен fuzzing для повышения надёжности компиляторов, особенно при переходе на новые архитектуры вроде K2.
• Torrent Search — поиск торрентов в Material 3
• Open Tracker: как разработать Android-приложение для автоматического трекинга коммерческих представителей. Часть 2 + Часть 1
• Exploring PausableComposition internals in Jetpack Compose
• Compose stability tips and tricks
• Add Speed Effects to Your Android Videos Using Media3
• Understanding derivedStateOf in Jetpack Compose : Optimize your recompositions
• A Journey with KSP and KotlinPoet
• Breaking to Build: Fuzzing the Kotlin Compiler
JetBrains совместно с TU Delft протестировали компилятор Kotlin с помощью fuzzing-подхода — генерации и мутации случайных входов, чтобы выявить нестандартные ошибки. Такой метод позволил обнаружить баги, которые не ловятся обычными тестами: краши на коротком коде, мискомпиляции, некорректные перегрузки. Для более точных результатов применялась эволюционная генерация: генетический алгоритм создавал валидный код и отбирал те фрагменты, которые сильнее нагружали компилятор. Результаты впечатляют — некоторые ошибки уже исправлены в Kotlin 2.0. Исследование показывает, насколько полезен fuzzing для повышения надёжности компиляторов, особенно при переходе на новые архитектуры вроде K2.
• Torrent Search — поиск торрентов в Material 3
• Open Tracker: как разработать Android-приложение для автоматического трекинга коммерческих представителей. Часть 2 + Часть 1
• Exploring PausableComposition internals in Jetpack Compose
• Compose stability tips and tricks
• Add Speed Effects to Your Android Videos Using Media3
• Understanding derivedStateOf in Jetpack Compose : Optimize your recompositions
• A Journey with KSP and KotlinPoet
• Breaking to Build: Fuzzing the Kotlin Compiler
👍5❤2
В AppFigures проанализировали 100 самых прибыльных приложений и игр в американском App Store и выяснили, что 83 из 100 самых прибыльных приложений и игр используют Custom Product Pages, причем 30 из этих приложений и игр используют 30 или более CPP. Не используют самые большие и известные - YouTube, Netflix, Duolingo, Gmail и ChatGPT, им вроде как и не надо. Пишут, что начиная с iOS 26, CPP будут отображаться и в органических результатах поиска, так что их можно будет использовать и всем остальным, кто не "подключён" к Apple Ads.
Разработка
• Сервис вайб кодинга Replit удалил производственную базу данных пользователя,
• Cтартапы, работа в США, путь в IT
• Привет, я ваш новый тимлид
• Батарейки заряжены! Как отдыхать и восстанавливаться, не уходя в отпуск
• Как измерить AI — Бенчмарки, тестирование и обучение LLM
• Быстрые гипотезы, AI инструменты в мобильной разработке и зачем CTO самому писать код
Маркетинг
• Маркетологи в мобайле: Степан Бадышев (Performance Marketing Lead, Яндекс Лавка)
• Кастомные продуктовые страницы — секретное оружие App Store
• Заработок на Budget Tracker. iOS. Подписки. Разбор ниши
Кроссплатформа
• Building Your First Kotlin Multiplatform App: From Setup to iOS App Store with Compose Multiplatform
Разработка
• Сервис вайб кодинга Replit удалил производственную базу данных пользователя,
• Cтартапы, работа в США, путь в IT
• Привет, я ваш новый тимлид
• Батарейки заряжены! Как отдыхать и восстанавливаться, не уходя в отпуск
• Как измерить AI — Бенчмарки, тестирование и обучение LLM
• Быстрые гипотезы, AI инструменты в мобильной разработке и зачем CTO самому писать код
Маркетинг
• Маркетологи в мобайле: Степан Бадышев (Performance Marketing Lead, Яндекс Лавка)
• Кастомные продуктовые страницы — секретное оружие App Store
• Заработок на Budget Tracker. iOS. Подписки. Разбор ниши
Кроссплатформа
• Building Your First Kotlin Multiplatform App: From Setup to iOS App Store with Compose Multiplatform
AppTractor
Сервис вайб кодинга Replit удалил производственную базу данных пользователя
На следующий день его настроение изменилось, когда он обнаружил, что Replit «всю день лгал и обманывал. Он продолжал скрывать ошибки и проблемы, создавая поддельные данные, поддельные отчеты и, что еще хуже, лгал о наших модульных тестах».
👍5👌4
iOS
Apple запустила Retention Messaging API - тексты, предложения и баннеры будут показываться на экране отписки. Ваши сообщения могут напоминать клиентам о функциях или контенте, к которым они получают доступ по подписке, или показывают им альтернативные предложения. Предполагается четыре типа сообщений для удержания: текстовое сообщение, текстовое сообщение с изображением, сообщение о смене тарифного плана, содержащее текст и предлагаемую подписку, на которую клиент может перейти, сообщение о рекламном предложении, содержащее текст и предложение продолжить работу по сниженной цене. Предполагают запустить в 2026.
• Apple представила Retention Messaging API
• Последний UIKit-разработчик
• Meet the Inspector view in SwiftUI
• Swift 6.2 Just Changed NotificationCenter Forever — Here’s How to Use It Safely with Type-Safe Messages
• Enable horizontal and vertical scrolling with ScrollView
• Exploring the Secrets of layoutPriority in ZStack
Apple запустила Retention Messaging API - тексты, предложения и баннеры будут показываться на экране отписки. Ваши сообщения могут напоминать клиентам о функциях или контенте, к которым они получают доступ по подписке, или показывают им альтернативные предложения. Предполагается четыре типа сообщений для удержания: текстовое сообщение, текстовое сообщение с изображением, сообщение о смене тарифного плана, содержащее текст и предлагаемую подписку, на которую клиент может перейти, сообщение о рекламном предложении, содержащее текст и предложение продолжить работу по сниженной цене. Предполагают запустить в 2026.
• Apple представила Retention Messaging API
• Последний UIKit-разработчик
• Meet the Inspector view in SwiftUI
• Swift 6.2 Just Changed NotificationCenter Forever — Here’s How to Use It Safely with Type-Safe Messages
• Enable horizontal and vertical scrolling with ScrollView
• Exploring the Secrets of layoutPriority in ZStack
AppTractor
Apple представила Retention Messaging API
С его помощью вы можете объяснить клиентам, почему им следует оставаться подписчиками.
👍5❤2
Android
Понимание хеширования и взаимосвязи между equals() и hashCode() необходимо не только для собеседований, но и для написания высокопроизводительных приложений на Java и Kotlin. С помощью этого руководства вы научитесь уверенно объяснять хеширование и его применение.
• Mousedroid — Android как устройство ввода для компьютера
• How to Answer Hashing Like a Java/Kotlin Expert
• Start making your Android app more secure today
• Top 10 Jetpack Compose Patterns Every Android Dev Should Know
• Android Studio Narwhal Feature Drop
Понимание хеширования и взаимосвязи между equals() и hashCode() необходимо не только для собеседований, но и для написания высокопроизводительных приложений на Java и Kotlin. С помощью этого руководства вы научитесь уверенно объяснять хеширование и его применение.
• Mousedroid — Android как устройство ввода для компьютера
• How to Answer Hashing Like a Java/Kotlin Expert
• Start making your Android app more secure today
• Top 10 Jetpack Compose Patterns Every Android Dev Should Know
• Android Studio Narwhal Feature Drop
Medium
How to Answer Hashing Like a Java/Kotlin Expert
Understanding hashing and the relationship between equals() and hashCode() is essential not just for interviews but for writing…
👍8