>
>
What is the reason for making PVS-Studi…

Andrey Karpov
Articles: 673

What is the reason for making PVS-Studio 4.00 a commercial solution? :-(

Unfortunately, we must make the PVS-Studio 4.00 static analyzer completely paid. We intended to make only the set of 64-bit rules paid while keeping the general analysis and OpenMP-software analysis free. But the world is stern and we've found no support.

OpenMP support in PVS-Studio had been dropped after version 5.20. If you have any questions, feel free to contact our support.

We intended to use the free rule sets for the purpose of acquainting programmers with PVS-Studio and at the same time trying to interest them in detection of 64-bit issues. We hoped that the rule sets being free would give us more freedom in promoting our tool. You see, everybody pretends that various IT-communities are more loyal to free tools. We suspected that it was a lie but now we are convinced of it.

Let me explain it by an example from practice. Some time ago we published a series of articles on CodeProject and programmers liked many of them. For instance, the article "32 OpenMP Traps For C++ Developers" was acknowledged the best article of the month. But after that, CodeProject's administration decided to get money from us for us writing about PVS-Studio. But they didn't tell us that straight, they started to muddle our brains instead saying that CodeProject is a portal for open-source projects, so if we wrote about PVS-Studio, we had to make some free solution available to download and try. Of course, they actually wanted money but for some reason they consider it a bad form to say something straight. We didn't have money then and pretended not to understand their hints. As a result, they deleted several articles from CodeProject where our products had been mentioned, including the article "32 OpenMP Traps For C++ Developers". The criterion for deleting them was simple: all the texts mentioning Viva64/VivaMP must be deleted. They left only our worst (from the viewpoint of usefulness for readers) articles. This is how they keep their ranks clean.

We got upset about it but soon calmed down and decided to return to CodeProject when we had a free general analyzer. We had some plans about it at the moment. So we write an article about a new free tool available to programmers to check software; people like the article, read it and rate it high. And at this moment, the site's administrators take off their masks at last and, since they can't feed us with the stuff about the free character of their resource anymore, they tell us straight that their project is commercial, so we have to pay anyway.

.... However, your article 'Let the world tremble! We've released PVS-Studio 4.00 with a free general-purpose analyzer!' has been deleted because it is, unfortunately, an advertorial and not an article. We'd be more than happy to discuss some great rates for posting advertorials in our showcase section. ....

Well, it's clear - this is not an article but an advertorial (of a free tool!). Please, proceed to the commercial section! I can't blame them for anything. They want money. Well, we want money too. It's a natural desire. But, you know, we are not ready to post information about a free tool in the commercial catalogue - we aren't Google or Intel after all.

So, the free character of the analyzer failed to help us in any way when dealing with CodeProject. It's no way better with Wikipedia as well. They go on deleting our articles as it has been all the time before. And we are not familiar with the resource's local mafia to get to the "List of tools for static code analysis" page. It's clear that we must find some necessary person and "stimulate" him so that he could put in a word for us and all. But our hearts protest about promoting a free tool in such a way. Well, we'd rather promote some commercial solution. And please, don't tell me about freedom of speech in Wikipedia and other stuff like that in comments.

So, all the plans of how we could benefit from the free character of the analyzer, failed. Instead of benefits, we've got a complicated licensing system (one paid analyzer, two free analyzers). People started asking us: "Well, is your tool paid or not? What's paid then?"

Finally we decided that since we couldn't benefit from our free solution, there's no need in going that way. We simply made everything paid. Now a user purchases all the 3 rule sets at a very reasonable (in comparison with others) price.

Somebody would say it's a bit too expensive. It's not. First, market leaders have much higher prices. But if you compare our tool with products of the Gimpel PC-lint class, PVS-Studio is better in many parameters. For instance, you don't have to additionally buy the Visual Lint graphics interface. Yes, PC-lint has more diagnostic rules. But it is only FOR NOW. Second, half of all the tools are absolutely useless for developers using Visual Studio. Many defects are well detected by the Visual C++ compiler while such warnings as "538. Array's size is more than 64 Kbytes" are simply meaningless. But we are looking ahead. For instance, we added a new rule "V554. Incorrect use of unique_ptr" the other day. I searched for such a rule concerning the error of using unique_ptr in many projects and failed to find it. But it's not because the rule itself is useless - it's because almost nobody uses this unique_ptr yet (this is C++0x stuff). However, errors related to it will surely occur.

I've written this text as an answer to the question why we have changed our mind about presenting a free tool to the world. But I want to thank all the people who sent us messages about errors and responses. We appreciate them very much and many of the things you told us have been already implemented or will be implemented very soon. Yes, by the way, you may still easily download and try the tool. We've laid out its trial version whose only restriction is that it shows location of only 25% of all the errors in code.