Бесплатный PVS-Studio для всех, кто развивает открытые проекты на GitHub?

Предлагаю вниманию прототип статьи под названием «Бесплатный PVS-Studio для всех, кто развивает открытые проекты на GitHub». Прошу подойти к данной теме конструктивно и высказывать предложения и критику по делу. Интересно мнение, насколько предложенный вариант разумен и удобен? Что можно улучшить? Какие дополнительные ограничения можно добавить? Кто бы из вас воспользовался/не воспользовался и почему?

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

Бесплатный PVS-Studio для всех, кто развивает открытые проекты на GitHub

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

Мы помогаем делать код открытого программного обеспечения более качественным и надёжным. Хотя, благодаря нашим публикациям, в открытых проектах было исправлено более 10000 ошибок, этого явно недостаточно. Наша команда физически не способна регулярно проверять тысячи открытых проектов. Поэтому в 2016 году мы предложили бесплатный вариант лицензирования PVS-Studio. Единственное условие — наличие в коде комментариев специального вида. Подробнее про этот вид лицензирования рассказано в статье "Как использовать PVS-Studio бесплатно".

Идя навстречу пожеланиям GitHub сообщества, мы решили предоставить возможность бесплатного использования PVS-Studio всем, кто участвует в развитии открытых проектов, размещённых на GitHub.

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

  1. Перейти на страницу: ___;
  2. Ввести ссылку на свой GitHub профайл;
  3. Ввести e-mail, на который будет прислан лицензионный ключ;
  4. Отправить запрос на бесплатную лицензию.

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

Ключ является индивидуальным и может быть использован только для проверки открытых проектов, опубликованных на GitHub. Бесплатная лицензия не распространяется на зеркала проектов.

Старый вариант бесплатного использования анализатора при добавлении в код комментариев остаётся в силе. У этого режима есть свои преимущества. Например, он может использоваться студентами для проверки своих проектов без необходимости выкладывать их на GitHub. Более того, предыдущий вариант позволяет использовать анализатор вообще в закрытых проектах.

Условия

Поддержка бесплатных пользователей осуществляется посредством ответов на сайте StackOverflow. Более подробно это условие описано в статье "Как использовать PVS-Studio бесплатно" (см. главу «Дополнение: Поддержка»). Хотим обратить внимание, что StackOverflow не является багтрекером. Давайте обсуждать там вопросы, связанные именно с работой анализатора, режимами его работы и так далее. Чтобы проинформировать нас о явном баге, просим по-прежнему писать нам в поддержку.

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

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

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


  1. begemot_sun
    04.12.2018 12:19
    -7

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


    1. begemot_sun
      04.12.2018 21:06
      -5

      А кто потрудится объяснить минусы?


    1. chiliec
      05.12.2018 08:19

      Гитхаб — стандарт де-факто для опенсорса.


  1. datacompboy
    04.12.2018 12:21
    +1

    Что с битбакет? В принципе, равноправный конкурент.

    Как анализатор будет детектировать что это гитхаб-проект, по .git/config?

    Требуется ли включение в README.md ссылка на анализатор?


    1. Andrey2008 Автор
      04.12.2018 12:29
      +1

      Пока точных ответов на эти вопросы у меня нет. Для этого я и начал обсуждение. :)

      Битбакет и т.д., пока нет. Посмотрим, как с GitHub пойдёт. И будут ли конкретные запросы про другие системы.

      Как детектировать? Изначально подразумевается честность, но Вы написали интересную идею про .git/config и про README.md! Спасибо. Надо подумать.


    1. qark
      04.12.2018 13:37

      Что с битбакет? В принципе, равноправный конкурент.
      И гитлаб.
      Если будет битбакет, то в нём есть проекты не под git. Например, Pidgin. К ним .git/config, очевидно, не применим.


  1. Nomad1
    04.12.2018 12:30

    Перейти на страницу: ___

    К сожалению, отказывается открываться. Наверное, забыли https в начале :)


    1. MikailBag
      04.12.2018 13:07

      кстати, является ли ___ корректным TLD?


      1. Nomad1
        04.12.2018 13:12

        Он не входит в список, который ведет IANA, значит не является. Также не является IPv4 и IPv6 адресом или его частью. А вот можно ли его прописать в собственный DNS или localhost я не знаю. Даже если можно, то навряд ли нужно. :)


        1. EvgeniyRyzhkov
          04.12.2018 13:18
          +2

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


  1. TirTal
    04.12.2018 14:08

    Меня лично интересует версия для C#.
    В какой-то мере было бы достаточно сервиса: ввел в форму открытый репозиторий, получил на почту отчет об анализе.
    Или в виде дополнения/расширения/плагина к Jenkins/Travis/Azure DevOps.


  1. SokoloffA
    04.12.2018 14:11

    А лицензия получается на пользователя+проект или на проект?
    Т.е. если я запросил лицензию на свой проект, могу другие контрибьютеры пользоваться? Для проектов над которыми работает десяток человек, хотелось бы иметь одну лицензию для всех. И класть ее в git. Я не говорю про KDE, а про проекты среднего размера.


    1. Andrey2008 Автор
      04.12.2018 14:11

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


      1. SokoloffA
        04.12.2018 14:31

        Т.е. я получив лицензию смогу проверять любые свои проекты с гитхаба? А как узнать, что это мой проект? А проект в который я коммитил 10 лет назад? А Clang, Chromium и KDE я не могу, а если я туда коммитил? Вопросов возникает больше чем ответов.
        Возможно, что привязаться к проекту будет проще:


        1. Берем из git/config url
        2. Добавляем дату окончания, подписываем это все вашим приватным ключом. Как результат имеем лицензию на этот проект до определенной даты.
        3. Пользователь пушит файл лицензии в корень проекта.
        4. Любой человек может проверять этот, и только этот проект.


        1. Andrey2008 Автор
          04.12.2018 14:37

          И свои и чужие.


      1. domix32
        04.12.2018 16:16

        А если приватный репозиторий?


        1. Andrey2008 Автор
          04.12.2018 16:25

          Речь шла про открытые проекты. Да, можно нарушить. Так это и сейчас можно сделать :).


  1. Atterratio
    04.12.2018 14:22
    +2

    Мне кажется вы не с той стороны зашли. На мой взгляд вам для развития такой темы надо уходить в SaaS и делать веб сервис на подобие Travis или CodeCov. Чтобы можно было открытый проект добавить на сайте комит хукки прилетали и были открыты метрики. Соответственно закрытые проекты через него проверялись тихо и за денюжку. И конечно же без привязки к определённой платформе.


    1. bormotov
      05.12.2018 01:03

      про SaaS у них уже спрашивали, уверен, что неоднократно, как-то всё с этим никак


    1. Goodkat
      05.12.2018 02:10

      Ага, так и отдали свои исходники кому-то на проверку?
      Только локально, закрыв предварительно доступ в интернет!
      Хотя для открытых проекто такое подойдёт, конечно, но зачем тут SaaS, если и так бесплатно?


      1. Newbilius
        05.12.2018 07:30

        Ну так кто-то использует платные аккаунты на гитхаб, т.е. есть люди, которые готовы "отдать исходники".


        1. EvgeniyRyzhkov
          05.12.2018 08:57

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


          1. 0xd34df00d
            05.12.2018 19:29

            Здравствуйте, я 0xd34df00d и я использую платный аккаунт на гитхабе.

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


          1. Atterratio
            06.12.2018 21:37

            По всей видимости уровень проектов над которым мы работаем очень разный. Я как минимум работал над двумя проектами один из которых использовал закрытые репозитории bitbucket а другой GitLab. Это уже не говоря о некоторых других проектах которые использовали эти решения на собственных серверах, что тоже может вызвать жжение определённых точек у людей помешанных на предотвращении утечек кода.
            Да и в принципе было бы странно трястись над этим в век AWS головного мозга и прочих Azure.
            И да я тоже понимаю как и другие комментаторы что это на порядок сложнее чем поддержка уже существующего продукта, но я говорю о том как это работает в экосистеме GitHub и подобных и к чему уже привыкли как многие из тех кто работает над открытыми проектами в этой экосистеме так и над закрытыми.


    1. alan008
      05.12.2018 10:03
      +1

      Поддержка онлайн сервиса на порядок сложнее поддержки оффлайн продукта, это и доступность 24/7, и бэкапы, и резервирование каналов/хостинг. Всё это большие затраты. Окупятся ли они, сказать сложно, а цена "попытки" высокая. Легко говорить "вот вы бы лучше сделали".


      1. EvgeniyRyzhkov
        05.12.2018 10:05
        +1

        Спасибо за комментарий. Приятно, что хоть кто-то это понимает.


        1. 4144
          06.12.2018 05:24

          Вместо онлайн сервиса можно сделать docker образ. Который при запуске будет проверять лицензию или открытость проверяемых исходников. Т.е. оно как бы и «онлайн» сервис, т.к. беспланых CI сейчас много, но и от вас требуется только поддерживать этот образ.

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


          1. EvgeniyRyzhkov
            06.12.2018 09:00

            Спасибо за упоминание Докера. Мы уже около полугода работаем с этой технологией и скорее всего в следующем году выкатим такое решение как Вы описали.

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


  1. SokoloffA
    04.12.2018 14:30

    del


    1. Andrey2008 Автор
      04.12.2018 14:37

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


      1. SokoloffA
        04.12.2018 14:52

        Я не пытаюсь найти способ вас обжулить. Тут вопрос не про обход защиты, а про применимость информации и патчей. С моим персональным проектом все понятно. А с общественными — серая зона. Вот имею я от вас лицензию на убийство багов, проверил я, скажем, LXQt. Вот что я имею право делать с этими знаниями? Могу я коммитить патчи? А писать в комментарии, что это исправление ошибки найденной вашей программой. А переслать сообщение из PVS автору кода в котором найдена ошибка?


        1. EvgeniyRyzhkov
          04.12.2018 14:53
          +1

          Честный ответ — «мы не знаем». Ограничениями мы хотим защитить себя от (условно) бесплатной работы на Google и Apple. Подскажите как это сделать?


          1. SokoloffA
            04.12.2018 15:01

            Может ограничить размер проекта?


            1. EvgeniyRyzhkov
              04.12.2018 15:02

              Не понятно как это сделать.


              1. mapron
                04.12.2018 20:04

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


                1. Nick_Shl
                  04.12.2018 20:10

                  А что комментарии? Написать утилиту которая будет комментарии перед проверкой вставлять, а после проверки удалять — час от силы с перерывами на кофе.


                  1. MikailBag
                    05.12.2018 20:15

                    Более того, утилита которая вставляет комментарии — уже есть, и ее написали сами PVS.


                    Т.е. что-то вида
                    cp -r ../src.
                    How-To-Use-PVS-Studio-FREE.exe.
                    rm -r .


            1. 0xd34df00d
              04.12.2018 16:49

              У меня есть личный проект на где-то между полмиллиона и миллионом строк. Интересно, он попадет под ограничение?


          1. 4e1
            04.12.2018 15:11

            Брать урл из .git/config, посылать запрос к вашему серверу для проверки — тот или не тот это проект. Вы же сами говорили, что кампании против вашего решения в виде «saas» т. к. не хотят что-либо куда-либо отправлять, в больших кампаниях подобные запросы могут запросто запретить отдел СБ. А даже если и разрешит — то есть проверка с вашей стороны по урлу.
            С учётом, что подобной акцией вы полагаетесь больше на доверие, мне кажется такой механизм вполне достаточным.


  1. Gryphon88
    04.12.2018 14:35

    По прежнему нужно писать до license string «Проверено великим бесплатным PVS-Studio»?
    UPD по совету Andrey2008 перечитал статью. Как понял, возможны 2 варианта: старый, с комментарием, и новый без, но с новой процедурой получения бесплатной лицензии и обязательной публикацией на GitHub


    1. Andrey2008 Автор
      04.12.2018 14:40
      +1

      В статье есть ответ на этот вопрос. :)

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


      1. Aingis
        04.12.2018 15:43

        Не все могут ставить минусы. (Ответ в статье видел, и вообще мимокрокодил.)


      1. alan008
        05.12.2018 10:06

        В статье новый способ и правда туманно описан.


  1. Dj_Art
    04.12.2018 14:52

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


    1. SvyatoslavMC
      06.12.2018 22:27

      Посмотрите наш список проверенных проектов, отсортированных по датам и типам. Можно ощутить то, что Вы описали)

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


  1. ZEEGIN
    04.12.2018 15:21

    Вы же знаете о сонаре? У них отличная политика, есть бесплатное использование, есть платное. В платной разумные ограничения которые нужны кровавому энтерпрайзу.
    https://www.sonarqube.org
    https://sonarcloud.io


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


  1. Nomad1
    04.12.2018 15:43
    +1

    В целом, мне весьма нравится идея с GitHub. Например, это очень удобно, чтобы узнать, подходит ли нам PVS-Studio для приватных проектов — натравить его на свой же оупен сорс, заодно может какие-то баги исправить. Конечно же, сейчас можно попробовать то же сделать и с триал/бесплатной версией, но не очень удобно и не совсем показательно.
    В итоге, и мир станет лучше, и вам клиенты добавятся.
    Плюс, как писали выше, иметь в GitHub проекте баджик «проверен PVS-Studio» это очень круто, а заодно и мотивирует с каждым коммитом проверять заново.


  1. domix32
    04.12.2018 16:15

    Считаются именно открытые исходники или под свободными лицензиями? Как будут детектиться зеркала?


    1. Andrey2008 Автор
      04.12.2018 16:40

      Считаются именно открытые исходники или под свободными лицензиями?
      Исходные коды должны располагаться на GitHub. Лицензия — любая.

      Как будут детектиться зеркала?
      Наверное, никак :). Это просто нарушение лицензии и так делать нельзя.


      1. mapron
        04.12.2018 20:06
        +2

        «Лицензия — любая.» ну вот мне кажется опасное дело.
        Тот же Microsoft, на который вы не хотите работать, условно, выложит исходники Windows под лицензией «вообще ничего нельзя, только читать, даже копировать исходники нельзя». Утрирую намеренно. Какой-то ящик Пандоры получится. Может хотя бы остановиться на одобренных OSI?


  1. 0xd34df00d
    04.12.2018 16:52
    +1

    Одобряю такой подход, особенно что в шапке ничего писать не надо.

    В принципе, например, интел делает так же — как раз на днях заполнил у них форму на сайте с почти такими же данными, через пару дней прислали лицензию на год.


  1. Portnov
    04.12.2018 17:33

    Как вариант, можете подумать о совместном проекте с Github. Github вот с некоторого времени сообщает, если видит известные уязвимости в зависимостях проекта (и включать это никак не надо, оно само работает). Можно было бы по аналогии туда статический анализ прикрутить (вариант: только к enterprise-аккаунтам гитхаба, с рекламными акциями «в декабре проверяем для всех аккаунтов» время от времени).


  1. johnfound
    04.12.2018 18:05
    -1

    Вообще то, мои проекты на ассемблере, а мне кажется что PVS-Studio FASM не поддерживает (а неплохо было бы). К тому же, я использую fossil, а не git.


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


    Раз решили делать, то делайте честно!


    1. EvgeniyRyzhkov
      04.12.2018 20:39
      +10

      Всегда будут люди которые на предложение бесплатной (!) лицензии обвинят тебя в нечестности…


      1. johnfound
        05.12.2018 01:35
        -1

        В несправедливости! Нечестность, это другое.


        А кстати, бесплатность, это не такое благо, которое перекрывает несправедливость и дискриминацию. По крайней мере в моей системе ценностей.


        Но вас я тоже понимаю. Халява, она такая, халявная.


  1. hddn
    04.12.2018 19:05

    Для Java, надеюсь, такие же условия будут?


    1. Andrey2008 Автор
      04.12.2018 19:05

      Да.


  1. Nick_Shl
    04.12.2018 19:05
    +1

    Единственное условие — наличие в коде комментариев специального вида.
    Хороший рекламный ход — впихнуть в открытые проекты рекламу своего приложения… спасибо, но нет. Одно дело в Readme написать "Спасибо PVS-Studio и их команде за предоставленную возможность проверки проекта" и совсем другое впихнуть это во все файлы проекта.

    Кстати, шаблон о котором я просил выпустили или нет?


    1. Nick_Shl
      04.12.2018 20:08

      Перечитал статью ещё раз… теперь понял. К сожалению не могу удалить первую часть своего комментария.
      Вопрос про шаблон остаётся в силе.


      1. EvgeniyRyzhkov
        04.12.2018 20:38

        По нашему опыту общения с клиентами в рамках этапа presale шаблон (его отсутсвие) не является ключевой проблемой. Так что пока мы до него не добрались.


        1. Nick_Shl
          04.12.2018 21:29
          +1

          Возможно это потому, что с клиентами, которые поленились писать всю презентацию от начала до конца, но были бы готовы протестировать свой код и вписать в презентацию найденные ошибки, вы не общаетесь. Если вам, организации знающей свой продукт, написавшей докумениацию и кучу статей(в том числе и на английском) сложно собрать информацию в одном шаблоне, что уже говорить о программистах?
          У первоначального вопроса про шаблон 7 плюсов. Итого 8 потенциальных клиентов проходят мимо. Может для вас, это, конечно мало и каждая статья на Хабре(не думаю, что написание шаблона отняло бы больше времени, чем написание статьи) приносят больше клиентов…

          P.S. на русской версии сайта в шапке "Диагностики", на английской "Warnings". Я, конечно, не большой знаток английского(хотя и живу в Штатах почти 3 года) но как-то мне это не нравится. Это больше с "Предупреждения" ассоциируется, чем с "Диагностики". Причем с предупреждениями о вашем продукте, а не предупреждениях от вашего продукта.


  1. AdmAlexus
    04.12.2018 21:32
    +1

    Спасибо, за ещё одну возможность использовать PVS, без особых заморочек.
    Честно говоря, иногда хочется проанализировать тот или иной проект, но не хочется вносить комментарии (тем более, если проект "чужой").
    А так: раз, два и готово.
    По поводу "уйти в Saas", как уже и писали выше, мне кажется не самый лучший вариант, именно из-за политик безопасности во многих компаниях.


    P.S.: скажите, а эта версия лицензирования давно задумывалась или совместный конкурс с ping**m.ru подтолкнул к такой модели?


    1. Mingun
      04.12.2018 21:54
      +2

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

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


    1. Andrey2008 Автор
      04.12.2018 21:59

      P.S.: скажите, а эта версия лицензирования давно задумывалась или совместный конкурс с ping**m.ru подтолкнул к такой модели?
      Мысли как-то расширить вариант бесплатного использования бродили и до и после pinguem.ru, но только недавно как-то оформились.


  1. vt4a2h
    04.12.2018 22:45

    Не слишком понимаю, зачем что-то изобретать. Есть Coverity, который позволяет проверять проекты на гитхабе, да ещё и интегрироваться с travis-ci. Сделайте то же самое, в чём вопрос-то? Или есть технические трудности?

    Я, в своём небольшом открытом проекте на гите пользуюсь коверити в связке с тревисом. Просто настроил раз и всё, потом только репорты смотри в удобной (не во всём) веб вьюхе.


    1. EvgeniyRyzhkov
      05.12.2018 09:03

      > Сделайте то же самое, в чём вопрос-то?

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

      Мы пока сомневаемся, что такой подход (SaaS) нам нужно иметь.


      1. vt4a2h
        05.12.2018 13:24

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


  1. DerRotBaron
    05.12.2018 02:53

    Исходя из комментариев выше, правильно ли я понял, что если я буду вести свой репозиторий на Github с форком компонента self-hosted проекта (KDE, например), периодически подтягивая изменения из апстрима и на отдавать свои патчи обратно, я буду не только юридически, но и идеологически валидно использовать ваш анализатор для улучшения того же KDE?


    1. EvgeniyRyzhkov
      05.12.2018 08:58

      По идее нет. По всем признакам KDE — крупный коммерческий проект, лицензию на который надо покупать.


      1. 0xd34df00d
        05.12.2018 19:30

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


        1. EvgeniyRyzhkov
          05.12.2018 20:51

          Для меня коммерческий проект — это тот, в разработку которого вкладывается куча денег. И KDE это безусловно коммерческий проект.


          1. 0xd34df00d
            05.12.2018 21:04

            Хм, как-то разумнее, на мой взгляд, лицензию покупать на те проекты, которые приносят проекты, а не на которые тратятся деньги.


            1. EvgeniyRyzhkov
              06.12.2018 09:03

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


      1. DerRotBaron
        06.12.2018 01:39

        А не подскажете тогда, как провести границу между следующими двумя ситуациями?

        • Я форкнул KDevelop или GNOME Terminal с целью разработать несколько крутых фич и разобраться с рядом раздражающих меня багов и потом предложить изменения в апстрим
        • Я форкнул <...> потому, что хочу себе (и любому желающему, кто посчитает проект интересным) сделать набор крутых фич, вылечить баги. А потом я (или не я) решаю портировать изменения в базовый проект, лицензия позволяет.

        В обоих случаях разработка ведётся публично на Github, принимаются пулл-реквесты (при наличии) от других разработчиков.
        Для внешнего наблюдателя ситуации почти неотличимы.

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


  1. 3aicheg
    05.12.2018 05:24
    -2

    Вот чем, всё-таки, уникальна компания PVS-Studio: только она умеет что-то дать так, что по ощущениям получается, как будто не дали, а отняли, и при этом ещё плюнули в лицо :)


  1. Jogger
    05.12.2018 11:38

    А где же ссылочка "Эта статья на английском" ?


    1. Andrey2008 Автор
      05.12.2018 11:41

      А её нет. Пока нет.


  1. vics001
    06.12.2018 01:59

    Да боже мой, зачем раздавать лицензии?! Просто сделайте форму, куда каждой может засабмитить git url и вы сами проведете его анализ 1 раз и на своем сайте покажете report.
    1. Если боитесь, что будут сабмитить не «open-source», оставляйте исходный код и на своем сайте.
    2. Если боитесь, что слишком много будут сабмитить, сделайте публичную очередь на 100 проектов в месяц с голосовалкой.


    1. vics001
      06.12.2018 02:01

      Как программисту open-source проекта, очень геморойно писать email, вводить ключ, читать доп. пункты соглашения и т.п., проще взять и попробовать 1 раз. А если это must-have штука окажется, так лучше купить, потому что opensource и коммерциалиазация не противоречат друг другу.


      1. EvgeniyRyzhkov
        06.12.2018 09:01

        Скажите честно — вам ведь не нужен статический анализ? Потому что если «геморойно писать email», то смотреть отчеты и настраивать анализатор вообще будет «влом».


        1. vt4a2h
          06.12.2018 15:35

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

          Я приведу привет: допустим я начал проект на гитхабе. Так вот, я за пару часов смогу настроить CI + Test Coverage + Static Analysis, даже если раньше этого не делал, а если делал, то быстрее. И всё будет работать автоматичски при пушах. Если я смог бы прикрутить так же PVS за 10-15 минут, я бы пользовался, иначе нет. Да, именно это время. Тут большая часть программистов на опенсорс (если это не основная работа, разумеется) тратят не больше пары часов в день. И не могут сидеть пару месяцев, настраивая, интегрируя и подпиливая ваш продукт, как это делают большие компании. Но при этом людям хочется получить пользу от вашего продукта, т.к. его ценность очевидна.

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