ParaView is open source, freely available for everybody - and if you have questions, just ask the friendly people at Kitware Ltd. through the available forums: Isn't that great? I for myself like it very much - and say thank you for all the support that I was able to receive from that side! But how is it possible? Why does not everybody publish each and every software for free? Well, even programmers need something to eat, a place to live and somebody to care for their health and old age - and with this things are getting a bit more complicated.
I want to share with you some reasonings about software licensing, fees and open source software which are actually standing behind AthosGEO View and Blend and the way how they are published by cobo GmbH. Let me start with the general question "What is a software?" Put very simply, I can see two possible points of view that are very different and both very valid at the same time:
- Software is a form of know-how. In other words: It is like science, and software development is like doing research. It was a learning throughout the last centuries: science prospers best with the maximum possible degree of openness, freedom and exchange of ideas. This is easily understandable because good ideas will trigger more good ideas in the heads of other people - and world population is the largest possible pool of "other people". Such a thing can happen if sponsors enable it for the benefit of all. It may be wealthy people or companies who see the need and donate money. Or governments sponsoring a free education and high school system. Or individuals in an economically independent situation, giving their working time for free.
However, in the past, both governments and companies have also tried to keep scientific results as their exclusive property. This may generate a short-term benefit for them - and at the same time it makes further development sterile and impotent.
Many people may not know the fact that the origin of patent law had exactly this background: As a compensation for publishing their exclusive research, companies are getting a time limited legal right to exclusively generate an economic benefit from it's use. But this is of course not any more about plain scientific work - it is about "applying" it. And with this we come to the another valid point of view:
- Software is a means of production. In other words: It is like a machine, and software development is like building that machine. And like any other machine, users of that machine will have to pay money to buy it, and that is how it is funded. With the only difference that software has no production cost comparable to a truck, camera or robot! In order to compensate for this, the rather abstract concept of "intellectual property" was invented - which leaves us with the need to enforce it with all kinds of rather artificial "copy protection" measures. While being often a need to ensure proper payment of license fees, they also tend to block the best possible use of the software in every possible context because that often requires free access to the source code for little adaptations and extensions which is not possible.
In legal terms, the first of the two points of view would be covered by copyright while the second is the domain of patent law. But due to the fact that both points of view are valid in the case of software development, the legal situation is not so easy - and there is also a difference of basic understanding between America and Europe:
- In America, no differentiation is made between "software as know-how" and "software as a machine". This means that patent law (that is basically for "inventions" or "machines") is applicable to software without restrictions.
- However in Europe, software patents are only possible if the software is part of a physical machine, while otherwise it is like any other know-how and protected by copyright only.
I must admit that for me the European version makes relatively much more sense. Being a geologist myself, I am glad that geology by itself is not patented but freely useable by anybody! Which does not exclude the possibility to offer services to people who need a geologist and earn a living with it. Or also not the possibility for a company to keep their exploration results for their exclusive use. However, the American version tends to be globally more and more accepted due to economic predominance, and also the copyright is more and more interpreted as being a law to enforce exclusivity at the expense of public access and free development. All this cannot be changed or very much influenced by a limited number of people. Instead, a practical solution needs to be found in real life that is a compromise between an ideal solution and the available legal constraints and possibilities.
For software, available legal models can be roughly classified in the following groups:
- Open source with a "viral" license - meaning that any derived work has to be published as open source as well, and with the same kind of "viral" license as the original.
- Open source with a permissive license - meaning that derived work can be published with whatever license seems appropriate for the derived work.
- Closed source with license fee - meaning that derived work is not possible (source code not available!) and the use of the software is restricted to the licensees only.
- Software as a service - meaning that the user does not even have the right to run the software himself, but instead he pays for the service of being able to use it.
For me all these models have their proper justification, depending on the specific circumstances.
The first two open source models are the most beneficial for the general public, but they do not include anything about how service and maintenance will be funded and provided - which is a reason why many companies do not allow open source software internally. A rather bad reason in my opinion because there are plenty of ways to provide support, maintenance and development anyway - actually many more than for any other kind of license! It can be provided by companies such as Kitware Ltd. (the maintainers of ParaView and other softwares), or like currently done by cobo GmbH for AthosGEO View. Even in the case that one company providing support goes out of business, another one would be able to take it up. Foundations are another way to open up development options - like it is happening with softwares like LibreOffice, QGIS or Mozilla, or for a website such as Wikipedia.
Little side remark at this point: If sponsors for a foundation can be found, cobo GmbH would be ready to contribute the property rights of AthosGEO, including both AthosGEO View and AthosGEO Blend, into a foundation based project that maintains the general availability of the tools.
The third model gives the maximum of freedom to the software provider: He can charge license fees from the user - without any further obligation than providing the software. But the provider has also the freedom to define the meaning of license fee in a different way - like cobo GmbH is doing it currently for AthosGEO Blend: We do not want to charge the user for the work that has been done for writing the software in the past. It's done, it exists, and copying it is (almost) no work.
Instead we want to use license income for building a future - improving the software and developing new features! Regarding this further development you will see another blog contribution here in this place - with specific proposals and the possibility to open a discussion.
Summarizing finally the licensing subject with special reference to AthosGEO:
- AthosGEO as a whole would not be possible if ParaView was not offered with a permissive open source license: Just counting "source build units", ParaView makes up more than 90% of the code of AthosGEO. The same is true for the linear optimizer - COIN-CLP - that is available with a comparable license. And ParaView is also moving forward, from version 5.6 to version 5.7 during the year 2019. The internal changes were considerable, and during the last months, a lot of work also at cobo GmbH went into following that development with AthosGEO - adding also a few new features "for free". This update is currently being tested by a number of users, about to be published as version 1.1.0. Another effect of this reworking of the code is the fact that AthosGEO View and AthosGEO Blend have now completely separate code bases - which allows to finally actually publish the source code of AthosGEO View on some open platform: In the past this was only a promise, with the mixing of codes between View and Blend version being a major reason for not doing it yet.
- AthosGEO View is offered at the same permissive open source license conditions as ParaView. Meaning that it can be downloaded, installed and used by anybody for free. This gives opportunities not only to people in an academic context or wherever to work on it, but also the potential that companies can add or have added their own plugins to the code. These plugins can either be published as parts of AthosGEO View, giving the company some kind of automatic maintenance and update feature: Whatever update AthosGEO View will receive in the future (see above for example!) will of course carry with it all the contributed plugins. Or they keep the one or other plugin for exclusive own use, like if it would affect trade secrets. However, this will also leave the responsibility for doing or paying for updates in the hand of that company. This will be a subject of another blog in the next future.
- AthosGEO Blend is offered with a commercial license for a yearly fee. This license money is currently a main source of funding for further development. More about such further development in the next blog - following within days, not months.