Open SourceО проблеме "Just for fun"

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

Итак, что такое «Just for fun»? Первоначально, это было просто частью названия автобиографии Линуса Торвольдса: «Just for Fun: The Story of an Accidental Revolutionary» (кстати, хорошая книжка, советую почитать), а позже эту фразу стали использовать для того, чтобы подчеркнуть некоммерческий характер развития многих СПО-проектов.

Возвращаемся к заблуждениям, вот конкретный пример:
Проблема СПО в модели «just for fun», её проблема в том, что каждый делает не то, что должен, а то что хочет. А ведь иногда нудные и скучные вещи делают продукт более дружественным к пользователю, более стабильным и массовым. Всем известно, что программировать новое намного интереснее, чем оптимизировать и тестировать старое. Вот и получается что за нудные и неинтересные вещи никто не делает. Именно проработанность нудных, но важных вещей являются тем, что отличает СПО от коммерческого софта.


Собственно, главная мысль содержится в первом предложении, на него и стоит обратить особое внимание.

Заблуждение №1. О том, что СПО и «just for fun» неразрывно связаны.
Я видел множество открытых проектов, которые от начала и до конца были написаны наёмными работниками. И написаны были по всем правилам: с ТЗ, тестированием, контролем качества, доработкой и прочее. Эти проекты, в плане кода ни капли не отличались от другого СПО, конечно, у такого ПО отсутствовала «душа» и сообщество, но по «внешним признакам», такие программы от разработанных «just for fun» отличить не легко.

Заблуждение №2. О том, что «just for fun» может быть только в СПО.
Можно привести пример сотен freeware программ (закрытых, проприетарных), которые написаны именно «just for fun». Люди не пытаются заработать на этом ПО, а просто пишут в своё свободное время. Разработчики этих программ могут игнорировать просьбы пользователей и годами не исправлять ошибки в ПО. Из-за того, что исходный код таких программ не доступен, у вас нет возможности самим исправить что-то (или кого-то нанять, чтобы исправить), как в случае с СПО.

Заблуждение №3 О том, что «Just for fun» — всегда плохо.
Не все понимают, что зачастую в программы, которые пишутся не за деньги, а «для себя» вложено намного больше усилий и тщательной проработки. Действительно, если разработчик сам пользуется программой, то он сделает её удобной для себя. Добавьте к этому понимание того, что код смогут увидеть другие программисты. Разве будет разработчик делать «тяп-ляп», если понимает, что по качеству этого кода другие будут судить о его профессиональных качествах?

Заблуждение №4 О том, что «Just for fun» не может стать качественным.
Нет ничего страшного в том, что СПО не всегда безупречно. Ведь это отличный шанс для кого-то предложить свои услуги по доработке. Весь исходный код доступен, а значит у любого квалифицированного программиста есть возможность дополнительно заработать на реализации того или иного функционала. Разве возможность заработать на СПО — это недостаток? Наоборот, преимущество.

Можно продолжать ещё долго, но думаю, что уже понятна главная мысль о том, что сам подход «Just for fun» к разработке ПО не может служить критерием того, насколько хорош или плох продукт. Свободное ПО обладает рядом фундаментальных свойств, одно из них это то, что большая часть проектов начинается как «Just for fun». Но понимают это не многие и очень часто смотрят на СПО «со своей колокольни», не учитывая специфики, собственно, СПО. А из-за этого особенности выдают за недостатки.

PS: Кроме того, всегда нужно помнить, что существуют некоммерческие проекты по созданию СПО, и коммерческие компании, пытающиеся заработать на СПО. Это два связанных между собой, но очень разных «мира», всегда нужно учитывать о каком из них идёт речь.

Опубликовано на PCWeek
  • +17
  • fog
  • 26 февраля 2011, 21:05

Комментарии (5)

  • avatar
  • NOX
  • 27 февраля 2011, 17:43
  • #
  • 1
«Что наша жизнь? — Игра!» :)
По прочтении понял что с толком потратил время, статья стоит того.
Ну раз целая статья родилась как ответ на мой спонтанный комментарий, то хочу пояснить в чем я вижу проблемы модели «just for fun», — это отсутсвие ответственности. Никто не за что не отвечает кроме своей совести. В этом нет ничего плохого если совесть есть, а если она «загуляла»?

Я сам люблю программировать именно в стиле «just for fun», и иногда я вижу как из-за того, что два «гения» и просто творческие личности, не могут договорится, кто из них круче, загибается проект. Но ведь для проекта они оба важны и нужны. Среди старшего поколения это редкость.

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

К примеру если бы не SUN, то что бы имели из свободны офисных пакетов? Большинство сложных пакетов рассчитанных на широкие массы неискушенных потребителей неготовы к массовому использованию. В них всегда, что-то нужно допиливать напильником. И особенно наглядно это видно по количеству пользовательского софта под линукс. Его по количеству меньше чем под маки, а про мелкий софт под винду я просто молчу. А почему? Потому что пользователей линукса мало, а следовательно и мало программистов. Если будет больше простых пользователей то станет и больше программистов: программисты на делфи пересядут на лузарус, любители вижуал студии пересядут на QTDevelop, любители дотнета — на моно, а любители ява, — на… ява :)

В центре СПО мира все вертится вокруг программистов, а должно вокруг пользователей. И к модели программирования мои претензии не имеет никакого отношения, они имеют отношение только к людям. Но так же я вижу, что все меняется и СПО становится более зрелым. Возможно потому, что средний возраст программистов становится выше. Те кто были студентами в 80е и 90е сегодня уже взрослые дядьки. :)
Возможность дописать и усовершенствовать код, это великолепная возможность, если пользователи продукта программисты. А если они на 99% простые люди?
Писал-писал тебе пост, а ты так и не понял. :-) Ну ладно, попробую по проще. «Лёгким движением руки» с пачкой денег в сторону разработчиков, «just for fun» превращается в не-«just for fun», и все связанные с этим проблемы, исчезают. :-)
А в чем тогда разница между проприетарным и свободным софтом? Если потребителя заставляют платить то какая ему разница кому платить? СПО создавалась именно с целью дать альтернативу платному софту. Но по вашему получается что альтернатива только для «избранных», т.е. только для разработчиков, а простые пользователи опять пролетают. Им нужно либо учить программирование, либо платить. Свободы в СПО не густо, немного есть конечно, но не то. Нет баланса между личными и общественными интересами. Простая формула гармонии «возлюби ближнего как самого себя» не соблюдается ни в корыстном проприетарном софте ни в СПО. Работая «just for fun» разработчики все равно работают ради себя. Свода возникает тогда, когда программист поработал на себя и столько же поработал для блага всех людей. Я вижу смысл СПО именно в этом, иначе качественно, с точки зрения этики, СПО ничем не отличается от проприетарного бизнеса.
Если потребителя заставляют платить то какая ему разница кому платить?
Разница очень большая. В случае проприетраного ПО, пользователь вынужден платить именно первоначальному разработчику. У пользователя нет выбора, а значит, падает качество и растёт цена. В случае СПО, пользователь платит тому, кто может предоставить услугу лучшего качества, соответственно, за счёт конкуренции растёт качество и снижаются цены (часто — до нуля, но это лишь следствие конкуренции, а не цель СПО).
СПО создавалась именно с целью дать альтернативу платному софту.
Не-не-не, СПО создавалась для того, чтобы дать пользователю/разработчику больше прав и возможностей. Т.е. это юридическая плоскость (а цена — экономическая).
Работая «just for fun» разработчики все равно работают ради себя.
Совершенно верно. :-)
Только зарегистрированные и авторизованные пользователи могут оставлять комментарии.