Интерфейсы

индекс
44,19

Пользователи в роли разработчиков

Перевод для сайта Usability.by

Существует такая легенда о появлении eBay: Пьер Омидьяр основал eBay для того чтобы его жена могла продавать и покупать контейнеры для конфет PEZ, которые она коллекционировала. Эту историю пересказывали тысячи раз и многие люди думают, что сайт появился благодаря силе любви. На самом деле, появление сайта не было вызвано одним лишь проявлением чувств: Омидьяр произвёл оценку бизнес потенциала сайта перед тем, как взяться за работу.

Омидьяр на самом деле использовал свой сайт для пополнения коллекции своей жены. Он одновременно был одним из первых пользователей и самым первым разработчиком eBay. Пользователем и разработчиком одновременно — для многих это может звучать непривычно. Мы воспринимаем эти две роли мало соместимые. Пользователи – это те, кто пользуются продуктом. Разработчики ­– те, кто создает продукт.

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


… Просто у меня открылись старые раны


Команда веб разработчиков из компании 37signals создала приложение Basecamp, потому что у них была проблема с менеджментом проектов:

«Basecamp был создан для решения проблемы: нам, как студии дизайна, был нужен простой способе общения о проектах с клиентами. Мы начали создавать через экстранет, страницы, которые обновляли вручную. Измененять HTML вручную каждый раз при обновлении проекта — не самое приятное занятие. Те проектные сайты всегда оказывались застывшими и устаревшими. В конечном счёте, мы их забросили. Но ситуация не устраивала нас, потому что нам все равно было нужно средство для организации общения с заказчиками.

Мы начали с поиска среди существующих решений. Но каждый из инструментов, которые мы рассматривали: или 1) не делал всего того, чтобы было нам нужно, или 2) были переполнены не нужной нам дополнительной функциональностью: создание счетов оплаты, жёсткий контроль доступа, диаграммы и графики… Мы знали, что должен быть лучших способ решения наших проблем, и решили сами разработать решение.»


Раны есть и у других


Дальше, все происходит по одному сценарию: тот, у кого заныли раны вдруг понимает, что точно такие же раны есть и у других людей. Майк МкДермент, один из основателей Freshbooks, веб приложения для ведения бухгалтерии, так описывает то, что происходило с ними:

«В январе 2003 мы основали свою компанию, где занимались веб дизайном и разработкой для различных заказчиков. А потом мы создали Freshbooks, изначально для себя, потому что нашему бизнесу была необходима эффективная система работы со счетами. Мы собрались и с головой окунулись в работу.»

Ешьте сами свой собачий корм


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

Кристина Уодтке, автор книги «Информационная архитектура: чертежи для сайта », при работе над приложением PublicSquare, движком для веб публикации, использовала следующий подход. Перед тем как выпустить дополнительную функциональность, она проводила небольшое тестирование приложения, запустив свой известный сайт, онлайн журнал Boxes and Arrows, на самой последней, бета версии движка. Таким образом она одним выстрелом убила двух зайцев: пользовалась приложением сама и проводила тестирования, собирая отзывы о реальном использовании от других пользователей.

В работу вкладывайте душу


Этот подход, пользователи-в-роли-разработчиков, может быть более эффективнее других подходов. Ден Цедерхольм, один из социальной сети для любителей вина Corkd, так описывает свою увлеченность работой:

«Существует большая разница в твоей работе, когда ты продаешь своё время, работая на чужом проекте, и когда ты сам работаешь на себя. Когда работаешь на себя, то у тебя появляется чувство хозяина и чувство причастности, вовлеченности в работу. (Чувство хозяина и чувство вовлеченности могут возникать и отдельно друг от друг, но вместе это просто гремучая смесь.) Когда в нанимаете на проект фриланс разработчиков или дизайнеров, то они не выкладываются «на полную», часть их внимания занимают вещи, отличные от вашего проекта. Поэтому на выходе вы часто получаете неуклюжие решения, созданные на скорую руку, а контракт уже закончился, сайтом уже пользуются. На Cork’d мы были в абсолютно иной ситуации, когда мы выпустили продукт, который считали ‘готовым’ почти со всех сторон, а потом продолжили работать над его улучшением, опираясь на отзывы пользователей, с той же вовлеченностью, с тем же вниманием к деталям, как и при начальной разработке. »

Новый подход


На первый взгляд, способность попытки разрабатывать для самих себя значительно повысить вашу эффективность, может показаться, мягко говоря, странной. Однако, начиная с eBay, продолжая четырьмя компаниям, упомянутыми в этой статье, бесчисленным множеством других, всё больше количество компаний выбирают именно такую модель разработки и она становится критической частью их успеха. Достаточно сравнить два продукта: один создан пользователями, а другой — нет. Разница будет очевидна. При таком подходе проектировщики лучше понимают проблему, они проработали решения для большинства встречающихся сложностей, они больше вовлечены в работу, в конце концов.
+22
26 марта 2009, 16:58
20

комментарии (29)

–3
seiros #
краудсорсинг — это бизнес-модель известная и много раз опробованная. Наибольшее распространение она получила в сфере СПО в силу особенностей использования. Типичный пример — OpenOffice и StarOffice от Sun
0
kremien #
Вы что-то не поняли, статья не об этом eBay никто краудсорсингом не разрабатывал. Возможно, название вводит в заближдение.
0
seiros #
То есть речь о разработке приложений для себя, которые потом набирают популярность?
А название да, я думал это и есть определение краудсорсинга :)
Хотя, согласитесь, общее в данном подходе с краудсорсингом есть
+2
tangro #
С одной стороны очень полезно быть пользователем собственного продукта — сразу приходят мысли как сделать его удобнее, проще, быстрее и эти мысли можно сразу реализовать.

С другой стороны иногда оказывается, что твоё видение развития продукта отличается от мнения большинства (всё ж программисты чуть по-другому мыслят) и приходится выбирать, например, между такими вещами как: сделать 20 новых фич, которые можно будет задействовать через командрую строку или правку конфиг-файлов, или сделать всего 5 фич, но с удобным и понятным юзеру интерфейсом. Себе бы я сделал первое, а вот на практике чаще приходиться делать второе.
0
_lf #
Согласен. Остается только добавить еще более общую проблему: то, что хотят другие (даже такие же гики/блондинки, каким является разработчик) не всегда на 100% такое же. И получается, что фича, которую реализуешь, пусть и вписывается в общую концепцию, но нравится только тебе и Васе. И вот как определить, клевая эта рюшечка или нет — большая проблема.
–3
grafmishurov #
Извините за оффтоп, явот так хотел сказать, что мне хотелось бы ехать. Но и шашечки тоже были бы приятным дополнением.
+1
Rsmile #
Сам оказался пользователем-разработчиком. Когда был в процессе подготовки к свадьбе, пришлось общаться на российском свадебном форуме. Понял что неплохо бы было сделать местный (Нижний Новгород). Так все пошло поехало, и сейчас все достаточно успешно функционирует, мало того на основе этого первого проекта появилась целая интерент-компания, новые интернет-проекты :) А началось тоже с того, что была собственная необходимость.
0
kaushan #
как по мне то продуругому и нельзя — как можно что либо делать если ты этим не пользуешься

какой смысл этой статьи?
0
messerr #
Согласен. Разработчик просто обязан являться пользователем своей программы.
0
kossmoss #
Такой подход дал жизнь очень многим инновациям (а в сфере IT, я думаю, таких большинство). Но разработчики (в данном случае это люди, сталкивающиеся с проблемой и способные ее красиво решить, дав жизнь новому продукту) в некоторых сферах очень редко являются пользователями. Именно поэтому мы наблюдаем большой поток новинок, рассчитанных на широкий круг пользователей (в который входят и сами разработчики) и слабо развивающийся сегмент специфических продуктов, у которых вообще чрезвычайно мало пользователей, а следовательно, и очень мало пользователей, способных стать разработчиками чего-то революционного для этих специфических приложений. Поэтому специализированные продукты так часто выглядят ужасными. Ибо разрабатываются на заказ либо людьми, очень приблизительно представляющими специфику приложения, либо самим пользователями, не обладающими достаточной квалификацией, позволяющей реализовать «конфетку».

Сужу по своему личному опыту общения с программами для радиовещания. Очень сложно найти программный комплекс, который бы устраивал меня на все 100%. В каждой такой программе либо не хватает какого-то функционала, либо юзабельность ужасающая. И при всем при этом никакой стандартизации интерфейсов и принципов работы — как в той басне про лебедя, рака и щуку :(
0
kaushan #
Ну это не означает что раньше делали не пользователи просто у них запросы были не такие продвинутые как у тебя.
Теперь вот все карты тебе в руки — сделаешь самый жирный програмный коплекс для радио — конфетку ;)
0
kossmoss #
Увы, для ПК я разрабатывал очень немного, поэтому вряд ли именно я стану этим «инноватором». Ведь каждый должен делать то, что у него хорошо получается, верно?
0
kaushan #
ну вот у тебя хорошо получается определять что нужно что не нужно по функционалу комплексов для радио — покрайней мере так звучит

я не имел ввиду что тебе классы писать нужно но направить мог бы — и получился бы отличный продукт — туча людей бы тебе спасибо сказала
0
kossmoss #
Тема как раз про то, что хорошо получится, если разработчик является еще и пользователем (в первую очередь). Той программой, которая сейчас у меня стоит, пользуются очень многие люди. И багтрекер есть. Но баг, описанный мной еще полгода назад, до сих пор есть в релизе. О чем это говорит? О том, что скорее я спасибо буду говорить за то, что они наконец его пофиксят. Нет, не тот это случай.
0
kaushan #
мы тут немного в разные стороны говорим и разбирать будет нужно…

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

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

тоесть стать разработчиком (менеджером) толково проекта
0
kossmoss #
>я тебя подвожу к тому что ты можешь создать хороший продукт потому что ты есть пользователь

А ты думаешь, я этого еще не понял? :)
Все дело в том, что в данный момент я концентрируюсь на совершенно других проблемах, которые меня волнуют больше, чем создание такого нишевого продукта.
0
Kozebyaka #
в одной фирме была CRM своей разработки, я попробовал работать с ней и обнаружил несколько средненьких недочетов, а потом спросил у руководителя: «а программисты сами пробовали работать по клиентам с помощью своей CRM?»

как Вы думаете, каков был ответ?
0
kaushan #
ну это разделение труда нормальное — то что кто то кодит классы не означает что он должен работатать — но всегда есть или прожект менеджер который пользователь или заказчик который тоже пользователь
тоесть как ни крути в сфере разработки всегда есть пользователь который и играет первую скрипку

просто у каждого свои личные идеали/лимиты вот иногда и выходит то что выходит :)
0
Alexlexandr #
С одной стороны все так.
А с другой- если постановщик задачи (сам пользователь) является и разработчиком одновременно, он часто прощает себе многие «условности», «косяки» и недоделки.
По этому я предпочитаю, даже при работе над маленькими проектами, физически разделять это.
Крайне важно, что бы постановщик мог жестко требовать от разработчика выполнения того или иного необходимого условия.
0
kremien #
В таком случае, хотя бы сам постановщик должен попользоваться системой. Может быть полезно.
0
Alexlexandr #
Однозначно, постановщик или носитель идеи, или инсайдер, вобщем человек неравнодушный к теме проекта (проектика).
0
greyhard #
занимаясь тюнингом своей машины ) я насмотрелся на кучу сайтов по продаже тюнинга ) в итоге когда стал разработчиком одного из таких сайтов ) вложил все свои мысли и хотелкив его разработку ))) делая чужой проект как для себя )) чем теперь очень доволен и активно пользуюсь )
0
kossmoss #
замечательный пример того, как важно вовремя оказаться в нужном месте :)
0
kaushan #
покажи что ты сделал
0
greyhard #
www.gt-shop.ru
еще в разработке ;)
+1
egetmanenko #
На первый взгляд, способность попытки разрабатывать для самих себя значительно повысить вашу эффективность, может показаться, мягко говоря, странной.

Я или не понимаю, или тут чуть-чуть не по-русски. А в целом, статья очень хорошая и справедливая.
0
kremien #
Увы, долго мучался с этим предложением, но не получилось его сделать достаточно понятным.
0
Chamie #
Может, «На первый взгляд то, что попытка разрабатывать для самих себя способна значительно повысить вашу эффективность, может показаться, мягко говоря, странным»?..
0
kaushan #
можно было просто скопировать предложение с vesna.yandex.ru :)

в догонку к @chamie мой вариант:
«попытка разрабатывать для себя что бы повысить эфективность мягко говорря странная»

Только зарегистрированные пользователи могут оставлять комментарии. Войдите, пожалуйста.