Программисты не любят KISS?

Картинку взял из статьи “Будьте проще (и к вам потянутся люди)“. Статью можно почитать.

Вот один из свежих примеров

На одном из проектов сделали доску объявлений и там есть фича “Пожаловаться на объявление” (вдруг в тексте что-то противозаконное и т.д.). Фича работает через ajax — т.е. нажав на ссылку “Пожаловаться” пользователь видит всплывашку аля “Спасибо! Мы рассмотрим вашу жалобу.”.

И вот тестер репортит баг мол “Могу пожаловаться на свое же объявление”. Ну вроде тестер мыслит логично и со всех сторон прав. Что же делают разработчики? Они добавляют на бекенде проверку для такого состояния дел и в итоге пользователь, который жалуется на свое объявление видит новую всплывашку “Вы не можете пожаловаться на свое объявление”…

ИМХО нужно было всего-то убрать эту ссылку для владельца объявления.

Я провел небольшое исследование и опросил десяток знакомых разрабочиков => вариант спрятать ссылку мне предложили только четверо :). Это не самая репрезентативная выборка, но все же заставляет задуматься.

А у вас есть такие примеры?

Поделитесь в комментариях. Думаю интересно не только мне ;)

4 thoughts on “Программисты не любят KISS?

  1. Помню помню ты мне рассказывал.

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

    Вообщем это бюрократия в чистом виде, да. Можно провести аналогии с государственными структурами и большими компаниями. Но по другому никак. Вернее даже не. По другому никак если проект большой и/или серьезный. Под серьезный я имею в виду когда _действительно_ безопасный, надежный и тп а не просто слова чтобы продать.

    Хорошие программисты даже если им никто это не сказал заранее, чуют интуитивно.

    Не думаю что это расходится с KISS, если они там чтобы эту проверку сделать наворотили сложного и непонятного кода – тогда да, а так не :)

    Альтернативный подход здесь мог бы быть (может не оч логичный но допустимый) – изменение самих бизнес правил, то есть сказать : да, человек может пожаловаться на свое объявление. Мол это ништяк, это by design. А потом выдвинуть запрос на изменение представления (html шаблона), типа ссылку для хозяина не показывать.

    • Не думаю что это расходится с KISS, если они там чтобы эту проверку сделать наворотили сложного и непонятного кода – тогда да, а так не

      Ну строк 20 лишних наворотили. Вроде и немного, но и задача мелкая.

      Тут даже больше подходит YAGNI. Т.к. эта проверка на бекенде по сути не нужна. Если её не будет и пользователь все таки сгенерирует урл, чтобы пожаловаться на свое объявление, то навредит этим только себе.

  2. Я бы прятал ссылку, но просто потому что это с точки зрения UX правильнее.
    Зачем давать пользователю кнопку, на которую он заведомо не может нажать?

Leave a Reply to Alexander Steshenko Cancel reply

Your email address will not be published. Required fields are marked *

You may use these HTML tags and attributes: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>