Pull to refresh

Comments 140

Если проект востребован, то могут появиться спонсоры. Донейт тоже никто не отменял. Плюс можно организовать платный сапорт, к примеру, делать какие-то специфичные для отдельных пользователей (возможно, компаний) фичи за деньги. Быть может этот проект станет приносить вам больше денег, чем основная работа.
Процент таких проектов не велик, тем у кого проект не сильно востребован, придется бесплатно на энтузиазме поддерживать или забить в какой-то момент.
Большинство опенсорс проектов родились по прнципу «сделал себе, поделился с сообществом».

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

Вклад всегда останется в истории.
Это же GitHub, зачем права шарить? Делай fork и фигачь все что хочет если автор не принимает твои pull request'ы.
git-flow как раз так и развивается. Кстати очень активно :)
За такое нужно отрывать руки. Куча клонов будет только убивать проект, так как стороние разработчики не будут знать в какой проект вкладывать силы.
Выживает сильнейший! :) Другими словами, если клон получился хуже чем оригинал, то он не выживет!
UNIX наглядный пример обратной стороны ПО с открытым исходным кодом. Я уже не говорю про Linux и кучей разношерстных дистрибутивов на его основе.
извините, а что не так с линуксом? как по мне, дак очень достойно вышло. я посто безмерно благодарен людям которые его форкали и поддерживали. Де-факто некоторые дистрибутивы уже очень юзер-френдли. Я бы не взялся судить что линукс стал круче юниксов, просто он немного другой. И мне нравится выбирать то, на что хватает моих знаний и умений. Мак тоже форкнул юникс на сколько я помню, неужели он получился хуже?
думаю что не форки проблема опенсорса, а неудачные идеи и реализаци.
С бинарной совместимостью у него плохо
юзерспейс стабилен. Use LD_PRELOAD, Luke.
Ок, расскажите мне как использовать LD_PRELOAD на Android.
А кто говорит, что андроид — это чистый линукс?
Вот, уже появились «чистые» и «грязные» Линуксы!
Поставьте любую бубунту в чрут и не мучайтесь. Всё с бинарной совместимостью в порядке. Просто в Android отсутствует GNU юзерспейс. Линух тут вообще ни причём. GNU используется не только в линухе, но и в бсд и даже винде. Ядро — это ядро. Юзерспейс — это юзерспейс. Не надо путать, тогда и проблем у вас не будет.
Я не хочу отдельно компилировать под каждый дистрибутив. Я хочу иметь возможность один раз скомпилировать программу, выложить бинарник, и быть увереным, что он заведётся на любом Линуксе.

Говорим Ленин — подразумеваем партия Говорим Linux — подразумевает GNU Userspace? Что ж, в таком случае, вам придётся признать, что Linux не поддерживает даже такую элементарную функциональность как динамически загружаемые библиотеки (Dynamic Shared Objects), т.к. в Linux их поддержка требует динамического загрузчика, который — часть userspace.
Ядро NT тоже не умеет рисовать окошки, однако никто не жалуется. И да, к NT тоже можно подключить разные юзерспейсы и радоваться жизни. Если вы пишете юзерское приложение, то вы его пишете не под ядро, а под конкретный юзерспейс.
Мне не нужны окошки. Мне нужна бинарная совместимость и возможность загружать другие библиотеки (в т.ч. динамически). Windows и Mac OS X дают такую возможность, а Linux — нет.
Ядро NT — нет (в привычном для вас виде). Ещё раз — вы путаете ядро с юзерспейсом.
И? Вы мой коммент вообще прочли?
Вы утвердаете, что загрузка динамических библиотек реализована не в ядре NT, я указал функцию ядра, которая отвечает за загрузку Dll.
Как-то вы неамбициозны… Требуйте чтобы бинарник завёлся на любой аппаратной платформе и любой ОС.
Linux — это всё таки только ядро. Ваше желание бинарной совместимости понять можно, но назвать его реальным вряд ли можно. Редкое приложение использует только вызовы ядра. Большая часть это библиотеки: GUI, Сетевой стек и прочая…

Подавляющее большинство библиотек далеки от идеала, поэтому рассчитывать фиксированное API просто не приходится… Это реальность, как бы она нам не нравилась…
Чтобы бинарник завёлся на любой платформе и ОС у меня есть байндинги к Java. Но вот сами байндинги мне уже сейчас приходится компилить под 10 комбинаций процессорных архитектур и ОС, и увеличивать это число мне не хочется.

Windows поддерживает функцию LoadLibrary ещё со времён 16 бит. И она есть в любом дистрибутиве Windows, даже в Windows RT для ARM и Windows CE для SH4.
в линуксе бывает либо совместимо, либо не совместимо — как раз два варианта. значит, все хорошо. :)
Расскажите мне существует ли единный менеджер пакетов для Линукс дистрибутивов, все ли дистрибутивы следуют стандарту FHS. Есть ли единный стандарт инициализации системы?

Я упомянул обратную стороны ПО с открытым исходым кодом (одной из них является проблема стандартизации, которая наглядная проявляется в UNIX и в том числе Linux). Нет нужды быть КО и перечислять все плюсы Linux — я и без Вас их знаю.

Ну а то что мой комментарий люто минусуют лишь укрепляет мою веру в то, что большинство людей — это сборище недалеких фанатиков.
А вы расскажите существует ли единый менеджер пакетов для закрытых операционок, есть ли между ними хотя бы жалкое подобие FHS? Есть единый стандарт инициализации системы?

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

Ну а минусуют, потому что UNIX — не опенсорс (rtfm, да), и, потому что вброс без обоснования — это троллинг. А на гитхабе написано откуда форкнуто, и проследить до начала — дело одной минуты. Ваш КО.
BSD порты вполне себе едины. Под винду тоже есть. Под мак. Зачем нужны всякие кривые аптгеты и прочий бред мне не ясно.
UNIX не open source? Прочитайте для начала хотя бы историю UNIX, а потом уже разглагольствуйте, уважаемый Капитан Очевидность. То что отдельные ветки стали закрытыми никак не делает все семейство UNIX таковым.

Закрытым ОС не нужны менеджеры пакетов, так как у них нет проблем с двоичной совместимостью.

Итак наш КО уходит гуглить и читать историю UNIX пока я завариваю чашку крепкого зеленого чая.
Еще раз для КО, который очевидно в танке: прочитайте историю UNIX и не выдергивайте предложения из Википедии. UNIX был и есть open source, если до Вас не доходит. Исходники первых версий UNIX свободно поставлялись в университеты и коммерческие фирмы для изучения и модификации. Именно в результате такой вот открытости и возникло семейство операционных систем UNIX от свободных до проприетарных. Если для Вас свободное распространение исходных кодов не есть open source, тогда нам не о чем говорить.
Ок, вы правы :) Не вижу смысла дальше спорить по этому пункту.

По остальным пунктам вопросов нет?
> Закрытым ОС не нужны менеджеры пакетов, так как у них нет проблем с двоичной совместимостью.

Запустите приложение из Мака под Виндой, пожалуйста.

А если без иронии, вы пытаетесь навязать один стандарт на все дистрибутивы, но каждую закрытую операционку рассматриваете отдельно. Это неправильно.

Ubuntu, Windows, RedHat, MacOS, Arch Linux — это 5 разных операционок. У них разные команды, разные разработчки, разная стратегия, разная философия, разное развитие. Или мы каждую смотрим отдельно, или мы пытаемся что-то объединять по надуманным признакам и получаем бардак в голове.
Бинарная совместимость в закрытых ОС ничем не лучше и не хуже, чем в открытых. Запустить x64 код на Win x32 невозможно, даже если проц 64-битный. Плюс все уже забыли про DLL Hell. К счастью, конечно же. Тут большой поклон инженерам Microsoft!
С Linux как раз всё в порядке. Именно благодаря своей открытости он сейчас на десктопах, серверах, в телефонах, планшетах, приставках, роутерах, медиаплейерах, телевизорах, NAS-ах, скоро наверное будет в тостерах и микроволновках :)
UFO just landed and posted this here
Самое время вспомнить про понятие «правильного бэкапа». Думаю Вы знаете что у хорошего админа уже давно пашут скрипты вместо него.
«Компьютерщик» просто обязан разбираться в ремонте собственно, компьютеров, принтеров, копиров, стиральных машин и пылесосов :)
Я думаю что дело не только в деньгах, но и реально в сообществе.
Было открыто 8 (!) одинаковых и ошибочных пулл реквестов, они были не большие, но это тоже время которое нужно потратить.
Недавно видел комментарии из серии «Вы нарушаете принципы правильной архитектуры», хотя автор камента мог бы молча открыть пул реквест, с правильной реализацией.
Наверно вот такие мелочи и раздражают больше всего.
Дело и правда не в деньгах. Дело в том что нужно уважать чужой труд.
Вам еще не попадись пользователи, которые пишут этим невозможно пользоваться или я не могу настроить супер-пупер фичу, которая была в коммерческом продукте, на который я пожалел денег.
И еще постоянно приписывают: «лучше бы я купил X, чем с вами общался».
Вы сами говорите о времени, чтобы подготовить пул реквест с переделкой архитектуры требуется время, которое, собственно, в данный момент даром не проходит.

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

Нельзя просто так взять и перелопатить ключевые модели. Автор комментария выразил свой «шок», по поводу того, как такое можно было допустить изначально. И, кстати, польза в этом комментарии очень большая.

Да, Дмитрию было не приятно его читать, но, уверен, в будущем он не будет допускать таких промашек. Никто не идеален и все прекрасно это понимают, однако это не значит что не нужно критиковать код друг друга.
Kool, Zzet, я понимаю о чем вы.
Но насколько я помню тред начался в каментах к диффам, и имел подобное содержание:
«Почему вы нарушаете архитектуру? _ссылка на крутую статью_».
Хотя это можно было сделать немного вежливей.
Например открыть issue, сделать ссылки на места в коде где эта архитектура нарушается, описать неверные модели, предложить варианты решения этих проблем, а уж затем давать ссылки на доп. ресурсы.
А так это выглядело как «Твой код гавно, читай как надо: _ссыль_».

Все вышеизложенное является моим мнением, и не является истиной в последней инстанции.
1. По поводу коммантария, содержимое его было скорее как «Почему вы игнорируете общепринятые правила хорошего тона?». Чем плоха критика? Или нужно писать «Ой, вы кажется тут плохо написали… что если сделать вот так?» Бред!

2. Профессионал всегад сразу поймет о чем речь идет (не упрекаю Дмитрия в непрофессионализме, его уровень весьма высок и заслуживает уважения.). Там был намек, что это должно быть не там. Давайте еще по каждому чиху будем создавать Issue. Комментирование кода на гитхабе как раз и предназначено для целей ревью кода. Замечания никогда не были приятными. Мы можем этого не делать, если это не по душе.

3.
image
+
image

4. Мы неоднократно присылали PR содержащие рефакторинг.

5. Мы постоянно пишем разработчикам с предложеиями о том, как можно сделать «по-другому». И часто делаем это в кулуарах. Написали в паблике — все, караул?

6. Мы адекватно воспринимаем, когда наши решения также критикуют.

7. Мы всегда готовы оказать посильную помощь. Об этом неоднократно сообщалось.

В чужом глазу соринку видно, а в своём и бревна не видать.


Парни, давайте не будем жаловаться на жизнь. Мужики собрались ведь.

Оперсорс хорош тем, что делает вас еще более крутыми спецами. Не смоотря на то, насколько круты вы сейчас.
Окей, давайте вместо жалоб сделаем проект лучше ;)
Так мы этим и занимаемся :))) И мы не жаловались )))
Возможно, я был черезчур резок, но очень обидно, когда внедрение нужной и масштабной фишки упирается в архитектурное ограничение.
Видимо если столько одинаковых и ошибочных реквестов делают, то видимо что-то не совсем очевидно в работе приложения и стоит это явно указать в мануале или в чём-то подобном.
Там видимо сразу над этими строками написано «note, the option says „without“ », но видимо никто не смотрит туда.
Посмотрел на мануал. На самом деле людей можно понять. Достаточно не очевидно, что «установить mysql» на самом деле означает «не устанавливать postgres». И когда сходу смотришь на команду, то это сбивает с толку.
Если у юзера есть понимание что и как это работает, то никакой неразберихи не будет, а если понимания нет — то зачем вообще лезть с советами и фиксами?
Если у юзера есть понимание что и как работает, то и мануал не нужен, т.к. он и так понимает. Да, перед тем как пулл реквесты делать нужно подумать и внимательно посмотреть, действительно ли оно «фиксит» что-то. Т.к. эти пулл реквесты были даже не протестированы, как я понимаю. Но наличие 9 одинаковых ошибочных пулл реквестов признак не только невнимательных юзеров, а также признак неочевидной документации. Есть анекдот на похожую тему:
У врача:
-Доктор у меня все болит, куда пальцем ни ткни-болит!
Доктор осмотрел пациента и сказал:
-Да у вас просто палец сломан!
Есть идеи как улучшить этот кусок документации? Feel free to contribute
Нет, идей про документацию нету. Только что переделать как-нибудь команду, чтобы для установки mysql не надо было писать postgres. Но это уже сложнее и вряд ли кто-то захочет вносить подобные изменение в уже устоявшийся процесс. Просто стоит признать, что да, тут есть проблемы. Но скорее всего она не сильно большая и тратить силы не её исправление вряд ли кто-то будет.
>>> Донейт тоже никто не отменял.

Не отменял, но по статистике, очень и очень мало Российских пользователей делают пожертвования в опенсорс проекты. Или вообще не делают, использовать используют, качать права качают, требуют новый функционал, какие-то фичи, а вот поддержать разработчика ФИГ.
Все это проверено на нескольких собственных открытых проектах, которые юзали и юзают тысячи людей.
Не только СНГ, весь мир очень не хотя поддерживает что-либо. Иногда выкладываю исходники, которые потом используют люди. Они не супер популярны, так как в основном это всё связано с микроконтроллерами. Единственный валидный сценарий, в котором дают денег, это просьба сделать что-то. На пример мой код работает с определёнными контроллерами моторов, а у человека есть контроллеры другой модели, которые он хочет использовать, но из коробки они не работают.

Тогда происходит следующее:
— «Сделайте поддержку контроллера ХХХ, пожалуйста.»
— «Извините, но мне это не интересно и у меня нет контроллера такого.»
— «Я заплачу.»
— «Хорошо, $50 и закажите мне один контроллер на адрес ...»

Чтобы просто так кто-то дал хотя бы $1 ещё не было. Хотя, с другой стороны никогда и не просил, а код всегда as is. В больших популярных проектах возможно и есть поток донейта, но их совсем не много, таких проектов.
UFO just landed and posted this here
А технически есть внятное пояснение как именно донейтить?
В западных случаях народ просто обычно публикует свой paypal email рядом с контактами.
У нас же paypal преимущественно невозможен.
Есть такая штука Flattr. Сильно упрощает процесс донейта. И вариантов ввода денег там множество и кликать по кнопке не сильно сложно.
Почему бы не поставить его кнопку куда-нибудь в описание проекта?
Там уже множество проектов донейтится, может не очень эффективно, но как говорится — «Даже путь в тысячу ли начинается с первого шага».
Зарубежом разработку очень активно поддерживают. Это я из своего опыта разделки андроида. На Российский рынок смотреть не имеет смысла в принципе: денег платить никто не хочет и рекламу люто-бешено ненавидят. А если бага какая, так вместо культурного письма с репортом — куча говна в адрес.

В итоге и софтина за любой косяк — говно, и реклама — говно, и цена в бакс говно, и донейты тебе не и сам ты говно.
Делать доступ к issue tracker за деньги.
???
PROFIT!
донейт хрен проведёшь через бухгалтерию организации
Да уж прямо уж так и хрен. Миллиарды проводят и скрывают, а тут не проведешь… смех.
Спасибо за GitLab! Использовали его на одном проекте: отличный продукт.
Спасибо за GitLab. Я, если честно, думал, что это продукт который делается в рабочее оплачиваемое время, а оказывается вон оно как.
Да, свой проект это ответственность.
Да куда ни глянь ответственность.
Даже водки накушаться вечером после работы — ответственность перед собутыльниками.
Неужели вы думаете, что из-за ответственности мы берестанем бухать^W писать код?
Никогда!
Водка, пиво, программизм укрепляют организм!
Писали, пишем, будем писать!
Как я понял, автор и говорит о том, что писать код остаётся куда меньше времени и уже не особо получается писать то, что хочется. Так что наверное ваш оптимизм актуален пока не появился свой популярный и востребованный open source проект.
Да, таковы реалии open source, а благодаря GitHub opensource стал в разы социальнее, что и лучше и тяжелее одновременно. Вам можно придумать способ монетизации, чем проще, тем лучше.
Мне кажется можно организовать форум, куда люди будут писать, а вам не всегда надо будет отвечать и всех туда перенаправлять сначала. С другой стороны, вам стоит понять, что один вы точно не справитесь, поэтому либо уменьшайте отклик на 1-2 недели, либо ищите помощников.
Тут как в писательстве, проще книги писать, чем их раскручивать и переживать ляпы, которые тебе шлют читатели. Тут как с троллями, нужно игнорировать часть входящей информации и заниматься кодом. Это же не социальная сеть, чтобы бесконечно общаться, это код для конкретных задач.
Технически — GitHub таки социальная сеть.
Пункт 4 относится не только к OpenSource а вообще ко всему, что бы вы не сделали для общества. Буть то программа, форум, игровой сервер, всегда будут жители из 4 пункта. Может кто знает как лучше их отсекать, учитывая что они сами настырные.
UFO just landed and posted this here
Во первых, это перестанет быть хобби, а превратится в работу, а во вторых, вы начнете губить проект запихивая в него дрянные фичи ради получения денег.

Сам участвую в opensource разработке. Поддерживаю автора топика, что у opensource проектов все эти минусы присутствуют, но выход есть — наращивать команду разработки. Так и эмоциональней легче, и всегда можно взять передышку.
UFO just landed and posted this here
А давайте не будем с порога отказывать людям в рациональности и прагматичности

или будем.
UFO just landed and posted this here
Спасибо! Идея отличная. Я сейчас в поиске способов увеличения доходов от моего проекта.

Для меня совмещения работы и хобби — это очень приятно, три года, полёт нормальный. Возможно, потому что хобби у меня разные.
Подобным методом не получится погубить проект — на «аукцион» можно выводить только нужные фишки.
UFO just landed and posted this here
Суть была в том, чтобы некоторые фичи внедрять при материальной поддержке.


Делайте платный саппорт. Не убивайте опенсорс.
UFO just landed and posted this here
Блин, это всё истинная правда. Тоже занимаюсь опен-сорс поректом Codeception. codeception.com

Была затронута тема неадекватных пользователей, создающих Issues, но больше всего меня бесят «гении». Которые приходят и начинают говорить: вот это лучше переименовать, тут сделать больше конфигцураций, добавить Dependency Injection, поменять структуру папок.

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

Поймите объяснить чуваку, сделавшего всё не по инструкции, намного проще, чем вести философские дискурсы с «гениями».

А вообще это клево, что у нас на Хабре так много опенсорс разработиков. Хотелось бы не терять связь и поддерживать друг друга.
Знакомо, но плюсов тоже достаточно.
Зря вы пиарите свой проект на Хабре, будет ещё больше пользователелей — ещё больше гемора с письмами и pull-requests. И вообще, мне бы ваши проблемы…
Это не пиар, дядя. GitLab освещался не раз на хабре. Это — отличный опенсорсный продукт, так что если бы даже это был пиар, то что плохого?

П.С. Много знакомых используют
UFO just landed and posted this here
Из-за этого свой open source проект я делаю прежде всего для себя. Тогда все встает на свои места, хоть и эгоистично =)
Что такое свой open source проект с точки зрения вашего времени?
* это время на прочтения пожеланий, баг репортов
* это время на разработку и поддержку кода
* это время на ревью пулл риквестов или патчей
* это время на доработку и фиксы после этих патчей
* это время на дискуссии и саппорт

Гм. А что будет в случае проекта с закрытым кодом?

* Читать пожелания и баг-репорты надо? Надо.
* Разрабатывать и поддерживать продукт надо? Надо.
* Время на дискуссии и суппорт уходит? Уходит.

У нас остаётся ревью пул-реквестов и их доработка. Что ж. Если это действительно в тягость, если хорошего кода присылают слишком мало, вы всегда можете вообще отказаться от принятия сторонних патчей и уведомить об этом весь мир, разве нет?
В таком случае почему бы не сделать этот проект своим full-time или поставить такую задачу)
что правда вы писали? мне нравятся исходники gitlab
У вас востребованный продукт. Монетизируйте, пусть приносит доход. Иначе в какой-то момент у вас сменятся приоритеты и проект встанет, лишившись главного разработчика. Не стремиться вывести на самоокупаемость — это риск для проекта, в некоторой степени безответственно по отношению к пользователям. Злобных взглядов от жены будет гораздо меньше, настроение улучшится, а следующий пост по теме будет называться «Чем хорош свой Open Source проект». Говорю по своему опыту: у меня меньше пользователей, но есть хорошая отдача, так что я могу заниматься разработкой full-time+ и никаких негативных эмоций по поводу open source не испытываю.
Как Вы монетизируете свой проект?
Подпишусь под каждым словом автора.
Наш проект — github.com/yupe/yupe
В данный момент стало немного легче, так как сложилась команда, которая наделена правами пушить напрямую в репозиторий без пуллов и прочего.
Gitlab очень крут. Надеюсь он будет развиваться и дальше. Да, установка сложная (хотя сейчас стало по-лучше, хотя бы по инструкции работает). А вот я на днях переносил 2.8 с одного сервера на 4.1 на другом. Вот это я да, помучался.

Так я к чему: СПАСИБО ВАМ ЗА ТРУД!
Сложная установка? Вы наверно не пробовали поднять gitorious :)
Сильный разработчик не жалуется, если тебе удалось написать востребованный проект, получай от него зарплату. У тебя сейчас реальный шанс перестать работать на дядю. В крайнем случае можешь перейти на более свободный график на основной работе, если тебя волнует стаж работы и запись в трудовой.
И да, спасибо за gitlab, но пора подумать, как получить с него профит.
не хотел чтобы это выгледело как жалоба. И дело не в деньгах и трудоустройстве.
Хотел все-го лишь описать с чем можно столкнутся и попросить сообщество быть доброжелательнее
Сообщество весьма доброжелательное, проблема в том, что основной фон создают недовольные всякой фигнёй. Довольных обычно не видно и не слышно, зато фон из жалоб стабильно давит на мозг. Надо научиться не обращать внимание на неконструктивчик и выцеплять только действительно ценные замечания.
У меня есть собственный проект, конечно там не 40+k установок, а только около 5k, но это всего-лишь за пол года, но при этом я этим проектом занят уже больше 2 лет и первый полтора года пилил и тестил его самостоятельно, когда было настроение, когда появлялись идеи или лишнее время, платил деньги дизайнеру, что бы он нарисовал интерфес для проекта, который был бы лучше чем то, что наваял я, я платил верстальщику, что бы он сделал это быстрее и лучше меня. И у меня небыло спонсоров, я платил из собственного кармана. В итоге… я не скажу что меня заваливают баг-репортами, я не разу не слышал:
«Сделай мне эту фичу. Иначе я буду использовать другой проект»
«Без данной функциональности этот проект бесполезен»
«Ты все делаешь не так. Отдай нам проект иначе ты его загубишь»
«Твой код отстой, мы напишем все намного лучше»
«Я все делал не по инструкции. Почему у меня ничего не работает? Ненавижу вас»
«Вы должны....»
«Я требую....»
И наверное это по тому что я в первую очередь писал и пишу проект _для себя_ и предлагаю его использовать тем, кто разделяет мой подход к этому вопросу, а для всех остальных есть миллион аналогов, к которым я не стыжусь их отправлять и никому собственный проект не навязываю. Наверное нужно проще относиться к «хоббийному» делу. Конечно на тебе есть ответственность перед людьми, которые начали использовать твой проект и тебе приходится фиксить баги, но т.к. я сам активно им пользуюсь и он мне необходим каждый день — фиксить баги мне приходится в любом случае, а полезные дополнения с удовольствием включаю в новые версии. И я доволен тем что делаю (а напомню — делаю уже больше 2-х лет в полном одиночестве).
Если что, я говорил о своём проекте TorrentMonitor, если что — велкам :)
Поддерживаю. Перечисленные фразы претензий, как будто у нас списали:

«Сделай мне эту фичу. Иначе я буду использовать другой проект»
«Без данной функциональности этот проект бесполезен»
«Ты все делаешь не так. Отдай нам проект иначе ты его загубишь»
«Твой код отстой, мы напишем все намного лучше»
«Я все делал не по инструкции. Почему у меня ничего не работает? Ненавижу вас»
«Вы должны....»
«Я требую....»


Плюс могу добавить от себя, то, что вспомнил:

«Продукт очень медленно развивается, пишите функционал быстрее»
«Бета версия очень сырая, тестируйте лучше, перед тем как выкладывать»
«У вас полно уязвимостей, я могу провести аудит незадрого»
«Слишком простой дизайн, добавьте (теней, бабочек, бекграундов, круглых кнопок)»
Очень знакомо. У меня коллега был — отличный кстати программист — но в какой-то открытой библиотеке нашел баг, засабмитил баг репорт и обложил х-ми разработчиков за то, что они его зафиксили только через несколько месяцев. На мой резонный комментарий о том, что он мог бы сам сделать пул-реквест с фиксом, тем более что он хорошо разобрался в проблеме, ответил — «нех-й мне делать, пусть другие сабмитят».
Коллеги! А может начать честно говорить:

«Сделай мне эту фичу. Иначе я буду использовать другой проект»

1.Нет.
2.Пожалуйста

«Без данной функциональности этот проект бесполезен»

Это ваше личное мнение

«Ты все делаешь не так. Отдай нам проект иначе ты его загубишь»

Форкайте.

«Твой код отстой, мы напишем все намного лучше»

Пишите

«Я все делал не по инструкции. Почему у меня ничего не работает? Ненавижу вас»

Делайте по инструкции. Мне всё равно как вы ко мне относитесь.

«Вы должны....»

Нет.

«Я требую....»

Платите деньги.
Добавил коммент в избранное. Теперь знаю как будет выглядеть FAQ к моему следующему проекту.
Спасибо вам.
алаверды: я — несерьёзно, но из личного опыта (P.S. для дополнения):

1. Мой проект — это продукт моих взаимоотношений с внешним миром и Вселенной вообще.
2. Он не обязан соответствовать Вашим ожиданиям, потому что у Вас другие взаимоотношения со Вселенной.
3. Он вообще в принципе, никому и ничего не обязан. Я могу прекратить его в любой момент, потому что передумал, устал, etc.
4. Если вы считаете иначе — платите деньги, это некоторый известный способ изменить обитаемую часть Вселенной к вашей выгоде.
5. Если вы не можете заплатить денег, use the brain, Luke, use the brain. Github открыт. Мудрому достаточно.
5.1. Убейте в себе лень — читайте код.
Отличные слова, идиотов везде хватает, не нужно обращать на них внимание. Особенно касается людей, которые высказывают свое эксперное мнение по поводу актуальности проекта. Про тот-же линукс говорили «не взлетит», «не нужен» и тп, а теперь даже у МС есть подразделение, специализирующееся на линукс-разработке.
Нахожусь по обе стороны баррикад…

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

Иначе получается как-то не понастоящему, программисты на любое возражение что что-то криво сделано, воспринимают всё в штыки, провоцируют конфликт:

«попробуйте другую ОС» (obnam), «никогда не работал с Ubuntu, не знаю почему не копилируется, подготовьте сами пакеты для Ubuntu» (obnam), «смените версию ruby, мне неважно что у вас segfault, тем более вы не знаете как его воспроизвести» (ruby timecop),
«это функция операционной системы кэшировать 5ГБ данных на диске, поэтому мы пишем все 5Гб каждую секунду, нас не волнует что вас диск не успевает» (bitcoin)

Люди писавшие это, буквально предвкушают как следующая их фраза будет «вы нам не платите денег, делайте fork пишите сами».

Юзеры же не могут честно сказать что программа им не нужна, по таким то и таким то причинам.

Ведь баг репорты — это важная функция получения фидбэка и тестирование. Юзеры, которые делают багрепорты иногда хотят помочь проекту (ведь они осознают что баг будет
исправлен очень не скоро, возможно они даже точно знают что не будут использовать эту программу никогда из-за этого бага, но хотят помочь автору).
Ведь не зря посылка issue на github (и не только) считается contribution.

Конечно если юзеры грубят, хамят, слишком эмоциональны в своих оценках, или им кажется что они на самом деле платят деньги, то можно им просто вежливо отказать в любом исправлении без объяснения причин.
Вот я примерно так же и отношусь :)
UFO just landed and posted this here
Есть люди далекие от понимания, что такое open source. Я к примеру зная, что это open source сразу же готовлю себя к багам и к тому, что их могут не фиксить. Всегда, когда есть вопросы к open source продукту, для меня ответ стандартный — это open source. Надоел баг? Возьми пофикси сам, если мозга хватит. Хочешь качества и поддержку хорошую? Используй платный продукт. А если уже решился юзать open source, то смирись со всеми проблемами, которые могут возникнуть.

ЗЫ автору конечно же совет вводить платную поддержку и возможно писать модули и плюшки платные для интеграции с корпоративным софтом.
У меня совершенно противоположный опыт.

Платный продукт:
1. если моя бага появляется у большинства, то она будет починена, и это плюс.
2. если я с маргинальным железом или в маргинальный ситуации, я вынужден осознать, что мою проблему в этом тысячелетии не починят — это не рентабельно для разработчика, даже если я тут загибаюсь. Это как раз ситуация «смирись».

Опенсорс:
1. если моя бага появляется у большинства, то она _скорее всего_ будет починена не мной. Ситуация хуже, но слегка.
2. во _всех_ остальных случаях есть только вопрос цены. Любую багу можно пофиксить или оплатить исправление, но некоторые баги дешевле терпеть чем фиксить. Это с одной стороны тоже «смирись», но это уже добровольное «смирись».
Плюсую. В случае коммерческого софта баг не починят, а когда починят появится новый.
В случае бесплатного opensource, помимо того что самому можно пофиксить, можно оплатить фикс, разработчки просто может починить баг сам, не подчиняясь законам экономики.
Согласен, но ведь в большинстве своем все-таки у платного продукта поддержка лучше и он стабильнее работает. Мы говорим о хороших платных продуктах.
Статья, мнэээ, живёт немного старыми представлениями. Ценнность Open Source выросла на ровном месте за последние несколько лет, причём за счёт телодвижений исключительно коммерческих компаний — последние вдруг внезапно захотели изменить систему лицензирования. Им мало, что вы однажды уже отдали денег за продукт, теперь они хотят, чтобы вы платили каждый год за саппорт. Переезд на новую мажорную версию у вас тоже будет платным, и вообще — плати, плати за всё, сука, патчи платные. А давайте мы вам втолкнём новую версию, в облаке — сколько пользуетесь, столько и платите — это нам выгодно, не вам. Мы хотим кушать, а вы должны оплачивать этот банкет, не забывайте!

Извините, мои собственные хотелки от Word 2010 не очень ушли от потребностей Office 2003, я по-прежнему не хочу оформления в виде скачущих муравьев, и прочей никому не нужной хрени. Ribbon interface — извините, мои тапочки, ржутъ.Реально интересный продукт в MS Office — Visio. У меня к нему личный интерес (но даже здесь они не могут сделать банальных вещей — типа масштабирования шрифта вместе с шаблоном), а вся остальная часть меня мало интересует.

И возникает вопрос — а может эти десятки тысяч индусов, уже сделали всё, что они могли, и их стоит направить на более полезные задачи — ракеты в космос запускать, с Марсом пообщаться, придумать новый проект водородного двигателя, etc.
На самом деле я дал ссылку на статью только по одной причине: там есть фраза, что 80% успеха продукта или сервиса — это маркетинг. Т.е. автор пишет, что он делает хороший продукт, но его не устраивает отношение пользователей и отсутствие денег. Другими словами, автор считает, что его проблемы — результат выбранной лицензии и принципов разработки. Но это не так. Собственно модель разработки (открытая или закрытая) не имеет значения.

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

Можно сделать так:

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

2) Новые фичи имеют низкий приоритет перед багами и техническим долгом.

3) Написать coding policy, краткую докцию по подсистемам в коде. Не принимать pull request, которые не соответсуют полиси.

В итоге — меньше багов, меньше вопросов, меньше pull request, качественнее pull request, и самое главное — меньше юзеров, вернее медленнее будет рост пользовательской базы (ведь им, так же как и в коммерческой разработке нужно побольше новых функций)

Вам решать что лучше.
Именно по этому мне нравиться на Open Source работать с немцами:
1.Адекватны.
2. Всегда логично и по полкам, разложат, почему они это делать не будут, или почему что-то делать всё-таки будут.
3. Небо должно упасть на землю, чтобы поменялся п.2
4. Баги обсасываются подробно, до потери вкуса. Фичи — тоже.
5. Если вам не надоело, то ваш код тоже закоммитят.
6. Никто никуда не торопится.
7. Продукт как-то происходит сам собой, причём никаких серьёзных телодвижений со стороны немцев не было замечено.
8. Все улыбаются.
Блин, так вот в чем весь секрет. То-то я думаю… Дело в том, что в KDE, во время разработки я очень и очень часто пересекаюсь с немцами. Их там завались. А потом когда с соотечественниками продолжаю работать, сразу чувствуется разница.

Спасибо :)
Сил вам! и нам… я с другом тоже собираюсь кой че написать…
сообщество, извмните, что медленно =)
Я думаю, в вашем случае нужно искать единомышленников и кооперироваться.
UFO just landed and posted this here
Какой автор? Какие пользователи? Вы вообще о чем? Вы делаете открытый проект, а подходите к нему как к закрытому. Сами виноваты.

Пример из жизни: делал opensource проект несколько лет назад — расширение greasemonkey для одного сайта. Много фич, людям понравилось, стали пользоваться. А потом забросил сайт и, соответственно, проект. Внезапно и совсем. Полная нулевая активность.

Через два года решил вернуться, пошел посмотреть что с моим детищем: форкнули! Два раза менялся главный, добавили кучу фич, пофиксили баги, портировали на хром. А я как раз недавно на хром перешел. Ноль затрат, куча пользы %)

Вывод 1: поддерживайте и пишите только то, чем сами пользуетесь. Никакого разделения на «разработчика» и «пользователя». Вы и есть свой единственный пользователь. Собственная нужда должна быть единственным мотиватором вашей опенсорс работы. Только так вы не сдуетесь, не устанете, не начнёте просить денег «кушать тоже надо!».

Вывод 2: Если кому-то нужна фича, а вам не нужна, пусть делает её сам или оплатит реализацию фрилансеру. Вы имеете право взяться только если вам тоже будет польза от неё. Никакого альтруизма. Бага висит 5 лет? Ну и пусть. Она же вам не мешает. Пусть чинят те, кому мешает. Пусть оплатят её починку.

Вывод 3: Если вам проект больше не нужен, бросьте его! Если он кому-нибудь нужен, он будет жить и дальше и без вас. В этом и есть суть opensource — от автора ничего не зависит. Проект должен уметь жить отдельно и самостоятельно ;)

Вывод 4: Если вы бросили проект, и он умер, значит он никому больше не нужен. Значит он должен уйти в архивы. Посмотрите вокруг, где-то должен быть новый блестящий аналог — идите туда.

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

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

Уважаемые «пользователи», Опенсорс — это не бесплатно, это можно. Каждая работа должна быть оплачена. Ваша выгода от опенсорса не в халяве, как многие думают, а в том, что вы можете заказать кому-угодно совершенно любое улучшение по рыночным ценам, а не терпеть монополию «хозяина».
Это просто другой подход. Результат — не есть то что обычно называют open source проектом.

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

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

Когда кто-либо где-либо ищет open source программу/библиотеку, это в подавляющем большинстве случаев, не то что он хочет.

Нет никаких гарантий (даже честного слова автора) что программа вообще работает или будет работать в будущем). Баги тоже можно не сабмитить — либо автор о них уже знает, либо никогда не исправит.

В нормальный open source проект «это» превратится только если кто-то его форкнет и не будет придерживаться этих принципов.
> А если проект сложный да и еще стал востребованным? Вот здесь все плохо.
Ну так забросьте свой проект, если вам так плохо. Вас что, кто-то заставляет?

P.S. У меня тоже есть свой open-source проект, которые приносит неплохие деньги, и который занимает все мое основное время. И мне это очень нравится.
Как способ повышения мотивации — наверное нужно действительно пробовать монетизировать. Попробуйте предложить вашим пользователям использовать краудфандинг для отдельных задач в трекере, например freedomsponsors.org, либо какую-то другую похожую систему. Заодно и узнаете, что действительно приоритетней для людей, которые используют ваш продукт.
Большое спасибо за гитлаб. Уже продолжительное время используем его у себя в фирме (закрытая инфраструктура), очень удобно.

Вообще, как и с любым объектом бытия, негатив оставляется людьми всегда, а позитивный опыт — лишь при удачной фазе Луны. Никто не пишет «работает хорошо» — это, дескать, так и должно быть. А вот если что не работает — об этом надо написать в твиттере, жж, на хабре, отправить письма всем разработчикам и сделать кучу issues.
За все время использования гитлаба (с версий 2.x), а Вам вообще ни разу не писал. Ни хорошего, ни плохо. Ну разве что на хабре советовал кому-то в комментах, но это не считается. Хотя были геморройные места, были баги, но видно же, что проект развивается, и развивается быстро — зачем пинать авторов, если они и так все делают хорошо?
А писать хорошее? Надо, да, но это как-то не автоматически приходит.

Мне кажется, правильную мысль оставил хабраюзер spiritedflow — делайте то, что нужно или хочется именно Вам. Недовольные могут написать свою реализацию, поправить Вашу или пойти в жопу. Мы ведь, когда покупаем ноутбук, хотим крутой экран, удобную клаву, аккумулятор на неделю, 40-ядерный проц, топовую видюху, вес в 1кг и цену в 5 тысяч рублей. Но в реальности все не так. и со своими желаниями мы идем в в замечательное путешествие. Так должно быть и с Open Source — все определяет рынок и производитель.
(теперь вы понимаете, что ощущал Христос, когда его в ответ на предложение вечной жизни прибили гвоздями к багтрекеру?)

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

Моё мнение — ищите добровольцев на помощь. Например, разбирать issue и pull request'ы. Я такое у цитрикса видел — один занимается PR (в смысле, общением с публикой), первичный отсев pull request'ов, а если что-то интересное — саммонит в pull request программиста.
>>теперь вы понимаете, что ощущал Христос, когда его в ответ на предложение вечной жизни прибили гвоздями к багтрекеру?

Это выходит за рамки обсуждения но мне хотелось бы поделится занятным на мой взгляд наблюдением.
Я заметил устойчивую тенденцию среди сограждан, вполне вероятно что это распространено среди всех людей в целом, но буду говорить только за то что видел лично.
В общем люди считают что им обязаны:
— Инициатор инициативы
Ты придумал ты и делай, а мы будем хаить/хулить
(сюда же можно приписать OpenSource и любительские модификации)
— Коммерческие структуры
Сволочи так мало положили бесплатного %bonus-name% — Без комментариев.
— Государство:
Они должны мне 50 тыщ платить, а не эти жалкие гроши…
(речь про пособие, слышал от человека который за 38 лет своей жизни ни разу не работал)

И конечно же классическое:
Во всем виноват %guilty-name%.(Путин/США/Либералы/Правые/Левые/etc, нужное подчеркнуть).
Я уверен вы знаете и получше примеры, и/или встречали таковые.

По сабжу.
Ко всем кто занимается OpenSource.
Делайте для себя, ориентируйтесь на свои потребности.
Если же хотите развития продукта, работать над продуктом, зарабатывать при помощи него деньги, то популяризируйте решение, делайте как можно больше гайдов.
Ничего так не привлекает разработчиков как реклама в примерах.
Пример типовая задача → решение при помощи вашего продукта.
Дайте людям working solution, а дальше…
Больше пользователей → больше контрибъютеров, это прописная истина но о ней забывают многие.
Двойное лицензирование(GPL/Commerce), платная поддержка, и будет вам «перечеркнутый текст»счастье«/перечеркнутый текст» монетизация.
Вы мой НИТЩЕ написали о наболевшем!!!
Что ж тут плохого? Проект популярный, форкайтесь и делайте коммерческим продукт с фичами, багофиксами и постоянным суппортом…
Sign up to leave a comment.

Articles