Как сделать мобильное приложение для УК, которое не удалят?
CTO Doubletapp Никита Анчутин выступил на «Неспальном митапе» от Сделка.рф — неформальной встрече девелоперов и цифровизаторов. Никита рассказал, как сделать приложение для управляющей компании, которым жильцы реально будут пользоваться, а не удалят сразу после установки.
Часто приложения УК не приживаются: жильцы ими не пользуются, а УК не получают обратной связи. Причина — разрыв между ожиданиями пользователей и видением заказчика. В видео — инструкция, как создать цифровой инструмент, который станет качественным посредником между сторонами:
поможет УК слышать жильцов и оперативно решать проблемы;
даст жителям удобный доступ к услугам и каналам коммуникации;
объединит интересы обеих сторон в одном интерфейсе.
В видео — разбор: как совместить потребности жильцов и УК; какие функции критически важны для обеих сторон; каких ошибок заказчикам стоит избегать при постановке задач.
Будет полезно девелоперам, продуктовым менеджерам, представителям УК и застройщиков, UX/UI‑дизайнерам и IT‑руководителям.
Doubletapp — IT‑компания, разрабатывающая мобильные приложения с 2015 года. Мы создаём эффективные инструменты для бизнеса и удобные решения для пользователей.
Старый код усложняет рефакторинг, тесты в команде запускаются по‑разному, баги не воспроизводятся на хорошем Wi‑Fi, а после обновления инструментов локальная сборка начинает расходиться с CI — по отдельности все это мелочи, но именно они постепенно начинают тормозить разработку.
Ринат, iOS‑разработчик Naumen, рассказал об инструментах, которые помогают ему решать такие задачи и упрощать повседневную работу.
Periphery: поиск мертвого кода в Swift‑проектах
Со временем в любом проекте появляется код, который уже не используется: старые методы и фичи, забытые extensions и helpers. Все это усложняет навигацию и мешает быстро понять архитектуру проекта.
Periphery помогает находить такие места и наводить порядок перед изменениями в кодовой базе.
Как использую
Запускаю Periphery перед рефакторингом — например, когда нужно обновить модуль профиля с сотнями файлов.
periphery scan
После сканирования инструмент показывает классы, методы, свойства, enum cases, imports и другие элементы. Так проще понять, что действительно участвует в работе приложения.
Что важно знать: результаты всегда нужно проверять вручную. Инструмент может не учитывать динамические вызовы, reflection, Objective-C runtime, storyboard-ссылки или код, который используется через строки.
Network Link Conditioner: тестирование слабой сети
Во время разработки приложение чаще всего тестируется в почти идеальных условиях. Но у пользователей все может работать иначе.
Network Link Conditioner — инструмент от Apple, который помогает эмулировать разные сетевые условия. Например, индикатор загрузки крутится бесконечно, повторная попытка не срабатывает, время ожидания слишком короткое, а пользователь не получает понятного сообщения об ошибке.
Как использую
Обычно проверяю сценарии авторизации, оплаты, загрузки медиа и офлайн‑режимы. Для этого включаю профиль вроде плохого 3G, высокой задержки или потери пакетов и смотрю, как приложение ведет себя в нестабильной сети.
Что важно знать: проверять стоит не только низкую скорость интернета, но и нестабильность сети. А еще важно не забывать выключать Conditioner после проверки :)
just: короткие команды вместо длинных инструкций
В iOS‑проектах быстро накапливаются команды, которые приходится запускать постоянно: тесты, форматирование, генерация ресурсов. Со временем это превращается либо в огромный онбординг‑документ, либо в постоянный поиск нужной команды в документации.
just собирает основные сценарии работы в одном месте и запускает их через короткие понятные команды. В итоге justfile становится чем‑то вроде живой документации проекта.
Как использую
Чтобы каждый раз не вспоминать синтаксис, храню основные сценарии работы в justfile.
После этого вместо длинных команд достаточно написать:
just test
just format
just clean
Что важно знать: just не заменяет CI, Makefile или build system. Это скорее удобный слой для повседневных команд. Поэтому лучше держать justfile простым и не превращать его в большой набор скриптов.
Mint: фиксация версий CLI-инструментов на Swift
Когда у разработчиков разные версии линтеров, форматтеров и других CLI‑инструментов, могут появиться расхождения. Mint помогает зафиксировать набор инструментов внутри проекта и сделать локальный запуск ближе к CI, чтобы у всей команды был одинаковый результат.
Как использую
Вместо глобальной установки SwiftLint, SwiftFormat, XcodeGen или других CLI‑инструментов можно хранить версии в Mintfile и запускать их одинаково у всех разработчиков.
mint run realm/SwiftLint
mint run nicklockwood/SwiftFormat
Что важно знать: Mint полезен именно для Swift CLI-пакетов. Для Ruby-gems, Node.js-инструментов или системных утилит понадобятся другие менеджеры. Также важно кэшировать установленные бинарные файлы в CI, иначе сборки могут тратить лишнее время на установку инструментов.
Save the date: встречаемся 22 апреля на iOS Meetup Wildberries & Russ
22 апреля в 19:00 мск приглашаем на iOS-митап. В программе три технических доклада и нетворкинг с инженерами, которые ежедневно строят мобильную разработку в Wildberries & Russ. Поговорим про автоматизацию релизного процесса, масштабируемое UI-тестирование и тонкости работы с файловой системой iOS.
— Автоматизация релизов в Wildberries | Севастьян Жуков, Deploy Lab Team Lead
Как команда с нуля создала инструмент для управления релизным процессом мобильного приложения и масштабировала его на другие продукты компании. Разберём этапы автоматизации и работу с App Store API: управление релизами и отслеживание их статуса.
— UI-тестирование приложения Wildberries | Руслан Колчаков, iOS TestLab Lead и Валерий Карачаков, iOS TestLab Dev
Руслан расскажет про вызовы при организации тестирования, инфраструктуру и метрики здоровья TestLab. Валерий дополнит докладом про распределённое UI-тестирование на динамически формируемом кластере раннеров: как избежать простоев, эффективно утилизировать ресурсы и ускорить тестирование.
— Работа с файловой системой на iOS | Александр Игнатьев, iOS-разработчик команды Асто
Разберём нюансы работы с файлами, структуру iOS Sandbox и App Group как способ выйти за её пределы.
⏹️Формат: офлайн в Москве + онлайн-трансляция Регистрация
Раньше при подключении CarPlay пользователи видели в приложении 2ГИС на телефоне «заглушку» — почти пустой экран. И наш iOS‑разработчик Ваня задумался: «Почему бы не добавить полезности?»
Идея родилась на внутреннем хакатоне. Он решил не переносить интерфейс целиком, а разделить роли между устройствами. Телефон — для действий. CarPlay — для результата.
Собрал прототип, а затем команда подхватила инициативу. И это одна из самых быстрых задач, которая дошла до релиза.
Все действия выполняются на телефоне и сразу отображаются на экране в машине. Без переходов, без ожидания и без разрыва между устройствами
Это интересно, потому что:
новый сценарий для автомобилистов: теперь можно взаимодействовать с приложением на телефоне, пока навигация идёт в CarPlay;
красивый обход архитектурного ограничения;
инженерная инициатива, которая с хакатона дошла до прода.
Недавно мы делали подборку необходимых инструментов для Android-разработчиков, но на этом мир операционных систем не заканчивается — чтобы развиваться, важно выбрать ту, которая больше всего подходит именно вам.
Если нравится экосистема Apple и хочется работать в закрытой, но при этом цельной среде — попробуйте разработку под IOS. На Хабр Карьере как раз есть множество учебных программ по этому направлению, а ниже — подборка ключевых инструментов "яблочного" разработчика.
Войти в Android-разработку проще, чем кажется: начать можно с освоения базовых инструментов, а затем постепенно углубляться и закреплять знания на практике. Главное — двигаться последовательно и не пытаться охватить всё сразу.
Сегодня мы собрали подборку для тех, кто хочет стать Android-разработчиком и разобраться в основе профессии. А на Хабр Карьере есть все, чтобы выстроить понятный маршрут: сотни учебных программ — от базовых знаний до практики и первых проектов.
Сегодня с 10 часов адрес https://api.telegram.org/bot недоступен. Этот адрес взаимодействия ботов с платформой телеграмм. Как итог телеграмм боты "легли". Если точнее, телеграмм вызывает обработчик, но обратно в телеграмм отправить ничего нельзя.
Пока те боты, которые получают из телеграмм и отправляют ещё живут..
Выпустили мобильное приложение для Интернетометра от Яндекса
Команда Yandex Infrastructure разработала приложение под iOS и Android для бесплатного сервиса Интернетометр. Как и в веб‑версии сервиса в приложении можно замерять скорость скачивания, скорость загрузки и время задержки интернет‑соединения в миллисекундах.
В приложении доступны светлая и тёмная темы
Сбор информации организован с использованием сети CDN‑серверов Яндекса: для большей точности сервис опрашивает не один, а сразу несколько ближайших серверов. Ежемесячно Интернетометром пользуются 5,5 миллионов человек — в среднем они запускают 18 миллионов измерений.
Сервис предоставляет ключевую информацию о подключении: IP‑адрес, версию браузера, разрешение экрана и так далее. В будущем в приложении будет доступен расширенный режим измерений: он будет особенно полезен для технических специалистов, которые настраивают интернет‑соединение. Также у провайдеров проводной и беспроводной связи появится личный кабинет, где они смогут отслеживать замеры в зоне своего покрытия.
5 бесплатных уроков марта для мобильных разработчиков
12 марта 20:00 >>Профессиональные модульные тесты в Android: как тесты улучшают код Открытый вебинар курса «Android-разработчик. Продвинутый уровень» Урок о том, как писать в Android осмысленные модульные тесты для ViewModel, репозиториев и бизнес-логики, чтобы они не маскировали проблемы, а реально улучшали архитектуру и поддержку кода. Записаться на урок
18 марта 20:00 >> Пишем простой проигрыватель на SwiftUI Открытый вебинар курса «IOS-разработчик» Соберете на SwiftUI простой медиапроигрыватель с интерактивным интерфейсом, освоите работу с локальными аудио- и видеофайлами в iOS и наметите путь к интеграции внешних сервисов. Записаться на урок
19 марта 20:00 >> Современная архитектура приложения и внедрение зависимостей Открытый вебинар курса «Android-разработчик. Продвинутый уровень» Разберемся, как выстроить Android-приложение на основе чистой архитектуры, связать слои через MVVM и настроить внедрение зависимостей с помощью Koin без лишней магии. Записаться на урок
23 марта 20:00 >> Навигация Pro-уровня в SwiftUI: как строить масштабируемые iOS-приложения без хаоса в переходах Открытый вебинар курса «IOS-разработчик. Продвинутый уровень» Как в SwiftUI проектировать навигацию без архитектурного хаоса: отделять переходы от интерфейса, управлять deep link и модальными экранами, строить масштабируемую структуру приложения. Записаться на урок
25 марта 20:00 >> Как писать Flutter-код так, чтобы ИИ правильно его дописывал Открытый вебинар курса «Flutter-разработчик» Поймете, почему искусственный интеллект ошибается при генерации Flutter-кода, и освоите приёмы, которые улучшат подсказки, повысят читаемость проекта и ускорят дальнейшую разработку. Записаться на урок
Еще больше бесплатных уроков от преподавателей курсов по всем ИТ-направлениям можно посмотреть в календаре мероприятий.
Долгие годы его выбирали либо фанаты дисциплины, либо команды на сверхкритичных проектах — слишком дорого. Писать тесты до кода медленно, поддерживать тестовый контур сложно, поэтому большинство команд жили по схеме: сначала код, потом «когда-нибудь допишем тесты». Но AI резко меняет экономику разработки: юнит-тесты генерируются за минуты, E2E собираются из user flow, интеграционные тесты склеиваются по контрактам. И появляется эффект, который разработчики любят больше всего — код становится не страшно менять.
Но есть важный нюанс. AI действительно отлично ускоряет тесты после разработки, но не спасает плохую архитектуру. Если система спроектирована криво — вы просто быстрее автоматизируете хаос. Поэтому всё чаще возвращаемся к идее тестов как инструмента проектирования. TDD перестаёт быть «религией» и становится способом делать контракты проще, зависимости чище, а систему — слабосвязанной.
И да, AI ускоряет не всех. Он усиливает системных людей и вскрывает хаос. Если требования мутные, архитектура плавает, а процессы держатся на чате — AI лишь ускорит производство багов.
Я — Мария Лещинская, руковожу тестированием в Surf. Мы много экспериментируем с AI в разработке, тестировании и процессах — и регулярно делимся инсайтами из практики.
Если вам интересно, как меняется разработка прямо сейчас — подписывайтесь и читайте больше материалов от экспертов Surf на нашем Телеграм-канале «Директорат Surf обсуждает». Впереди ещё много практических наблюдений и кейсов с реальными результатами. Ничего не скрываем — рассказываем как есть.
Разработчик на iOS получает по $5 млн каждый месяц на 24 ИИ‑приложениях в App Store. В реальности это одно приложение в разных обёртках: распознавание камней, монет, древесины и даже звёзд. Фотографии пользователей по API передаются на серверы OpenAI, после чего ChatGPT идентифицирует предмет.
Статья про то, о чём не спрашивают на собесeдованиях и не рассказывают на курсах по Android-разработке — о неявной особенности Android, которая влияет на деградацию производительности и приводит к невоспроизводимым ANR в вашем приложении.
SharedPreferences часто используют «по привычке» — сохранить токен, флажок, пару строк. Но в какой-то момент это начинает тормозить интерфейс и даже приводить к ANR, особенно если запись/чтение происходит не там и не тогда, где вы ожидаете. Автор делится измерениями производительности, показывает, как деградация превращается в потерю кадров при переходах между экранами, а затем сравнивает варианты.
Эта статья будет особенно интересна Android-разработчикам и тимлидам, которые уже сталкивались с мистическими ANR, просадками перформанса и фризами на слабых девайсах, а также тем, кто держит в приложении много сторонних SDK и хочет понимать, как неявные записи в SharedPreferences могут незаметно копить нагрузку.
Основы работы с Helm: как упростить деплой в Kubernetes
Helm — это менеджер пакетов для Kubernetes. По сути, он делает для кластеров то же, что apt для Linux или npm для JavaScript: позволяет устанавливать приложения как готовые пакеты, а не собирать всё вручную из десятков YAML-файлов.
В основе Helm — чарт: набор шаблонов с описанием ресурсов Kubernetes. При установке создается релиз с собственной историей версий — можно обновлять приложения, отслеживать изменения и при необходимости быстро откатываться. А еще Helm объединяет десятки ресурсов в один пакет и позволяет переиспользовать конфигурации для разных окружений через values.yaml.
В блоге разобрали установку Helm, основные команды, работу с репозиториями и релизами, проверку чартов перед деплоем, управление зависимостями и откаты. Читайте на сайте Рег.облака.
SpaceWeb объединил управление хостингом, VPS и доменами в одном мобильном приложении
SpaceWeb перезапустил мобильное приложение и перевел его на технологию Progressive Web App (PWA). Теперь все ключевые функции управления услугами доступны в одном интерфейсе прямо со смартфона — без ограничений по функциональности.
Приложение полностью повторяет возможности веб-панели управления. Пользователи могут заказывать и контролировать хостинг, VPS/VDS и облачные сервисы, управлять доменами, DNS и SSL/TLS-сертификатами, отслеживать баланс и нагрузку, настраивать доступы. Также доступны пополнение счёта, автоплатежи и участие в партнерской программе.
Переход на PWA позволил синхронизировать обновления: все новые функции, которые появляются в основной панели управления, сразу становятся доступны и в мобильной версии.
Пользователь сделал игру про лучника, который стреляет во врагов, а управление происходит за счёт вставления и вытаскивания зарядного кабеля из разъёма при подключённом блоке питания. Никаких кнопок, тачскрина и свайпов — только провод и порт.
Превращаем обои на iPhone в стильный календарь — он показывает текущую дату на и каждую ночь обновляется. При этом не нужны сторонние приложения — хватит встроенного приложения «Команды».
Открываем сайт проекта и выбираем модель iPhone, стиль оформления, цветовую схему и часовой пояс;
Копируем ссылку, которую сгенерирует сайт;
Заходим в приложение «Команды», открываем вкладку «Автоматизация» внизу и жмём на знак «+»;
Создаём новую автоматизацию по времени суток: выставляем 00:01, выбираем «Немедленный запуск» и отключаем уведомления;
Добавляем действие «Получить содержимое URL» и вставляем туда скопированную ссылку с сайта;
Делаем второе действие «Установить фото как обои», выбираем только «Экран блокировки» (снимите галочку с домашнего экрана);
Разворачиваем настройки действия и отключаем «Показать окно просмотра»;
Нажмите «Play» внизу справа, чтобы проверить команду — обои должны смениться мгновенно.
Бонусом внизу будет отображаться прогресс года, чтобы вам удобнее было переживать из-за того, что до Нового года осталось 348 дней.
Клиент YouTube для Android под названием Download YT PRO весит всего 60 кБ (48 кБ в архиве). Приложение не требует Root-прав, убирает рекламу, даже спонсорскую. Видео не ставится на паузу, если свернуть приложение или заблокировать экран. Есть встроенный загрузчик видео и шортсов. Добавлен ИИ Gemini, который сразу сделает саммари даже часовых лекций и выдаст факты и советы по контенту.
Я целую неделю отлаживал свой блок GPU, в котором с мая месяца сделал новый подблок, которого не было у AMD, у которого Самсунг лицензировал технологию RDNA. Моим единственным желанием на Новый Год было чтобы прошел тест. Так как баг проявлялся только на подсистеме, тест которой шел 6 часов в софтвере и 8 часов на эмуляторе, после каждого изменения нужно было ждать это время. И вот я проснулся 1 января и тест прошел. Это значит, что с высокой вероятностью этот новый подблок моего дизайна войдет в телефоны Самсунг 2028 года. Все, сегодня можно не работать, а идти в лес или редактировать статью, которую у меня приняли на крутую конференцию. С Новым Годом!
Новый год уже совсем скоро, а это значит, что пришло время получать и дарить подарки. Лучший подарок, который можно сделать себе в 2026 году — освоить новые навыки и получить оффер своей мечты.
А у нас на Хабр Карьере как раз есть все для этого — сотни проверенных и полезных курсов по самым разным направлениям. Сегодня у нас последняя в этом году подборка — по операционкам.
— Android. От основ Kotlin и архитектуры приложений до публикации в Google Play и работы над реальными проектами.
— iOS. Swift и все возможности Apple, чтобы разрабатывать приложения для iPhone и iPad.
— Windows. Системное администрирование и работа с корпоративной инфраструктурой.
— Linux. База для системных администраторов, DevOps и инженеров по безопасности.
→ Делайте полезные подарки себе и своим близким благодаря нашей витрине курсов.