Commercial vs Open-Source Scientific Software

While open-source offers great long-term value for end-users, there are challenges in making a high-quality open-source scientific software project viable beyond academic use

Challenges of Open-Source Scientific Software

It’s been more 10 years since I got my first job working with scientific software for simulation and data analysis. In this post I will share some of my views about the scientific software industry.

In my first job I was working as an intern in an industrial R&D center. As I’m not sure of what I can publicly share about my experience, I will be omitting many details just to be on the safe side.

I was part of a team in which we used a commercial simulation software. However, as our use case was pretty niche, we needed to develop certain customizations to suit our needs.

While this commercial software offered great value for the company I was working for (saving countless of man-hours of software development time), there were a number of problems and limitations we encountered:

What should be offered to users of scientific software?

Given this experience, I think the value proposition that should be offered to users of scientific software is as follows:

With commercial software the first feature comes guaranteed: you start with something easy to use, indeed. But you have to give up substantially on customization**, and accept that some degree of vendor lock-in with take place, so it will be hard to switch later on.

Academic open-source software, on the other hand, solves the second and third of these issues, ensuring transparency, reliability, and long-term value for users. In particular:

But of course, there are limitations to open-source scientific software, the main one being that it is generally harder to use, to the extent that it could be even hard to install.

Roads for sustaining open-source initiatives

Now, there are challenges in making a high-quality open-source scientific software project viable beyond academic use. Many interesting alternatives have been proposed over time in order to make working on those projects was financially sustainable, each one with its pros and cons:

What is the Julia Computing business model?

Let’s look at what some of the founding members of the Julia programming language have done. What they do and what they don’t.

I believe they attempted pretty much all the above methods at once, but at the same time making an effort so that nothing gets in the way of the open-source ecosystem.


So maybe we can draw a conclusion here, on what is a good approach to sustain open-source scientific software: try everything at once (maybe forgetting about dual-licencing and sticking to a permissive MIT license), but making sure that there are well-separated use cases for the open-source and the commercial components or associated services.