Наш новый дайджест за прошедшую неделю с обсуждением уязвимости в iOS, тенями в Android и множеством других материалов.
Productivity Inside
Для старательного нет ничего невозможного
Сначала показывать
Дайджест интересных материалов для мобильного разработчика #432 (14 — 20 февраля)
Блог компании Productivity Inside Разработка под iOS *Разработка мобильных приложений *Разработка под Android *
В этом дайджесте совершенствуем структуру тестов и мешаем анимироваться слоям, обсуждаем политики Google Play и систему виртуализации в Android, делаем игру мечты, лучшие заметки о выпуске и многое другое!
Google Play удалил наши аккаунты без предупреждения и лишил семью заработка
Перевод
Я около семи лет занимаюсь разработкой приложений на Android. Начал с того, что делал приложения в свободное время, чтобы ближе познакомиться с этим замечательным миром, а потом присоединился к компании, которая учит людей создавать собственные продукты и выводить их на рынок.
На мой взгляд, Google Play – лучшая платформа для распространения приложений. Но вместе с тем, ее руководство плохо справляется с очень важной проблемой – пользовательской поддержкой для разработчиков.
Существуют и другие сервисы Google – например, Admob или Google Ads. И когда у меня возникают трудности со, скажем, Google Ads, я могу быстро связаться с администрацией и получить помощь. Чтобы улучшить что-то в рекламной кампании, не нужно даже к ним обращаться, они сами присылают письма, где напоминают, что сотрудники поддержки к моим услугам. Был случай, когда мне даже довелось пообщаться с очень приятной женщиной по Google Meet.
Если же с проблемами сталкивается разработчик с аккаунтом на Google Play, всё происходит совсем иначе. Приходится довольствоваться текстовым полем, а в ответ неизменно получаешь письма, составленные по шаблону – обсудить свою проблему с человеком практически нереально.
На мой взгляд, Google Play – лучшая платформа для распространения приложений. Но вместе с тем, ее руководство плохо справляется с очень важной проблемой – пользовательской поддержкой для разработчиков.
Существуют и другие сервисы Google – например, Admob или Google Ads. И когда у меня возникают трудности со, скажем, Google Ads, я могу быстро связаться с администрацией и получить помощь. Чтобы улучшить что-то в рекламной кампании, не нужно даже к ним обращаться, они сами присылают письма, где напоминают, что сотрудники поддержки к моим услугам. Был случай, когда мне даже довелось пообщаться с очень приятной женщиной по Google Meet.
Если же с проблемами сталкивается разработчик с аккаунтом на Google Play, всё происходит совсем иначе. Приходится довольствоваться текстовым полем, а в ответ неизменно получаешь письма, составленные по шаблону – обсудить свою проблему с человеком практически нереально.
Дайджест интересных материалов для мобильного разработчика #431 (7 — 13 февраля)
Блог компании Productivity Inside Разработка под iOS *Разработка мобильных приложений *Разработка под Android *
В новом выпуске ускоряем прохождение UI-тестов и заведуем стейт-машинами, внедряем платежи и готовим открытый API для UWB, разбираем кроссплатформу, перепридумываем иллюстрации, делимся виджетами и многое другое!
Почему всем стоит попробовать шрифты для разработчиков
Перевод
Знаете ли вы, что существует целая индустрия, которая занимается шрифтами? Шрифты и типографика – понятия, которые имеют активное хождение в этой области, а задача специалистов – создавать начертания символов, которые улучшают пользовательский опыт или дают бренду индивидуальный облик.
Разработчики день-деньской смотрят на код. Разве не стоит попытаться усовершенствовать этот опыт, чтобы продуктивность возрастала? Существует большое количество шрифтов, которые служат именно этой цели. К самым популярным относятся Fira Code, Source Code Pro, Jetbrains Mono и Ubuntu Mono, но это только несколько примеров – есть еще множество других.
Вот несколько причин, по которым выбор подходящего шрифта поможет разработчику в работе:
- Проще замечать баги
- Быстро находятся переменные и функции
- Легко опознаются специфичные для программирования символы
- Снижается нагрузка на глаза
Ну и смотрятся они здорово, а это разве плохо?
Дайджест интересных материалов для мобильного разработчика #430 (31 января — 6 февраля)
Блог компании Productivity Inside Разработка под iOS *Разработка мобильных приложений *Разработка под Android *
В нашем новом дайджесте приключения белорусских разработчиков в App Store, один iOS-техрадар и несколько трендов Android-разработки 2022, игра мечты, автоматическая модерация сообщений и многое другое!
Заходит как-то UX-дизайнер в бар Tesla…
Перевод
В декабре я взял Tesla 3 напрокат у друга. Примерно через пять минут после начала поездки у машины стало запотевать лобовое стекло. На большом экране с панелью управления, которыми так славятся автомобили Tesla, мне не удалось найти опцию «обогрев стекла». В отчаянии я стал нажимать на иконку CAR, но меня перекинуло на экран настроек, с которого никуда больше нельзя было перейти. Перебирая все подряд кнопки на руле, я случайно перешел на голосовое управление, и тогда наконец сумел включить обогрев стекла. Опыт был такой необычный, что я написал о нем в Твиттере:
У меня только что состоялась первая поездка на Tesla (отстаю, да). У центральной панели на удивление плохой UX-дизайн. Никак не мог найти антизапотеватель. В итоге пришлось перейти на голосовое управление, только тогда появилась иконка климат-контроля. Это очень опасно.
Я и не знал, что машины Tesla перешли на новый интерфейс буквально за несколько дней до этого происшествия. Обновление вызвало немало споров: UX-дизайнер зашел в бар Tesla и наступил прямиком в осиное гнездо.
У меня только что состоялась первая поездка на Tesla (отстаю, да). У центральной панели на удивление плохой UX-дизайн. Никак не мог найти антизапотеватель. В итоге пришлось перейти на голосовое управление, только тогда появилась иконка климат-контроля. Это очень опасно.
Я и не знал, что машины Tesla перешли на новый интерфейс буквально за несколько дней до этого происшествия. Обновление вызвало немало споров: UX-дизайнер зашел в бар Tesla и наступил прямиком в осиное гнездо.
Дайджест интересных материалов для мобильного разработчика #429 (24 — 30 января)
Блог компании Productivity Inside Разработка под iOS *Разработка мобильных приложений *Разработка под Android *
В новом дайджесте трудности перевода приложений и импакт-анализ, Force Update и тренды Android-разработки, шрифты в играх и история игрового композитора, экраны загрузки, использование приложений, GitHub Actions и многое другое!
Пишите плохой код и не стыдитесь этого
Перевод
Писать хороший код я умею. Обычно это предполагает, что нужно потратить немного больше времени здесь и сейчас во имя некоего более совершенного миропорядка в будущем. Но здесь мы исходим из предпосылки, что нам известно, чего ждать от будущего. А в разработке будущее обычно прогнозируется с трудом.
Неопределенность может порождаться тем, что нам не всё известно о технологии, о бизнесе, о пользователе, объеме данных в системе, продолжительности жизни кода, а также другими неизвестностями, о которых мы даже не подозреваем (за расширенным списком примеров обратитесь к 2020 году).
В ситуации, когда будущее неопределенно, продолжительность цикла выходит на первый план. Скорость позволяет мне извлекать ценность из собственного кода: я быстрее осваиваю новые навыки, вред от плохого кода или отдельных ошибок в неплохом коде сводится к минимуму и продукт быстрее выходит на рынок.
Любые препятствия плохо влияют на продолжительность цикла. Они лишают меня возможности превращать неопределенность в определенность – а в этом и состоит суть обучения. Быстрое обучение формирует наиболее устойчивую ценность, оно выступает своего рода коэффициентом, на который умножается качество кода и архитектуры впоследствии. Есть такая поговорка «Писать значит переписывать», перелагая ее на код, можно сказать: «Писать код – значит проводить рефакторинг».
Исходя из этого, вот несколько причин, почему не нужно бояться писать паршивый код. Точнее сказать, почему не нужно бояться писать больше паршивого кода.
Неопределенность может порождаться тем, что нам не всё известно о технологии, о бизнесе, о пользователе, объеме данных в системе, продолжительности жизни кода, а также другими неизвестностями, о которых мы даже не подозреваем (за расширенным списком примеров обратитесь к 2020 году).
В ситуации, когда будущее неопределенно, продолжительность цикла выходит на первый план. Скорость позволяет мне извлекать ценность из собственного кода: я быстрее осваиваю новые навыки, вред от плохого кода или отдельных ошибок в неплохом коде сводится к минимуму и продукт быстрее выходит на рынок.
Любые препятствия плохо влияют на продолжительность цикла. Они лишают меня возможности превращать неопределенность в определенность – а в этом и состоит суть обучения. Быстрое обучение формирует наиболее устойчивую ценность, оно выступает своего рода коэффициентом, на который умножается качество кода и архитектуры впоследствии. Есть такая поговорка «Писать значит переписывать», перелагая ее на код, можно сказать: «Писать код – значит проводить рефакторинг».
Исходя из этого, вот несколько причин, почему не нужно бояться писать паршивый код. Точнее сказать, почему не нужно бояться писать больше паршивого кода.
«Ваше приложение нарушает правила Google Play»: сводки из ада
Перевод
Для начала представлюсь тем, с кем мы незнакомы: я системный администратор на Linux и также много работаю с кодом, в основном для собственного удовольствия. Среди моих личных проектов есть и приложения на Android, самое популярное из них называется Catima. Catima доступна только на Google Play и F-Droid и, вероятно, в обозримом будущем останется экслюзивом для этих платформ.
Вы спросите: «Но почему твое приложение не продается в других магазинах, например, Samsung Galaxy Store, Amazon AppStore или Huawei App Gallery? Что тебя в них не устраивает?». Мой ответ, возможно, вас удивит: я не размещаю свое приложение в других магазинах не из-за проблем с ними, а из-за проблем с Google Play. Публикация на этом маркете отнимала у меня столько сил и времени, что на другие уже не оставалось. Сейчас страсти немного улеглись, и я, наверное, обдумаю вопрос о привлечении дополнительных площадок. Только сначала удостоверюсь, что не на всех творится то же самое, что и на Huawei App Gallery.
Вы спросите: «Но почему твое приложение не продается в других магазинах, например, Samsung Galaxy Store, Amazon AppStore или Huawei App Gallery? Что тебя в них не устраивает?». Мой ответ, возможно, вас удивит: я не размещаю свое приложение в других магазинах не из-за проблем с ними, а из-за проблем с Google Play. Публикация на этом маркете отнимала у меня столько сил и времени, что на другие уже не оставалось. Сейчас страсти немного улеглись, и я, наверное, обдумаю вопрос о привлечении дополнительных площадок. Только сначала удостоверюсь, что не на всех творится то же самое, что и на Huawei App Gallery.
Дайджест интересных материалов для мобильного разработчика #427 (10 — 16 января)
Блог компании Productivity Inside Разработка под iOS *Разработка мобильных приложений *Разработка под Android *
В новом дайджесте годовой определяющий отчет State of Mobile 2022 от App Annie о рынке мобильных приложений, советы по разработке игр от Сида Мейера, тренды разработки и UI/UX, борьба Apple с клонами (да) и мошенниками (нет) и многое другое!
Парадокс pull request-ов: как мы с ним справляемся
Перевод
Парадокс pull request-ов можно объяснить так. Я только что закончил писать код, который может хорошо сказаться на опыте наших пользователей, и хочу поскорее запустить его в работу. Мне нужна ваша помощь, но вы заняты и в большей степени склонны работать над собственным кодом.
— Я только что написал решение для важной проблемы, мне нужна инспекция кода.
— А я сейчас занята решением другой важной проблемы...
Pull request-ы появились в мире открытого кода и были необходимой мерой. Нужен был какой-то способ контролировать вклад от участников проектов со всего мира. В GitHub создали соответствующее решение для тех, кто работает с открытым кодом, а вскоре Git получил широкое распространение в корпоративном мире, несмотря на то, что большая часть его пользователей работала в офисе. Впрочем, сейчас круг замкнулся, и мы стали массово уходить на удаленку. Получается, pull request-ы стали актуальны, как никогда прежде? Возможно.
Однако рост популярности pull request-ов означает, что возникает новое препятствие между нашим кодом и слиянием/релизом. Раньше сотрудники просматривали код друг друга непосредственно в кабинете – в процессе парного программирования или синхронизированной проверки. Закончили – внесли код в проект. Сейчас pull request-ы по большей части проходят процедуру одобрения асинхронно, с многократной пересылкой файлов туда-сюда. По этой причине в процессе возникают периоды простоя, которых не было раньше.
— Я только что написал решение для важной проблемы, мне нужна инспекция кода.
— А я сейчас занята решением другой важной проблемы...
Очень, очень сжатая история pull request-ов
Pull request-ы появились в мире открытого кода и были необходимой мерой. Нужен был какой-то способ контролировать вклад от участников проектов со всего мира. В GitHub создали соответствующее решение для тех, кто работает с открытым кодом, а вскоре Git получил широкое распространение в корпоративном мире, несмотря на то, что большая часть его пользователей работала в офисе. Впрочем, сейчас круг замкнулся, и мы стали массово уходить на удаленку. Получается, pull request-ы стали актуальны, как никогда прежде? Возможно.
Однако рост популярности pull request-ов означает, что возникает новое препятствие между нашим кодом и слиянием/релизом. Раньше сотрудники просматривали код друг друга непосредственно в кабинете – в процессе парного программирования или синхронизированной проверки. Закончили – внесли код в проект. Сейчас pull request-ы по большей части проходят процедуру одобрения асинхронно, с многократной пересылкой файлов туда-сюда. По этой причине в процессе возникают периоды простоя, которых не было раньше.
Дайджест интересных материалов для мобильного разработчика #426 (27 декабря — 9 января)
Блог компании Productivity Inside Разработка под iOS *Разработка мобильных приложений *Разработка под Android *
Первый наш дайджест про мобильную разработку в новом году — частично с новостями и статьями из прошлого. Поздравляем вас с новым годом и рассказываем про async/await, Qt, Fleet, бесплатные ресурсы и многое другое!
История о том, как я наладил производство бумажных вебсайтов и купил сто записных книжек с Alibaba
Перевод
Если вкратце: я открыл бизнес, чтобы дать людям возможность создавать сайты на бумаге. По ходу дела я завирусился на Твиттере, заработал тысячу долларов за два дня и просадил 720 долларов на сотню блокнотов с Alibaba.
Однажды мне в голову пришел любопытный вопрос: «Можно ли создать вебсайт на листе бумаги?». Я тот самый человек, который как-то раз скупил 300 казахских доменов с эмоджи, но даже по моим меркам идея выглядела несколько странной.
Однако примерно в то же время у меня зародились планы начать вести новенький с иголочки блог о своей повседневной жизни. Перед глазами стали возникать картины: сижу я такой в халате с чашкой чая и шариковой ручкой, и каким-то образом делаю записи в онлайн-блоге непосредственно из записной книжки. Эта мысль показалась мне крайне забавной.
Так можно ли делать сайты на листе бумаги? Я решил, что, по крайней мере, стоит попробовать.
Дайджест интересных материалов для мобильного разработчика #425 (20 — 26 декабря)
Блог компании Productivity Inside Разработка под iOS *Разработка мобильных приложений *Разработка игр *Разработка под Android *
В последнем нашем дайджесте в этом году использование языков в приложениях iOS 15, парковка магнитолы по гайдлайнам Гугла и укрощение батчинга, исходники Telegram, отказ от модульного тестирования и многое другое! С наступающим Новым Годом!
Почему разработчикам не платят достаточно, чтобы они оставались в компании?
Перевод
Когда появились первые новости о том, что восходящая звезда Реге-Жан Пейдж уходит из сериала «Бриджертоны» после первого же сезона, в первую минуту я был потрясен и огорчен. У меня в голове не укладывалось, как так вышло, что Netflix и герцог Гастингс не сумели прийти хоть к какому-то соглашению. Но потом пришло осознание: да ведь я в течение всей своей карьеры только и смотрю, как талантливые программисты уходят из компаний на более хлебные места после до обидного короткого периода работы. И сам не без греха – не отработав даже двух лет, покинул прекрасную команду ради должности технического директора в компании Ethena.
Если оставить в стороне личный опыт, мне кажется, эта общая закономерность проистекает из проблем с организацией, а не недостатков конкретных людей. При найме сотрудников компании вынуждены соперничать друг с другом за самых способных на открытом рынке. Между тем, внутреннюю модель оплаты труда они умышленно делают непрозрачной и распределяют информацию неравномерно, чтобы как можно меньше повышать ставки нанятым работникам и удерживать нижнюю границу зарплат неизменной.
Дайджест интересных материалов для мобильного разработчика #424 (13 — 19 декабря)
Блог компании Productivity Inside Разработка под iOS *Разработка мобильных приложений *Разработка под Android *
В нашем новом дайджесте перевод C++ в Swift и модуляризация доменного слоя, разбор истории с невыполненным звонком в 911 и шаблонизация кода, инструменты для снятия логов, игры-миллиардеры 2021, курс “Введение в робототехнику” и многое другое!
Дайджест интересных материалов для мобильного разработчика #423 (6 — 12 декабря)
Блог компании Productivity Inside Разработка под iOS *Разработка мобильных приложений *Разработка под Android *
В этой подборке протоколы Swift и дружба с Google Ассистентом, работа с цветами и изображениями, экспоненциальные навыки и годы тестирования, новый Flutter, доходы приложений, эмодзи 2021 и многое другое!
Блокчейн не решает проблем, которые меня интересуют
Перевод
Финансовая справка: я никаким образом прямо или косвенно не задействован в сфере криптовалют и вообще в инвестировании в компании, работающие с распределенными реестрами.
Профессиональная справка: моя профессиональная деятельность никак не связана с криптовалютами, я не получаю денег за работу с ними. Также я не получаю денег за работу с конкурирующими финансовыми инструментами. Высказанные мной мнения могут не совпадать с мнениями моего работодателя.
Эта статья назревала давно: уже больше пяти лет мне задают вопросы, которые укладываются в один из трех шаблонов:
Эти вопросы мне задавали друзья, родственники, знакомые по работе и просто случайные люди.
В блогосфере уже и так хватает отличных технических и полемических текстов, которые досконально объясняют, почему в сфере криптовалют всё, говоря попросту, очень плохо. Поэтому я зайду с другого угла: начну с финансовых сложностей, для которых лично мне хотелось бы получить решение, а потом, двигаясь от общего к частному, разъясню, почему блокчейн, на мой взгляд, не способен адекватно с ними справиться.
Профессиональная справка: моя профессиональная деятельность никак не связана с криптовалютами, я не получаю денег за работу с ними. Также я не получаю денег за работу с конкурирующими финансовыми инструментами. Высказанные мной мнения могут не совпадать с мнениями моего работодателя.
Эта статья назревала давно: уже больше пяти лет мне задают вопросы, которые укладываются в один из трех шаблонов:
- Как вы относитесь к блокчейну? Почему хорошо / почему плохо?
- Стоит ли инвестировать в (название криптовалюты)?
- А правда, что блокчейны делают (полезную вещь) для (группы людей)?
Эти вопросы мне задавали друзья, родственники, знакомые по работе и просто случайные люди.
В блогосфере уже и так хватает отличных технических и полемических текстов, которые досконально объясняют, почему в сфере криптовалют всё, говоря попросту, очень плохо. Поэтому я зайду с другого угла: начну с финансовых сложностей, для которых лично мне хотелось бы получить решение, а потом, двигаясь от общего к частному, разъясню, почему блокчейн, на мой взгляд, не способен адекватно с ними справиться.
Дайджест интересных материалов для мобильного разработчика #422 (30 ноября — 5 декабря)
Блог компании Productivity Inside Разработка под iOS *Разработка мобильных приложений *Разработка под Android *
В очередной нашей подборке — лучшие приложения 2021 от App Store и Google Play, управление памятью и дело об исчезнувшем покрытии кода, Unity со всех сторон, геймдизайн, адвент задачи для программистов и многое другое!
Информация
- Дата основания
- Местоположение
- Россия
- Численность
- 101–200 человек
- Дата регистрации