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

• Аудитория https://t.me/apptractor/1066
• Сайт https://apptractor.ru/
Download Telegram
Всем привет! Меня зовут Егор Толстой. Я Product Lead в Kotlin, ведущий подкаста Podlodka, а в свободное время веду несколько Telegram каналов про различные области разработки. Для AppTractor я подготовил небольшой дайджест с подборками кайфовых материалов за последние месяцы!

iOS (канал iOS Good Reads)

Как Swift и SwiftUI используются в официальных приложениях Apple (спойлер: Objective-C не победить!)
Ошибки, допущенные при дизайне Swift и как они сейчас влияют на разработчиков
Как изменилась зарплата iOS разработчиков за 2021 год

Android (канал Android Good Reads)

Как в огромной кодовой базе Twitter внедряют Compose
Почему лучшие практики по использованию корутин от Google – вредны
Как WorkManager используется в библиотеке LeakCanary для запуска задач в отдельных процессах

TechLead (канал TechLead Good Reads)

Почему технические собеседования могут отсеивать крутых специалистов и как с этим быть
Эссе про то, должен ли технический лидер доверять своей команде
Готовые шаблоны того, как говорить "нет" другим людям

QA (канал QA Channel)

Бесплатный учебник по тестированию для начинающих: тест-кейсы, чеклисты, тест-анализ и многое другое
Огромная энциклопедия по всем известным паттернам автотестирования
Как отличить Senior QA от Middle QA
🔥92👍2
Apple впервые, с момента выхода iOS 15, опубликовала данные о распространении новой ОС. Сейчас 63% всех устройств работает на последней версии, еще 30% на iOS 14. Если взять только iPhone, выпущенные за последние четыре года, то это 72 и 26% соответственно. Это почти на 10 пп меньше, чем принятие iOS 14 год назад. Впрочем, объяснение этому простое - перестали требовать обязательного обновления и стали выпускать патчи безопасности для iOS 14.

Разработка

Apple опубликовала данные о принятии iOS 15
Повышаем FPS приложений
Как стать игровым композитором: поиск себя, нетворкинг и везение
Самые зарабатывающие приложения декабря в США
Apple запустила кастомные промо-коды для подписок
Andromeda могла стать собственной ОС Microsoft для Surface Duo
Дизайн приложений: примеры для вдохновения #70
Podlodka #251: Peer Review
$22 млн в Серии А: Crowdbotics — платформа low-code разработка
Jugger.dart: внедрение зависимостей во Flutter
Операционная система Phantom от российского разработчика: возможности и нюансы
Автоматическая диагностика и исправления в платформе данных Netflix
Поддержка бэкенда продуктов, которые обслуживают миллионы пользователей по всему миру
От идеи до игры за 24 часа с Firebase

iOS

Apple готовит к выпуску самую широкую линейку новых продуктов
Почему я против enum
Оптимизация рендера в iOS: frame buffer, Render Server, FPS, CPU vs GPU
Программирование Auto Layout в примерах
Раскрашивание логов Xcode для улучшения понимания
Сокращение времени сборки на 50%
Themes, Elements и Structure в SwiftUI
Лучшие практики модульных тестов в Xcode и Swift
Поддержка async/await в качестве владельца модуля

Android

WindowState: состояние складывающихся окон для Jetpack Compose
Google обновляет курс «Основы Android на языке Kotlin» и готовит курс по Compose
Бенчмарк современных MacBook для Android разработки
Объяснение монад в Kotlin
Аутентификация на Android с помощью библиотеки AppAuth
Как создать Bottom Navigation, как Pinterest
Введение в Jetpack DataStore
👍5🔥1😁1
Учебный курс по GitHub Actions на YouTube

Курс посвящен GitHub как платформе автоматизации. Фактически, он научит вас, как написать свой первый конвейер рабочего процесса с GitHub Actions и GitHub API для автоматизированного создания, тестирования и развертывания ПО.

Есть 4 видео:

1. Написание вашего первого workflow с помощью GitHub Actions и GitHub API.
2. Создание конвейеров непрерывной интеграции (CI) Python и NodeJS с помощью GitHub Actions.
3. Непрерывное развертывание (CD) с помощью GitHub Actions.
4. Управляйте инфраструктурой AWS с помощью Terraform как профессиональный DevOps-инженер.

Видео: https://apptractor.ru/gthbact
👍3💩2
#ЦифраДня: Если бы появилась возможность выбрать профессию снова, верны своему делу осталось бы подавляющее число архитекторов и программистов. В опросе программисты на втором месте - 82% из них подтвердили бы свое решение о выборе профессии, 13% опрошенных хотели бы сменить направление деятельности, еще 5% затрудняются ответить. Программисты с 2014 года занимают второе место среди профессиональных групп, довольных своей специальностью. Ранее в опросе 2018 года удовлетворенных профессией было на 4% меньше (78%), чем в этом году.
👍3
Новая история про быстрою разработку пет-проекта от одного из разработчиков Firebase. На создание своей вариации Wordle он потратил всего 24 часа и в этой статье делится классическими выводами о быстром прототипировании. Хотя его игра и веб, но принципы быстрого развертывания в целом и пет-проектов в частности остаются неизменными, так что, мне кажется, вполне полезно. Ну и в целом интересно, как перерабатывать хайп во что-то интересное 😀

Разработка

От идеи до игры за 24 часа
Программисты и сисадмины наиболее часто преданы своей профессии
Учебный курс по GitHub Actions
Мифы и легенды о тестировании
Как меня разорили мои облачные расходы
Flutter: работа кода в фоновом режиме
Как мы запускаем новые продуктовые команды

iOS

Разработчики жалуются на недоступность iCloud
Swimat: форматирование Swift-кода
«Горячие» и «холодные» Feature toggles: принципы работы
Устраняем "массивные AppDelegate" в iOS
Анимации внутри ScrollView с SwiftUI
Управление Core Image Filter Processing с параллелизмом в Swift
Создаем гибкий пикер с помощью SwiftUI

Android

Введение в Jetpack DataStore
Android Broadcast. Тренды Android разработки в 2022
Использование Hilt на полную — наша история успеха!
Традиционный MVVM с Jetpack Compose и StateFlow
Как я использую шаблон Фабричный метод в Android-разработке
Дорожная карта для Android-разработчиков на 2022 год: часть 1
👍6
#НостальгияДня: Хорошое. Понятное. Честное. Веселое. Вот что представляло приложение iBeer для первых пользователей iPhone, и то, чего не хватает в сегодняшнем мире «нефункционирующих токенов» и «idle игр». Приложение было не только беззаботным занятным трюком, который вызывал улыбки на лицах миллионов, но и прибыльным предприятием, приносящим своему создателю — бедному 37-летнему фокуснику по имени Стив Шератон — до 20 000 долларов в день.

Шератон рассказал о своих доходах в недавнем интервью журналу Mel Magazine — и это еще один прекрасный кусочек ранней истории смартфонов. К Шератону обратилась Apple, которая искала разработчиков, которые могли бы создавать приложения, демонстрирующие потенциал iPhone. Так он пересмотрел концепцию, статичного видео, заменив анимацию реальными видеоресурсами и связав эти клипы с движениями, которые воспринимал акселерометр iPhone.

Благодаря своей простоте и новизне iBeer мгновенно стал хитом, как рассказывает Шератон: “Мы вырвались на первое место [в App Store] в первый же день и оставались там около года, — говорит он. — Помимо визуального юмора и своего рода обращения к наименьшему общему знаменателю, iBeer имел большой успех, потому что позволял людям показать своим друзьям, на что способен телефон. Вы могли показать им карты и все эти забавные штуки, но iBeer было проще понять, и это был забавный и интересный способ показать работу акселерометра в iPhone и его яркий экран с очень реалистичными цветами”.

При цене 2.99 доллара за загрузку приложение вскоре стало приносить большие деньги, которые автор тратил на жилье в Испании и на антикварную мебель.
🔥8👍6
В топе история о том, как чуваку прилетел счет на 10,000 австралийских долларов за использование Azure. Фишка в том, что он неправильно (вернее, правильно, но не до конца учитывая ограничения Cloudflare) разместил файлы в облаке, и они вместо кэша стали скачиваться непосредственно из Azure. Мораль1: облако это хорошо, но в доме надо держать и мясные закуски всегда надо до конца понимать, что это вовсе не бесплатно и в один момент чужая сетевая инфраструктура может сыграть против вас. Мораль2: а у вас стоит предупреждение о перерасходе бюджета? 💸

Разработка

Как меня разорили мои облачные расходы
Автор iBeer поделился тем, как зарабатывал до $20K в ранние дни App Store
Исправление снижения производительности до того, как оно произойдет
Если вы хотите масштабировать свое приложение, узнайте, как использовать асинхронность

iOS

Обновлен App Store Connect API
15 стран, 9 языков: трудности перевода одного iOS-приложения
Переосмысливаем Координаторы в iOS
4 малоизвестные функции Swift
Автоматический повтор асинхронных задач Swift

Android

Faradle: Wordle на Jetpack Compose
Реактивное программирование или сопрограммы: между молотом и наковальней?
Импакт-анализ на примере Android-проекта
Анимации в Jetpack Compose с примерами
Повторяем уведомления ежедневно в определенное время в Android
Ваши глубокие ссылки могут быть неработающими: Web Intent-ы и Android 12
👍8
Netflix просто бездна историй о разработке. У нас уже было с десяток статей об их разработке - вот еще одна, о том, как они тестируют падение быстродействия телевизионного приложения еще на стадии коммитов. Казалось бы, что тут сложного - бери да измеряй. Но реальных вопросов внутри оказалось достаточно для того, чтобы создать настоящий фремйворк для измерения изменений 😀Его полезность выходит далеко за рамки анализа производительности. Например, его можно использовать для определения точек перегиба в надежности системы, удовлетворенности клиентов, использовании продукта, объеме загрузок или доходах”. Уот так уот все у Netflix 🤷‍♂️

Разработка

Исправление снижения производительности до того, как оно произойдет
Количество используемых приложений снизилось
VK запускает программу стажировки
Apple Search Ads начала поддерживает продуктовые страницы
iPhone смогут принимать платежи для бизнеса
Как мы подняли ретеншн третьего дня на 30% у североамериканских игроков в World of Tanks Blitz
Особенности сканирования штрих-кодов в средней полосе России
Редизайн RedBus: кейс UI/UX
Собеседование с 20-летним Senior-разработчиком. Шутка или новая реальность?

iOS

Skailer: плеер в неоморфизме на SwiftUI
Идентификаторы элементов в XCUITest
Интеграция RxSwift как XCFramework с CocoaPods

Android

Вышла Android Studio Bumblebee (2021.1.1)
Чем отличается Kotlin?
Начинаем маленькими шагами работу с GraphQL для Android
👍7
#ЦифраДня: Мобильный ландшафт приходит в норму после резкого изменения поведения потребителей 2020 года, и данные Sensor Tower показывают, что количество уникальных приложений, используемых на мобильных устройствах в Соединенных Штатах каждый месяц, вернулось к допандемическому уровню. В 2021 году это в среднем это 46.5 приложений на устройство в месяц. Однако сильно изменилось само потребление приложений в разрезе категорий - стало меньше игр, но больше финансовых приложений, бизнеса, еды и напитков, образования и медицины.
👍7
Forwarded from Programmer Humor
😁26👍63
Оптимизируйте рекламу для установки приложений

В Директе можно закупать качественный трафик и платить конкретно за установки. Яндекс выпустил небольшое руководство с рекомендациями по оптимизации кампаний для привлечения установок.

Узнайте на 9 карточках, как запускать эффективные мобильные кампании и продвигать приложения легко и продуктивно.

Пост доступен в канале Яндекс.Рекламы, где в целом много полезного для маркетологов и рекламщиков контента, а также выходят познавательные посты про рекламу мобильных приложений.
👍4🔥2🤩1
Наш традиционный большой еженедельный дайджест со всем материалами за неделю. Сегодня снова 90 материалов про iOS и Android, разработку, аналитику и монетизацию!
👍4👎1
Как справляться с техническим долгом в масштабе суперприложения

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

В этой статье Директор по инжинирингу во Flo рассказывает, как в компании работают с техническим долгом и как эволюционная архитектура и SRE помогают сбалансировать инновации и качество в мобильной разработке.

Статья 🇬🇧: https://apptractor.ru/flodbt
Платформа: разработка
👋: 233
👍7
В Belka Games написали для полноценный гайд по запуску - tech launch, soft launch и global release - игр. Читается захватывающе и, надеюсь, применимо и к неигровым проектам. Так что если вы пилите свои продукты в мировом масштабе - обратите внимание. Ну и “перевели” в текст тренды Android разработки 2022 от Android Broadcast, так что тоже не пропустите.

Разработка

Предсказуемый успех. Почему мобильным играм нужен маркетинг в софтлонч и как его использовать с наибольшей выгодой
Как пользовались приложениями во время новогодних праздников?
С чего начать учить Android и iOS? Ошибки новичков в мобильной разработке
Podlodka #252: теория игр
$35 млн в Серии B: Censys — защита IoT и облака
Soviet Project — Хоррор игра о недалеком прошлом
Как проходит интервью мобильных разработчиков в Тинькофф
История Snake: как игра для Nokia создала новую эру в мобильной индустрии
Flutter vs Native: почему мы переходим с первого на второй
Уроки и статистика после шести лет работы инди-разработчиком
Как решить, когда пора прекратить проектирование и начать программировать
Как справляться с техническим долгом в масштабе суперприложения

iOS

Apple разрешила распространение приложений по прямой ссылке
Обзор решений для навигации в iOS
Как отправлять изображения в полезной нагрузке уведомлений — Firebase
Исследуем время сборки Xcode с пользовательскими SF символами
5 простых вещей, которые я делаю, чтобы стать iOS-инженером
Повысьте скорость развертывания iOS-приложений с помощью Feature Flag библиотеки

Android

Android Broadcast: тренды Android-разработки 2022
Lucilla: полнотекстовый поиск в Kotlin
В Google Play появится раздел «Предложения»
Butterfly: адаптивный и отзывчивый UI для Android
Ускорение рисования Мандельброта на Android в Jetpack Compose
Динамическое изменение Backend среды в рантайме
Беспроводная ADB отладка с Android Studio Bumblebee
👍13
➡️ Делаем оффер iOS- и Android-разработчикам за один день. Приглашаем в команды Мобильного банка, Тинькофф Инвестиций, Тинькофф Бизнеса и еще трех проектов.

Вы — в течение одного дня общаетесь с нашей командой. Мы — делаем оффер, если работа подойдет вам по условиям, а задачи — по скиллам.

🖇 Все будет онлайн, 19 февраля. Заявки принимаем до 15 февраля включительно. Подробности и регистрация по ссылке: https://l.tinkoff.ru/mobile-offer
👍4🎉2
Forwarded from Код Воробья для iOS разработчиков
Как устроен системный калькулятор.

Приложение написано на сценах. Root-контроллер называется DisplayViewController. Лейбл с введенными цифрами обернули в контейнер DisplayView и добавили жесты LongPress, Swipe и Tap.

Клавиатуру сделали обычный вью и назвали CalculatorKeypadView. Кнопки сделаны как UIButton. Все кнопки - объекты одного класса, даже измененный 0. Контейнер лейаутится через AutoLayout, а вот сетку с кнопками расставили с помощью фреймов.

#ViewHierarchy
👍30💩71
Статьи про внедрение KMM (на iOS) читаются как синопсис фильма ужасов 🤡 Тут у нас сразу не заработало, мы поплясали с бубном, не помогло, вылезла чубакка, но мы ее с привлечением Android-разработчиков побороли. А тут нам надо было изучить Kotlin, Gradle и Android Studio, но это же нормально - зато кроссплатформа. В общем, как вы - согласны да/нет, будете внедрять KMM?

Разработка

Чему мы научились, используя KMM для iOS
Quan: выгорание сотрудников
Pinterest добавляет примерку мебели в дополненной реальности
The New York Times покупает Wordle
Не совсем очевидные тренды развития рынка приложений, как к ним подготовиться мобильному разработчику?
Руководство по самостоятельному изучению основ науки о данных за 20 недель
Backend driven UI в Flo Health
Состояние разработки приложений 2021

iOS

Siren: уведомление о выходе новой версии приложения
GraphQL в мобильной разработке. Пишем клиент для iOS
Эволюция UI-тестов в iOS-приложении
Как создать игру Wordle с помощью SwiftUI
Веб-уведомления, WebXR и улучшенная поддержка PWA будут в iOS

Android

Каждый Composable заслуживает ViewModel
Kotlin Multiplatform Mobile и как сделать общую ViewModel: предложение по архитектуре
Принципы SOLID с (почти) реальными примерами на Java
Непрерывная доставка мультиплатформенной библиотеки Kotlin
👍6
Будете внедрять KMM?
Anonymous Poll
17%
Будем
25%
Думаем
59%
Не будем
💩36🥰6👍2👎1