Юра Бейс 220 Жалоба Опубликовано: 11 л Любопытные статейки: http://www.npr.org/2013/02/06/171177695/wh...-if-its-crooked (англ.) http://lifehacker.com/5982630/beware-of-th...-your-own-ideas (англ.) http://www.management.com.ua/qm/qm158.html (рус.) Так как я иногда пишу программы не по заказу, не по спеку, а "сам по себе" - т.е. как реализация некой идеи - то в связи с этими статьями, а также с частым рванием волос на голове и прочих частях тела, пользуясь чужими программами и не понимая, как можно было наваять такую феерическую ху!~!ню, хотелось бы узнать мнение коллег-программеров, а может быть, и представителей других творческих профессий. Отдаете ли вы себе отчет и предпринимаете какие-либо шаги, чтобы в ваших творениях не проявился эффект ИКЕА (т.е. вы криво собрали из икеевских частей стол, а он кажется вам верхом совершенства)? Дело в том, что когда долго занимаешься каким-нибудь таким DIY (Do It Yourself - "сделай сам") проектом, то выстроенные вами интерфейс, фичи, логика кажутся продуманными и что юзеры будут пользоваться ими и только улыбаться - "ну надо же, как все продумано! он и это предусмотрел!" Это потому, что вы очень медленно, постепенно "врастали" во всю эту сложность, и привыкли к ней. А на самом деле юзеры будут клясть программера и думать, что это очередная поделка индуса. Возьмем, к примеру, интерфейс Гугл-Карт. Я часто переключаюсь между разными видами - Карта, Спутник, и Рельеф. Если находишься в Спутнике, то переключиться непосредственно на Рельеф нельзя. WTF?%!@#%@$@ Нужно сначала переключиться на Карту. ПОЧЕМУ????? Никакого логического объяснения этому нет. А если ты на Карте, но зазумился до более мелкого масштаба, чем доступен у рельефа, то Рельеф опять недоступен. !@$@#%$^@#$^ Казалось бы, почему не оставить Рельеф доступным, кликнул - зум изменится до такого, в котором Рельеф доступен. И так практически везде. Примеров такого софта - больше, чем гугол, 10^100. Возникает впечатление, что создатели этого софта либо вообще не пользуются им сами, либо не любят то, что делают, либо "вросли" в него и им все кажется прекрасно. Если бы они "были как я", то они бы после первого же клока лобковых волос исправили бы этот нонсенс. Итак, вопрос: как ВЫ боретесь с эффектом ИКЕА в своих творениях? (Ща прибежит толпа занимательных демагогов - не обращайте внимания) Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах
zloj 1 Жалоба Опубликовано: 11 л это твои тараканы, в любом софте можно найти то, что тебе кажет не рациональным, тот же автозум рельефа вызвал бы у меня вопросы, либо у меня руки из жопы либо смартфон летит в стену из за гавносенсора, а так всё ясно, недоступно, значит нету. Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах
Юра Бейс 220 Жалоба Опубликовано: 11 л zloj, хорошо, допустим, автозум вызвал бы вопросы. А почему из Спутника нельзя сразу переключиться на Рельеф?! В этом есть какая-то непреодолимая техническая трудность? Почему, например, здесь можно? http://mapper.acme.com Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах
dobrobelko 145 Жалоба Опубликовано: 11 л Юра Бейс, нет GUI - нет проблемы. У меня так Если серьезно, то средство борьбы простое - дать попробовать людям, мнению которых доверяешь. Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах
Юра Бейс 220 Жалоба Опубликовано: 11 л dobrobelko, я доверяю вашему мнению. Вот, например, эту программку я написал в 2009-м, найдите в ней какую-нибудь феерическую ху!~!ню (Я ее хочу в ближайшем будущем дополнить новыми возможностями.) Предмет этой программки достаточно специализированный, и за 3.5 года я получил ноль фидбека собственно по программе несмотря на сотни скачиваний. Народ ниасилил, наверно? Вот в этой теме можно почитать кое-какое обсуждение, но опять же, конкретно фидбека почти ноль. В общем, предмет иногда может быть настолько специализирован, что если вы не большая компания, найти кого-то, на ком можно было бы его "объездить", проблематично. Нужны именно рецепты того, как "накрапывая" творение мало-помалу, день за днем, не привыкнуть к нему, а уметь поглядеть на него свежими глазами абстрактного юзера. Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах
dobrobelko 145 Жалоба Опубликовано: 11 л Юра Бейс, так если сотни скачиваний и нет возмущенных криков, может все нормально? Умение глядеть глазами юзера - имхо достаточно сложно такое выработать. Часть своего софта (моделирование работы параллельных алгоритмов в очень узкоспециализированных задачах) делал исключительно для себя, запуск только из командной строки с кучей параметров, более удобного способа использования пока не придумал. А вообще, наш CTO говорит - my mom should figure out how to use it. По поводу софтины - фееричной хни за первые 5 минут не нашел, исправил бы пару мелочей - напрягают мерцающие тултипы, видимо постоянно перерисовываются, и pan/zoom я обычно иначе делаю, увеличенный график удобнее перетаскивать как в гугломапах, а не зумить выделенный регион. Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах
Юра Бейс 220 Жалоба Опубликовано: 11 л dobrobelko, спасибо за фидбек Для графиков я использовал вот эту библиотеку - ZedGraph, так что тултипы и зум - их творение, но сорс у меня есть, посмотрю, смогу ли поправить. Часть своего софта (моделирование работы параллельных алгоритмов в очень узкоспециализированных задачах) делал исключительно для себя, запуск только из командной строки с кучей параметров, более удобного способа использования пока не придумал. Я тоже какое-то время писал для себя софт для моделирования с командной строкой, но потом понял, что даже для себя лучше всегда делать UI! Например, я искал методом Монте-Карло оптимальную последовательность смены режимов полета в вингсьюте при бейс-прыжке для достижения максимальной дистанции. (Весьма прелюбопытно оказалось, что можно в некоторых случаях пролетать до 10% дальше, чем просто на постоянном максимальном качестве L/D.) Я хардкодировал параметры, компилировал, запускал, смотрел результаты. Если нужно было поменять какие-то параметры, изменял в коде, и по новой. Это было неудобно, но я думал - это же временно. А теперь я смотрю на свой же код как баран на новые ворота - что там делать, непонятно, надо долго копаться. Именно тогда и родилась идея для Вингсьют Студио - сделать для себя UI, в котором бы было удобно моделировать, и втыкать новые модели в виде плагинов ("модули"). Теперь перерыв в несколько месяцев не проблема - не надо разбираться в коде, компилировать, UI дает возможность приступить к делу сразу. Теперь в любом софте, который я пишу для себя, я в первую очередь пишу UI для всяких настроек. Это охренительно удобно и сохраняет кучу времени в будущем. Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах
dobrobelko 145 Жалоба Опубликовано: 11 л Юра Бейс, ну у нас задачи видимо сильно разные. В качестве параметров я конфиги подсовываю, хардкодед данных вообще нет. Большой плюс командой строки - возможность batch run, нафигачил входных данных, и вперед, с песней. В WS скорее всего такое не пройдет, плюс необходима визуализация на лету при изменении параметров. В целом интерфейс вполне себе понятный, я бы не стал ничего менять, кроме упомянутых вещей, влияющих на юзабилити. Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах
Ksandr 67 Жалоба Опубликовано: 11 л Курю мануалы, совершенствуюсь, если что-то пишу для себя то стараюсь использовать "последнее слово программерской мысли", для заказчика по разному - надо быстро - использую освоенные технологии, можно не быстро - опять же все самое новое и интересное. Стараюсь писать красивый и легко читаемый код. Насчет проектирования взаимодействия есть классное чтиво "Психбольница в руках пациентов". Про эффект ИКЕА впервые слышу. Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах
mmoustaf 101 Жалоба Опубликовано: 11 л Про эффект ИКЕА впервые слышу. По русски называется "костыли и подпорки". Когда собираешь из модулей стол, а потом, для того чтобы что-нибудь новое туда добавить приходится изобретать костыли и подпорки. Я тоже какое-то время писал для себя софт для моделирования с командной строкой, но потом понял, что даже для себя лучше всегда делать UI! Например, я искал методом Монте-Карло оптимальную последовательность смены режимов полета в вингсьюте при бейс-прыжке для достижения ... Теперь в любом софте, который я пишу для себя, я в первую очередь пишу UI для всяких настроек. Это охренительно удобно и сохраняет кучу времени в будущем. Я серверную часть всегда пишу так, чтобы гуй к ней прикрутить можно было без проблем. Гуй у меня только транзакции и реквесты посылает и получает реплики и аки. Так что серверную часть коммандлайновыми ботами отлладить нет проблем, а при желании можно гуй уже существующий прикрутить. А с работы я вообще идею диалог-сервера стяну в скором будущем. Когда гуй будет свои компоненты у сервера запрашивать в виде хмл файлов. Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах
_nw_ 1537 Жалоба Опубликовано: 11 л По русски называется "костыли и подпорки". Когда собираешь из модулей стол, а потом, для того чтобы что-нибудь новое туда добавить приходится изобретать костыли и подпорки.ты бы прочитал что имеетцо ввиду Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах
mmoustaf 101 Жалоба Опубликовано: 11 л ты бы прочитал что имеетцо ввиду Я и прочитал. фразу "новое добавить правильно читать, как не только добавить но и исправлять" А то что творение кажется верхом совершенства, так это всегда, пока пользователь не придет и не обосрет все. Для этого уат и qa придумали. Че с ним бороться. P.S. Оговорюсь еще раз. У нас в проекте под эффкетом ИКЕА понимается именно хрень когда из модулей собрал говно, которое потом никак не переделаешь. Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах
Twilight_Sun 1913 Жалоба Опубликовано: 11 л ну меня частенько бывает что разработчик сделает неоптимальное решение но оно ему нравится, потому, что его. помогает то, что до согласования с архитектором оно не попадает в репозиторий, поэтому как-бы нет "результата" - эффект чуть меньше проявляется. а со своей стороны стараюсь сознательно свои идеи с чужими сравнивать как не свои, ну чтобы не попасть в ту же ловушку. а костыли и подпорки это отдельная тема. и бесконечная. а по поводу ГУИ, в некоторых областях имеет смысл делать прототип на чем-то, где минимум усилий уходит на гуи и всё такое. т.е. даже вплоть до набросать формулы в экселе чтобы понять работоспособность идеи. Потом прототип выкидывается, понятное дело. Иначе на нем будут расти костыли, гвозди 200мм и т.п. Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах
iluhas 0 Жалоба Опубликовано: 11 л Существует такая полезная и востребованная специальность, как системный аналитик. Ещё есть тестер. Сиситемный аналитик должен быть умным, тестер - занудным и упрямым. Недальновидные софтверные конторы на них экононмят, а зря. Ещё есть целая наука - "requirements management". Название умное, но на самом деле просто о том, как понять что хочет заказчик, что ему на самом деле нужно, и как это донести до сознания исполнителя, чтобы он сделал именно то что нужно заказчику. Вот тут и начинаются трудности. Почему-то взрослые и разумные (казалось бы) люди зачастую уверенны что их окружают сплошные экстрасенсы и телепаты. Достаточно сказать: "Сделайте мне пиsдато" и тебе сразу сделают всё точно так как ты себе представлял. "Ну это же очевидно, блджад!" А вот нет. Иногда люди такого натворят, что ты даже не будешь знать как можно думать начать, чтобы такая хрень в голову пришла. И при этом будут глазами хлопать и искренне не понимать что тебе не нравится. От области деятельности не зависит, я например в инжиниринге работаю, но по рассказам знакомых программистов например - один фиг. Отсутствие эффективной коммуникации - пожалуй, основная проблема человечетва. В общем, единственный способ сделать что-то нормально - это иметь грамотно составленное, максимально подробное техническое задание. И чтобы оно было подписано заказчиком кровью. И обмен информацией заказчик-исполнитель должен быть только бинарным. Да/Нет. Никаких "наверное лучше чуть-чуть вот так" или давайте вот здесь слегка допилим". Измеряемо, однозначно, задокументировано. А вот если заказчика как такового нет... Не знаю, наверное никак Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах
mmoustaf 101 Жалоба Опубликовано: 11 л ДАЙ Я ТЕБЯ ОБНИМУ И ПОЦЕЛУЮ! Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах
jazloj 1846 Жалоба Опубликовано: 11 л вот у вас трудности-то, ребята...сочувсвтую Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах
Mr.Gerrero 0 Жалоба Опубликовано: 11 л Если уж и приходится проектировать ui, то избежать эффекта икеи помогают различные UX, стайл-гайды. В коде от такого можно избавиться, благодаря грамотной постройке архитекруты, и различным best practices. Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах
mmoustaf 101 Жалоба Опубликовано: 11 л Я когда в РТС работал - у нас чуваки бегали по трейдфлорам с видеокамерой - снимали, че трейдеры делают Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах
Vikin 0 Жалоба Опубликовано: 11 л iluhas, беги... Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах
mmoustaf 101 Жалоба Опубликовано: 11 л iluhas, беги... зачем? он все правильно написал. Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах
jazloj 1846 Жалоба Опубликовано: 11 л зацелуешь до смерти Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах
mmoustaf 101 Жалоба Опубликовано: 11 л зацелуешь до смерти Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах
jazloj 1846 Жалоба Опубликовано: 11 л и чо? Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах
mmoustaf 101 Жалоба Опубликовано: 11 л и чо? Есть 20 часов на решение этой задачи Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах
jazloj 1846 Жалоба Опубликовано: 11 л давай приз. это Броневой Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах