Краудсорсинг: Коллективный разум как инструмент развития бизнеса
Шрифт:
Идея была не лишена логики, но Хьюз создавал сайт не только для того, чтобы продвигать начинающих разработчиков. У него были претензии к индустрии программного обеспечения в целом. «Процесс разработки ПО славен тем, что запаздывает по срокам, всегда превышает бюджет и имеет множество ошибок. И эта репутация обоснована: так все оно и обстоит на самом деле». Хьюз решил ввести в эту сферу деятельности дисциплину, контроль качества, более характерные для традиционного товарного производства. В свободное от работы время программисты в компании Tallan соревновались друг с другом в неофициальных конкурсах. И Хьюз заметил, что итоговые коды получались лучше, чем те, за написание которых они получали зарплату. «Почему бы не дать им возможность конкурировать друг с другом все время?» – подумал Хьюз.
Он не стал изобретать велосипед, компания позаимствовала схему соревнований у Национальной атлетической ассоциации колледжей (NCAA) и адаптировала ее к «матчам» среди программистов.
Постепенно среди сообществ программистов распространился слух о том, что появился веб-сайт, на котором каждую неделю проводятся конкурсы. Призовой фонд не был впечатляющим, зато участие в еженедельных соревнованиях могло стать интересным времяпрепровождением, а если получить большое количество баллов, то есть вероятность заключения крупного контракта с такой компанией, как, например, Google. Для молодых программистов, у которых денег было меньше, чем свободного времени, идея показалась привлекательной. Медленно, но верно популярность TopCoder начала расти.
Хьюз же хотел, чтобы TopCoder делала нечто большее, чем просто управляла конкурсами. Даже с учетом того, что TopCoder находилась в ранней стадии своего развития, Хьюз понимал, что, организовав достаточно крупное сообществе, он сможет использовать его энергию на разработку настоящего программного продукта для реальных клиентов. Разработки эти будут по-прежнему иметь форму дружеских соревнований, за исключением того, что работа, выполненная победителями, будет скомпилирована в более крупную часть программного обеспечения, уже для компаний из списка Fortune 1000. К 2003 г. еженедельные матчи, проводившиеся TopCoder, постоянно просматривали около 7000 программистов. Около 20 % из них периодически становились победителями; около 5 % – зарождающаяся элита TopCoder – побеждали постоянно. Запустив двигатель краудсорсинга на полную мощность, Хьюз почувствовал, что пришло время испытать сообщество в реальном деле.
Но до того как TopCoder обратится к клиентам со своей необычной моделью разработки программного обеспечения, Хьюзу и его сотрудникам нужно было продумать метод разбиения задач на мельчайшие дискретные компоненты. «Мы с момента основания компании знали, что нам нужно будет разбивать крупные задачи на более мелкие, четко структурированные фрагменты», – говорит Хьюз. TopCoder отбирала программы, которые при обычном раскладе можно было разбить на сотню компонентов, и продумывала варианты, как их разбить на тысячу мелких задач. «Идея заключалась в том, что чем меньше “рабочий блок”, тем больше вариантов его последующего использования», – говорит Майкл Моррис, начальник отдела программного обеспечения TopCoder. Это казалось выгодным по многим соображениям. Во-первых, работа оказывается приспособленной к «свободному циклу» человека. А во-вторых, подход TopCoder увеличил скорость и эффективность работы. «Если бы у нас над проектом работало пять разработчиков, у них никогда не оставалось бы времени для использования модульной организации заданий, – говорит Моррис. – Им нужно было бы сначала закончить одно задание и только затем приниматься за другое. Теперь же у нас имеется неопределенное количество людей, одновременно работающих над одним заданием. Чем больше фрагментов мы получим в процессе разбиения, тем быстрее будет выполнена вся работа».
Хьюз и его компания полностью следовали сценарию краудсорсинга, за исключением того, что, конечно, ничего подобного в то время не существовало. В 2003 г. TopCoder была, по существу, единственной в своем роде компанией, использующей модель, которую Хьюз назвал «конкурентным сотрудничеством». На исправление ошибок потребовалось несколько лет. «Тогда не было краудсорсинга. Никакой мудрости “толпы”. Мы не применяли теорию, мы сами были научным экспериментом», – говорит Хьюз.
К началу 2006 г. TopCoder установила деловые отношения с несколькими клиентами и систематизировала процессы разработки. «Это был переломный момент. У нас было около 70 000 программистов, и мы посчитали, что этого достаточно для написания
Последнее задание стало самым серьезным тестом для TopCoder. Для начала Моррис назначил ответственного разработчика программного обеспечения и руководителя проекта. Это были единственные сотрудники TopCoder, занятые в проекте. Все остальное сделало сообщество. «Они разбили программу мгновенного обмена сообщениями на пятьдесят два компонента. Оказалось, что сообщество уже разработало часть компонентов. Если представить себе, что речь идет о кубиках Lego, из которых уже собирались другие фигурки, то оказалось, что двадцать два кубика к этому времени у нас уже были. Оставалось лишь собрать их в единое целое»47.
Требовалось сконструировать, согласовать и протестировать оставшиеся тридцать компонентов. Это очень скрупулезный процесс, каждый этап которого передавался в краудсорсинг. TopCoder продолжал придерживаться формата соревнований. Сначала участники сообщества соревновались за разработку лучшего алгоритма. При этом участники самостоятельно определяли, какое задание они будут выполнять, исходя из собственного представления о своей квалификации. «У членов нашего сообщества широкий спектр знаний и навыков, – говорит Моррис. – И каждый, как правило, знает, на что он способен». Участники сдавали свои работы на лучший алгоритм, после чего для оценки каждой работы TopCoder назначал экспертную комиссию. «Мы назначали экспертов исходя из их квалификации. А сам отбор шел по принципу “живой очереди”». Определившись с лучшим алгоритмом, его снова выкладывали на сайт для проведения следующего конкурса. Теперь конкурсанты из «толпы» должны были его закодировать. После этого выбирался код-победитель. И наконец, проводились еще два конкурса – один, направленный на сборку всех компонентов, а другой – на то, чтобы определить лучший командный файл, который будет управлять всей программой на каждом этапе ее работы. «Мы разрешаем участникам соревнований формировать команды.
Каждая из них будет делать все от нее зависящее, чтобы взломать программу». По сценарию программу следовало обкатать с позиции пользователя: «делать все, например, добавлять в список друзей, запускать групповой чат, устанавливать защищенный канал связи». Наконец, TopCoder определился с окончательным вариантом программы, сертифицировал ее и передал клиенту. Сообщество не только выполнило основную работу, оно также взяло на себя ответственность за контроль качества.
Компания AOL осталась настолько довольна результатами работы, что после этого отдала на разработку TopCoder около десятка других программ. «Они нас любят», – говорит Майкл Моррис. И тому есть причина. Программы TopCoder в среднем насчитывают 0,98 ошибки на тысячу строк кода. «Промышленный стандарт – шесть ошибок, – отмечает с гордостью Моррис. – Традиционная фирма может назначить шесть или семь разработчиков для выполнения подобного проекта, и это займет больше года. А нам потребовалось чуть больше пяти месяцев».
Часть II
Где мы сейчас
Глава 5. Самое универсальное качество
Разнообразие – «джокер» возможности
Зимний вечер 1995-го. Профессор Калифорнийского технологического института Скотт Пейдж забавы ради работает над компьютерной моделью, в которой искусственные агенты – небольшие компьютерные программы, взаимодействующие между собой согласно правилам, прописанным в программе, – пытаются найти пути решения некой сложной проблемы. Подобным компьютерным моделированием активно пользуются экономисты, поскольку на его основе можно изучать взаимодействие различных агентов в самых сложных системах, например исследовать поведение людей в системе финансовых рынков.
Счастье быть нужным
Любовные романы:
любовно-фантастические романы
рейтинг книги
Кодекс Крови. Книга V
5. РОС: Кодекс Крови
Фантастика:
фэнтези
попаданцы
аниме
рейтинг книги
Лучше подавать холодным
4. Земной круг. Первый Закон
Фантастика:
фэнтези
рейтинг книги
Институт экстремальных проблем
Проза:
роман
рейтинг книги
