Заказчик хочет встроить логику мясокомбината в калькулятор. Как этому помешать?

7 комментариев
Заказчик хочет встроить логику мясокомбината в калькулятор. Как этому помешать?

О том, как бороться с вредными для пользователя «хотелками» заказчиков, рассуждает в своей колонке Senior Android-разработчик Вячеслав Кацубо.

Читать далее...

Однажды мне понадобился инженерный калькулятор. Я зашёл в Play Market и начал устанавливать первый попавшийся. Смотрю список разрешений, которые просит приложение, а там – доступ к контактам. Что?! Я ведь только посчитать хотел! Открываю второе приложение, начинаю установку – получаю запрос на доступ к интернету. Вы что на сервере считать собрались? Третий – передо мной предупреждение о платных операциях. Как это понимать? Пять раз посчитать можно бесплатно, а шестой – за деньги?

Неужели люди, которые заказывают разработку таких приложений, всерьёз думают о том, что пользователи настолько тупы и будут устанавливать их, даже если калькулятор запрашивает доступ к контактам и смс?

 

Я ещё готов понять разрешение на доступ к интернету – допустим, надо зарабатывать на рекламе. Но телефонная книга? Осмелюсь предположить, логика такая. Заказчик решил, что монетизировать будет через рекламу, значит лучше, если она будет таргетированная. Для этого он прикручивает аналитику, которая отслеживает, какими операциями чаще пользуется человек: делением или подсчётом процентов. Если проценты, велика вероятность, что он считает что-то по кредиту. Соответственно, это надо учитывать в рекламных сообщениях. На всякий случай извлечь контакты и позвонить, узнать, вдруг на самом деле кредит нужен, или доллары поменять. А потом читаем смс и смотрим, что же там человек хочет...

Зайти можно ещё дальше. Если операция по расчету тяжёлая (синус с точностью до ХХ знаков), а человеку позвонили, можно приостановить её на время телефонного разговора, но для этого надо подкрутить опцию прослушивания звонков. И всё это про калькулятор!

Приблизительно такая же история с приложениями «фонарик». Просят дать доступ к wi-fi подключениям и месторасположению. И всё это, чтобы подсветить?

С ежедневником были как-то проблемы. Чтобы оставить себе заметку, надо было регистрироваться, синхронизировать со всеми устройствами. А если я не хочу синхронизацию и мне это надо только на мобильном телефоне? Или я в лесу, где нет интернета, вспомню, что надо себе поставить напоминалку «покормить кота Филю»?

Всё это к тому, что разработчики, руководствуясь пожеланиями заказчика, превращают простое и понятное приложение в сложное. А порой и вовсе встроить невстраиваемое: например, начинить калькулятор несвойственными ему функциями и сделать из него “мясокомбинат”. И это самая настоящая боль, с которой сталкиваешься не только как пользователь, но и как программист.

Наглядный пример. На всех современных девайсах есть функция расшарить. Но иногда заказчики хотят использовать другие инструменты для того, чтобы поделиться какой-то информацией. Присылают многостраничные гайды и просят сделать всё по инструкции, с оригинальным оформлением. Получается, мы к приложению весом 100 Кб подключаем библиотеку на 5 Мб, которая всего лишь красиво открывает окошко, зато по всем правилам.

И это занимает три дня вместо пяти минут, которые ушли бы на то, чтобы использовать встроенную в систему функцию шаринга.

Как помочь фонарику остаться фонариком?

1. Определиться, насколько важен заказчик.

Если отталкиваетесь исключительно от «больше часов – больше платят» и можете себе позволить схему «забил-сделал-забыл», тогда можно не тратить много времени. Если же заказчик стратегически важен, и вы думаете о перспективе, настоятельно рекомендую следовать пункту 2.

2. Зачем изобретать велосипед?

Этот вопрос разработчик должен задать заказчику, когда сталкивается с подобными ситуациями. И обязательно рассказать об уже существующих «велосипедах», из которых логично выбрать максимально подходящий и ехать на нём. Человек ведь может думать, что он хочет, а на самом деле – нет. Для этого ему надо показать возможные подводные камни.

Простой пример. Заказчик где-то увидел, что рекламные всплывающие окна хорошо работают и приносят деньги. И он слепо переносит это на свою игру-кликер. Пользователь кликает по центру экрана, в какой-то момент на экране появляется реклама, он по инерции нажимает и только спустя несколько секунд понимает, что дал доступ к своим контактам.

Практика показывает, если заказчик продолжает рьяно настаивать на своём, спустя какое-то время, когда посыпятся отзывы от пользователей, придётся возвращаться на старт и ехать на давно забытых велосипедах. Но совесть разработчика уже будет чиста, потому что он-то предупреждал и предлагал. А значит, грозит не баг фикс, а фич реквест. Согласитесь, намного приятнее.  

3. А действительно ли это надо пользователю?

Ещё один вопрос, ответ на который может помочь выбрать правильную альтернативу. Правда ли человеку, которому понадобился фонарик, остро необходимо, чтобы длительность его свечения и места использования трекались на сервере?

4. Постараться, чтобы на проекте был влияющий на окончательное решение заказчика человек.

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

5. Разработка должна осуществлять строго в соответствии с методологией.

Бесконечные скрамы придумали не только для того, чтобы контролировать таймлайны. С их помощью можно ещё и вовремя тушить пожары из фантазий заказчиков.

Хотите сообщить важную новость? Пишите в Телеграм-бот.

А также подписывайтесь на наш Телеграм-канал.

Горячие события

Gismart Online Meetup
9 декабря

Gismart Online Meetup

Минск

Читайте также

Volvo использует разработку белорусов для тестирования автомобилей
Volvo использует разработку белорусов для тестирования автомобилей
Volvo использует разработку белорусов для тестирования автомобилей
Модераторы Facebook написали открытое письмо руководству: работа в офисе угрожает их жизням
Модераторы Facebook написали открытое письмо руководству: работа в офисе угрожает их жизням
Модераторы Facebook написали открытое письмо руководству: работа в офисе угрожает их жизням
Плохой квартал, но хороший год: у паблишеров в Беларуси +20% выручки. Топ-10
Плохой квартал, но хороший год: у паблишеров в Беларуси +20% выручки. Топ-10
Плохой квартал, но хороший год: у паблишеров в Беларуси +20% выручки. Топ-10
Для разработчиков игр и приложений с офисами в Беларуси не очень успешным оказался третий квартал. Об этом свидетельствуют данные Sensor Tower. Суммарная выручка компаний (топ 26 разработчиков с выручкой 5+ тысяч долларов в месяц) составила 450 миллионов долларов — на 5% меньше, чем во втором квартале. По загрузкам третий квартал стал худшим в этом году — 721+ миллион скачиваний. Меньше всего загрузок с начала года было в сентябре — 211,7 миллиона.
1 комментарий
WhiteBird и Беларусбанк запустили свой сервис по обмену криптовалют
WhiteBird и Беларусбанк запустили свой сервис по обмену криптовалют
WhiteBird и Беларусбанк запустили свой сервис по обмену криптовалют

Обсуждение

5

Извините, а Вячеслав точно сеньор помидор? К чему это ерничанье на тему лишних разрешений? Калькулятор бесплатный. Есть такая старая присказка, мол если вам что-то досталось бесплатно, значит товар - это вы. Вот всякие SDK для монетизации и продают всю информацию о пользователе, которую только можно.

0

А это на тему того - то глупый пользователь может дать все разрешения и злостная программа унесет все ваши данные - поэтому меня как разработчика пугает что калькулятору нужны мои смс и контакты. И еще: сеньёр - точно, помидор - нет. А на личности будьте так добры не переходить.

0

А что тут обидного? Я тоже сеньор-помидор - три года отработал, стал, как и многие в РБ, серьезным сеньор разработчиком. В последнее время советую многим белорусским сеньорам попробовать устроиться на инженерную сеньорскую позицию в какой-нибудь корпоративный монстр типа гугла. Там быстро умеют на пальцах объяснить, кто сеньор, а кто нет, хорошо сбивает корону с головы. Меня вот даже на джуна не взяли, но таки да, из РБ меня продавали как сеньора.

В статье описан не инженерный подход, а менеджерский. Причем тут сеньор, андроид и т. д.? Инженерный подход - это декомпилировать APK и посмотреть, что конкретно SDK делает с данными и зачем эти разрешения. А так какие-то менеджерские рассуждения на тему, что нужно заказчику и как с этим жить.

Это сеньор по-белорусски - когда опытный разработчик создает таски, обсуждает фичи с заказчиком и параллельно пасет джунов. Лычки есть, а что зачем нужны такие пермишены и что с ними делает код - осталось тайной.

Артём Быстров
Артём Быстров Пилот межзвёздного пространства в Космолёт
1

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

1

Тут скорее первое - просто слегка "бомбит" и когда ищешь программы и когда такое писать просят.

3

Как-то надо уже поднимать флаг и переходить в наступление пользователям. Например антивирусы и блокировщики рекламы там разной заточить не на блокировку, а на генерацию недостовернрй информации. Хочешь MAC адрес? Вот тебе адрес. Хочешь координаты? На тебе Вьетнам. Хочешь контакты? Вот тебе 500 рандомных контактов из гугла. Хочешь шифрование поднять? Подача шифрованного бреда на весь канал.

-2

"Заказчик хочет встроить логику мясокомбината?"
ответь ему просто: "Готовь котлету!"

Спасибо! 

Получать рассылки dev.by про белорусское ИТ

Что-то пошло не так. Попробуйте позже