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

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


Проверка статуса

Я буду писать с точки зрения автора открытого кода. Отчасти потому, что именно здесь у меня больше всего опыта и я могу осветить проблемы, с которыми сталкивался сам. Но главным образом потому, что я считаю, что вопрос превращения контрибьютора в автора решается всего лишь одним коммитом.

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

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

Наслаждайтесь тем, что вас не раскрыли.

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

Здесь я склонен сказать: "Создайте что-то великое, и люди пойдут за вами", но это очень далеко от истины. Это как сделать имя в музыкальной индустрии: оно не имеет никакого отношения к жанру и качеству музыки, которую вы пишете. Это вопрос везения - раз, два, а потом еще пару раз. Потому что требуется огромное количество усилий, чтобы убедить людей посмотреть на то, что вы создаете, не говоря уже о том, чтобы принять это и внести в него свой вклад.

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

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

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

Это продукт, а не функция

Подумайте о проекте с открытым исходным кодом, который ассоциируется у вас с понятием "успешный". А теперь скажите, какова вероятность того, что этот проект:

  • Приобретен;

  • Принадлежит корпорации;

  • Служит точкой входа в платный продукт;

  • Выиграл лотерейный билет, получив достаточное количество добровольных спонсоров;

  • Любая комбинация вышеперечисленного.

В экосистеме JavaScript вероятность этого примерно равна 100%. И если вам кажется, что вы придумали исключение, то оно наверняка направляется в одну из этих сторон без вашего ведома.

Библиотеки с открытым исходным кодом являются продуктами.

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

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

Энтузиазм - это здорово, но из него не сваришь обед.

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

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

Деньги в открытом коде

Стоит мне упомянуть в одном предложении слова "деньги" и "открытый исходный код", как в комнате вдруг становится тихо. По какой-то ненормальной причине это негласное табу - ассоциировать то, что по закону и безгранично бесплатно, с такой грязной вещью, как деньги. Я, честно говоря, не понимаю этого. Как можно табуировать то, чего нет?

Потому что в open source нет денег

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

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

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

Планируйте свой выход

Чем раньше вы начнете думать о своих идеях как о продуктах, тем здоровее станет ваша жизнь в open source (и личная). И с любым продуктом стоит рассмотреть варианты выхода из него. В контексте открытого исходного кода это те варианты, которые позволят вашему продукту оставаться на плаву, а вашему творчеству - подпитываться.

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

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

Я бы с радостью порекомендовал вам конкретные вещи или дал бы вам направление, которого следует придерживаться, когда речь идет об устойчивом открытом коде. Но я не могу. Не потому, что хочу скрыть от вас секреты вселенной, а потому, что сам еще не до конца разобрался в этом (привет из лимбо!'). Мои проекты стагнируют, и я сгораю от того, что трачу на них так много свободного времени. Как только я разберусь во всем этом, я напишу еще одну статью, а пока лучшее, что я могу сделать, это предупредить вас и надеяться, что вы будете лучше подготовлены, чем я.

Установите здоровый баланс

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

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

Честно говоря, я бы порекомендовал просто установить временные ограничения на деятельность с открытым исходным кодом, которую вы делаете в течение дня. "Так, сейчас 17:00, значит, у меня есть полтора часа, чтобы внести свой вклад в открытый исходный код", - вот с чего начинается хороший баланс. Конечно, вы можете позволить себе больше времени, но именно идея четких границ деятельности делает ее здоровой. Не работайте по вечерам и ночам. Не забывайте о друзьях и любимых. Поверьте, они важнее всех кодов в мире.

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


Заключительные мысли

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


Artem Zakharchenko - автор библиотеки для тестирования MSW с 15К звезд на GitHub.

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


  1. MAXH0
    26.03.2024 04:26
    +16

    Главная проблема открытого и свободного кода в том, что базовые механизмы манетизации кода в современном обществе основаны на копирайте. В мозг вбивается стереотип - открытое значит бесплатное. Причем бесплатное для всех. И для простых пользователей и для корпораций. ИМХО, чем больше будут распространены лицензии ограничивающие коммерческое использование без согласия автора - тем лучше. Желательно липкие лицензии.

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

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

    Абсолютно мое ИМХО. Не притендующее на какое то навязывание.


    1. regs
      26.03.2024 04:26
      +1

      Это противоречит самой религии FOSS


      1. MAXH0
        26.03.2024 04:26
        +3

        Современному изданию этой религии из которой исключили свободу (libre)...

        Столман неоднократно заявлял, что «Речь идет не о бесплатных программах, а об их свободном, открытом распространении». Т.е. о том, чтобы авторское право не использовалось как инструмент цензуры.


    1. MaNaXname
      26.03.2024 04:26
      +1

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

      Ну чисто имхо. Я могу ошибаться но разве тут не проблема яйца и курицы? Если корпоративный сектор не будет использовать на своих облаках продукт - то будет ли он популярен? Например кому нужна монга - если на авс или ажуре ее нет? Да ее будут юзать кто-то на своих проектах, но не так масово. С другой стороны согласен что как-то обидно что тот же амазон например получает дуньги за продукт который они не разрабатывали. Сложно это все, но вариант "все запретить" мне не кажется выходом из ситуации


      1. MAXH0
        26.03.2024 04:26
        +4

        "все запретить"

        это точно не выход. Это цензура... Вопрос в другом [Сейчас я займусь своим любимым делом и начну цитировать Столмана.]

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

        Обратите внимание, критерием свободного ПО является та свобода которую она дает пользователю. Не открытость, не бесплатность, а именно свобода. Свобода пользователя. а не владельца программы или авторских прав на неё.

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

        RMS предлагал 4 свободы: запускать, изучать, распространять и вносить вклад. Достаточно ли их сейчас чтобы обеспечить свободу? К сожалению нет. Их было достаточно в 88 году, когда программами торговали. НО недостаточно сейчас. Тот же Амазон извлекает прибыль не продавая программы, а пользуясь их несвободой манипулируя пользователями и их данными.

        Amazon Kindle - вредоносное ПО. Она наносит удар по исконным свободам читателя - например, по свободе покупать книги за "наличку" и сохранять инкогнито.
        Я, кстати, только так и покупаю книги. Amazon же заставляет пользователей выдавать себя. Они там, в Amazon, знают, кто какие книги прочитал. Это удар по правам человека, так быть не должно! Далее, у нас есть свобода дать книгу другу или даже продать ее. Из-за "цифровых наручников" Amazon мы так поступать больше не можем.

        Фактически, выпуская софт под лицензией позволяющей её использовать компаниям типа Амазон, программист становится участником легализованного преступления. Когда, я говорил об ограничении лицензий для корпоративных продуктов, я говорил о том, чтобы автор мог пресечь злоупотребелние лицензией, а не о том, чтобы продавать свои убеждения за деньги...


        1. MaNaXname
          26.03.2024 04:26

          Со всем согласен, но тут остапа понесло

          Amazon Kindle - вредоносное ПО. Она наносит удар по исконным свободам читателя - например, по свободе покупать книги за "наличку" и сохранять инкогнито.

          Такая возможность до сих пор есть. Можно прийти в книжный магаз и за наличку купить книгу и остаться инкогнито. А потом ее дальше отдать или продать.
          Но, а что делать в мире где я например уехал в другую страну на месяц (командировка например) и сходил на конференцию а там сказали - есть такая классная книга. Ждать возвращения? заказывать доставку (при этом не амазон будет знать что вы купили а 2 таможни 2 государств)? Или купить онлайн на читалку и прочесть за 2-3 вечера?


          1. MAXH0
            26.03.2024 04:26

            Попросить у друга электронную версию и прочесть...

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

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

            Вопрос выбора - это всегда вопрос ценностей.


            1. MaNaXname
              26.03.2024 04:26

              куплю другу. а если уже не продают - дам на своем почитать.


              1. MAXH0
                26.03.2024 04:26

                Вопрос выбора - это всегда вопрос ценностей. Для Вас легитимность важнее свободы.


                1. MaNaXname
                  26.03.2024 04:26

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


      1. SpiderEkb
        26.03.2024 04:26
        +1

        Правильная тема на самом деле.

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

        Но тут сразу встает вопрос о котом я постоянно говорю - крупный энтерпрайз требует поддержки продукта. И готов за нее платить. Т.е. продукт, продолжающий оставаться открытым (в целом, для энтерпрайза открытость кода - это плюс т.к. любой чужой код там проходит внутренний аудит, даже если речь идет о вендорах, разрабатывающих что-то по заказу - приемка поставок идет на уровне исходников), уже перестает быть бесплатным. Как на уровне поддержки, так и на уровне заказа новых фич.

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


        1. MAXH0
          26.03.2024 04:26

          А зачем? Зачем сообщество должно бесплатно делать для кровавого энтерпрайза продукт удовлетворяющий его запросы? Притом что для большинства проектов сообщества эти требования избыточны...

          Крупный энтерпрайз вполне осознано использует ОТКРЫТЫЙ код, не только для прозрачности, но и для распределения затрат на разработку и для гарантий того, что в один момент не вырастет стоимость лицензии раз так в 100500. Этот код поддерживают программисты на зарплату.

          НО если код разработал инди разработчик, то скорее всего энтерпрайз код отожмет бесплатно. Исключения редки. О чем Вы, в общем, и писали ниже. И зачем тогда инди разработчикам бесплатно работать на энтерпрайз?

          В статье автора описана ситуация именно инди разработчика в ОТКРЫТОМ коде.


          1. SpiderEkb
            26.03.2024 04:26
            +1

            Зачем сообщество должно бесплатно делать для кровавого энтерпрайза продукт удовлетворяющий его запросы?

            Никто никому ничего не должен.

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

            А если энтерпрайз вдруг возьмет ваш код, то сначала он должен сделать его полный аудит, потом привести в соответствии со своими НФТ, провести полный цикл тестов (включая нагрузочные и интеграционные) и потом самостоятельно поддерживать.

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

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

            Тут как с наукой - есть фундаментальные исследования, по ним публикуются статьи в открытом доступе - опубликованные идеи и результаты доступны для использования всему сообществу.

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


            1. MAXH0
              26.03.2024 04:26
              +1

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


              1. MaNaXname
                26.03.2024 04:26

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


                1. MAXH0
                  26.03.2024 04:26

                  Договариваться можно только людям друг с другом, а не с крокодилом.

                  Человек руокводствуется воспитанием, моралью и прочими субъективными качествами. Корпорации руководствуются только собственной прибылью.


                  1. SpiderEkb
                    26.03.2024 04:26
                    +1

                    Корпорации принадлежат людям и управляются людьми.

                    Просто люди разные бывают. Есть те, с которыми можно договариваться, а есть с которыми нельзя.

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


                    1. MaNaXname
                      26.03.2024 04:26

                      Есть теория, что на вершину власти прививаются люди, обладающие психопатическими чертами

                      ничем не потвержденная. На самом деле основное отличие мэнеджеров от неменэджеров с каким ресурсом они работают и какие задачи им ставятся. Поверьте - управлять людьми - это не такая простая вещь как кажется. У меня знакомый имеет 100+ людей в подчинении в ит компании. Старался сделать процессы и правильную культуру. И? все равно есть куча людей которым все не то и не так. Прям ноют и требуют как дети. И с таким количеством людей невозможно к каждому относится по приятельски и сюсюкаться. Потому что сразу начинают абузить это.
                      Но компании разные бывают и ваш опыт может отличаться от моих знаний и опыта


                      1. SpiderEkb
                        26.03.2024 04:26

                        Речь не о менеджерах. Менеджер - это просто наемный работник.


    1. Nick_Maverick
      26.03.2024 04:26

      Хм, а почему бы не попробовать дать аналогию, скажем, из мира искусства. Ар брют - ближайшая аналогия IMHO. Тогда становится ближе позиция я сделал произведение, и у меня нет настроения на сопровождение оного. У арт объектов уже есть сложившаяся практика авторских прав, прав на заимствование, а главное понимание что изменить объект требует усилий и настроения.


  1. Yukr
    26.03.2024 04:26
    +1

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

    Думаю, структура, если и появится, может скатиться на чисто коммерцию, как описано у вас в проблеме 3.

    Но вы сами практически сформулировал решение, почти как у Пушкина )):

    "Не продаётся софт открытый,

    Но можно софт саппорт продать" (простите Александр Сергеевич!)

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

    И полностью согласен - для компаний использование только с согласия автора.


  1. gun_dose
    26.03.2024 04:26
    +3

    Чтобы open source приносил создателю выгоду, вовсе не обязательно монетизировать проекты. Если сам по себе проект является, допустим, какой-то библиотекой, которую используешь в своей работе, то такой проект можно развивать в рамках своей основной профессиональной деятельности. И когда эта либа используется, скажем в 10 твоих рабочих проектах, то довольно удобно, что совершенно посторонние люди помогают тебе находить и исправлять недочёты. Ведь тем самым они улучшают и те твои 10 проектов, за работу над которыми тебе платят.

    Однако это работает ровно до той поры, пока ты не сменишь работу или стек. У меня сейчас три таких проекта, надо, наверное, кому-то отдавать, потому что даже если надо потратить каких-то полчаса на это, я буду две недели собираться. И даже если бы у этих проектов была какая-то монетизация, вряд ли бы это поменяло моё отношение, т.к. уровень интереса стал настолько низок, что я лучше несколько часов погуляю или просто побездельничаю, чем буду тратить время на это, даже за 50/100/200$ в месяц.

    Предполагал ли я такой расклад, когда начинал эти проекты? Нет конечно. Я думал, что они будут развиваться, станут популярными, буду вписывать их в резюме. Но увы. Поэтому сейчас я с удовольствием делаю коммиты в чужие репозитории - это тот формат работы, который меня устраивает на 100% и не доставит головную боль в будущем. А заводить свли проекты - спасибо, наелся.


    1. Areso
      26.03.2024 04:26
      +2

      Ведь тем самым они улучшают и те твои 10 проектов

      Или не улучшают, если пользователи приносят свои корнер кейсы, которых у вас нет


      1. alan008
        26.03.2024 04:26

        Ага, а за ними ещё разгребай баги в их глючных PR


      1. gun_dose
        26.03.2024 04:26
        +1

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


  1. SpiderEkb
    26.03.2024 04:26
    +2

    К сожалению, в большом бизнесе нет принципа "не нарушать". Есть принцип "выбрать что дешевле - не нарушать, или нарушить и заплатить штраф".

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

    Второй момент- поддержка. Лично я занимаюсь разработкой того, что в значительной степени является missio critical для компании. И тут любое изменение кода влечет за собой полный ретест, включая нагрузочные и интеграционные тесты. А любой баг в работающем продукте оформляется как "дефект промсреды" и имеет наивысший приоритет. Т.е. все бросить и кинуться исправлять.

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


    1. gmtd Автор
      26.03.2024 04:26
      +3

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

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


      1. SpiderEkb
        26.03.2024 04:26

        Есть реальный опыт?

        А теперь в реальной ситуации. Вы В РФ. И вдруг обнаруживаете что в США IBM (который полностью ушел из РФ) что-то ваше использует без вашего ведома. Ваши действия?

        У IBM тоже юридический отдел неслабый...


        1. gmtd Автор
          26.03.2024 04:26
          +2

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

          Это не так страшно, как кажется

          У "IBM" кроме неслабого юротдела есть еще и драгоценная репутация, на которую можно давить


          1. MAXH0
            26.03.2024 04:26
            +2

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

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


            1. SpiderEkb
              26.03.2024 04:26
              +3

              Плюс, как я упомянул, политика "дешевле нарушить и заплатить если вскроется" для крупных корпораций.

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


    1. aleksandy
      26.03.2024 04:26
      +1

      И что будет, если тут использовать опенсорс?

      А что поменяется, если это будет не опенсорс?

      Если вышло обновление - заниматься ретестами каждый раз?

      А при чём тут опенсорс? Ретест для mission critical штук нужен при любом изменении, нет?

      Если обнаружен баг - отправлять разработчику багрепорт и ждать от него что он все бросит и кинется его исправлять?

      Это как раз ситуация с вендорским решением. Если код открыт, то у тебя -всегда- как правило есть возможность залезть в исходники, поправить и даже отправить фикс в апстрим.


      1. SpiderEkb
        26.03.2024 04:26

        А что поменяется, если это будет не опенсорс?

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

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

        Разница прежде все в том, что или над продуктом работает 50 человек и это их оплачиваемая работа, или это один человек и для него это хобби. Просто разные возможности.

        Ретест для mission critical штук нужен при любом изменении, нет?

        Да. Но когда это наш код, мы всегда знаем что никто кроме нас в него не залезет и ничего не поменяет. Никто не добавит туда никаких фич, никто его не отрефакторит. Только мы и только когда это нам реально необходимо.

        Здесь такое возможно только если мы в какой-то момент форкнулись к себе и теперь сами с этим кодом работаем. Чтобы не вышло как в линуксе - каждый день по 3-5 каких-то обновлений прилетает. При том, что реально там нового ну самую чуть.