Pull to refresh

Кошачье пастбище

Open source *
Translation
Original author: SteveC

У книги Карла Фогеля «Producing open source software» замечательная обложка (см. выше). На ней показано множество маленьких стрелок разного размера, указывающих направо, и бо́льшая стрелка жёлтого цвета, на мой взгляд показывающая итоговый эффект. Она как бы говорит нам: если все лошади будут тащить в одном направлении, можно будет передвинуть на другое место целый дом.

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

Это красивая картинка, и именно так я представлял себе опенсорс, пока не стал в нём участвовать. Все люди тащат проект в одном направлении, чтобы сделать энциклопедию, или операционную систему. Но, скажу я вам, это совсем не так, пока проект не вырос

Во-первых, размер стрелок. Распределение усилий в совместных проектах может разительно различаться. Когда проект только начинается, усилия зачастую распределяются примерно вот так:



Этап 1. График распределения усилий одного человека

Что это значит? Это значит, что один человек делает большую часть. С очень низкими частотными показателями (только один человек!). Очень много усилий, потому что этот человек занимается всем кодингом, заставляет работать сайт, отвечает на почту, борется с вражескими проектами с тупыми идеями, придумывает, как сделать лучше, и всё такое. Это — самая критическая фаза жизни проектов, и именно поэтому множество проектов является синонимом человека, их начавшего. Или как минимум мифа о том, кто его начал, ведь успешные проекты притягивают людей, которые хотят, чтобы считалось, что всё идёт хорошо благодаря им. Linux, Линус. Wikipedia, Джимбо Уэйлс. Mono.NET, Мигель де Иказа. Debian, Ян Мердок.

Существуют тысячи маленьких проектов, успешно ведомых их начинателями. Файловые утилиты, драйверы мышей, средства развёртывания, графические утилиты и так далее. Когда они вырастают, в большинстве случаев они сохраняют изначальных авторов, потому что иначе они, как правило, уходят в неадекват. Комитеты плохо приспособлены к ведению больших распределённых проектов, полагающихся на свободное время (!) людей. Великодушные диктаторы, как правило, работают хорошо, а когда не получатся — проект форкается или умирает, и расцветают сотни новых цветов.

Подумайте в этом контексте про Debian и Ubuntu. Если вы не знаете, что это, то это не важно.

Следующая стадия проекта во многом зависит от темперамента человека, его начавшего. Зачастую он не принимает новых идей, или занимается им только ради собственной известности (читай: денег). Или ему наскучивает, или он хотят управлять всем, или у него банально не хватает времени. Есть миллионы причин. Когда OpenStreetMap только начинался, существовало как минимум два подобных проекта, о которых я знал. Один из них — geowiki.com, начатый Ричардом Фэрхерстом (автор Potlatch — kom.) с друзьями. Это был (и есть) прекрасный сайт, вероятно, потребовавший кучу времени на то, чтобы быть сделанным, и не имел никакой связи с сообществом (рассылки и всё такое). Это привело к застою, потому что никто не мог принять участие и все данные, исходные тексты и инструментарий были закрыты.

Во-вторых, free-map.org.uk, которым по сей день занимается Ник Уайтлегг. Сайт сфокусирован на пешеходах. Здесь, в Англии, есть большое сообщество людей, которые ходят пешком, пользуясь правом прохода (которое зачастую пересекает частные земли). Free-map потворствовал этим людям и Ник потратил много сил на них, но в основном этим проектом так и заведует Ник, в связи с его узкой направленностью. У Ника есть тысячи хороших идей, но только Ник может воплотить их в жизнь. В свободное время.

Когда OSM только начинался, ему надо было преодолевать световые годы, чтобы дойти до уровня этих проектов; но, как и они, он по существу отверг гео-догмы. На сегодняшний день, Ник и Ричард — ключевые участники OpenStreetMap.

После самого первого разговора про OSM, была создана freemap. Она насаждалась сверху вниз, используя все самые последние стандарты и в общем, никуда не привела (за исключением благих намерений) — она концентрировалась на технологии, не на сообществе.
  • Сообщество — это всё. OSM никогда не стремился сделать карту. И даже не самую красивую карту. И не лучшую. И не самую быструю. Даже не карту, которая бы работала 3 часа из 24. Что он сделал (и делает) — упрощает создание карт как в социальном, так и в техническом отношении.
  • Вторым краеугольным камнем стал отказ от обычаев. Весь код открыт. Все данные открыты. Всё открыто настолько, насколько возможно, чтобы не разглашать тайны частной жизни.

Эти две вещи стали ключевыми, а также тем, что отделило OSM от других проектов. С ними запросто можно согласиться, и говорить и распространяться. Третий компонент таким не является.
  • Говорить могут только те, кто фактически что-то делает. Остальные могут убираться.

OSM добрых два года был полон людей с клёвыми идеями, как построить космический корабль. Мне нравятся космические корабли. Мне нравятся летающие автомобили. Мне обидно каждый раз, когда я вижу DeLorean, не взлетающий вертикально вверх. Но для того, чтобы построить космический корабль, нужны высокооплачиваемые специалисты из NASA. И механики, чтобы быть уверенным, что он взлетит. И команда на земле на всякий случай. Это всё, конечно, хорошие вещи, но их редко когда можно получить забесплатно, в чьё-то свободное время.

OSM, с другой стороны, — картонный космический корабль Базза Лайтеара. Он выглядит как космический корабль. Если его подбросить и покоситься на него пару секунд, то он типа как полетит. Он скреплен бечёвкой и клеем. Драндулет, короче. Но, с другой стороны, это сработало. Кто угодно может сделать вклад, кто угодно может получить данные. Это был единственный проект с простым API, к которому мог обратиться кто угодно.

Постоянно выдвигались предложения прикрепить к нему реактивные двигатели (это, кстати, обсуждалось и для «Спейс шаттла») или межгалактические искривители пространства. В большинстве своём этим людям было велено убираться, если только они не разработали, построили и прикрепили ракеты.

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

Вернёмся к стрелкам.

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


Этап 2. Нерегулярное распределение усилий

Так мы приходим ко второму этапу. Основатель остаётся слева на графике, будучи человеком, тратящим на это много времени. Но появляется ещё и куча людей, делающих ключевые вещи. В случае с OSM ими стали человек по имени Imi, сделавший потрясающий редактор карт JOSM, человек по имени Энди, и некто по имени 80n (да, именно так), который нарисовал много подробностей и начал заниматься онтологией OSM. У него нет онтологии как таковой, поэтому примем пока это как метафору. Чем больше растёт частота, тем больше появляется людей, занимающихся мелочами. Рисующих пару улиц. Исправляющих странные ошибки. Делающих проект известным.

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

Есть и недостаток — процесс справа двигается рывками. Кто-то рисует целый город и исчезает. Кто-то делает целый комплекс для редактирования, а потом у него появляется девушка. Так что колонки двигаются в разные стороны со временем. Кто знает, что будет с проектом в следующий месяц?


Этап 3. Сглаживание графика Усилия/Частота

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

Пусть и некорректно математически, зачастую этот график называют «длиннохвостым». Усилия нескольких индивидуумов, занимающихся постоянно, эквивалентны сумме тысяч людей, тратящих по минуте в день. OSM пока ещё не пришёл к этому состоянию, но подбирается ближе с каждым днём. Это приводит к особому набору длин стрелок — множеству коротких и нескольким большим.

Что там насчёт направления? Пересмотрев наши этапы, я думаю, первые два выглядят вот так:



Да, некоторые из стрелок ведут в обратную сторону.

Так что на первом этапе, у нас есть один основатель. На втором появляются люди, которые считают всю затею дурацкой, или начинают конкурирующие проекты — следовательно, указывают в другую сторону. Появляются люди с разными целями, фокусирующиеся на разных вещах — поэтому некоторые нарисованы под углом. Разного размера, потому что они вкладывают разные усилия.

Ну и в конце концов, как график начнёт сглаживаться, а идеи с технологиями станут общепринятыми, мы увидим что-то, более напоминающее обложку той книги.
Tags: openstreetmaposmopen sourceсвой проектwikiкартография
Hubs: Open source
Total votes 59: ↑45 and ↓14 +31
Comments 23
Comments Comments 23

Popular right now