В этом дайджесте рефакторинг, UI, UX и анимации, возвращение триала в App Store, Kotlin как “прорыв года”, хакатоны для развития команды, скрытые игровые механики и заработки FaceApp.

Что делает инженер, когда необходимый инструмент отсутствует? Верно, сделает всё сам! Ранее мы уже рассказывали о создании своих кастомных инструментов, теперь поговорим о том, как модифицировать Xcode и заставить его работать по твоим правилам. Я неустанно собирал ui kit’ы, экспериментировал с контентом в плейсхолдерах, стилями, тенями текстами и состояниями, чтобы понять влияет ли это на конверсию. Иначе говоря, смогу ли я увеличить продажи дизайн-продуктов для Figma, если добавлю немного визуальной динамики в статичные дизайн-макеты, чтобы сделать темплейты интереснее и функциональнее.
Этот дайджест доступен в виде еженедельной рассылки. А ежедневно новости мы рассылаем в
Telegram-канале.
iOS
• (+20) Custom refactoring tool: Swift
• (+16) Разработка приложения на SwiftUI. Часть 1: поток данных и Redux
• (+14) Вот это поворот: почему Apple изменила требования к разработчикам приложений
• (+9) Создаем шаблон Xcode проекта
• (+2) Из веба и банков в iOS-разработку: личный опыт программиста Apiqa
• Лояльность владельцев iPhone достигла минимума
•
Работа с CloudKit
• Apple представляет новые эмодзи
• Триал для приложений: возвращение в App Store?
• Обзор новой операционной системы iPadOS Beta от Apple
•
Как использовать iOS Background Task, чтобы поддерживать ваше приложение в актуальном состоянии
•
Инкрементальная загрузка и анимация изображений в SwiftUI
•
iOS 13 – готово ваше приложение к темноте?
•
Сокращение объема памяти и OOM-завершений в iOS
•
Создание статичных фреймворков в Carthage
•
Начинаем работу с Combine в Swift
•
Разбил лобовое стекло и заработал $ 10 000 в программе поиска уязвимостей Tesla
•
Как использовать Swift для WatchConnectivity
•
Быстрые очереди на Swift
•
Создаем Поисковую панель с материальным дизайном в iOS
•
Управление фоновыми задачами с новым Task Scheduler в iOS 13
•
MagazineLayout: UICollectionView от Airbnb
Android
• (+15) Как реализовать чистую архитектуру на Android?
• Google во много раз увеличил вознаграждения за поиск уязвимостей в Chrome, Chrome OS и Google Play
• Kotlin стал “Прорывным проектом года”
• Разработка под Android: советы самому себе
• Microsoft Word достиг 1 млрд. скачиваний на Android
•
Видео Conference for Kotliners 2019
•
Курс по Kotlin – руководство для начинающих
•
Разработка игры в рулетку для Android
•
Google Analytics вместе с Tag Manager + Firebase
•
Создание обложек для Wear OS
•
Готовим приложение для Android Q
•
Как сделать View функцией State в Kotlin
•
Пакет приложений и Sideloading: как предотвратить сбои
•
Создаем сканер QR-кодов с использованием Firebase ML Kit и CameraX
•
Исследуем App Actions на Android
•
10 самых многообещающих трендов Android-разработки в 2019
•
Как Kotlin упростил мою жизнь в мире Java
•
Модели потоков в Корутинах и Android SQLite API
•
Эксперимент: превращаем MVP в MVVM без ViewModel library
•
Pro Bulk Sms Sender: массовая отправка СМС
Разработка
• (+15) Как UX-писатель помогает улучшить продукт
• (+12) React Native: делаем draggable & swipeable список
• (+11) Дизайнеры vs разработчики: об истории создания приложения «Мой умный город»
• (+7) Вышла Preview-версия XAML Hot Reload для Xamarin.Forms
• (+7) Нативная разработка, React Native и Flutter: критерии выбора
• (+3) Как обеспечить безопасность разработки, сохранив время и нервы
• (+2) Базовые навыки для работы с Unity
• (+1) Как разработать ещё один платформер с помощью Unity. Ещё один туториал, ч.2
• 6 принципов функциональной анимации: как сделать правильные переходы
• Podlodka #120: Kubernetes
•
UI-тесты
• AppsCast #9: Тимлид, или Туда и обратно
• Stein: база данных из Таблицы Google
• Как повысить эффективность удаленной команды с помощью хакатонов
• Могут ли цифровые продукты быть безвременными?
• Wilberries открывает школу программирования
• Наталья Першиц (World of Tanks Blitz): все танки различаются
• Сравнение Ionic и Flutter для разработки мобильных и прогрессивных приложений
• Постбраузерная эпоха
•
В поисках неявной стоимости дизайна
•
Архитектура Instagram – как хранить и искать миллиарды изображений
•
Прекратите писать комментарии в коде
•
Забудьте о пользователях, думайте о людях
•
Кто такой тестировщик?
•
Хороший UX, плохой UX: Создаем UX, который работает
•
4 минуты на то, чтобы стать лучшим разработчиком
•
Code Reviews в Medium
•
Как думать по noSQL с Firebase
•
Сколько стоит локализация?
•
Объектно-ориентированное программирование – Бедствие на триллион долларов
•
ShineButton: сияющие кнопки
Аналитика, маркетинг и монетизация
• (+54) Зачем нужны скрытые игровые механики
• (+8) Продолжая ASO: тренды, рейтинги и немножко отзывов
• FaceApp заработал $1 млн за 10 дней
• 10x Ascend: торг с работодателем
• Маркетинг влияния вырос на 83%
• 1,500 игровых автоматов входят в бар: дело в количестве, а не качестве
• Blackstone покупает Vungle
• Minecraft Earth начинает бета-тестирование
• Идея для приложения: с чего все начинать?
• Самые зарабатывающие приложения с подпиской во 2 квартале 2019
• Google AdSense отказывается от мобильных приложений
• Сегментация как инструмент поиска инсайтов
• Anvyl: управление D2C
•
Как определить токсичного издателя мобильных игр
AI, Устройства, IoT
• (+74) Как мы обучили нейронную сеть классифицировать шурупы
• (+40) Опыт моделеварения от команды Computer Vision Mail.ru
• (+26) Галерея лучших блокнотов по ML и Data Science
• (+15) Риски и угрозы в Интернете вещей
• (+12) Роботы и клубничка: как AI повышает урожайность полей
• Инструкция: создать и загрузить разметку изображений в новый инструмент Apple для обучения нейросетей Create ML
•
Топ-10 инструментов Data Science и ML для не-программистов
•
Разбил лобовое стекло и заработал $ 10 000 в программе поиска уязвимостей Tesla
< Предыдущий дайджест. Если у вас есть другие интересные материалы или вы нашли ошибку — пришлите, пожалуйста, в почту.

Что делает инженер, когда необходимый инструмент отсутствует? Верно, сделает всё сам! Ранее мы уже рассказывали о создании своих кастомных инструментов, теперь поговорим о том, как модифицировать Xcode и заставить его работать по твоим правилам. Я неустанно собирал ui kit’ы, экспериментировал с контентом в плейсхолдерах, стилями, тенями текстами и состояниями, чтобы понять влияет ли это на конверсию. Иначе говоря, смогу ли я увеличить продажи дизайн-продуктов для Figma, если добавлю немного визуальной динамики в статичные дизайн-макеты, чтобы сделать темплейты интереснее и функциональнее.
Этот дайджест доступен в виде еженедельной рассылки. А ежедневно новости мы рассылаем в


• (+20) Custom refactoring tool: Swift
• (+16) Разработка приложения на SwiftUI. Часть 1: поток данных и Redux
• (+14) Вот это поворот: почему Apple изменила требования к разработчикам приложений
• (+9) Создаем шаблон Xcode проекта
• (+2) Из веба и банков в iOS-разработку: личный опыт программиста Apiqa
• Лояльность владельцев iPhone достигла минимума
•

• Apple представляет новые эмодзи
• Триал для приложений: возвращение в App Store?
• Обзор новой операционной системы iPadOS Beta от Apple
•

•

•

•

•

•

•

•

•

•

•

•


• (+15) Как реализовать чистую архитектуру на Android?
• Google во много раз увеличил вознаграждения за поиск уязвимостей в Chrome, Chrome OS и Google Play
• Kotlin стал “Прорывным проектом года”
• Разработка под Android: советы самому себе
• Microsoft Word достиг 1 млрд. скачиваний на Android
•


•


•

•

•

•

•

•

•

•

•

•

•

•

•


• (+15) Как UX-писатель помогает улучшить продукт
• (+12) React Native: делаем draggable & swipeable список
• (+11) Дизайнеры vs разработчики: об истории создания приложения «Мой умный город»
• (+7) Вышла Preview-версия XAML Hot Reload для Xamarin.Forms
• (+7) Нативная разработка, React Native и Flutter: критерии выбора
• (+3) Как обеспечить безопасность разработки, сохранив время и нервы
• (+2) Базовые навыки для работы с Unity
• (+1) Как разработать ещё один платформер с помощью Unity. Ещё один туториал, ч.2
• 6 принципов функциональной анимации: как сделать правильные переходы
• Podlodka #120: Kubernetes
•

• AppsCast #9: Тимлид, или Туда и обратно
• Stein: база данных из Таблицы Google
• Как повысить эффективность удаленной команды с помощью хакатонов
• Могут ли цифровые продукты быть безвременными?
• Wilberries открывает школу программирования
• Наталья Першиц (World of Tanks Blitz): все танки различаются
• Сравнение Ionic и Flutter для разработки мобильных и прогрессивных приложений
• Постбраузерная эпоха
•


•

•

•

•

•

•

•

•

•

•

•


• (+54) Зачем нужны скрытые игровые механики
• (+8) Продолжая ASO: тренды, рейтинги и немножко отзывов
• FaceApp заработал $1 млн за 10 дней
• 10x Ascend: торг с работодателем
• Маркетинг влияния вырос на 83%
• 1,500 игровых автоматов входят в бар: дело в количестве, а не качестве
• Blackstone покупает Vungle
• Minecraft Earth начинает бета-тестирование
• Идея для приложения: с чего все начинать?
• Самые зарабатывающие приложения с подпиской во 2 квартале 2019
• Google AdSense отказывается от мобильных приложений
• Сегментация как инструмент поиска инсайтов
• Anvyl: управление D2C
•


• (+74) Как мы обучили нейронную сеть классифицировать шурупы
• (+40) Опыт моделеварения от команды Computer Vision Mail.ru
• (+26) Галерея лучших блокнотов по ML и Data Science
• (+15) Риски и угрозы в Интернете вещей
• (+12) Роботы и клубничка: как AI повышает урожайность полей
• Инструкция: создать и загрузить разметку изображений в новый инструмент Apple для обучения нейросетей Create ML
•

•

< Предыдущий дайджест. Если у вас есть другие интересные материалы или вы нашли ошибку — пришлите, пожалуйста, в почту.