That's right, I said it.
We’ve all known it. We’ve (unfortunately) had to deal with it.
Scientific software is bad.
As consumers, we take for granted that our apps are easy to use and look good. Despite software being used in labs for the past three decades, there has been little improvement in the usability and aesthetic of scientific software. As a cloud software company working in the domain, I am constantly amazed how easily impressed scientists are by well-designed software.
Need more proof that the state of scientific software is troubling? This week TechCrunch reported that the National Science Foundation is "putting $35 million towards a pair of software institutes that will build the tools necessary for 21st-century research".
It begets an important question: why is scientific software so bad? Having pondered this question, there are a few ways to explain it:
From pharma to chemicals, food to petroleum, over $250 billion is spent annually on laboratory-focused research. The challenge is that scientific R&D is not one $250 billion market, but 250 $1 billion markets.
What do I mean by that? Scientific research is composed of many different fields and sub-fields. Let’s take chemistry as an example. There are numerous types of chemists: inorganic, organic, polymer, and analytical, to name a few. Each flavor of chemistry has their own unique instrumentation, experimental methods, and data analytics. The result is a highly fragmented set of requirements that preclude a large market opportunity. There simply isn’t enough of a business opportunity in any specific type of science to motivate a for-profit entity to invest in creating good scientific software.
Focus on hardware
Over the past half-century, science has advanced because of innovation in instrumentation. Greater sensitivity, higher throughput, and new functionalities have been the focus for manufacturers of instruments. Breakthroughs in detection limits and reductions in cost have supported faster and better science. Though these devices are powerful, a persistent focus on the hardware relegates the software to an after thought. As a result, the quality and usability of scientific software wanes.
To improve the quality of software, development teams require real-time feedback on their product. A/B testing and continuous deployment are the basics of modern software development, however, these processes are rarely implemented in the scientific domain. The main reason is that, till this day, the majority of scientific software is deployed on-premise (e.g. installed on a PC in the lab). As a consequence, scientific software developers are unable to iterate quickly and improve their product.
The software shift
Alas, all is not lost. Over the past decade, we have seen a monumental shift in computing. A move from on-premise software to cloud-based software that continuously improve. The shift enables speed, flexibility, and lower costs when deploying software.
A new breed of scientific software providers have emerged. Companies like Benchling, LabGuru, Ovation, and LabCloud (below), have all shown how beautiful scientific data management can be, when married with cloud software.