PVS-Studio признаётся в любви к Linux

    PVS-Studio признаётся в любви к LinuxЭто заметка о любви. О любви статического анализатора кода PVS-Studio к замечательной открытой операционной системе Linux. Эта любовь молода, трогательная и ранима. Этой любви нужно помочь укрепиться. Вы поможете, если заранее запишитесь в добровольцы для тестирования beta-версии PVS-Studio for Linux.

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

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

    Сейчас мы накопили новых сил, собрались с духом и начинаем новую для нас тему освоения Linux. Да, да, это свершилось. Мы решились начать работы в этом направлении. Надеюсь, с этим у нас получится лучше, чем с CppCat.

    PVS-Studio for Windows


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

    PVS-Studio — это инструмент для выявления ошибок в исходном коде программ, написанных на языках С, C++ и C#. Анализатор до настоящего момента был ориентирован на разработчиков, использующих среду Visual Studio. Поддерживаемые языки и диалекты:
    • Visual Studio 2015: C, C++, C++/CLI, C++/CX (WinRT), C#
    • Visual Studio 2013: C, C++, C++/CLI, C++/CX (WinRT), C#
    • Visual Studio 2012: C, C++, C++/CLI, C++/CX (WinRT), C#
    • Visual Studio 2010: C, C++, C++/CLI, C#
    • MinGW (частично): C, C++

    Основные особенности PVS-Studio:
    • Автоматический анализ файлов после их перекомпиляции в Visual Studio.
    • Сохранение и загрузка результатов анализа: можно ночью проверить код, сохранить результаты, а утром загрузить их и смотреть.
    • Запуск из командной строки для проверки всего решения: позволяет интегрировать PVS-Studio в ночные сборки, чтобы утром у всех был свежий лог.
    • Mark as False Alarm – разметка в коде, чтобы не ругаться конкретной диагностикой в конкретном фрагменте файла.
    • Mass Suppression – подавить все старые сообщения, чтобы анализатор выдавал 0 срабатываний. К ним всегда можно вернуться позже. Удобное внедрение. Ошибки только в новом коде.
    • Использование относительных путей в файлах отчета для возможности переноса отчета на другую машину.
    • CLMonitoring – проверка проектов, у которых нет файлов Visual Studio (.sln/.vcxproj); если вам не хватит функциональности CLMonitoring, то вы можете интегрировать PVS-Studio в любую Makefile-based систему сборки вручную.
    • Хорошая масштабируемость: анализатор может загрузить все ядра процессора. Дополнительно можно использовать совместно с IncrediBuild.

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

    Таблица 1 - Возможности PVS-Studio. Нажмите на рисунок для его увеличения.
    Таблица 1 — Возможности PVS-Studio. Нажмите на рисунок для его увеличения.

    PVS-Studio for Linux


    Теперь собственно поговорим о том, ради чего многие начали читать эту статью: о поддержке Linux.

    PVS-Studio love Linux

    Эта задача не так проста, как может казаться на первый взгляд. Скомпилировать исполняемый модуль под Linux и что-то с его помощью проверить — задача нехитрая. Мы давно с ней справились. Ещё год назад мы писали статью об эксперименте про проверку Vim. Однако, это только маленькая часть всего объёма работ. Программисты забывают, что собрать исполняемый модуль и создать программный продукт — это далеко не одно и тоже.

    Мы планируем поддержать GCC и Clang. Мы начали с GCC, а к Clang мы вернемся позднее. Расскажу о задачах, которые сейчас стоят перед нами.

    1. Более полная поддержка GCC и Clang


    Мне иногда кажется, что разработчикам компиляторов скучно, и они придумывают различные способы сделать себе жизнь сложнее, а заодно и разработчикам, реализующих подсветку кода, статический анализ и так далее. Другим способом я не могу объяснить зачем, например, понадобилось вводить Conditionals with Omitted Operands. Конечно, круто, что можно сократить тернарный оператор до: z = x?: y;. На мой взгляд, без этого совершенно спокойно можно обойтись и жить счастливой жизнью.

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

    Не важно, часто или нет встречаются в программе нестандартные сущности. В любой серьезной программе встретятся заголовочные файлы, содержащие какое-то из расширений. В результате это запутывает парсер в анализаторе, и он не может полноценно обработать множество *.cpp файлов, в которые включён этот злосчастный *.h файл. Конечно, в анализаторе PVS-Studio встроены механизмы, которые пытаются компенсировать ошибку разбора кода и продолжить анализ. К сожалению, этот механизм не всегда помогает. В результате могут возникать странные ложные срабатывания или наоборот, из анализа будет исключен фрагмент кода (до конца функции или класса, а то и всего файла).

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

    Если кому-то интересно, о чем всё-таки идёт речь, могу предложить взглянуть, например, на:
    И это только документированные расширения. По опыту работы с Visual С++, мы ещё ожидаем наличие подлянок в форме недокументированных расширений.

    Поскольку мы используем собственный парсер (развитие ныне забытой и заброшенной библиотеки OpenC++), то мы должны поддержать различные расширения.

    Впрочем, используй мы какой-то другой парсер, это не сильно бы нам помогло. Например, если мы перепишем анализатор, взяв за основу Clang, нам все равно придётся самостоятельно сражаться с расширениями GCC, Visual C++.

    2. Новая система регрессивных тестов в Linux


    Разрабатывая PVS-Studio, мы используем семь методик тестирования:
    1. Статический анализ кода на машинах разработчиков. У всех разработчиков установлен PVS-Studio. Новый или изменённый код сразу проверяется с помощью механизма инкрементального анализа. Проверяется C++ и С# код.
    2. Статический анализ кода при ночных сборках. Если предупреждение не было замечено, то оно выявится на этапе ночной сборки на сервере. PVS-Studio проверяет C# и C++ код. Помимо этого, мы дополнительно используем Clang для проверки C++ кода. Одно время для C# кода также дополнительно применялся FxCop. В течение года он так ни разу ничего не нашел полезного, и мы отказались от его использования. А вот Clang пару раз находил ошибки, которые не замечал PVS-Studio, и мы сочли рациональным продолжать его использовать.
    3. Юнит-тесты уровня классов, методов, функций. Не очень развитая система, так как многие моменты сложно тестировать из-за необходимости подготавливать для теста большой объем входных данных. Мы больше полагаемся на высокоуровневые тесты.
    4. Функциональные тесты уровня специально подготовленных и размеченных файлов с ошибками.
    5. Функциональные тесты, подтверждающие, что мы корректно разбираем системные заголовочные файлы. Это важно, так как если в системном файле используются нестандартные расширения, то это портит проверку сразу многих проектов.
    6. Регрессионные тесты уровня отдельных сторонних проектов и решений (projects and solutions) — самый важный и полезный для нас вид тестирования. Для его осуществления мы регулярно проверяем 105 открытых проектов на C++ и 49 на C#. Сравнивая старые и новые результаты анализа, мы контролируем, что что-то не сломали и оттачиваем новые диагностические сообщения.
    7. Функциональные тесты пользовательского интерфейса. Имеется в виду тестирование расширения (plug-in), которое интегрируется в среду Visual Studio. Проверяем, что нажатие на различные кнопки и пункты меню приводит к нужным результатам.

    С точки зрения поддержки Linux, нам нужно в первую очередь расширить пункт N5 и N6. Пункт N5 пересекается с предыдущем разделом «Более полная поддержка GCC и Clang». Сделать тесты для проверки системных заголовочных файлов несложно, но трудоемко расширять парсер. Впрочем, про это мы уже говорили, и намного интересней пункт N6.

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

    Система тестирования

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

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

    3. Мониторинг компиляторов


    В состав PVS-Studio для Windows идёт GUI утилита Standalone.exe. С её помощью можно удобно работать с отчётами (*.plog-файлами), если не установлена среда разработки Visual Studio:

    PVS-Studio Standalone Tool

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

    Standalone позволяет отслеживать запуски компиляторов Visual C++, GCC (MinGW), Clang и собирать всю необходимую для проверки информацию. Выглядит это следующим образом: вы говорите программе «начать слежку», после чего выполняете обыкновенную сборку проекта. Далее вы говорите программе «готово». Начинается анализ всех тех файлов, компиляция которых только что выполнялась.

    Кстати, всё это не обязательно делать вручную. Вы можете использовать для проверки проекта на сервере консольную утилиту CLMonitor.exe. Она также собирает информацию о запущенных компиляторов и выполняет проверку проекта.

    Реализуя Linux версию, мы сразу решили, что обязательно надо поддержать отслеживание запусков компилятора. Это поможет программистам быстрее и проще знакомиться с анализатором PVS-Studio. Дело в том, что, используя эту утилиту, проект сможет проверить любой член команды, не отвлекая людей, занимающихся поддержкой makefile-ов и вообще системы сборки. В больших проектах далеко не каждый знает, как собственно собирается их приложение. Тем более, не каждый найдет время и желание разбираться, как и куда прописать вызов PVS-Studio. Всё это ещё может быть усложнено наличием автогенерируемого makefile. Понятно, что во всём можно разобраться, но это является существенным барьером на пути первой проверки проекта и удовлетворения исследовательского любопытства.

    Вот вы и познакомились с ещё одной подзадачей создания Linux-версии. Мы работаем над разработкой системы мониторинга запусков компиляторов и сборкой всей необходимой информации для проверки.

    4. Доработка документации


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

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

    Как и что предложить в среде Linux — надо думать. Конечно, всегда есть PDF файл (на 350 страниц) или online документация на сайте, но это нельзя назвать удобным способом доступа к описанию диагностик.

    5. Доработка сайта


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

    6. Прочее: тестирование, дистрибутив, организация поддержки


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

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

    И последнее: мы должны организовать поддержку нового направления. Наши пользователи ценят нас за качественную и оперативную поддержку. С выходом Linux версии увеличится количество запросов, особенно вначале, когда далеко не всё будет работать, и мы должны быть к этому готовы.

    7. Планы на будущее


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

    Есть и большие задачи, которыми мы займемся позже. Например, как я уже говорил, вначале мы сосредоточились на GCC, и только потом планируем позаниматься с Clang. Я пока даже не знаю, будет ли в первой релизной версии PVS-Studio для Linux поддержка Clang или нет.

    Вот еще некоторые из больших задач, которые ожидают нас:
    • Интеграция с Qt Creator.
    • Интеграция с… (время покажет).
    • Доработка и усовершенствование диагностик. Например, внутри PVS-Studio имеются таблицы с информацией о типовых функциях, таких как malloc, memset, std::swap. Эта информация позволяет выявлять многие ошибки некорректно использования функций. Стоит расширить эти таблицы многими функциями, описанными в POSIX.

    In progress


    Беременный единорог

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

    Итак, если вы хотите помочь нам проверить работу PVS-Studio для Linux прошу написать нам. Чтобы письма можно было проще обрабатывать, просим указать в теме письма строчку «PVS-Studio for Linux, Beta». Письма отправляйте по адресу support@viva64.com. Просим писать письма с корпоративных ящиков и кратко представиться. Мы будем благодарны всем, кто откликнется, но в первую очередь будем уделять внимание тем людям, которые потенциально со временем могут стать нашими клиентами.

    Также прошу в письме дать ответы на следующие вопросы:
    • Под какой операционной системой планируется запускать анализатор?
    • Какую среду разработки вы используете?
    • Какой компилятор используется для сборки проекта?
    • Какую сборочную систему вы используете?

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

    Заранее всем спасибо. Мы будем временами упоминать в статьях, как продвигается развитие PVS-Studio для Linux. Желаю всем пореже запускать отладчик!
    PVS-Studio
    730.87
    Static Code Analysis for C, C++, C# and Java
    Share post

    Comments 355

      –53
      Linux не является операционной системой.
        +19
        И откуда вы такие умные беретесь?
          –4
          Спорное утверждение, можете объяснить?
            +21
            Linux это ядро операционной системы. Окружение разрабатывается вне проекта. Соответственно правильно говорить «операционная система с ядром Linux». Столлман предлагает вообще называть все вместе GNU/Linux, тк большая часть окружения изначально была разработана в рамках проекта GNU.
              +8
              Линукс — общее название Unix-подобных операционных систем, основанных на одноимённом ядре.
                –4
                Linux is a Unix-like and mostly POSIX-compliant computer operating system (OS) assembled under the model of free and open-source software development and distribution. The defining component of Linux is the Linux kernel.
                https://en.wikipedia.org/wiki/Linux

                Первое — из русской википедии. Второе — из английской.
                Кому верить — википедии или некому Wedmar'у?
                Предпочитаю википедию.
                Впрочем, @Wedmar — вы можете попробовать свою позицию как-нибудь аргументировать. В противном случае не стоит удивляться молчаливым минусам.
                    +8
                    Столман защищает свой проект.
                    Есть общепринятый термин, который под словом Linux предполагает семейство ОС с определенными свойствами.
                    Отдельно замечу, что GNU/Linux — это подмножество ОС семейства Linux.
                    Тот факт, что других подмножеств сейчас не существует — не имеет значения.

                    Кстати, если вы являетесь сторонником Столмана и придерживаетесь названия GNU/Linux — ваш первоначальный комментарий всё равно пустой и бессмысленный.
                      +3
                      Извините, не могу я назвать ножку от стола столом.
                        –1
                        «Плохая метафора.
                        Сейчас „комод“(ОС) называют „полочками“(Линукс).
                        Вы предлагаете называть его „полочки с дверцами“.
                        Если уж на то пошло, и „полочки“ и „полочки с дверцами“ — не являются правильными названием для комода.

                        Так что выбор между Linux/GNU Linux — вопрос исключительно религии. Или удобства.
                          +3
                          А создатель линукса — называет:
                          «The only limiting factor of the Linux operating system is its user.» — Linus Torvalds, 2008.
                            +1
                            Он как раз — имеет право. Он сам разрабатывал Linux, чтобы завершить систему GNU и вполне может нерассматривать «неофициальные» версии как что-то существенное — даже если они используются миллиардами пользователей.
                              –1
                              Здесь еще фишка упущения части слов. Можно сказать «POSIX operating system», но это нельзя перевести как «операционная система POSIX»
                                0
                                Вот другая его цитата из одного интервью:
                                «But those “oddball” use areas used to surprise me, back when I still thought of Linux as a workstation and server operating system.»

                                Никакой неоднозначности тут быть уже не может.
                                  +1
                                  Ну тогда попробуйте собрать Linux и запустить его безо всего. Вы резко обнаружите, что ему нужно что то в качестве init, что никакого интерфейса взаимодействия с пользователем тоже нет, и т.д.и т.п.
                                  Линус, как мне кажется, как раз имел в виду операционную систему с ядром Linux и одному ему известным окружением.
                                    +4
                                    «Линус, как мне кажется, как раз имел в виду операционную систему с ядром Linux»
                                    Конечно именно это он и имел ввиду.
                                    Как и все остальные, кто использует термин Linux для определения семейства ОС.
                                      0
                                      Почему Андроид не называют Linux?
                                        +2
                                        Потому же, почему не называют Линуксом Ubuntu, OpenSuse и все остальные Линуксы. Потому что это отдельные ОС семейства Линукс.
                                        При этом Линуксом он быть не перестал, естественно.
                                          +1
                                          Вот их чаще всего называют. Понимаете, просто оно так устоялось. Но если оно так устоялось, это не значит, что это все правильно.
                                      0
                                      Хотите дам своё ядро, которое запустится и откроет busybox шелл, опционально поднимет ssh и т.п.? :)
                                        +1
                                        Ну тогда попробуйте собрать Linux и запустить его безо всего.
                                        Зачем, если Линус прямым текстом назвает Линуксом полноценную операционную систему, а не только ядро?
                                          0
                                          Ок, дайте ссылку на init систему и базовое окружение в рамках проекта Linux.
                                            –1
                                            Дайте для начала определение «проекта Linux»
                                              +1
                                              Зачем? Я просто беру какой нибудь серверный дистрибутив, например Ubuntu Server, и он является Линуксом. Потому что Линукс — это не только ядро, но и семейство операционных систем. И сам создатель ядра разделяет это мнение.

                                              Есть чем опровергнуть?
                                  +1
                                  Вот для вас аргументация от разрабочиков Debian.
                                    +7
                                    Отлично!
                                    «Linux is an operating system»
                                      +1
                                      Вы дальше читайте.
                                      «Because the Linux kernel alone does not form a working operating system, we prefer to use the term “GNU/Linux” to refer to systems that many people casually refer to as “Linux”. „
                                        +4
                                        Читал. ОНи используют термин Linux в тексте, где по их же логике предполагается использовать GNU/Linux.

                                        «Linux users have immense freedom of choice in their software. For example, Linux users can choose from a dozen different command line shells and several graphical desktops. This selection is often bewildering to users of other operating systems, who are not used to thinking of the command line or desktop as something that they can change.

                                        Linux is also less likely to crash, better able to run more than one program at the same time, and more secure than many operating systems. With these advantages, Linux is the fastest growing operating system in the server market. More recently, Linux has begun to be popular among home and business users as well.»
                                        Здесь везде должно быть GNU/Linux. Но почему-то это не так.
                                          0
                                          Здесь везде должно быть GNU/Linux.

                                          В первом абзаце Linux users вполне может быть трактовано и как «пользователи ядра», также «Linux is also less likely to crash» может отноится к ядру, хотя сравнение в конце предполагает ОС.

                                          Но сам спор — глупый.
                                      +1

                                      Это позиция Debian. Они там тянут GNOME, а это акроним GNU Network Object Model Environment.
                                      Можно собрать систему с минимальным набором утили из GNU project.
                                      Open Source он такой, в нем много взаимозаменяемых программ: GNOME можно заменить на KDE; emacs на vim; bash на zsh и т.д.

                                        +1
                                        Можно собрать систему с минимальным набором утили из GNU project.
                                        Можно собрать систему и вообще без утилит от проекта GNU — вот только поддержки PVS-Studio для таких систем разрабывать не собирается.
                                          0
                                          то есть под Android можно даже не ждать? :)
                                      +11
                                      Отдельно замечу, что GNU/Linux — это подмножество ОС семейства Linux.
                                      Тот факт, что других подмножеств сейчас не существует — не имеет значения.
                                      О как. То есть все миллиарды устройств с Linux, но не GNU/Linux — не существют? Кто-то убил всех разработчиков OpenWRT или штаб-квартиру Android разбомбили?

                                      Есть очень простой вопрос, на который могут, я думаю, легко дать ответ разработчики PVS-Studio: когда их продукт можно будет скачать из Play Store. Если ответ «в обозримом будущем — мы этого не планируем», то они таки действительно собираются поддерживать GNU/Linux, а не просто Linux.

                                      Когда Столлман или Дебиан писали свои тексты отличие между GNU/Linux — было чисто умозрительно, не было никакого Linux'а, кроме GNU/Linux'а. Сегодня — их таки есть, более того, подавляющее большинство инсталляций Linux'а — это не GNU/Linux, так что название GNU/Linux — имеет смысл.
                                        +1
                                        Вот как! Вот это уже интересно! Спасибо!
                                        Сути по поводу использования GNU/Linux и Linux это не меняет. А вот то, что есть не GNU версия — это для меня новость. Спасибо.

                                        Если ответ «в обозримом будущем — мы этого не планируем», то они таки действительно собираются поддерживать GNU/Linux, а не просто Linux.

                                        Ага. И не просто GNU/Linux — а лишь ограниченную часть дистрибутивов. Уверен, будет полно GNU/Linux, на которых PVS не заведется.
                                        Так что в данном контексте использование GNU/Linux или Linux — без разницы. Это всё равно не корректно с формальнйо тчоки зрения.
                                          +1
                                          А вот то, что есть не GNU версия — это для меня новость.
                                          Это как бы вещь, над которой немногие задумываются, но если на неё указать — она очевидна: версии Linux'а смоделированные вокруг «классического» Unix'а — сегодня в меньшинстве. Подавляющее большинство установок Linux'а ничего общего с GNU и «традиционным» Linux'ом не имеют. Причём разница не в разы — на порядки! Как минимум в половине «умных» лампочек Linux сидит, но ничего от проекта GNU — там и в помине нету.

                                          И не просто GNU/Linux — а лишь ограниченную часть дистрибутивов. Уверен, будет полно GNU/Linux, на которых PVS не заведется.
                                          А я вот — не уверен. То есть какие-то опциональные рюшечки — может быть. Но «ядро» продукта наверняка будет опираться только только на старые добрые binutils, coreutils и Glibc. Только вместо GCC, может быть, Clang потребуется. То есть то, с чем будет общаться PVS-Studio — это как раз скорее GNU, чем Linux.
                                        +4
                                        >>Тот факт, что других подмножеств сейчас не существует — не имеет значения.

                                        Как это не существует? Простите, а какже busybox? Он к проекту GNU никакого отношения не имеет.

                                        GNU/Linux это дистрибутивы построенные на тулчейне проекта GNU: glibc+ GNU core utils разработанные под эгидой проекта GNU.

                                        +1
                                        Ну вообщем-то мнение Столлмана, наверное менее авторитетно в этом вопросе, при всем уважении, чем мнение создателя(ей).
                                        What is Linux?

                                        Linux is a clone of the operating system Unix, written from scratch by Linus Torvalds with assistance from a loosely-knit team of hackers across the Net. It aims towards POSIX and Single UNIX Specification compliance.
                                          +2
                                          Где система init от Линуса? Где стандартная сишная библиотека? Заметьте, что большинство из используемых компонентов операционных систем с ядром Linux, разработаны не специально для Linux, а для всех вариантов ядер. Поэтому называть ОС по ядру в технической статье я считаю нецелесообразным, в отличие от устной речи, где подобные сокращения считаются нормой.
                                            +3
                                            К сожалению, такая система уже есть, и почти захватила все дистрибутивы GNU/Linux :(
                                            Хоть она и не от Линуса, но специально для линукс ядра.
                                            Это называется SystemD. Сейчас это почти дистрибутив, за исключением загрузчика и графической части и да пока еще без сишной библиотеки.
                                  0
                                  Он — ядро
                                  –20
                                  Минусаторы кроме минусов других аргументов привести не могут?
                                    +6
                                    Предлагаю не отвечать и не кормить тролля. По-иному я подобные комментарии оценит не могу.
                                      0
                                      Это не троллинг. Просто было бы не плохо, если бы вещи назывались своими именами. Меня выше попросили привести аргументацию, я привел.
                                      Вот вам описание проекта Debian.
                                      https://www.debian.org/intro/about
                                        +7
                                        Ну, коллега, вы же не будете спорить с тем, что некоторые слова имеют несколько иное значение, чем то, которое подразумевается при их повседневном использовании. Например «ксерокс» — для нашей страны все еще актуально.

                                          –4
                                          Эх… Знали бы люди, сколькими разработками этой конторы они сейчас пользуются.
                                            +1
                                            Видимо кто то не в восторге от мышек, и общепринятых графических интерфейсов.
                                          +6
                                          Дистрибутив ОС на основе ядра Linux нормально? Сокращенно linux.
                                          Вы же не говорите «манипулятор типа мышь». А мышь это не то что у вас на столе.

                                          GNU/Linux наверное тоже не правильно. Не все дистрибутивы чисты и полностью GNU и если перечислять все то будет очень долго (как с 4-х пунктной лицензией BSD).
                                            +1
                                            GNU/Linux наверное тоже не правильно.
                                            Название GNU/Linux точно и полно описывает то, что собираются поддерживать разработчики PVS-Studio. Они ломают голову над поддержкой GLibc, GCC и прочих разработок GNU. При этом напрямую ядро их интересует мало и версии линукса, не основанные на GNU, как я понял, поддреживаться не будут. Ни Android, ни Chrome OS вроде как в планах не стоят…
                                              +3
                                              Название GNU/Linux точно и полно описывает то, что собираются поддерживать разработчики PVS-Studio.

                                              ТО есть вы уверены, что PVS Studio будет работать под всеми ОС попадающими под определение GNU/LInux?
                                              Готов денег поставить, что так не будет.
                                              Так что не точно и не полно.
                                                +4
                                                Смотря что вкладывать в «работать».

                                                Учитывая формат распространения (проприетарная какашка слинкованная как попало неумёхами-вендузятниками, как, например, у 2Gis или Steam) — завести можно будет где угодно, в крайнем случае подсунув пару библиотек в локальный LD_PATH вместо системного. Уж больно любят господа говнокодеры (сюда, кроме приведённых выше, я бы ещё добавил разработчиков Phusion Passenger, FreeSWITCH и ещё некоторых вещей) использовать в продакшн-версиях продукта патченные 3party библиотеки (и не всегда публикуя эти патчи и тем паче не отсылая их в апстрим) вместо тех, что поставляются с дистрибутивами.

                                                — На самом деле, в тональности этого комментария больше виновата команда 2Gis, которая собирает бинарники под Linux так, что он зависит сразу от двух версий библиотеки icu, плюс они используют свой патченный qt-вебкит, который чёрт-те что делает и его не подебажишь. Поэтому я до сих пор не могу завести их поделие на Gentoo и производных (допускаю, что на Ubuntu оно-таки работает).
                                                Со стимом и играми в нём — часто такая же штука. Линкуют черезанально, работает так же.

                                                Что примечательно, в заопенсорсившихся проектах подобную хрень фиксят в пределах первого десятка (в крайнем случае, сотни, если проект сильно популярный) коммитов.
                                                  +2
                                                  Что примечательно, в заопенсорсившихся проектах подобную хрень фиксят в пределах первого десятка (в крайнем случае, сотни, если проект сильно популярный) коммитов.
                                                  Ну дык всё просто: это одна из вещей, до которых «руки не доходят» у людей, у которых в бактрекере сотни багов, но которая легко правится любым человеком, который хочет «въехать в проект».
                                            +2
                                            Если это не троллинг, то сделайте отдельный пост, опишите свои размышления на тему, а тут давайте обсуждать тему поста, а не то, что вы считаете неточностью.
                                              +1
                                              было бы неплохо, если бы вещи назывались своими именами.

                                              А андроид — это линукс?
                                        +9
                                        RIP (помним, непонимаем, скорбим)

                                        ваш суицид лучший на этой неделе

                                          –6
                                          Конечно, чтобы не вызывать бурю негодования, надо было написать иначе. Но зато видно, на сколько хорошо народ знает, чем он пользуется.
                                          "Linux-based operating system"!=Linux
                                            +3
                                            Надо было написать в личку с указанием ошибки. Минусующие прекрасно знаю, что такое Linux, потому и минусуют.
                                              –1
                                              Тех, кто знает, такие утверждения не не задевают. Проверено в профильных темах.
                                          +11
                                          коллега, для надежного самоуничтожения вы выбрали не ту тему для своих откровений. Здесь было бы уместно высказать мнение, что C++ не язык программирования, или что GCC не является компилятором.

                                          И только в этом случае вы можете гарантировать многократный эффект и кучу отличнейших отзывов.
                                            –1
                                            Понимаете, простой слив не принесет никакой пользы. А так кто то начнет читать, научится называть вещи своими именами.
                                              –8
                                              Судя по количеству переходов кармы через ноль, стоит все таки сочинить статью, но только после того как срастется правая рука и если будет свободное время.
                                                –3
                                                Смотрю тут много шовинистов. Ну, желаю вам всего хорошего, а особенно никогда не ломать руки. Те кто ломал, наверное знают, как неудобно работать без одной руки.
                                                  +3
                                                  Добрый день.
                                                  Почему вы беседуете сами с собой?
                                                    +1
                                                    Лично я это вижу как комментарий или дополнение к предыдущему. Ну или просто реакция на оценки комментария.
                                                      +2
                                                      Из-за ограничения в пару минут на редактирование/дополнение комментария?
                                                0
                                                Ну, GCC, допустим, действительно, не компилятор, а набор компиляторов. А C++-то почему не язык программирования?
                                                  0
                                                  Человек просто предложил варианты высказываний, чтобы слить себе карму до четырех знаков в минус.
                                                    +2
                                                    Ну, GCC, допустим, действительно, не компилятор, а набор компиляторов.
                                                    Gnu Compiler Collection — это Бэкроним, изначально GCC всё-таки был компилятором.
                                                      +1
                                                      Господи, я немного решил повеселить народ, но тут нашлись и те, кто прицепился к какой-то мелочи… причем, это даже не является существенным.

                                                        +1
                                                        Согласен, что всё это буквоедство. Тем не менее, мне показалось ироничным, что ваш пример ложного высказывания о GCC оказался не далёк от истины.
                                                    +4
                                                    Взято с linux.com
                                                    What is Linux?

                                                    Just like Windows XP, Windows 7, Windows 8, and Mac OS X, Linux is an operating system.
                                                    +3
                                                    Мы будем благодарны всем, кто откликнется, но в первую очередь будем уделять внимание тем людям, которые потенциально со временем могут стать нашими клиентами.


                                                    Отправил вам письмо, потенциально могу стать вашим клиентом, но складывается впечатление, что вы не хотите сотрудничать с разработчиками-одиночками, нацелены больше на большие «кошельки», прав ли я? Ну продадите вы несколько копий крупным компаниям за многие тысячи долларов и на этом все? Крупных компаний мало, а нас разработчиков тысячи. Многие хотят писать качественный код.
                                                      +2
                                                      Да, мы не хотим сотрудничать с разработчиками-одиночками. Мы нацелены на корпоративных клиентов. Индивидуальным разработчиком статический анализ не нужен в том объёме, чтобы на этом можно было зарабатывать деньги. Мы убедились в этом благодаря проекту CppCat. История вопроса: https://habrahabr.ru/company/pvs-studio/blog/256637/.

                                                        +16
                                                        Эм. Давайте я расскажу, как это работает, например, у Travis CI. Они не говорят, что разработчики-одиночки (ужас, звучит как мать-одиночка) не нуждаются в их продукте (пока не начнут платить как следует), а просто делают продукт бесплатным для опенсорсных проектов. Разработчики пользуются для опенсорсных проектов удобным качественным инструментом, привыкают к нему, а когда на работе заходит речь об использовании инструмента, берут и от лица компании покупают уже проверенный и удобный продукт, который в бизнес-версии почти ничем не отличается, но позволяет использование для проприетарного кода.
                                                          0
                                                          ТАк у них онлайн решение.
                                                          Как вы для оффлайн решений предлагаете контролировать использование только для опенсорса?
                                                            0
                                                            Так же, как это контролируется компание JetBrains, на пример?
                                                              0
                                                              Не в курсе. Как?
                                                                0
                                                                Они проверят ваш продукт и попросят установить на главной вашего сайта свой банерок.

                                                                Обещают периодически проверять наличие банера и активность пользователей.
                                                                  0
                                                                  То есть имея OpenSource продукт — можно использовать решения от JetBrains в любом своем проекте?
                                                                    0
                                                                    На счет любых проектов — не думаю. Лично меня просили не распространять лицензию между разработчиками, не занимающимися оговоренным проектом. Контролируется ли это как либо — не знаю.
                                                                      –1
                                                                      Спрашиваю, потому что есть старое правило:
                                                                      Нельзя запрещать то, что нельзя проконтролировать.
                                                                        +5
                                                                        Ну Microsoft тоже не может проконтролировать использования своего Windows, но это не мешает им быть крупнейшей IT компанией в мире. Иногда мне даже кажется, что они это делают специально ;)
                                                                        0
                                                                        А лицензии не запрещают, а разрешают.
                                                                          0
                                                                          Так я и не утверждал обратного.
                                                                            0
                                                                            Сорри, промахнулся с телефона.
                                                                          +1

                                                                          А вот я когда получал лицензию на PyCharm мне ничего не сказали про «других» разработчиков, зато сказали чтобы я не стеснялся распространять между разработчиками проекта, и не стеснялся писать им когда срок лицензии подойдет к концу :)

                                                                            +6
                                                                            JetBrains крутые, кто бы спорил. Я без иронии.
                                                                              0
                                                                              Да, именно так. Под «другими» разработчиками я имел ввиду разработчиков, не имеющих отношение к проекту.
                                                                          +3
                                                                          У них еще офигенно реализовано Community Edition. Для многих этого более чем достаточно.
                                                                    +1
                                                                    Для информации. Появился вариант бесплатной лицензии для разработчиков-одиночек: Как использовать PVS-Studio бесплатно.
                                                                    +12
                                                                    Весьма отталкивающее заявление, учитывая, что многие продукты под Linux — создаются «сборищем одиночек», да и само ядро в большей части.
                                                                      +4
                                                                      Получается, что разработчики-одиночки имеют полное моральное право спиратить сабж. Финансового ущерба это не нанесёт, ведь анализатор им и так бы не продали. Зато, в дальнейшем, такой разработчик сможет, например, агитировать внутри компании, в которую устроится, за покупку программы для нужд компании.

                                                                      Хороший пример того, как порицаемое многими «пиратство» может обернутся благом для автора программы.
                                                                        +8
                                                                        Моральное право спиратить сабж я имею, но вот агитировать покупку внутри компании не буду принципиально после такого отношения, например.
                                                                        +13
                                                                        Рекомендую ознакомиться с http://storage.pardot.com/6342/120970/lf_pub_whowriteslinux2015.pdf. После этого про «сборище одиночек» вы говорить перестанете.

                                                                        С момента выпуска 3.11 наибольший вклад в развитие ядра внесли корпорации Intel, Red Hat, Linaro, Samsung, IBM, SUSE, Texas Instruments, Vision Engraving Systems и Google.

                                                                        80% всех вносимых в ядро изменений сделаны разработчиками, которые получили оплату за данную работу.

                                                                        Какие уж тут одиночки.
                                                                          +2
                                                                          +! Отличный комментарий! Из опыта добавлю, что получить разрешение на вклад в открытый проект порой очень сложно даже компании, а тут все вклад одиночек обсуждают.
                                                                            +2
                                                                            Эти отчеты года с 2011, что ли, публикуются и я по ним просто очень хорошо помню, что вклад одиночек в ядро сейчас невелик. Потому видя подобные утверждения сразу их опровергаю. Да, 20% кода — одиночки, честь им и хвала, но 80% это крупные фирмы.
                                                                            К сожалению отчета за 2016 год я не нашел, возможно ближе к концу года выйдет, потому дал ссылку на отчет за 2015 год.
                                                                              +3
                                                                              Одиночки получить «разрешение на вклад» в ядро Linux как раз вполне могут. Для этого достаточно отправить патч в рассылку и учитывать замечания того, кто ответственен за соответствующую подсистему.
                                                                        • UFO just landed and posted this here
                                                                            +2
                                                                            clang static-analyzer вместо cppcheck, а так да.

                                                                            Ну и когда один мой приятель гонял PVS по моему опенсорс-проекту под Windows, у меня сложились, гм, не самые лучшие впечатления.
                                                                              +9
                                                                              Сегодня мои комментарии здесь явно не пользуются популярность и минусуются. Но я закалённый и продолжу рубить правду-матку ;).

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

                                                                              Каждому уровню ответственности — свой набор инструментов. Уверен многим Cppcheck более чем достаточен. А кому-то нужен серьезный Coverity или PVS-Studio с различным вспомогательным инструментарием и поддержкой.
                                                                              • UFO just landed and posted this here
                                                                                  +1
                                                                                  По идее достаточно было бы одной копии анализатора, которая запускалась бы через CI на билд-сервере.
                                                                                    +6
                                                                                    Качество кода это в 95% случаев заслуга программиста, а не статического анализатора.
                                                                                    Качество кода это в 95% случаев это заслуга выстроенного процесса разработки ПО в компании. Отдельный программист здесь вообще ни при чём (если конечно не говорить о мелких индивидуальных проектах, а мы о них говорить не будем).
                                                                                    Так вот, когда компания задумывается, что ещё она может сделать, чтобы повысить качество кода, здесь и приходит на помощь статический анализ. Если всё плохо, статический анализ не поможет. Но там где все плохо, про статический анализ и не думают.
                                                                                      +2
                                                                                      Мнения маркетолога в компании с которой я сейчас сотрудничаю.
                                                                                      Может вам стоит перестать с ней сотрудничать? Зачем связываться с будущим банкротом?
                                                                                      Ещё чуть чуть не стоит переплаты в 10 раз.
                                                                                      Откуда вы взяли «переплату в 10 раз»? Брать нужно экономию от инструмента и сравнивать с его стоимостью.

                                                                                      Есть в компании в которых ошибка стоит копейки (ну там сервер упал, мы его починили потеряли $10, зачем тут, нафиг, PVS-Studio?), есть — в которых речь идёт о миллионах (представляете во сколько может встать ошибка в софте, который обеспечивает биржевую торговлю?) — тут и в 10 раз дороже, чем «за хорошую IDE» заплатить можно если хоть одна ошибка будет отловлена (хотя, по правде говоря, тут скорее об использовании менее опасного языка нужно задуматься, а не о статических анализаторах… но случаи разные бывают).
                                                                                        +2
                                                                                        тут и в 10 раз дороже, чем «за хорошую IDE» заплатить можно если хоть одна ошибка будет отловлена

                                                                                        Зачем, когда можно заплатить в 10 раз меньше воспользовавшись продукцией конкурентов?
                                                                                          +2
                                                                                          Зачем, когда можно заплатить в 10 раз меньше воспользовавшись продукцией конкурентов?
                                                                                          Затем что экономия в тысячу тугриков плюс убыток в миллион — это всё равно убыток, пусть и меньше миллиона.

                                                                                          PVS-Studio не требуется быть лучше того же clang'а — достаточно того, чтобы clang не был строго лучше. Ибо их можно (и нужно) использовать совместно. Если PVS-Studio находит ошибки, которых clang не находит и цена ошибки достаточно высока — овчинка стоит выделки. Это очень сильно отличатеся от ситуации с тем же CLion'ом: вы либо используете MSVC, либо CLion. Мало кто использует и до и другое на одном проекте.
                                                                                            +1
                                                                                            Интересный ход мысли ) Может и мне стоит изобрести какой нить статический анализатор и продавать его в сотню раз дороже от того, что он находит одну дополнительную ошибку, которую не находят два перечисленных выше анализатора… Конкуренция не так работает )
                                                                                              +2
                                                                                              Может и мне стоит изобрести какой нить статический анализатор и продавать его в сотню раз дороже от того, что он находит одну дополнительную ошибку, которую не находят два перечисленных выше анализатора…
                                                                                              Этого мало. Нужно ещё сделать так, что они не смогли в свою систему добавить диагностику вашей суперчудоошибки — и чтобы эта ошибка реально встречалась настолько часто, чтобы из-за неё ваш анализатор купили. Сможете — деньги ваши. Причём, удивительно, люди такие вещи делают постоянно — без шума и пыли. Presubmit scripts называются. За них, правда, редко больше, чем за PVS-Studio платят, но,

                                                                                              Конкуренция не так работает )
                                                                                              А как она, извините, работает? Покупается всегда всё самое дешёвое? Тогда кто покупает Sumsung'овские Galaxy и как Apple вообще хоть что-нибудь продала?

                                                                                              Всегда идёт оценка качества и цены и при этом понятие «качества» — у всех покупателей разное… Обратите внимание на то, что говорят настоящие потенциальные клиенты и сравните их «дело тут не в деньгах» с тем, что пишите вы…
                                                                                                +4
                                                                                                А как она, извините, работает?

                                                                                                Достаточно просто. Крупные IT компании, цена ошибки ПО у которых доходит до миллионом (мы же о таких говорим, верно?) действуют достаточно логично. Вместо того, чтобы закупать десяток однотипных инструментов, они нанимают десяток специалистов в области обеспечения качества ПО (есть такая специализация, довольно редкая, кстати). Многие представляют их как менеджеров, стоящих за спинами программистов и угрожающих лишением премии за каждую допущенную ошибку, на деле это не так. Эти ребята занимаются тем, что постоянно выявляют наиболее хитрые ошибки (при чем не только в исходном коде) и конфигурируют (а иногда и программируют) анализаторы таким образом, чтобы эти ошибки отлавливать. Понимаете какое дело, идея «из коробки» работает далеко не всегда (о чем я часто говорю в наших холиварах на тему Vim vs IDE), часто крупные компании способны самостоятельно настроить используемые ими инструменты для своих нужд. К чему это приводит? Как правило крупная компания раз и навсегда (в идеале) выбирает один гибкий и мощный инструмент (на пример PVS) и использует его максимально, а не прыгает с одного решения к другому только потому, что последний находит на одну ошибку больше.

                                                                                                Обратите внимание на то, что говорят настоящие потенциальные клиенты и сравните их «дело тут не в деньгах» с тем, что пишите вы

                                                                                                А дело и не в деньгах. Я полностью поддерживаю идею приведенного вами комментария, в области IT инструментария крайне важна гибкость, а не «изкоробочность».
                                                                                      0
                                                                                      > Всё зависит от стоимости ошибки. В первую очередь наши клиенты это те, кому ошибки обходятся дорого

                                                                                      То есть если ошибка не ведёт к потере сотен тысяч долларов, марсохода или здоровья, ваш продукт ей не интересуется?

                                                                                      К примеру, если я из идеологических соображения запущу бесплатный VPN сервис на 5-10 тысяч человек и в клиенте будет баг, препятствующий доступу к серверу для половины пользователей, это вроде как и «бесплатная» ошибка. Миллионов нет, никто не умер и не поранился, статический анализ не нужен. С точки зрения ваших маркетологов, я не готов заплатить 200–500 долларов?
                                                                                        +1
                                                                                        Вам решать.
                                                                                      +3
                                                                                      Мое мнение за хорошие продукты стоит платить ( например за IDE JetBrains ), но если цена за (может быть) хороший продукт завышена в несколько раз можно и без него обойтись.


                                                                                      А как вы определяете, завышена цена, или нет?
                                                                                        +1
                                                                                        Если не хватает — значит, цена завышена.
                                                                                        • UFO just landed and posted this here
                                                                                            +3
                                                                                            Думаю, авторы выбрали ценообразование не с потолка. Если ценник такой, то наверное они выбрали сегмент рынка которому они могут продавать, и другие пользователи их не интересуют. Эти пути не неисповедимы :)
                                                                                              +6
                                                                                              Когда запчасть от мерседеса продают по цене 10 мерседесов.
                                                                                              Вообще-то если вы захотите участовать в ралли на серьёзном уровне, то обнаружите, что такое случается сплошь и рядом. Или если будете переделывать мерс в тот же Big foot — тоже может потребоваться изрядно заплатить.

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

                                                                                              Думаю со временем в JetBrains сделают продвинутый анализатор для Clion и все эти незаслуженно дорогие анализаторы уйдут в прошлое!
                                                                                              Скоро — это когда? Через 10 лет, чем 100? Может в космических масштабах это и «скоро».
                                                                                              • UFO just landed and posted this here
                                                                                            0
                                                                                            Вы ещё не видели ценника на LoadRunner.
                                                                                            • UFO just landed and posted this here
                                                                                                +4
                                                                                                Ещё одна теория заговора. Не первый раз уже слышу. Я, например, вообще не минусовал и не плюсовал Вашу карму.
                                                                                                Быть может всё дело в самих комментариях? :)
                                                                                                • UFO just landed and posted this here
                                                                                                  0

                                                                                                  А как можно целенаправленно сливать карму, если у каждого один минус/плюс.

                                                                                                  • UFO just landed and posted this here
                                                                                                      +2

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


                                                                                                      Впрочем, как по другому составить впечатление о человеке на хабре, кроме как из его комментов?

                                                                                                        +2

                                                                                                        Кapмa является опосредованным/усреднённым личным мнением хабровчан "я ([+]хочу чаще)/([-]не хочу больше) видеть этого человека на хабре". Как достаточно очевидно, второй вариант чаще подвигает читающих на действия (особенно после того, как хабр добавил голосовалку прямо на аватарку — раньше голосование в кapмy. требовало дополнительных усилий, типа щелчка на профиль; теперь же даже лень перестала быть препятствием к кapмoсливу).


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

                                                                                                          0

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

                                                                                                            0
                                                                                                            отсекает неадекватов (отрицательная)

                                                                                                            Не столько неадекватов, сколько "людей, несогласных со мнением большинства". (Представляю, сколько минусов набрали бы на форуме Ньютона в начале века последователи Эйнштейна ;)

                                                                                                              +2

                                                                                                              Речь о том, чем должна быть карма, а не о том, что она делает.


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

                                                                                                                0

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


                                                                                                                (Живой пример: Вы со мной в целом согласны, но плюса не поставили, я специально проверил :)

                                                                                                                  0

                                                                                                                  Вы сказали, что отсекаются "несогласные", а не "неадекватные". С этим я и спорил — адекватный "несогласный" вполне может жить с плюсовой кармой.


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


                                                                                                                  (Живой пример: Вы со мной в целом согласны, но плюса не поставили, я специально проверил :)
                                                                                                                  Может просто в тот же момент кто-то вам минусанул :)
                                                                                                                    0
                                                                                                                    адекватный "несогласный" вполне может жить с плюсовой кармой.

                                                                                                                    Абсолютно верно. Одако и "неадекватный согласный" тоже...

                                                                                                                      0

                                                                                                                      С трудом, ведь как вы верно заметили, плюсуют реже, чем минусуют.

                                                                                              +3
                                                                                              Немного спорное утверждение, что одиночкам статический анализ не нужен.
                                                                                              В одном из проектов, где я участвую, для статического анализа используются почти все версии gcc и clang (да да они тоже многое могут найти с нужными флагами), различные cppcheck и множество других утилит и сервисов и не только статического анализа кода как такового но и стиля. В сожалению для вас, все это распространяется бесплатно. И хоть статический анализ и используется, но нет платных инструментов.

                                                                                              Pvs-studio тоже используется, но не часто, из-за проблемы как оно работает и какие ограничения предоставляет без регистрации.
                                                                                                +3
                                                                                                Жаль!

                                                                                                Ниже вы написали «Вам просто не нужно сделать код качественней»… Лично я использую ваш продукт на своих проектах регулярно. До CppCat руки не дошли купить (в знак благодарности), поздно обратил на него внимание. Каюсь. Но пользовался бы я все равно полной версией, так как нужен именно расширенный анализ. И даже рекобендовал PVS-Studio нескольким крупным компаниям.

                                                                                                Хотелось бы поблагодарить вас за этот продукт. Я нахожу его весьма-весьма полезным, даже для «моих низкосортных» проектов.
                                                                                              +1
                                                                                              По поводу «Conditionals with Omitted Operands».
                                                                                              Там же написано, когда это бывает полезно:
                                                                                              When it becomes useful is when the first operand does, or may (if it is a macro argument), contain a side effect

                                                                                              Иначе приходится писать код вроде
                                                                                              SomeType* z = CallSomeFunctionWithSideEffects();
                                                                                              if (!z) z = SomeOtherFunction();
                                                                                              

                                                                                              Вместо
                                                                                              SomeType* z = CallSomeFunctionWithSideEffects() ? : SomeOtherFunction();
                                                                                              

                                                                                              Например, в C# есть похожая штука:
                                                                                              null-coalescing operator
                                                                                                0
                                                                                                Вот только в C# это отдельная конструкция, а не недописанный оператор по которому сложно догадаться ошибка это или так и задумано.
                                                                                                +2
                                                                                                Как то у меня не сложилось. Установил PVS под Windows 10, запустил standalone вариант и указал директорию. Минут 8 запускался монитор (значок в трее). Запустил компиляцию проекта (Keil). Потом минут 10 ждал результата анализа (10 файлов по 500 строк). 8Gb RAM и 4 ядра. В общем с такой скоростью совсем тяжело. Даже проверка в VS намного быстрее.
                                                                                                  +32
                                                                                                  Меня порадовало на вашем сайте:
                                                                                                  «Пожалуйста напишите нам, чтобы узнать цену на PVS-Studio»

                                                                                                  Черт возьми, что за игры вы играете? У вас настолько плохой продукт, что можно применять дешевенькие маркетинговые приемчики? Или вам особо не интересны разработчики одиночки и совсем уж небольшие команды?
                                                                                                    –30
                                                                                                    Это нормальная практика для инструментов данного класса.
                                                                                                      +19
                                                                                                      Вы ошибаетесь, это ужасная практика, направленная на получение лидов и за**ывания онных путем телефонных звонков и спам-рассылок. Не надо так.
                                                                                                        +1
                                                                                                        Это ваше предположение, или коллеги из PVS-Studio именно так и делают? (рассылают спам и звонят)
                                                                                                          –4
                                                                                                          Это мой опыт взаимодействий с другими, крупными IT компаниями России, а так же должностные инструкции продавцов в этих IT компаниях.
                                                                                                          +5
                                                                                                          С чего Вы взяли что это направлено на «получение лидов и за**ывания онных путем телефонных звонков и спам-рассылок». Причин может быть много, не делайте преждевременных выводов.
                                                                                                          Мне кажется что основной причиной может быть изучение потенциального клиента, чтобы выставить «правильную цену».
                                                                                                          Не скажу чтобы мне это сильно нравилось как потенциальному клиенту, но (если я правильно понял идею) идея мне кажется оправданной. Как не крути, цель любого бизнеса — получение прибыли… Высокое качество продукта при этом неплохой способ эту прибыль максимизировать.
                                                                                                            +11
                                                                                                            С чего Вы взяли

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

                                                                                                            Цена на продукт не должна плавать, иначе это создает ощущение, что вам продают продукт стоимостью 10р за 100р просто потому, что вы одеты в деловой костюм.
                                                                                                              +3
                                                                                                              Не сталкивался еще с другими причинами.
                                                                                                              Но это не значит, что их не бывает. Более того, их может быть сразу несколько.
                                                                                                                +3
                                                                                                                Конечно не значит, мы же все здесь взрослые люди и способны отличить субъективный, личный опыт от фактов. Или все же лучше ИМХОвать после каждого комментария, как думаете?
                                                                                                                  –1
                                                                                                                  Во-первых, не уверен что все пользователи хабра — взрослые:)
                                                                                                                  Во-вторых, тут нарушена «презумпция невиновности». Человек понял действие «как захотел», публично осудив компанию за то, как он его понял. При этом неявно обвинив в «получение лидов и за**ывания онных путем телефонных звонков и спам-рассылок».
                                                                                                                  Самое обидное для меня то, что это сообщение «набирает лайки». Т.е. юзеры хабра поддерживают такое поведение.
                                                                                                                    +3
                                                                                                                    Да, вы правы, на хабре не так много взрослых людей, как оказалось, и нужно ИМХОвать (

                                                                                                                    Это нормальная практика для инструментов данного класса

                                                                                                                    Вы ошибаетесь, это ужасная практика, направленная на получение лидов

                                                                                                                    Если вам показалось, что я здесь кого то осудил, вы ошиблись. Я лишь попытался донести автору мое отношение к сокрытию цены и цели этого действия. Автор считает эту практику нормальной, это возможно, в зависимости от целей, но я (ИМХО) считаю ее ужасной, и, как оказалось, не я один. Заметьте, я не утверждал, что автор скрывает цену для сбора лидов и спама, это лишь мое лично предположение. С учетом того, что автор не отрыкл своих истинных целей (честно и беспристрастно), то эта гипотиза имеет право на существование.
                                                                                                                      0
                                                                                                                      Осуждать — высказывать отрицательные, резкие и безоговорочные оценочные суждения о ком-либо, чём-либо, исходя из нравственных, духовных или эстетических оснований;
                                                                                                                      «это ужасная практика» — явное оценочное суждение, оно не имеет оговорки, оно достаточно резкое. Так что я не считаю, что мне это показалось.

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

                                                                                                                      «Заметьте, я не утверждал, что автор скрывает цену для сбора лидов и спама, это лишь мое лично предположение.». Замечаю что это не так. «Вы ошибаетесь, это ужасная практика, направленная на получение лидов и за**ывания онных путем телефонных звонков и спам-рассылок. Не надо так.»
                                                                                                                        +2
                                                                                                                        Вы не договорили:
                                                                                                                        «это ужасная практика» — явное оценочное суждение подобной деятельности в маркетинговом контексте

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

                                                                                                                        Ну пожалейте же вы меня, я же живой человек, разжевывать каждому «не взрослому» на хабре свои мысли заняло бы у меня все рабочее (хочу отметить!) время. Ну чуть чуть головой то подумать можно?
                                                                                                                        Замечаю что это не так

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

                                                                                                                –1
                                                                                                                Цена на продукты очень часто плавает! Например скидки для пенсионеров и инвалидов. Разве это по вашему плохо? Притом такие скидки можно расценивать как средство получение максимальной прибыли. «Малозащищённые» слои населения зачастую ищут самый дешёвый товар, разница в 5% может стать ключевой чтобы привлечь гораздо больше клиентов. (Это всё конечно упрощённое, но идею вы поняли).

                                                                                                                Цена на такой продукт, как PSV Studio, неочевидна. Почти никакой клиент не может себе его позволить. Много-много миллионов стоит этот продукт. Цена становиться низкой толдько ввиду того, что один товар продаётся много раз. Как Вы можете определить сколько он стоит?

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

                                                                                                                Полагаю такой ценовой политике «небольшие компании» должны радоваться. А крупным компаниям, я полагаю, подобные суммы не заметны.
                                                                                                                  +7
                                                                                                                  http://www.spacex.com/about/capabilities
                                                                                                                  Держите. Spacex может написать цену и указать что скидки доступны. Atlassian тоже ничего не мешает, поэтому его юзают компании всех размеров.
                                                                                                                  Небольшие компании видя «обратитесь к сейлзу» понимают, что им не светит в 95% случаев.
                                                                                                                    +3
                                                                                                                    Например скидки для пенсионеров и инвалидов

                                                                                                                    Ну так скидка предполагается от цены. Вы сможете представить себе скидку на продукт, цена на который вообще не обозначена? В таком случае, где гарантия что это будет именно скидка, а не накидка? )
                                                                                                                    Цена становиться низкой толдько ввиду того, что один товар продаётся много раз

                                                                                                                    Исходя из вашей же логики, можно сделать вывод, что чем больше раз он будет продан, тем лучше. Следовательно, PVS нужно продавать индивидуальным разработчикам, коих намного больше, чем крупных компаний. Это не делается по некоторым причинам (уже озвученным здесь). Значит цена формируется все же не из этой простой формулы, а из чего то большего.
                                                                                                                    Как Вы можете определить сколько он стоит?

                                                                                                                    У бухгалтеров для этого используется такая дисциплина, как «калькуляция себестоимости». В теории все просто:
                                                                                                                    Цена = (Sum(ОС) / ПК + Sum(РС)) * (1 + %П)
                                                                                                                    Где:
                                                                                                                    Sum(ОС) — общая стоимость основных средств
                                                                                                                    ПК — количество потенциальных клиентов
                                                                                                                    Sum(РК) — общая стоимость расходных средств
                                                                                                                    %П — процент прибыльности

                                                                                                                    Ребята делают продукт, хотят на нём заработать. Какую бы цену они не выставили она будет некорректной

                                                                                                                    Откуда такие выводы то?

                                                                                                                    Полагаю такой ценовой политике «небольшие компании» должны радоваться

                                                                                                                    Так небольшие компании не являются потенциальными клиентами, чему им радоваться? Они же не будут использовать этот продукт, следовательно их вообще не интересует ценовая политика этой компании.
                                                                                                                      0
                                                                                                                      У нас есть среди клиентов компании, в которых около 10 сотрудников.
                                                                                                                        0
                                                                                                                        Значит с небольшими компаниями вы все же работаете. Но ведь стоимость ПО от этого не меняется?
                                                                                                                          0
                                                                                                                          Конечно не меняется, гарантия 146%
                                                                                                                            0
                                                                                                                            В основном не меняется. Но я не поклянусь на Библии, что никогда никому в жизни не даю скидок.
                                                                                                                              0
                                                                                                                              Ладно, я не хочу выпытывать у вас цену и т.д., это ваша политики и ваш хлеб.
                                                                                                                                0
                                                                                                                                Цена гуглится, если желаете.
                                                                                                                                  0
                                                                                                                                  Только минимальная
                                                                                                                                    +1
                                                                                                                                    Да и старая, скорее всего.
                                                                                                                                    0
                                                                                                                                    Не очень гуглится, если честно.
                                                                                                                        –2
                                                                                                                        Цена квадратного метра при покупке трешки отличается от цены при покупке однушки.
                                                                                                                        При покупке автомобиля с допами можно получить скидку на страховку.

                                                                                                                        И миллион других примеров, за которые не получишь плюса на Хабре, но жизнь — она вот такая.
                                                                                                                          +8
                                                                                                                          А при чем тут скидки и понижение цены при покупке оптом? Когда вы идете смотреть квартиру, вы же уже знаете сколько в ней стоит квадратный метр, верно? Или вы сталкивались с тем, что стоимость квартиры вам называют только после звонка продавцу с корпоративного телефона? Думаю нет.

                                                                                                                          Когда я говорю — цена не должна плавать — я имею в виду то, что цены не должны изменяться в зависимости от платежеспособности клиента. Здесь уже было озвучено, что в цену (зачем то) входит внедрение и сопровождение продукта, но что вам мешает выделить эти пункты (стоимость по которым сложно расчитать) и сделать их обязательными, а цену самого ПО таки указать на сайте. Думаю прайс вида (ИМХО!!!):
                                                                                                                          PVS — 5000$ за одно рабочее место
                                                                                                                          В стоимость продукта обязательно входит:
                                                                                                                          Установка
                                                                                                                          Сопровождение сроком на 2 года

                                                                                                                          гораздо лучше, чем:
                                                                                                                          Позвоните нам и мы сообщим вам стоимость

                                                                                                                          В первом случае можно хоть примерно прикинуть, какие затраты ожидаются от внедрения продукта.
                                                                                                                            0
                                                                                                                            Или вы сталкивались с тем, что стоимость квартиры вам называют только после звонка продавцу с корпоративного телефона?

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

                                                                                                                              Если уж привели пример с недвижимостью, то надо говорить о поиске помещения для компании. В этом случае не только с корпоративных ящиков пишут, ещё и с корпоративных телефонов звонить надо и официальные встречи назначать.
                                                                                                                                +3
                                                                                                                                Все вопросы по поводу покупки жилья прошу писать с корпоративного ящика и обязательно указывать данную цитату:
                                                                                                                                Цена квадратного метра при покупке трешки отличается от цены при покупке однушки
                                                                                                                                  +3
                                                                                                                                  Когда я искал офис на окраине Москвы, чтобы там спокойно работать (9 тыщ рублей в месяц цена вопроса у МКАДа на Щёлковской была, кстати), у меня никто ничего не требовал почему-то.

                                                                                                                                  Ну и да, какая корпоративная сделка? Речь ведь не о корпоративной сделке. Речь о том, чтобы я этот несчастный анализатор попробовал сам, как частное лицо, вечером или на выходных, на своих проектах.
                                                                                                                                    +2
                                                                                                                                    попробовал сам, как частное лицо, вечером или на выходных, на своих проектах.

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

                                                                                                                          +1
                                                                                                                          Напомнило историю о китайских ресторанчиках и кафе в городах, где бывают туристы из России. Цен в меню вы там не найдёте. Цена зависит от того, как персонал оценил на глазок вашу платёжеспособность. Проще говоря, для китайцев цена одна, для приезжих совсем другая (сильно больше).
                                                                                                                            0
                                                                                                                            Это и на барахолках работает в России.
                                                                                                                          0
                                                                                                                          Причины иные и они не имеют ничего общего с лидами. Да, мы пишем письмо тем, кто просит продление trial. Но мы не спамим в почту и не звоним. Не надо приписывать нам такие ужасы. :) Но мы считаем, что так нам лучше. И если даже зря это делаем, то все равно имеем право заблуждаться. :)
                                                                                                                            +11
                                                                                                                            Я присутствовал на семинаре одной крупной Московской компании, на котором прямым текстом было сказано — не выкладывайте в открытый доступ цены по двум причинам:
                                                                                                                            1. Конкуренты
                                                                                                                            2. Можно завысить цену и никто об этом не узнает

                                                                                                                            Есть еще одна, знакомая мне причина — партнерское соглашение — но, думаю, у вас не этот случай.

                                                                                                                            Как бы то ни было, крайне не люблю такой подход, но кого интересует что я там не люблю, ведь правда? )
                                                                                                                              0
                                                                                                                              Московская компания могла бы и третий пункт указать — гос.сектор :)

                                                                                                                              А на самом деле при продаже крупного ПО часто нет понятия цены программы как таковой. Продается, по сути дела, сервис: развертывание, обучение, поддержка и т.п. и т.д… На фоне этого цена лицензии за АРМ иногда вообще уходит в раздел «скидка» (купили большую поддержку — лицензии входят в стоимость).
                                                                                                                              Поэтому цена за лицензию и не указывается — она не имеет смысла, т.к. голую лицензию вам, скорее всего, просто не продадут. Вы купите лицензию без поддержки, до конца не разберетесь, не поймете — будете писать какая программа плохая и портить репутацию фирме.
                                                                                                                                0
                                                                                                                                Может в таком случае следует задуматься об упрощении процесса внедрения ПО, чтоб стоимость внедрения не превышала стоимости самого ПО? Мы же о статическом анализаторе говорим, а не о SAP.
                                                                                                                                  +1
                                                                                                                                  А это вопрос возможностей программы. Чем их становится больше, тем она становится сложнее.

                                                                                                                                  PS: я не о PVS конкретно — я вообще, про метод «цена по запросу».
                                                                                                                                    +1
                                                                                                                                    Я могу привести в пример продукты компании 1С? Цены октрыты, покупайте да ставьте как вам угодно. Хотите посморить о том, что это малофункциональная проргамма с небольшим комьюнити?
                                                                                                                                      0
                                                                                                                                      У 1С кроме коробок есть франчайзинг. Крупные компании не покупают коробки — они покупают франчайзинг, иногда целиком :)
                                                                                                                                      Я работал в компании, которая 8-ку внедряет с момента ее появления и еще не закончила этот процесс. Там цена лицензии не имеет значения.
                                                                                                                                      На сколько я понял, PVS пробовали делать коробку — им не выгодно.
                                                                                                                                        +1
                                                                                                                                        Крупные компании арендуют товарный знак 1С? Зачем?
                                                                                                                                  0
                                                                                                                                  Сапёр?
                                                                                                                              +8
                                                                                                                              Поддержу вас, пожалуй. У меня, например, слишком мало времени, чтобы звонить/писать в каждую непонятную компанию, цена продукта которой меня, вдруг заинтересовала. Может ещё в офис подъехать, записавшись на приём? Я подумывал о применении данного продукта в нескольких проектах, так вот я кажется передумал. Данный пост целиком и полностью вызывает отторжение. Начиная от маркетинговой политики и отношения к одиноким разработчикам (в мире linux их, кстати, очень много) заканчивая дешёвыми трюками с выяснением цены, предназначенными исключительно для того, что бы иметь полное право запихнуть контакты потенциального клиента в свою базу, а так же устраивать махинации с ценой, которую, при таком раскладе, можно формировать из последних цифр номера звонящего и содержимого /dev/urandom
                                                                                                                                +1
                                                                                                                                К сожалению, такая порочная практика у многих российских компаний. МЦСТ, например (там вам вообще не ответят, если вы, по их мнению, не их клиент). Или IDA Pro, чтобы купить которую, нужно пройти семь кругов ада и доказывать, что она вам не просто нужна, а нужна именно в связи с профилем работы компании.
                                                                                                                                  +3
                                                                                                                                  Такие компании, не должны существовать, это какой-то нонсенс. Я, как лично, так и по рабочим вопросам, от лица компании, стараюсь использовать СПО, вообщем-то так и получается по большей части. Коммерческий продукт купить, если он хорош и цена адекватная, а так же отсутствует свободный аналог — тоже «не грех». Но бегать, выяснять цену товара — ну уж нет. Компания, как и товар, цена которого отсутствует на сайте — отсутствует в принципе. Плачевное состояние IT-отрасли в нашей стране позволяет таким компаниям существовать. В условиях нормального, здорового рынка они были бы аутсайдерами по определению. Промолчим уже о том, что подобная избирательность в выборе кому продавать, а кому нет — это вообщем-то на грани закона. Надо уточнить этот момент, но что касается, например розничной торговли — нельзя просто так отказать какому-либо покупателю, потому что он не понравился. С программным обеспечением как дела обстоят я не знаю, вполне возможно, что так же. (поправьте, кто разбирается) (а в карму плюнули за критику, без ответа на сам комментарий, что как бэ намекаэ)
                                                                                                                                    +1
                                                                                                                                    Госсподи, сколько пафоса. А ничего что в IT-отрасли в мире вообще тоже полно таких компаний? У единственного серъёзного конкурента PVS-Studio даже триал нужно выпрашивать. Ядро ARM вы тоже просто так с подходом «компания, как и товар, цена которого отсутствует на сайте — отсутствует в принципе» тоже не купите. А ведь эта «несуществующая в природе вещь» стоит в миллиардах изделий — влючая разные поделки довольно мелких китайких компаний.

                                                                                                                                    В общем: не нужно пытаться сделать мир чёрно-белым, там очень много полутонов. Не путайте, пожалуйста, договор присоединения с другими вещами. Да, в случае «коробочными» продажами — закон содержит кучу ограничений… потому что у вас выбор-то невелик — либо подписывать договор, либо остаться с носом — а если вы договор пишите и подписываете сами (пусть с использованием «рыбы»)… тут ограничений на порядок меньше… потому и не продаются очень многие вещи в этом мире «по цене, указанной на сайте»… собственно почти всё, что продаётся по цене, оправдывающей привлечение юристов так продаётся, даже какую-нибудь Windows большинство производителей покупает совсем не тех условиях и совсем по той цене, что вы на microsoft.com найдёте!

                                                                                                                                    Просто часть продуктов продаётся только по фиксированной цене, часть только по договорной, а внушительная часть — может продаваться и так и так. Если вы никогда не сталкивались с тем миром, где товары продаются не по цене, выставленной на сайте, то это значит, что его нет.
                                                                                                                                      +1
                                                                                                                                      даже какую-нибудь Windows большинство производителей покупает совсем не тех условиях и совсем по той цене, что вы на microsoft.com найдёте

                                                                                                                                      А можно тут подробнее с хоть какими либо доказательствами сего действия? Ничего не подумайте, просто вспоминаю долгие переговоры с Microsoft и посыл от лица этой замечательной компании на «три буквы» с аргументацией — у нас политика!
                                                                                                                                        +2
                                                                                                                                        (Ответ не Вам конкретно, а просто «мысль вслух»): послушав вас всех, горячие эстонские парни, просто жутко захотелось написать свой анализатор, с гитхабом и опенсорсами.
                                                                                                                                          0
                                                                                                                                          Если не сложно, пишите сразу под PHP, буду признателен ;)
                                                                                                                                            0
                                                                                                                                            Под хаскель.
                                                                                                                                          +6
                                                                                                                                          Всё так и есть в мире, как вы говорите. Вот только не надо утверждать, что это нормально. Если в какой-либо отрасли большинство живет по какой-то «схеме» — это совсем не значит, что это нормально и правильно. На рынках, на которых покупатель бегает за продавцом господствует либо дефицит, либо монополия или картельный сговор. Ну либо маркетологи раздули спрос, как на фуфломицины в сезонную волну гриппа. В нормальных условиях, на здоровом рынке никто не должен ни за кем бегать — это раз. Цена и условия сделки должны быть прозрачны и понятны всем сторонам — это два. Цена и условия должны регулироваться рыночными отношениями и ни чем иным — это три. Без всякого пафоса. И каждый, кто поддерживает «тёмные» схемы, подобные описанным в посте должен быть готов к определенному из развитию. Сегодня вы выпрашиваете товар — завтра уже покупаете в слепую. Послезавтра — покупаете принудительно, как ОСАГО например, или как «налог на пиратство».
                                                                                                                                            –4
                                                                                                                                            Цена и условия сделки должны быть прозрачны и понятны всем сторонам — это два. Цена и условия должны регулироваться рыночными отношениями и ни чем иным — это три. Без всякого пафоса.
                                                                                                                                            Серьёзно? Это у нас называется «без пафоса»? То, что вы тут написали — это описание «сферического» (в вакууме) свободного рынка. Каковой, в общем, является неплохой математической моделью, но у которого есть одна проблема: в нём нет прибыли — в долгосрочной перспективе, по крайней мере.

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

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

                                                                                                                                            Мир — он не чёрно-белый, в нём много оттеноков.
                                                                                                                                              +3
                                                                                                                                              в нём нет прибыли

                                                                                                                                              O, rly?

                                                                                                                                    +1
                                                                                                                                    Не могу ничего сказать конкретно про PVS, но это нормальная практика для продуктов со сложным ценообразованием. Например она позволяет гарантировать, что заказчик не забыл посчитать все необходимые лицензии, или добавил в сервер необходимый extender для покупаемых дисков или плат.
                                                                                                                                      +4
                                                                                                                                      Компания ориентируется на крупных клиентов, сильно естественно, что эти клиенты в любом случае обратятся к поставщику с кучей вопросов и поставщик напомнит им про доп. лицензии (если таковые будут нужны), расширения и т.д. Поставщик уж очень боиться испортить себе репутацию надуманными предлогами (ну или не надуманными, ктож их знает).
                                                                                                                                        +7
                                                                                                                                        Именно такая практика приводит к тому, что один и тот же томограф покупают в разные больницы по совершенно разной, на половину порядка отличающейся цене. Это бред и идиотизм, который призван затруднить финансовый анализ, не неся при этом никакой выгоды для покупателя. Он нужен продавцу, и нужен именно для того, чтобы было труднее сравнить стоимость различных решений, и чтобы вытянуть из заказчика максимум денег, не затрачиваясь на улучшение продукта. А в случае с гос заказами это вообще идеальный способ доить государство. И это — признак недобросовестного и беспринципного продавца, который не считает нужным уважать своих потенциальных клиентов и конкурентов, да и просто окружающих.
                                                                                                                                          +1

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

                                                                                                                                            +3
                                                                                                                                            Вам в голову не приходило, что сложные схемы лицензирования, когда нужно звать отдельно спеца, чтобы посчитать сколько и каких лицензий нужно купить и какую схему из 10 выбрать, чтобы было выгодно и потом не платить заново, когда придется расширяться, а так же всякие экстендеры для серверов, которые включают за деньги уже имеющуюся в сервере железяку, за выключение которой производитель хочет отдельных денег, но при этом он уже её произвел, со всеми вытекающими затратами — все это как раз следствие подобных схем, прямая работа маркетологов. Это все следствие, а не причина.
                                                                                                                                            +3
                                                                                                                                            Что вы все как маленькие?
                                                                                                                                            Лиды, скидки, конкуренты, партнёры, сервис…
                                                                                                                                            Сколько нелепых и глупых попыток оправдать серую ценовую политику…
                                                                                                                                            Знайте!
                                                                                                                                            Есть только две причины скрывать цену:
                                                                                                                                            • Нае*? ать.
                                                                                                                                            • Откатить.
                                                                                                                                              0
                                                                                                                                              Тсс… Вы что так прямо?! В СССР секса России корупции нет!
                                                                                                                                                +3

                                                                                                                                                Конечно нет! Есть только коррупция.

                                                                                                                                                  0
                                                                                                                                                  Вы вынудили меня переключить язык ввода в браузере на Russian!
                                                                                                                                                +3
                                                                                                                                                Кстати, ещё пришло в голову. Возможно, так проще уходить от налогов…
                                                                                                                                                  +1
                                                                                                                                                  Входит во второй пункт
                                                                                                                                                    –3
                                                                                                                                                    Не хотел отвечать, но не выдержал. Наше общество больно. Кругом всем мерещатся какие-то откаты, уход от налогов. Facepalm. Никому не откатывали и не собираемся (что многим будет удивительно, никто и не предлагал), честно платим все налоги и работаем полностью в белую. Никому не приходит в голову, что мы, например, на очень долго зафиксировали цену для Российских клиентов в рублях, после того как скаканул доллар. Можно сказать, поддерживали отечественного производителя ПО.
                                                                                                                                                      +4
                                                                                                                                                      Дайте линк на свой сайт, где она там зафиксирована?

                                                                                                                                                      Нет? Ничего не зафиксировано.
                                                                                                                                                        –3
                                                                                                                                                        Ага, ага, а Родулгин своей музыкой каждую копейку заработал.
                                                                                                                                                          +5
                                                                                                                                                          > зафиксировали цену для Российских клиентов в рублях, после того как скаканул доллар
                                                                                                                                                          А причем тут вообще доллар? Вы оплачиваете аренду в валюте? Покупаете специалистов за границей? Вы зарплату всему персоналу от гендиректора до уборщицы подняли пропорционально росту курса? Уверен, что на все вопросы ответ один — нет.

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

                                                                                                                                                          P.S. Вот только не надо про рост цен на все в 2 раза. Даже автомобили, за которые платят в долларах, в розницу выросли процентов на 20-30, а не в два раза.
                                                                                                                                                            0
                                                                                                                                                            > скакнувшей валюте
                                                                                                                                                            Вообще-то, скакнул как раз рубль. Вниз.
                                                                                                                                                              +2
                                                                                                                                                              Во первых, давайте обсуждать факты, а не философские суждения о сущности бытия.
                                                                                                                                                              А во вторых, не я, а господин Andrey2008 изначально употребил термин «скаканул доллар», но Ваш комментарий почему-то адресован мне.
                                                                                                                                                                +1
                                                                                                                                                                потому что вы написали
                                                                                                                                                                в скакнувшей валюте

                                                                                                                                                                (что я и в прошлый раз процитировал, впрочем)
                                                                                                                                                                Поэтому и вам. А Andrey2008 всё равно практически не читает комментарии и его поправлять бессмысленно.

                                                                                                                                                                Ну и
                                                                                                                                                                Во первых, давайте обсуждать факты, а не философские суждения о сущности бытия.

                                                                                                                                                                Вообще-то, именно это мы (ну, по крайней мере я) и делаем. Или вы не согласны с фактом что это именно рубль скакнул вниз, а вовсе не все остальные мировые валюты разом вверх?
                                                                                                                                                                  +1
                                                                                                                                                                  > Или вы не согласны с фактом что это именно рубль скакнул вниз, а вовсе не все остальные мировые валюты разом вверх?
                                                                                                                                                                  Единственной денежной единицей в РФ является рубль, следовательно да, относительно денежной единицы, используемой в расчетах на территории РФ скакнули вверх многие мировые валюты, а рубль никуда не скакал — монета в 1р этого года и 2014 года — это одна и та же монета с одним и тем же номиналом, а деноминаций и подобного в последние годы в стране не было.
                                                                                                                                                                  Внутри страны не рубль оценивается в долларах, а доллар в рублях. Доллар — товар, а рубль валюта.

                                                                                                                                                                  Однако, покупательная способность рубля действительно уменьшилась. С этим я спорить не буду, так как именно это является фактом.
                                                                                                                                                    0
                                                                                                                                                    Может вы и правы. Я ознакомился со статьей, в которой вы поведали о провале продаж специальной версии PVS-Studio для маленьких команд и одиночек.
                                                                                                                                                      +5
                                                                                                                                                      Тогда перейдите уже в класс повыше, в конце концов.

                                                                                                                                                      CLion можно эвалюэйтить бесплатно без всех этих игр. Intel MKL доступна бесплатно. Intel IPP доступна бесплатно. Intel VTune (или как оно там сейчас называется) раньше было доступно бесплатно для некоммерческого использования, сейчас доступно бесплатно для опенсорса, учёбы и этого всего.

                                                                                                                                                      Ну в самом деле.
                                                                                                                                                        +1
                                                                                                                                                        Что-то Intel проигнорировал все попытки запросить триальную версию VTune для нужд научной диссертации в государственном университете. Не всё там так доступно, как пишут.
                                                                                                                                                          0
                                                                                                                                                          Ну, имевшаяся у меня лицензия как раз перестала действовать с 2016-ми версиями продуктов, дойдут руки на днях — буду запрашивать новую, для опенсорса, правда. Посмотрим, как оно будет.
                                                                                                                                                            +1
                                                                                                                                                            Если участвуете в любых open source проектах просто приложите ссылку на github. Из тех кого я знаю всегда за пару дней присылали ключи, никому не отказывали.
                                                                                                                                                            –1
                                                                                                                                                            Intel может себе это позволить, в отличие от.
                                                                                                                                                              +2
                                                                                                                                                              Может позволить себе что именно? Выложить ссылку у себя на сайте, условно?

                                                                                                                                                              JetBrains может себе позволить выложить ссылку у себя на сайте?

                                                                                                                                                              А вот PVS не может? В чём разница?
                                                                                                                                                            +3
                                                                                                                                                            Это дебильная практика для абсолютно чего угодно.
                                                                                                                                                            0
                                                                                                                                                            Или вам особо не интересны разработчики одиночки и совсем уж небольшие команды?

                                                                                                                                                            Не интересны. Об этом было выше.
                                                                                                                                                              –4