Дайджест интересных материалов для мобильного разработчика #234 (11 декабря — 17 декабря)

В новом дайджесте мы пишем про то, что у Facebook и Snapchat практически одновременно запустились AR-редакторы, про то, как правильно готовить разработку, про рефакторинг и ROM-ы, про дверь в лето для кошек от Microsoft и многое другое.

ftft9oyaojwj2wtk_hoe9jgpmpc.png

c3g3xxnix9uwc1wy78d1fira0cs.jpeg

Как правильно чистить лук, или Почему разработка ПО выходит из-под контроля

Мы предполагаем, что продукт определяется набором функций, записанных на листочке бумаги: иногда что-то добавляется, иногда убирается —, но масштаб проекта всегда будто бы можно понять с одного взгляда. Это предположение — неверно. Проект — это не лист бумаги, не двумерный объект — у него есть глубина.

238a7f9806d1787eb7cc2eef1531f1ad.jpg

Пускаю слюни, пишу код

В прошлом году я прочитал статью «Как узнать какие цветы дарить девушке, если у нее двигается только голова и она не может говорить?», она поразила меня похлеще чем «Смотря на код с закрытыми глазами».

ahkjtrcbnl6uogwanevt58zhlb8.png

14-й опрос Developer Economics

Этот опрос создан разработчиками для разработчиков и прольет свет на будущее индустрии программного обеспечения.

Дайджест доступен и в виде рассылки. Подписаться вы можете тут.

f1930ac4945596eb9707bc7a01bc5bdc.pngiOS

(+24) Синглтон, локатор сервисов и тесты в iOS
(+19) Avito iOS Winter Edition — видео, фото, слайды, отзывы
(+19) Распознавание лиц. Создаем и примеряем маски
(+12) Проблемы локализации iOS и macOS
• В App Store заработали скидки на первые подписки и предварительный заказ приложений
• Apple покупает Shazam
• Podlodka #37: Рефакторинг
imageСоздание локационного приложения с ARKit, CoreLocation и Pusher
imageТоп-10 библиотек для iOS-разработчиков
imageСоздание пирингового приложения для рисования для iPad
imageЛучшие iOS-хаки из Twitter: Ноябрь
imageКак протестировать приложение с фреймворками автоматизации тестирования
imageOpen Source iOS-приложения
imageTuri Create: библиотека Apple для упрощения машинного обучения
imageTwitter Kit: SDK для получения контента Twitter
imageEase: анимационный фреймворк

e1a3cf2a8b65a0da69bbdd5c0ad040fe.pngAndroid

(+18) Новая уязвимость в Android позволяет злоумышленникам изменять приложения, не затрагивая их подписи
(+9) Советы по чистому коду новичкам в Java/Android
(+7) Как мы вооружили мерчандайзеров и наладили тотальный контроль качества дистрибуции: кейс
(+3) Туториал по созданию трекера криптовалют под андроид на Kotlin
(+1) Встраиваем In-App purchase в своё приложение
• Project Tango закрывается
• Google Assistant выходит на Android 5 и 6
• Добавляем кнопки при свайпе в RecyclerView
imageAndroid Dev Подкаст. Выпуск 51. Разработка прошивок. Откровения ROMоделов
imageХранение данных в Firebase Realtime Database
imageРуководство Android-разработчика по типографике
imageПубликация собственной библиотеки с JitPack
imageКак сделать ваше приложение дружелюбным к дальтоникам
imageМультиплатформенные проекты на Kotlin 1.2
imageDependency Injection в Android с Dagger 2 и Kotlin
imageРаботаем с Mobile Vision API
imageАнимация Keyframe с ConstraintLayout и ConstraintSet
imageAndroid Geocities Theme: лучшее из старого веба
imageGoogle Maps Clustering: библиотека для кластеризации Google Maps Android API
imageSegmentedButton: Segmented Control с анимацией для Android API 12+
imageDaggraph: генератор графа зависимостей для Dagger
imageTimber: открытый музыкальный плеер в материальном дизайне

7081c634ec176ab6b953d9d19e82a09a.pngРазработка

(+46) Грязные трюки и оперативка
(+18) Язык Lua и Corona SDK (3/3 часть)
(+17) Виртуальные ядерные установки: полный цикл разработки для Oculus Rift в одном лице
(+11) Построение процесса бизнес-анализа в проектах по разработке BI-приложений с продвинутой визуализацией
(+8) Внедрение зависимости и реализация единицы работы с помощью Castle Windsor и NHibernate
(+7) Создание приложения на Ionic с использованием API
(+3) Конвейер игр для магазинов от второкурсников с любовью
• Яндекс открыл новый набор в Школу разработки интерфейсов
• Facebook открывает AR-платформу и редактор для всех
• Snap запустил Lens Studio
• Тихий скетчинг
• Think outside the box: интервью с Райаном МакЛеодом
• Зимние интенсивы БВШД: выиграйте бесплатный курс
• Десять советов по созданию приложения для тех, кто не видит
image10 языков программирования, которые надо учить в 2018
imageСоветы по бюджетному UX-дизайну
imageВсе доклады AWS re: Invent 2017
imageMicrosoft выпустила превью Quantum Development Kit
imageВсе вопросы из интервью разработчиков

509dc9bde69347ecbe0c21ff2973d7e7.jpgАналитика, маркетинг и монетизация

• Как сегментировать пользователей для разных вертикалей
• У ASOdesk заработал API
• Карта российского дейтинга
• IT-работники матерятся меньше строителей, но больше продавцов
• Реклама Instagram стала одной из лучших в 2017 году
imageКак питчить приложение инвесторам

8538129f5e7b404a720121cb9c3814db.jpgУстройства, IoT, AI

(+37) 30-часовой хакатон Яндекс.Погоды, или как предсказать осадки по сигналам от пользователей
(+30) История победы на международном соревновании по распознаванию документов команды компании SmartEngines
(+21) Интернет вещей: Arduino в связке с облаком
(+16) Учим машину разбираться в языках
(+11) IoT в роли мотиватора для NAT в IPv6
(+9) Системы ИИ в 2018: шесть прогнозов
(+8) Гаджет моего тела (Часть #2)
(+5) Глубокое обучение при помощи Spark и Hadoop: знакомство с Deeplearning4j
• Microsoft сделала умную дверь для кошек
• В Azure открыли сервис ботов и понимания языка
• Amazon снова начнет продавать Chromecast
• IBM опубликовала библиотеку открытых проектов с ИИ и ботов
• Tesla делает свой процессор для ИИ
• Нейронную сеть научили делать порно со знаменитостями
• Slide превратит обычные занавески в умные
imageКак с помощью машинного обучения за 15 минут взломать CAPTCHA

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

© Habrahabr.ru