Speaker Rabbit

abbra


CIFS: curious information funneled sometimes


Previous Entry Share Next Entry
Конкурентные преимущества
Speaker Rabbit
abbra
У vitus_wagner идет очередная дискуссия на тему каким должен быть код программных продуктов и какой модели разработки стоит придерживаться. vp также в очередной раз навешивает ярлыки, постулируя, что "линуксообщество и слыхать не думало, что открытые исходники - это открытие конкуретных преимуществ, ноухау, оплаченной работы аналитиков и т.п.", приводящих к уничтожению тех или иных коммерческих преимуществ.

Я занимаюсь профессиональной разработкой программного обеспечения на основе свободного ПО более 14 лет и хочу сказать, что только недалекие люди придерживаются подобной политики. Но чтобы ответить на этот вопрос, прежде всего необходимо определить фундамент. Он базируется на юридической основе, заложенной Столлманом в рамках существующего законодательства по авторскому праву в США и "совместимых" юрисдикциях. Эта юридическая основа весьма строгая и в то же время весьма гибкая. Она выдержала довольно серьезные нападки с разных сторон в судах разного уровня и за последние 25 лет пока стабильно выходила победителем. Да, судебные дела были, но всегда с отрицательными последствиями для пытавшихся эту систему подвергнуть испытанию. Эта основа не формулирует никаких условий к разработчикам ПО в процессе его разработки, она регламентирует действия, которые необходимо осуществить, если ПО начинает распространяться, при этом само понятие распространения довольно четко определено -- к примеру, из него исключается физическое распространение и использование внутри самой фирмы-разработчика, даже если юридически она состоит из множества юридических лиц, связанных определенными договорами.

При этом для определенных форм юридических обязательств, построенных поверх этой основы, важным моментом является и то, что код на самом деле не обязан распространяться кому угодно, если он был предоставлен заказчику. Например, по GNU GPL, распространение вашей системы позиционирования заказчикам вместе с исходным кодом на одном носителе автоматически лишает третьих лиц возможности запросить у вас и у заказчика этот код, GNU GPL просто не регулирует ситуацию за этими пределами. То, что заказчик формально может отдать код кому угодно -- это его свобода, но не обязательство. Вы не сможете юридически его в этом ограничить и вот тут в дело вступит нормальный рынок и общество: этичное поведение и соблюдение законодательства еще никто не отменял. Этика в свободном ПО является одной из ключевых составляющих, хотят этого или не хотят оппоненты. Над этичным программированием и обществом с определенными этичными критериями можно смеяться и издеваться, но они существуют и существовали ранее в других отраслях. От этого никуда не деться. Тот факт, что свободное ПО построено на довольно серьезном юридическом фундаменте, позволяет нарушителей этого этического кодекса не просто "изгонять из цеха", но и преследовать традиционными средствами. По сути, они превращаются в обычных нарушителей правопорядка в соответствующей стране.

И в этом есть крайне важный смысл: модель бизнеса, построенная на этическом обществе, была бы невозможна, если бы она не могла устоять в рамках того рынка и мирового устройства, в котором она вынуждена существовать и работать. В этом вся суть юридической системы-базиса свободного ПО: продвигаются собственные цели и решаются собственные задачи, но так, чтобы результаты труда этического общества могли быть использованы для его (общества) построения и развития в рамках существующего мира, без компромисов.

Далее можно выделить несколько подходов к проблеме среди тех, кто реализует развитие этого общества. Первый -- принципиальный, без тех самых компромисов. Второй -- назовем его комбинированно-положительный, когда силы и средства "традиционного" общества сознательно используются для развития этического, без особой заботы о "реальном мире". Третий -- "комбинированно-отрицательный", когда во главу угла ставятся интересы "традиционного" общества, но вся деятельность осуществляется по правилам этического там, где это абсолютно необходимо. Четвертый -- "потребительский", где результаты работы этического общества используются без вовлечения в построение этического общества. Можно выделить и другие подходы, но пока достаточно этих.

Все эти подходы сосуществуют и при этом я сознательно не описываю ими тех, кто нарушает законодательство "традиционного" общества, нарушая юридическую основу общества этического. Если внимательно посмотреть, то эти же люди и компании нарушали бы законодательство и без наличия вкусных приманок в виде кода свободных проектов. Только вот со свободным кодом у них как бы появилось больше соблазна нарушить. Но это все равно что обвинять красивую женщину в том, что она провоцирует своей красотой появление порнографии и определенных форм извращений, находящихся за пределами законодательного и этического поля "традиционного" общества. Через это мы уже проходили в средние века...

Так что реальная проблема исходит из "традиционного" общества там, где нет возможности обеспечить надежное исполнение законодательства. Можно ли преследовать нарушителей в соответствующей юрисдикции? Возможен ли выигрыш от открытия протоколов и кода, спецификаций, сообщества вокруг продукта? Это вопросы бизнес-планирования. Для ряда отраслей и задач это возможно и в "традиционном" обществе, в этих местах "этическое" и "традиционное" общество идут по одной линии. В ряде ситуаций это либо затруднено юридически, либо требует больших финансовых затрат на восстановление статус-кво. Выбор нужно делать осознано.

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

Хорошим примером является работа по кластеризации Самбы, которую разные компании вели на протяжении почти шести лет и только IBM удалось сделать продукт того качества, который можно реально использовать в серьезных многомиллионных внедрениях. При этом ключевые разработки (ctdb и доработки кода в samba) доступны под GNU GPLv3, их могут использовать конкуренты. Вот уже полтора года как продукт от IBM есть на рынке, конкурирующие решения еще только на подходе, как я слышу, но не выпущены и не будут выпущены еще в течение этого года. При этом в самом продукте есть и проприетарные компоненты, альтернативы которым есть у конкурентов (и в свободном ПО).

Есть и другие примеры, но не буду больше распространяться, суть не в примерах.

  • 1
Во-первых, в нашем реальном мире ни о какой этике речи быть не может пока что. Когда бизнес-аналитики конкурента проанализируют мой код и быстро сделают свой аналогичный продукт, будет очень тяжело доказать, что они позаимствовали идеи. Идеи будут закомуфлированы совершенно в иную обертку, в которой доказать авторство идей будет невозможно.

Во-вторых, судебные разбирательства стоят денег. Потому закрытость кода тут аналогична средствам защиты программ с помощью ключей и т.п. Нет никаких проблем юридически доказать, что программа украдена. Но при отсутствии аудита всех компьютеров всех предприятий никто никогда не узнает, что ее украли - аудит до компьютера просто не дойдет НИКОГДА. Ну и инициировать со стороны мелкого ООО судебный процесс в отношении большой конторы, которая украла программу - это неблагодарный процесс. Стоимость его в 100 раз перекроет затраты на защиту.

В - третьих, речь о масштабах предприятий. Если у IBM кто-то позаимствует идеи, не думаю, что IBM от этого закроется. А когда речь идет о мелких региональных игроках, у которых закрытие (проигрыш) в проекте равнозначен свертыванию деятельности - это совсем другая музыка.


> Когда бизнес-аналитики конкурента проанализируют мой код и быстро сделают свой аналогичный продукт

Так анализируйте и делайте! Вон, код Mozilla Firefox открыт полностью — идите и делайте! Код всех дистрибутивов открыт — что-то я не вижу толпы программистов, с упоением ворующих идеи из СПО.

(Deleted comment)
(Deleted comment)
(Deleted comment)
(Deleted comment)
(Deleted comment)
(Deleted comment)
(Deleted comment)
(Deleted comment)
(Deleted comment)
(Deleted comment)
... если для нас при экспертизе поставки одной ЕРП системы было ОГРОМНОЙ ПРОБЛЕМОЙ хотя бы посмотреть реальные скриншоты. А вы про исходники :)

На просторах exUSSR об этике сообщества "свободного ПО" даже речи никакой быть не может.
Во-первых, тут GPL, столлмана и прочие пиндосские заморочки все видели в гробу.
Во вторых, конкуренты никаким боком к этому самому сообществу не относятся и, насколько я с ними общался, совершенно не понимают идеи того, что свободное сотрудничество друг с другом только упростит жизнь всем. Когда речь идет о тендерах на проекты с госфинансированием - мало кто понимает, что лишняя конкуренция только усложняет жизнь и заставляет заниматься бюрократической ерундой вместо улучшения софта.
В третьих, заказчики - это не один человек,а десятки и сотни людей в десятках отделов. Если кто-то из людей, имеющих доступ к исходникам, отдаст их на изучение конкурентам - концов отыскать не получится, а юридические разборки займут больше ресурсов и времени, чем работа по улучшению софта.


этика для лохов, реальные пацаны занимаются промышленным шпионажем
бабло не пахнет!

(Deleted comment)
Саш, разработка Самбы и решений на ее основе - это какая часть продуктов IBM (в процентном отношении)? Эклипс отдали в опен соурс, но rational'овские компоненты - никто не отдает, и т.д. А не отдают, поскольку очень много вложений было в исследования.
У меня есть мои личные примеры, когда я несколько месяцев сижу, занимаюсь исследованиями на которые тратятся деньги и т.п., а потом это выливается в код, который реализуется за несколько недель - как ты думаешь, если исходники будут открыты, как быстро это скопируется, даже в европейско-американском бизнесе, не говоря уже о китайцах...
Анализ ПО, поставляемого по госзаказам - это отдельная тема, и такой анализ проводится при закупках, по крайней мере нашего софта - мы отдаем все исходники и их проверяют...

Я не собираюсь расширять примеры. В данном конкретном случае SoFS аналогичные функциональные продукты от вендоров, использующих внутри себя Самбу, так и не вышли. То есть, у них есть свои решения, которые проигрывают SoFS как в техническом, так и в остальных планах. Мы знаем, что они ведут работу по доделке Самбы в том же направлении, ничего внятного сделать не смогли, а теперь, полтора года спустя релиза продукта от IBM и два года спустя публикации кода кластерной самбы, они все еще работают над ее интеграцией в свои продукты. При этом последнее тоже нам хорошо известно, потому что они присылают патчи в апстрим для поддержки своих файловых систем именно в том контексте, в котором мы дорабатывали поддержку GPFS и саму GPFS. Но шесть лет до публикации кода кластерной самбы никто не мог ничего сделать.

И этот пример совпадает с примером vp, потому что здесь именно ключевой компонент и ноу-хау были открыты в опенсурс, конкуренты его видели, видели все развитие, у них на глазах. И все равно с точки зрения конечного продукта пролетают пока. Именно это я примером и хотел продемонстрировать.

Все остальное меня слабо интересует, там типичный баланс необходимости и бизнес-требований.

(Deleted comment)
(Deleted comment)
(Deleted comment)
Мне казалось, что Open Source - это как раз свобода выбора. Либо открыть исходный код, либо закрыть его. Насильственное открытие и закрытие смысла особого не имеет - ценность любого кода в пределе стремится к нулю, потому как заказчик в общем случае покупает не дрель, а дырки.

Хотят закрыть - пусть закрывают. Хотят позаимствовать и закрыть - все равно так сделают. Хотят позаимствовать и открыть - хорошо, но этого мало. Тонны кода лежат на sf.net - много ли там проектов, которые можно реально начать развивать или проще купить или написать все с нуля? Проект - это же не только код, и даже сопутствующая инфраструктура (документация, сообщество, поддержка и развитие) не всегда достаточна, чтобы применить его где-либо еще. Потому что готовое решение - это готовое решение, а полуфабрикат - это лишь полуфабрикат. Я очень рад, что полуфабрикатов много - это позволяет мне, как ИТ-шнику, готовить больше блюд. А пользователем и того не надо - их волнует наполняемость желудков и вкус.

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

Понятно, что термин использование в лицензии сознательно отделен от модификации и распространения. Это в русском языке мы понимаем использование слишком широко.

И чего они так волнуются? :-)

:) Тревожит их существование параллельных обществ.

"В настоящий отрезок времени мне кажется", что успешное ПО - это когда разработчик может идти на шаг вперед рынка, и для него становится не так важен код (читай закрытость или открытость), который является результатом его мозговой деятельности в прошлом. Vision ценнее кода.

А то что можно как-то регулировать качество кода - можно. Свободный рынок нам эксперт и судья.

Читая и пост и комменты к нему, остаеться только удивляться, насколько люди хотят жить в плену стереотипов.
Миф о том, что закрытые исходники позволяют сохранить чье-то конкурентное преимущество, настолько расхож, что даже неинтересно.
Однако если бы это действительно было так, то просто не существовало бы патентное законодательство. Спрятал исходники и живи себе. Однако патентное законодательство живет и процветает, каждый день американские суды принимают к рассмотрению сотни исков. Потому что идеи защищают патентами, а не закрытием кода.
Поверьте очень старому аналитику - любой код можно открыть, было бы желание. Если у вашей компании есть мнение, что код конкурента интересен, арсенал огромен - от реверс инжиниринга до анального криптоанализа. Если кто-то серьезно думает, что например код компании ABBYY никто кроме ее программистов не видел, тот глубоко ошибается. На CI тратят миллиарды долларов.
Закрытый код позволяет получить тактическое преимущество, это хорошо для маленького стартапа, быстро написал, быстро продался.

Другим расхожим стереотипом является существование некого "этического сообщества", где все "для человека, все во благо человека". Никакого "этического" бизнеса не существует, законы экономики - это законы природы, их нельзя придумывать.
Пока некий свободный программист работает just for fun, он может быть этичным. Как только он выходит на рынок, он либо становится волком,, либо вымирает. Ибо "это бизнес, ничего личного".

Так почему код кто-то открывает, а кто-то нет? Если бизнес компании основан на продаже коробок, то открытый код - это лишняя обуза. Открытие кода стоит денег, причем не малых. Зачем их тратить, если в этом случае никакой дополнительной прибыли извлечь нельзя.
Если бизнес строится на оказании услуг - то открытие кода, это серьезное конкурентное преимущество.
У очень крупных компаний, типо МДМ, обычно все вперемешку. Поэтому что-то они открывают - Затмение например, а на чем-то, как на Заметках, сидят, как на навозной куче.

Док, ты просто переформулировал то, что было сказано в посте. Про волков там точно также написано в виде "нескольких подходов".

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

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

Вообще я выскажу наверное непопулярную нынче мысль, но всё же я рассматриваю практику создания свободного ПО как реальную альтернативу капиталистическому пути развития и производства. То есть базируется она на сотрудничестве, кооперации и пользе всему обществу, а не на индивидуальном обогащении.

Это не работало 100 лет назад, не заработает и сейчас. Человек устроен так, что если у него есть возможность паразитировать и не работать - он будет паразитировать и не работать. Я знаю, я сам человек.

  • 1
?

Log in

No account? Create an account