Mobile Development by AppTractor
11K subscribers
1.87K photos
38 videos
11 files
4.66K links
Цифры, советы и все интересное о разработке мобильных приложений и сервисов. Комментарии и вопросы можно писать прямо @lbogolubov

• Аудитория https://t.me/apptractor/1066
• Сайт https://apptractor.ru/
Download Telegram
Занятная статья о том, что хороший разработчик не равно хороший руководитель команды. Хороший вывод - не просто улучшаться в программировании, но развивать в себе “творческую некомпетентность”. То есть признать свое несовершенство в будущем и заранее развиваться как раз в тех направлениях, где вы гипотетически можете оказаться. В менеджменте, в стратегии, теории игр, философии бизнеса, коммуникациях и всём остальном, что позволит вам лучше руководить.

Разработка

Почему большинство программистов оказываются (или остаются) неэффективными руководителями
Newness: Twitch для бьюти индустрии
Самые распространенные ловушки, с которыми сталкиваются мобильные разработчики
Как мы «вырастили» и победили читеров в своем онлайн-шутере
Запускаем Rust-приложение на мобильной ОС Аврора
Фундаментальные принципы и лучшие практики дизайна мобильных приложений
Gyro-web: доступ к ориентации устройства в JavaScript
Создание руководства по UX-дизайну для вашей команды
Нативные приложения все еще лучше, чем React Native и Flutter
4 open source платформы хранения объектов на 2021
Одновременное обнаружение лица, движения рук и позы в реальном времени на мобильных устройствах

iOS

Как создать боковое меню в iOS с помощью Swift
GraphQL в Swift
Шаблон Фабрика в Swift

Android

Android Broadcast: новости #6
Библиотека Android for Cars переезжает в Jetpack
Решение типовой задачи с собеседования на Kotlin
ArcLibrary: закругление углов для Android
Circle CI + Android: фишки конфигурации
13 причин, почему Dart хуже Kotlin
Не знаю, то ли смеяться, то ли плакать - но в новой иконке Amazon нашли усы Гитлера и компании пришлось срочно обновлять ее. Теперь вместо оторванного упаковочного скотча - скотч с загнутым краешком. Имейте в виду при обновлении своих ассетов - может прилететь. Ну и, например, если вам оторвут скотч такой (насколько я понимаю - довольно стандартной) волной, всегда можно пожаловаться на нацистов в магазине и отсудить себе немного денег.

Разработка

Amazon обновил иконку из-за подозрительных «усов»
Профессионализм в разработке
Маркетологи в мобайле: Анна Кандалина (М.Видео)
Vungle покупает GameRefinery
Clubhouse своими руками: для iOS, Android, Web и даже Unity
Как и зачем мы внесли 22 тысячи изменений в дизайн Яндекс.Карт
Как делать великие продукты
CRAP: 4 основных принципа дизайна, которые должен знать каждый создатель
Как перейти от разработчика программного обеспечения к архитектору решений
Как я ускорил свое приложение React Native в 50х раз

iOS

DSFSparkline: графики для текста
Swift 5: полезные протоколы, что бы писать код как профессионал
Воссоздаем макет и анимации Apple Photos с помощью Compositional Layout
Одна неделя с Xcode на Mac M1
7 инструментов, которые помогут писать лучший код Swift

Android

Разделы памяти Android
Чем отличаются Dagger, Hilt и Koin под капотом?
Архитектура в Jetpack Compose - MVP, MVVM и MVI
Видите усы сами знаете кого на старой иконке?
Anonymous Poll
21%
Вижу, точно это он
60%
Не вижу, это скотч
19%
Не вижу, но он есть
#ЦифраДня: Google представил версию Flutter 2, важный апгрейд для своего фреймворка кроссплатформенной разработки с открытым исходным кодом. Среди технических особенностей Flutter 2:

• Поддержка веб в стабильном канале
• Поддержка десктоп-приложений в стабильном канале
• Надежная работа с null safety в Dart 2.12
• Лучшая адаптация к различным форм-факторам
• Бета Google Mobile Ads
• Новые компоненты для iOS
• Новые виджеты
• Flutter Fix для миграции между версиями Flutter
• Улучшенные Flutter DevTools
• Расширения для Android Studio/IntelliJ и Visual Studio Code
• Улучшенная поддержка Firebase
• И другие.
Интересный маркетинговый ход у Netflix - тоже запустили в приложении короткие видео. Но в данном случае только фирменные юмористические - нарезки из собственных шоу, стендапов, выступлений и т.п. И, собственно, цель этого, судя по всему, даже не в конкуренции с TikTok, а в удержании внутри собственной платформы и в открытии собственного контента. Поскольку контента очень много, большая его часть для пользователя просто теряется. Такие короткие видео — один из способов дать подписчикам небольшое представление о том, что они, возможно, пропустили. Для других приложений тоже хороший повод задуматься - что можно предложить пользователям в короткой форме?

Разработка

Netflix запустил короткие смешные видео в приложении
Как SLON Media создавали контент в стиле UGC для продвижения в ТикТоке
Flutter переходит к версии 2
Самые зарабатывающие приложения в феврале 2021
Open Mobile Maps: новые карты для iOS и Android
Кроссплатформенная мобильная разработка: история вопроса
Нижняя палата конгресса Аризоны приняла закон, разрешающий принимать платежи в обход комиссий магазинов Apple и Google
Как выделиться как инженер-программист в 2021 году - советы и рекомендации
Психология цвета в UX
25 удивительных шрифтов на 2021 год

iOS

7 инструментов, которые помогут вам писать лучший код Swift
XCResult — как и зачем читать
Обнаружение утечек памяти с помощью юнит-тестов в Swift

Android

В Google Play Console новые метрики и бенчмарки
Влияние data-классов на вес приложения
Как настроить платформу внедрения зависимостей с помощью Dagger2 в Android
Очередное интервью в нашей прекрасной серии “Маркетологи в мобайле” - Анна Кандалина из М.Видео. Анна рассказывает о концепции OneRetail и о том, как она способствует улучшению клиентского опыта и бесшовности покупок, как корректно строить кроссплатформенную аналитику, о ключевых задачах в команде, маркетплейсах и ресурсах для развития. Enjoy!

За самый интересный вопрос к этому интервью мы разыграем книгу, а в целом по итогу сезона за лучший вопрос дадим новую Sony PlayStation 5. Подключайтесь!
Forwarded from Programmer Humor
А у тебя бывает ностальгия?
#ЦифраДня: Стартовал конкурс для разработчиков под iOS на создание независимого приложения Telegram для WatchOS 6+. Призовой фонд этапа - $52,000. Срок сдачи работ - 21 марта. Задача - создать отдельное приложение Telegram для WatchOS 6+ на Swift без использования сторонних UI-фреймворков.
Откопал тут нашу статью про то, почему программисты всегда в наушниках. Ключевые слова - поток и кошелек Миллера. Помнится, когда еще работал в офисе, любил прийти с утра и включить в наушниках что-то типа Metallica, SOAD или Dethklok. Потоком накрывало не только меня, но и сидящего в противоположном конце операционного директора. Так к чему это все - посоветуйте что-нибудь интересного из этой обоймы 😌

Разработка

Наушники для программиста: поток и защита
Step: банк для молодежи
Самые скачиваемые приложения в феврале 2021
Мобильные модальные окна: 8 лучших примеров использования
Дизайн приложений: примеры для вдохновения #34
Зарубежные компании хотят обязать платить НДФЛ за российских программистов
Podlodka #205: как зарабатывать деньги
World of Tanks Blitz: Автоматизированное тестирование производительности
2 шага к построению адаптивной верстки Flutter-приложения
Как устроена библиотека дизайн-системы Авито в Фигме
Верхняя или боковая навигация: что лучше для вашего продукта?
Окончательное руководство по рефакторингу кода
Упростите развертывание с помощью Continuous Delivery и GitHub Actions
Прощай Electron, здравствуй Flutter

iOS

Telegram объявил конкурс на создание приложения для WatchOS 6+
Создаем клон приложения WatchOS Tasks в SwiftUI с помощью CoreData
Кастомные UIButtons - тени, анимации, Lottie и т.д.
SwiftGen: генератор Swift кода

Android

Android Broadcast: что нового в Android 12 для разработчиков
Facebook Timeline Compose: социальная сеть на Jetpack Compose
MarkdownText: разметка для Jetpack Compose
О взаимосвязи между корутинами, потоками и проблемами параллелизма
Сказка об изогнутом Recycler View
Как создать приложение для Android на Raspberry Pi за 7 шагов
Navigation Rail для Android
Навигация в Jetpack Compose
Кеширование данных в Android
Освой мобильную разработку и начни карьеру в мире IT. Опыт программирования не нужен, на курсе «Я — мобильный разработчик PRO» в онлайн-университете Skillboх ты сможешь освоить перспективную профессию с нуля.

Ты научишься разрабатывать приложения на IOS и Android, даже если никогда раньше этого не делал.

- Шесть закрытых воркшопов.
- Четыре экскурсии в компании.
- Шесть проектов в резюме.
- Индивидуальная работа с преподавателем.
- Гарантированное трудоустройство.

Начни оплачивать обучение только через полгода после старта, а зарабатывать — уже через четыре месяца!
Доступен кредит без процентов на три года.

Переходи по ссылке: https://clc.am/_udWsA и регистрируйся.
По данным Sensor Tower, с 2016 года размер самых зарабатывающих игр в среднем вырос на 76%. И это касается только скачиваемых из App Store файлов, сколько они там в себя уже закачивают после установки никто не считал. И понятно, если это какие-то ААА-проекты, вроде Genshin Impact, но, например, 260 Мб для Clash of Clans кажутся перебором. Рефакторинга на них нет - о чем, собственно, наша вторая статья 😀

Разработка

Средний размер игр в App Store вырос на 76% за 5 лет
Руководство для инженеров по рефакторингу кода
Как эксперименты с ценой увеличили мой доход на 500%
Эволюция социального фида в iFunny — мобильном приложении с UGC-контентом
Автоматизация тестирования мобильных приложений. Часть 1: проверки, модули и базовые действия
Как выйти на китайский рынок с mini-app для WeChat, чтобы не прогореть
Flutter 2: что нового
Что книга “Игра в цифры” рассказывает об игровой аналитике
От робота-рекрутера до UGC-приложения голосовых пародий для 2 млн пользователей. Личный опыт и немного аутстаффа
Руководство для инженера, как сказать "нет"
Новый революционный UI не за горами - вот признаки
3 книги для развития карьеры разработчика
Aurora UI - новый визуальный тренд на 2021 год

iOS

XUI: архитектуры SwiftUI
Как мы ускоряли работу отладчика Swift
Почему ссылочные типы Swift плохо влияют на время запуска приложения
Самый заминусованый вопрос Stack Overflow о Swift
Как разработать приложение для стриминга для iOS на SwiftUI за 7 дней

Android

Kotlin. Лямбда vs Ссылка на функцию
Как реализовать отслеживание местоположения Android-устройства на своем сайте
Ускоряем CI-конвейер для Android с помощью модульных проверок в Github Action
Какие вам вакансии больше интересны?
Anonymous Poll
30%
Senior
31%
Middle
22%
Junior
17%
Вообще не интересны
Мы обнаружили, что пользователи, которые присоединились к нам в последние месяцы, не проводят так много времени в приложении. Как бы вы исследовали эту ситуацию?
Этот вопрос – один из первых, который задают на собеседовании в Amplitude.

После ответа на него, соискатель получает еще несколько вопросов. Например, таких: мы обнаружили, что наши retention метрики поползли вниз на прошлой неделе. Как бы вы выясняли в чем причина? Завтра будет ваш первый день в нашей компании, и мы дадим вам доступ к нашим базам данных. С чего вы начнете свой первый день?

Проверяется, разумеется, "работа мысли" кандидата. Как он аргументирует свою точку зрения и чем объясняет подходы к задаче. Очень часто после этого представитель Amplitude хвалит за ответ и рассказывает свое решение – стройное, убедительное, ёмкое и спрашивает кандидата, согласен ли он с этим решением. В этом скрывается подвох: транслируемое решение логически неверное, и цель этого вопроса – проверить готовность соискателя спорить и отстаивать свою точку зрения.

Продуктовые менеджеры и аналитики управляют тысячами различных взаимодействий, которые пользователи совершают в продукте. Для ответов на вопросы «Почему это произошло?» или «Что бы мы могли попробовать», им необходимо поработать с друг с другом, инженерами, службой поддержки и другими сотрудниками компании, чтобы убедиться, что они исследуют нужные области.

• Отличное понимание продукта и пользователей.
• Генерирование сильных гипотез.
• Глубокое понимание инженерии сбора событий.
• Дизайн экспериментов

Всё это – не только ключевые области знаний продуктового аналитика, которые проверяют на собеседовании в Amplitude (и многие другие компании), но и ключевые темы конференции по продуктовой аналитике Aha!, которая состоится 8-9 апреля в онлайн формате. В программе 32 лекции от ведущих специалистов в области продуктовой аналитики и десяток мастер-классов с отличным продакшеном.

Событие глубоко техническое, так как ничто не освобождает вас от знания матчасти. Главные ошибки происходят из-за слабого или неверного понимания низкоуровневых вещей. В критической ситуации вы упадете до уровня своих компетенций, а не подниметесь до уровня своих ожиданий...

➡️ Программа: таблица, документ
Зарегистрироваться по ссылке
Промокод от нашего канала на 10% скидку – apptractor
Увидимся в чатах
Нашел на TechCruch интересную штуку - Runway. Это такой единый центр для релизов приложений, который автоматизирует работу всех разрозненных инструментов (GitHub, JIRA, Slack, Circle, fastlane, GitLab, Bitrise, Linear, Jenkins и App Store с Google Play) и позволяет создать единый центр. В нем будет показываться вся информация о состоянии релиза и он же сможет автоматизировать всякие повторяющиеся задачи вроде “Отправить уведомление Васе после завершения тестирования”. Правда, стоит $400 в месяц, так что для маленьких команд вряд ли окупится.

Разработка

Runway помогает координировать релизы приложений
Как разработчики приложений меняют стратегию и добиваются успеха в новых условиях
Instagram выпустил новую версию Lite-приложения
Разработка идеального поиска для Википедии под Android
История переписывания любого программного обеспечения
Как писать ужасные комментарии к коммитам

iOS

DI в iOS: Complete guide
Запуск игры на Unity из приложения SwiftUI для iOS
Создание панели поиска на чистом SwiftUI
Осваиваем превью SwiftUI
5 способов хранить пользовательские данные в iOS-приложении

Android

StackExpandableView: стек, как на iOS
Jetpack Activity Result API. Часть 1. Практическое использование
Kotlin Best Practices
Переход с Mac на Ubuntu в разработке под Android
Внедрение Kotlin в Prime Video для большего удовлетворения разработчиков и меньшего количества кода
Пока LiveData, привет SharedFlow
Forwarded from Programmer Humor
Решение проблемы с отоплением найдено!
Говорить “да” ума много не надо. А вот с “нет” вы так или иначе прослывете “скотиной и русским шпионом”. Перевел тут статью о том, как профессионально и эмпатично говорить “нет”. Скотиной все равно останетесь, но более.. профессиональной что ли 🙃

Разработка

Руководство для инженеров о том, как сказать «нет»
Маркетологи в мобайле: Максим Шатерник (Gameloft)
LinearB «объясняет» происходящее в проектах разработки
Григорий Петров: Дешевле переписать, чем изменить
Дизайн приложений: примеры для вдохновения #35
Сушите вёсла #13: сделай мне красиво
Podlodka #206: Clojure
Мобильные игроки 45+ в 2020 показали наибольший прирост
Мобильное настоящее «М.Видео»: телепортация была стремительной
Самый полный список метрик тестирования на русском языке
Адаптация таблиц под мобильные устройства
Как улучшить понимание интерфейса с помощью интуитивных действий
Kotlin Multiplatform - панацея для разработки мобильных приложений?
5 наиболее часто задаваемых вопросов в собеседованиях программистов в Amazon
Расширения Visual Studio Code для повышения производительности в 2021
Мой опыт собеседования в Google

iOS

SwiftVideoBackground: фоновое видео для UIView
Память в Swift от 0 до 1
Реверс-инжиниринг Bluetooth-устройств
Как уменьшить и оптимизировать размер iOS-приложения?
Создание настраиваемого UITextField с помощью Combine

Android

Android Broadcast: новости #7
«Плитки» в Wear OS открыли для всех
SegmentedProgressBar: прогресс-бар как в историях Instagram
Уязвимости Android 2020
Выходим на рынок Huawei, или Как мы адаптировали приложение для работы с HMS
Компилируйте меньше с SOLID
Использование возможностей дизайн-языка Android
Добавьте вашему приложению жизни
👍1
#ЦифраДня: Начиная с 1 июля 2021 года компания Google также снижает плату за обслуживание, которую Google Play получает, когда разработчик продает цифровые товары или услуги. Как и в App Store, это будет 15% при выручке до 1 миллиона долларов в год.
Малое количество скептиков (или наоборот, оптимистов...) в нашем полуторагодичном опросе посрамлено. Apple пала под российским государственным напором и тоже будет предустанавливать приложения. При активации будет запускаться менеджер, который предложит на выбор российские продукты по списку. Вроде как можно будет совсем отказаться.

Разработка

Apple согласилась на предустановку российских приложений
Google снижает комиссию Play до 15%
Flutter Dev Podcast #26: Flutter 2.0
Redmadrobot открывает весеннюю стажировку
Автоматизация тестирования мобильных приложений. Часть 2: предусловия, верификация элементов и независимость шагов
Flutter вот-вот завоюет Web
Курс тестировщика пройден. А дальше что?
Верхняя или боковая панель навигации: что лучше подходит для вашего продукта?
Будущее приложений: декларативные UI и Kotlin MultiPlatform
Как сделать UI-звуки для игры
10 шаблонов проектирования, которые должен знать каждый архитектор ПО
UX-советы по оптимизации встроенных покупок в играх

iOS

Swift 5: полезные протоколы, чтобы писать как профессионал
Xcodes.app: много Xcode на выбор
Глубокое погружение в Функции в Swift
Список UICollectionView с интерактивным кастомным заголовком
Чистый Swift: объяснения и шаблоны

Android

Android — запрещенные приемы
Материалы митапа для андроид-инженеров: поиск проблем сборки, защита от них и работа с Gradle
Как мы разработали компонент, который повысил удобочитаемость, масштабирование и тестирование
10 ошибок, которые я сделал как Android-разработчик, но вы не должны
Лучшая обработка состояний между ViewModel и Composable
Forwarded from Programmer Humor
Жизненный цикл разработки приложения