openLCA is open source software – what exactly does this mean?
openLCA is licensed under the Mozilla Public License, MPL 2.0, which is an open source license. This text explains the implications for openLCA users, software developers, and sponsors of open source software development.
Implications of openLCA being open source
Open source software (not to be confused with open access which is more relevant for published journals) needs to fulfill two main criteria, following the open source initiative, OSI (http://opensource.org):
- the source code of the software is available to everyone – for free, and
- the license which accompanies every distributed file of software recognises the creator of the code, and provides a mechanism to further ensure the open source “nature” of the file.
http://opensource.org/osd lists more detailed criteria, ten in total.
This means, for you as user:
openLCA is completely free, without any license costs. The software is fully transparent. You can freely share both the software and any models you create in openLCA, provided the database licenses allow it. If you want you can even inspect the code for any potential issues including security issues and any malicious behaviour. This makes open source software also suited for work in highly sensitive areas.
The fact that openLCA is open source does not mean that you have any obligation to publish or make accessible any data you use or models you create in openLCA.
This means, for you as software developer:
If you have an idea on how to improve or modify openLCA, feel free to do so. We’d appreciate it if you could contact us then so that we can align our work. If you distribute the modified software, then the open source license applies: you then need to publish, and make available for free, the source code of your changes (the “derived work”). You can also contact us and ask us to include the code in our distribution of openLCA (which requires that we perform a quality check of your contribution).
This means, for you as a sponsor of openLCA development:
We at GreenDelta also develop software that is not open source. However, if we develop open source software, then sponsored development will be publicly available; it can be inspected, used and possibly refined by others. You are not locked in and bound to one specific software developer.
There are many different open source licenses (http://opensource.org/licenses); the MPL2.0 license that we selected is often characterized as (trying to provide) a good balance between open source and closed source, proprietary software developers.
Examples of solutions based on openLCA
LCA commons: The LCA commons server operated and developed at US Department of Agriculture, since several years now, was built using the openLCA database structure and reference flow list, and has been synchronised since then several times with ongoing openLCA developments.
Chile data collection tool: At Fundacíon Chile, a data collection and sustainability tool was created to reflect needs of a sustainable supply chain product project in Chile, for about 20 companies mainly in the food sector. For data collection, the existing openLCA Excel export and import feature for importing process data sets was extended and modified.
Further selected examples, ongoing and future ones, are and will be provided on the use case section.
Other open source examples in Life Cycle Assessment
There are not many – but two prominent example exist:
- soda4LCA is a node-based database structure for LCA, developed initially at the KIT in Karlsruhe, now further developed and promoted by our friend Oliver Kusche, with support for example from the European Commission. It is the technical basis of the LCDN network. openLCA has, since long, a direct connection to soda4LCA and can read and write data from soda4LCA, which is now used in several projects.
- Brightway/Brightway2 is a python-based LCA software developed by Chris Mutel, now at PSI in Switzerland. The software has nice features (e.g. for graphical analysis) but is rather a toolkit of Python modules for advanced users.
Examples where open source was not applied in the LCA context
There are several examples in the rather small world of LCA where in hindsight, an open source strategy could have made sense:
- ecoeditor: the EcoSpold2 format was developed on behalf of the ecoinvent centre for the ecoinvent v3 database; ecoinvent uses a software called “ecoeditor” for editing data sets, and for submission of new data sets to the database, in EcoSpold2 format; unfortunately, the format was modified in the ecoeditor software, and the official format specification was not updated. This means that at present, there is no valid documentation of the EcoSpold2 format available, and any other software developer who wants to implement the EcoSpold2 format needs to experiment with the ecoeditor to detect the deviations from the official format specification to make the implementation useful, since the ecoeditor tool is used in practice.
- ecoinvent linking: even further, a research project called “ocelot” was recently started with the aim to “reverse-engineer” the ecoinvent linking algorithm which is now implemented for and used by the ecoinvent centre; the ecoinvent centre is one of the project participants (!)
It is of course only a coincidence that both examples are related to the ecoinvent centre; we believe both show that closed source software can lead to higher maintenance costs, and it can lead to clients losing control over a once custom-made software.
The business case for open source (in LCA and software especially)
So – how does this work? We are able to provide a reliable, user friendly and up-to-date software which has even quite some features not available in commercial software which is sold for almost 10,000 € per license? Is there a catch, or a trick?
Why we can provide openLCA for free
- Direct support: We are very grateful that already at the very beginning of the openLCA development, we found organisations, companies, other consultants and even LCA software developers who supported the development of openLCA. The group of supporters has changed a bit (LCA software developers have now left), but some are supporters from the very beginning. Current paid projects to develop openLCA further also contributes to the improvement of the openLCA wherever possible, to the benefits of those who cannot or do not want to engage in commissioned development.
- services “around” openLCA: We also offer trainings in a variety of forms, service contracts, case studies, databases for openLCA, which provide additional income
- not the least: We are good at developing software!
Is there a catch, are there hidden costs for example?
This is of course important, and stressed e.g. by PRé, makers of the SimaPro software, stress that there are no hidden fees in SimaPro (on a page where you are invited to purchase the DataSmart database in addition to SimaPro).
For openLCA, there are no hidden costs either. Service contracts, trainings, and for-purchase databases are not free but available for a competitive price, the databases e.g. for the same price as from the original data provider (but also adapted to openLCA).
As a result, you can, as user, tailor your software and data and support package to your needs. If you do not need an ecoinvent, or GaBi, database, then you can use openLCA without; if you do not need a service contract or training, then you can also use openLCA without.
Therefore openLCA is able to offer you what you really need. Tailored support, tailored databases, and possibly even an adapted software, developed in an affordable way, with features not available in any commercial LCA application.
And there is no catch or trick; it is an offer that openLCA is open source, an opportunity and chance, to be utilised by those who understand.