Proprietary vs Open Source: The Software Dilemma
At the end of 2017 I published an article about bioinformatics, as an introduction to the technology, major players and current goings-on in the market.
The article was received pretty well, on the whole, and caused some really interesting conversations, but one comment in particular caught my eye, from Martin Gollery.
Here it is:
It might have taken 10 months (sorry about that, we’ve actually had our first child in between!) but I’d now like to address the topic of open source vs proprietary software in the bioinformatics space, and hopefully complete, or at least continue, the discussion!
So thanks Martin, and here goes.
What’s the difference between Open Source and Proprietary Software?
The first and most importance difference between the two is price. Namely, open source is free to use, built by academics, and available for anyone to download, get their hands on and alter the source code.
This means that open source software can be the perfect tool for some organisations. The capability to utilise and edit all aspects of the software means that, if you have the required skill set, you can potentially create a bespoke software package for your business.
Proprietary software is not free. It’s usually created by large software companies who then sell licences (although other formats are available) to clients. Proprietary software will usually have a much more focused purpose and providers have specialist customer service teams available to assist with any problems should they arise. Also, they make sure to continually update the product with new releases to improve the user experience. As it’s a product designed to be used for the long term, providers also have the ability to work with customer feedback. That’s as opposed to open source where, typically, once releasing the software, the owners’ focus will then shift to working on a new project.
One well known example of open source vs proprietary software comes with operating systems. Linux is an open-source offering, available for anyone to download for free, although it is notoriously difficult to use for average computer users looking to ‘plug and play’. On the flipside to this, tech giant Microsoft’s paid offering, Windows, does just that.
But let’s explore the differences a little more. By talking about cooking.
Home Made vs Restaurant Quality
One way to think about open source software is like you’re cooking a meal, for yourself, at home. With the internet’s assistance, you can literally have anything you’d like in the world. Just find a recipe, source the ingredients and get started.
The quality of the end product largely depends on your own cookery skills. If you don’t know how to steam or sauté, then this probably isn’t the best route for you to go down.
Also, if something does start to go wrong mid-cook then, outside of your friends or family, there’s no one you can turn to for help. It might mean that you end up with something a little different than what you set out to achieve.
You also might find yourself ‘making do’ when it comes to some ingredients. You might use regular table salt because you just weren’t able to find that pink Himalayan rock salt that the recipe demanded (often, drivers aren’t designed specifically for open-source software – users make do with existing, generic ones).
The benefit of cooking for yourself means that, if you have the skills, you can make something that is perfect for you. You can cater for your own individual tastes, however unique, weird or wonderful, in ways that a restaurant trying to appeal to the masses couldn’t. You just have to be prepared to take on the risk in case it all goes a bit wrong, unless you’re a great chef (developer).
The proprietary route is the equivalent of going out for a meal in a restaurant. Compared to being able to choose from everything in the world, you have a small selection on a menu to choose from. You can rest assured that the restaurant will be good at these few things. If not, you’re well within your rights to send it back or lodge a complaint with one of the waiting staff who are on hand to make sure you have a good experience.
You usually know what you’re getting when you go to an Italian, Mexican or Chinese restaurant. Proprietary software works in the same way. If you’re looking for secondary or tertiary analysis software you can go to a specialist provider of this. You’ll pay for quality, and the assurance of a working, useful product.
Just because it’s off the shelf doesn’t mean you can’t customise it either. Just like when placing your order, software providers will always go through an information gathering stage designed to match their product to your preferences. So if you don’t want pickles on your burger, that’s ok.
Crucially though, there is a limit to what you can change. Lastly (thanks for bearing with me on this), your personal preferences when it comes to the look of the restaurant in terms of decoration, cutlery or music probably won’t be listened to. After all, if the rest of the restaurant’s customers don’t mind those aspects then they aren’t going to bend over backwards to meet your needs. The user/customer experience needs to appeal to the many, not the few.
What About Bioinformatics?
Don’t worry, that’s the last of the restaurant references. But now we’ve gone into some detail about the differences between the two types of software, how does it apply to bioinformatics?
In bioinformatics, most people engaging with software will be the equivalent of ‘chefs’ (ok, that’s the last one) as it’s not exactly a mainstream pursuit, so the lack of plug-and-playability shouldn’t be a stumbling block for the average bioinformatician as they’re already well-versed in the complexities of software development and computer programming.
Which explains the popularity of programmes like GATK, Galaxy and BLAST.
However, the proprietary route can eliminate the need for computer whizzes altogether, potentially leading to a cost saving in that department. As the software is so easy to use, it makes everyone more capable of carrying out the same complex procedures.
However, even if something is created for free, it still need maintenance and troubleshooting which usually means further investment is needed. Usually, open source software is created in academic institutions and funded by University funding or grants, but this eventually runs out.
Whilst there is an engaged and passionate group of developers online who will often pitch in to help maintain open-source software, passion will only go so far.
This means that, whilst bioinformaticians can, in theory, have a low cost or even free solution which is super-customisable, there is always the danger that problems can arise further down the line which may not be fixed straightaway, or even that the software can become outdated due to a lack of updates as funding dries up.
So, which is the best? That’s the million dollar question, and I’d like to finish by putting it to you.
Working in this field, do you opt for a tried, tested and pricey proprietary package from the likes of DNAnexus, Seven Bridges or Illumina, or go with the efficiency and cost-effective open source software? Or a mixture of the two? Let me know in the comments, as I’d love to hear your views.
Solution, solution, solution!
6 年As said this a general dilemma in IT. For any specific bioinformatics case, you probably can find reasoning to choose which one suits your case better.?
Sr. Scientist at QIAGEN, Clinical Informatics
6 年I think that this discussion is appropriate for examples about errors produced by widely used genomics software and databases like VEP, gnomAD, ExAC and ClinVar. Whenever I find errors exemplified below, I report them to the source.?https://www.dhirubhai.net/pulse/garage-genomics-helps-fix-bug-large-population-database-mehis-pold/,?https://www.dhirubhai.net/pulse/comprehensive-interrogation-key-gene-features-should-standard-pold/ ,?https://www.dhirubhai.net/pulse/popular-genomics-tools-produce-errors-propagated-major-mehis-pold/ ,?https://www.dhirubhai.net/pulse/idiosyncrasies-human-genome-disease-databases-clinvar-mehis-pold/
Assistant Financial Adviser- Dental Services
6 年Thanks Markus, yes that is true. I didn't fully cover but it can come under the umbrella of the requirement gathering stage to make sure the product you get has been customised for you visually and usability wise as well as just the features and functionality!
Data & Analysis for Drug Discovery, Diagnostics, Health Care Knowledge Graph, AI, ML, LLM, NLP, Bioinformatics Business Development, Account Management
6 年Very interesting article, I do like the restaurant analogy one aspect that is not covered in detail is the UI which is most of the times non existent in open source software and often prohibits the use by non informaticians?
Sr. Scientist at QIAGEN, Clinical Informatics
6 年"Buyer beware" label is appropriate for any software, open source in particular. Genomics community, both academic and commercial, employs various open source software widely. The intriguing aspect of current use of genomics open source is that, the users have chosen not to challenge the existing software appropriately. Consequently, they analyze data that is either missing something relevant or erroneous. In brief, genomics as it is currently, is at least somewhat uncivilized ;-)