Обновить
256K+

Разработка мобильных приложений *

Android, iOS, Windows Phone и прочие

133,95
Рейтинг
Сначала показывать
Порог рейтинга
Уровень сложности

Локальные LLM на iPhone: память, Core ML, MLX и ограничения

Уровень сложностиСредний
Время на прочтение10 мин
Охват и читатели7.6K

Всем привет! Меня зовут Никита Нагорнов, я iOS-разработчик в компании «Исходный Код». В этой статье разберем, как запускать локальные LLM на iPhone.

Поговорим про:

1. Архитектуру Apple Silicon и Unified Memory — почему не можем использовать всю доступную память;

2. Память, квантование и KV Cache — где приложения начинают падать и как это отловить;

3. Core ML и MLX — чем отличаются, где какой быстрее и почему нельзя всё запускать на нейронном процессоре;

4. Температуру и троттлинг — что происходит с телефоном на длинной сессии;

5. Гибридный пайплайн — как взять сильные стороны обоих фреймворков и получить стабильную генерацию.

Читать далее

Книга: «Создание приложений с ИИ-агентами. Проектирование и внедрение мультиагентных систем»

Время на прочтение2 мин
Охват и читатели8.2K

Привет, Хаброжители! Генеративный ИИ произвел революцию в том, как организации решают проблемы, ускорив переход от концепции к прототипу и готовому решению. По мере роста возможностей моделей наблюдается появление нового паттерна проектирования — ИИ-агентов. Сочетание инструментов, знаний, памяти и механизмов обучения с продвинутыми фундаментальными моделями позволяет выстраивать последовательности из нескольких инференсов моделей для решения неоднозначных и сложных задач.

Агенты — от помощников разработчика до исследовательских и аналитических агентов — уже ускоряют работу команд и целых организаций. Хотя эти агенты повышают эффективность, они часто требуют тщательного планирования и многочисленных правок, а их развертывание остается проблемой во многих организациях, особенно при стремительном развитии технологий и исследований.

Читать далее

Полевые проезды в QA: как мы ищем аномалии геопозиции в городе

Уровень сложностиСредний
Время на прочтение6 мин
Охват и читатели8.8K

В навигации есть ситуации, которые невозможно честно проверить, не выходя в «поле». Можно написать код, прогнать тесты, собрать метрики — и всё равно получить кейс, когда в жизни геопозиция «зависла», позиция «улетела», а ведение по маршруту начинает жить своей жизнью.

Мы уже рассказывали, почему геопозиция бывает нестабильной и как 2ГИС помогает пользователям в такие моменты. Сегодня выпустили ещё несколько обновлений для улучшения навигации в зонах c нестабильной геопозицией — в том числе внедрили сенсорную (инерциальную) навигацию. В этой статье расскажем, как нам в этом помогли полевые проезды. 

Читать далее

Публикуем iOS‑приложение без Мака и без Visa: пошаговый разбор

Уровень сложностиПростой
Время на прочтение5 мин
Охват и читатели11K

Дисклеймер: я делаю сервис аренды Mac mini (ссылка в профиле), поэтому тема мне близка профессионально. В статье нет ссылок на него и не будет рекомендаций его выбрать — только разбор всех путей, которыми пользуюсь сам и которые видел у коллег.

Читать далее

Дистрибуция iOS‑приложения без App Store: практический опыт с AltStore PAL

Уровень сложностиСредний
Время на прочтение2 мин
Охват и читатели10K

App Store review отклонил наше приложение по Guideline 1.2 — основная механика (пользователи оценивают фотографии друг друга) запрещена как категория, и это не лечится правками метаданных. Так мы стали одними из первых, кто дистрибутирует iOS‑приложение исключительно через альтернативный маркетплейс. Документации по этому пути мало, местами она противоречива, поэтому — пошаговый разбор того, что реально пришлось сделать.

Читать далее

Как держать ученика в «зоне потока»: адаптивная сложность на IRT и Elo — и почему я не поверил ей без симуляции

Уровень сложностиСредний
Время на прочтение9 мин
Охват и читатели8.7K

Модель адаптивной сложности выглядела безупречно: формулы верны, тесты зелёные. Симуляция показала, что новички получают 58% верных ответов вместо 82%. Рассказываю, как устроена модель и где был провал.

Читать далее

Фиксатон VK: как мы за три дня обработали 1500 багов в 12 продуктах и довели 420 фиксов до прода

Уровень сложностиПростой
Время на прочтение7 мин
Охват и читатели11K

Привет, Хабр! Я Оля Шишенина, отвечаю за обучение и развитие сотрудников VK. Хочу рассказать про внутреннее мероприятие для инженеров, которое мы провели этой весной: Фиксатон VK — трёхдневный марафон по багфиксам, на котором разработчики чинили баги не только в своих командах, но и в смежных продуктах VK. Решения прошли многоэтапный фильтр от общего пула задач, через проверку кода, QA-ревью при подготовке к релизу.

Победители фиксатона получили Nintendo, Playstation, а главному победителю по баллам в индивидуальном зачёте мы подарили Niva Legend — это отличная машина для того, кто любит фиксить и тюнинговать.

Заглянуть внутрь

Как пройти App Review, если ваше приложение требует регистрации

Уровень сложностиПростой
Время на прочтение6 мин
Охват и читатели6.5K

Перед первой публикацией разработанного мной приложения WeCount я был уверен, что главная причина возможного отказа — ошибки в коде или проблемы в пользовательских сценариях. На практике оказалось наоборот: за всё время App Review к функциональности приложения не возникло ни одного вопроса. Почти все замечания касались исключительно регистрации пользователя.

За два месяца переписки, нескольких отказов подряд и телефонных разговоров с командой App Review, этап регистрации был полностью переписан. В этой статье я расскажу, какие выводы сделал, и почему первоначальная архитектура оказалась ошибочной.

Читать далее

Сейчас будет горячо: нагрев iOS-устройств как продуктовая метрика

Уровень сложностиСредний
Время на прочтение6 мин
Охват и читатели8.8K

В какой-то момент разработки приложение становится достаточно зрелым, а команда достаточно большой. Или наоборот. Тогда кто-то решает, что пора собирать метрики: Crash Rate, Hitch Rate, время холодного запуска, потребление памяти, сетевые ошибки. Организуются красивые дашборды, пишутся аккуратные отчеты, ставятся четкие квартальные цели.

Все довольны. Пока не придет технический директор и не спросит:

Интересный вопрос

Мобильная разработка за неделю #640 (20 — 26 июля)

Время на прочтение5 мин
Охват и читатели8.9K

В новом выпуске как Apple в iOS 27 удалось сократить время запуска приложений и разработка системы автоматической синхронизации фотографий, интервью с Senior iOS инженером из TikTok’а и интеллектуальные приложения для Android с Jetpacker, 15 лет Kotlin, безмолвные ошибки, что и как измерять в мобильной разработке, частная социальная сеть без алгоритмов и рекламы и многое другое. Подключайтесь!

Читать далее

Яндекс.Карты в Expo в 2026: поддерживаемый нативный SDK

Уровень сложностиПростой
Время на прочтение3 мин
Охват и читатели11K

Если вы делаете приложение на React Native / Expo и вам нужны Яндекс.Карты, вы наверняка столкнулись с проблемой: у Яндекса есть официальный SDK для Android, iOS и Flutter — но не для React Native. Годами пробел закрывало сообщество, но в 2026-м ситуация невесёлая:

Читать далее

Автоматизация метаданных App Store и Google Play с fastlane и Azure Pipelines

Уровень сложностиСредний
Время на прочтение15 мин
Охват и читатели10K

Приложение поддерживает 20+ языков. Каждое обновление — это не только новая сборка, но и правки в обоих магазинах: название, подзаголовок, описание, «что нового». Для каждого языка, на каждой платформе, через медленный веб-интерфейс.

При двух десятках языков и двух платформах обновление «что нового» вручную занимает 30–40 минут. При этом легко ошибиться: скопировать не ту версию текста, забыть один язык, перепутать поля между iOS и Android.

В статье покажу, как свести всё это к одному коммиту.

Читать далее

Особенности SRE в мобильном банкинге: подходы, вызовы и специфика

Уровень сложностиПростой
Время на прочтение14 мин
Охват и читатели7.9K

Привет, Хабр! Я Степан Аксенов, SRE-инженер в Т-Банке. Эта статья — часть проекта «20 в 20», приуроченного к 20-летию компании: в рамках проекта специалисты из разных городов рассказывают о своей работе, инженерной культуре и о том, как устроены распределенные команды внутри большого бигтеха.

Однажды мы отключили проблемные функции на Android с помощью конфигурационной заглушки. Через 15 минут система зафиксировала резкий рост крашей — но уже на iOS. Оказалось, что решение, безопасное для одной платформы, сломало приложение на другой. 

Этот случай еще раз подтвердил, что mobile SRE не классический SRE и в нем нельзя полагаться на привычные практики. Нет ни отката, ни новых логов задним числом, ни полного контроля над средой. В статье — как мы адаптируем SRE-подходы под мобильный банкинг, где фронт работает на миллионах устройств, которые мы не контролируем.

Читать далее

Ближайшие события

Как запустить двусторонний маркетплейс для подработок, когда на нём ещё никого нет

Уровень сложностиСредний
Время на прочтение12 мин
Охват и читатели7K

Привет всем. Меня зовут Максим Талалаев и, как уже можно было, догадаться по тематике профиля, мы с очень маленькой, но гордой командой замахнулись на великое и делаем платформу временной (гибкой) занятости. Это модель уберизации, переложенная в подработки. Таксисты по таким работают, курьеры, складские работники и т.д. Даже президент сказал не так давно, что безработица низкая и платформенная занятость - это вам ого-го какая штука!

Нам год, и, наверное, уже можно рассказать о том, как мы запускались, и как я принимал решение о страте именно этого проекта, а не другого.

Читать далее

Измеряя незримое: что и как измерять в мобильной разработке

Уровень сложностиПростой
Время на прочтение9 мин
Охват и читатели7.6K

Всем привет! Меня зовут Алексей, я техлид Android-направления в компании Домклик.

Этой статьёй я открываю цикл материалов, в которых будут собраны мысли, советы и инструкции о том, как сделать приложение и процессы его разработки измеримыми, как находить «узкие места», диагностировать проблемы и причины их возникновения, а также фиксировать их наличие. Минимум кода, сложных терминов и «rocket science» — только практический опыт и наработки по различным метрикам.

Читать далее

Как мы показываем клиентам документацию по проекту из приватного репозитория, не пуская их в репозиторий

Уровень сложностиСредний
Время на прочтение3 мин
Охват и читатели12K

Сразу дисклеймер: это рассказ про инструмент, который мы написали для себя и используем каждый день. Ссылку дам в конце, продавать не буду — расскажу про проблему и как её решали, потому что упираемся в неё, возможно, не только мы.

За последний год мы переписали почти всю проектную документацию в markdown и положили в тот же git, где лежит код. Причина простая: после перехода на Cursor и Claude Code так было удобнее работать. Модели нормально обрабатывают markdown и не лопатят десятистраничный google-док, диффы видно в PR, доки лежат рядом с кодом, который описывают. Всегда можно обратиться к инфе по проекту, внести обновления - короче пользоваться документом, а не хранить его для красоты.

И тут вылезла проблема, о которой лично мы заранее не подумали: документацию читает не только тот, кто её пишет. Её читают клиенты, менеджеры, дизайнеры, эйчары. А они в репозиторий не полезут никогда.

Дать клиенту доступ в GitHub/GitLab — так себе затея сразу по нескольким причинам: там лежит то, что ему видеть не надо, это лишний разговор про безопасность, да и сам интерфейс гитхаба человека не из айтишки отпугивает. Плюс требуется регистрация. В итоге мы делали то же, что, по-моему, делают все: копировали markdown в google docs, чтобы клиент мог прочитать и покомментировать, а потом при каждом изменении заново выгружали и сводили комментарии руками. Год так жили.

Что смотрели, прежде чем пилить своё:

GitBook и Mintlify хотят, чтобы ты писал в их редакторе. Ради шеринга пришлось бы бросить тот самый workflow, ради которого мы в git и переехали. Плюс ценник.

Читать далее

Ошибки не должны быть безмолвными: Sentry, Firebase Crashlytics и Datadog в одном Flutter‑приложении

Уровень сложностиСредний
Время на прочтение12 мин
Охват и читатели9.1K

Мобильное приложение может стабильно проходить тесты и всё равно падать у пользователей в сценариях, которые команда не успела предусмотреть.

В статье разберём, как связать Firebase Crashlytics, Sentry и Datadog во Flutter‑приложении, чтобы собирать ошибки с контекстом, быстрее находить причины сбоев и видеть проблемы с производительностью до того, как они станут массовыми.

Читать далее

Основы Knowledge Management в разработке c AI / ИИ и Людьми

Уровень сложностиСредний
Время на прочтение18 мин
Охват и читатели9.5K

основные идеи по организации, структурированию и системному управлению знаниями и потоками знаний внутри компании / проекта / стартапа с учетом активного взаимодействия AI и людей в ежедневной рутине.

Читать далее

Как мы делаем 2D-симулятор грузоперевозок: что уже готово и куда движемся к MVP

Уровень сложностиПростой
Время на прочтение4 мин
Охват и читатели12K

Делаем Truck Sim 2D — 2D-симулятор грузоперевозок на Godot 4.6 для Android и ПК. Физический груз на RigidBody2D, который реально может выпасть из кузова, производственная цепочка от шахты до завода и первая сетевая версия на ENet — уже играбельная сборка 0.2.8. Рассказываем, как это устроено внутри и что планируем до MVP: превращаем LAN-конвой в настоящий кооператив

Читать далее

История корутин: появление, развитие, спад и возрождение

Уровень сложностиПростой
Время на прочтение11 мин
Охват и читатели8.8K

Привет, Хабр! Меня зовут Дмитрий Попов, я Android‑разработчик в ПСБ. В какой‑то момент мне захотелось разобраться — что такое корутина и откуда они вообще взялись. Погрузившись в различные статьи и видео, я узнал много нового, рассказал коллегам внутри команды, а теперь решил рассказать и вам. Все, что важно знать о корутинах, по моему скромному мнению, — в этой статье!

Читать далее