In a world where we are stressed and pulled in a hundred different directions, it is easy to claim that we do not have the time or energy for things that may seem trivial. For software developers, ignoring the importance of open source software (OSS) is a mistake. OSS is a valuable tool that can save time and money, as well as encourage and expand creativity and collaboration among many talented individuals. So why are some developers hesitant to use OSS, or hesitant to admit they use it? It could be the licenses tied to the code, the vast number of OSS packages to choose from, or the time it takes to become familiar with OSS. Using OSS is not as complex as you might think. Following is a list of ten excuses for not learning OSS, and the answers that I hope will convince you otherwise:
1. It’s free; does that mean it doesn’t matter?
Open source has licenses that you are legally bound to comply with. For the most part, it is easy to comply, but if you ignore the licenses and/or copyrights, the author could pursue legal action against you.
2. It just works, so I don’t need to worry about updates or security holes.
Like any software, there are always security risks. If the software is popular, then there will be updates to reduce security risks and improve functionality. Some open source packages are written and never updated, but most have many, if not hundreds, of programmers that continue to work on and improve the code.
3. It’s just a small library. I got it off a blog or stackoverflow.com, so it can’t be an issue to just use it.
All finished written work is automatically protected by copyrights, and most open source is under a license as well. To claim ignorance is to risk legal ramifications.
4. I don’t have time to deal with it.
You will have to make time after a security flaw is discovered or someone sends your company a license violation letter. It is better to know what open source you have before you release it instead of trying to backtrack once it is out there.
5. I can support it myself because I have the source code.
This actually may be true in some cases, but how do you know when you should get help and where does that help come from?
6. I got it from a “trusted” source, so it’s got to be good.
Absolutely not. Many projects are created, but do not inspire developers to contribute to the code, fix bugs or make improvements. And many projects are started with the best of intentions, but the author does not have time to finish or maintain the project.
7. It’s too complex to understand.
True, there are hundreds of different OSS licenses and millions of open source packages today. But, hey, you’re a developer; you can understand extremely complex ideas and concepts. Understanding OSS is comparatively simple.
8. It’s not my job; I’ll leave it to the lawyers and managers to figure it out.
Being proactive is being responsible. And it is your job to identify and report the OSS that you use so you do not cause legal issues for your employer.
9. No one will ever find it. I’m just using a few lines of someone else’s library buried in my code. Who will ever see it or care?
Again, being proactive will save time in the long run. If you use open source, and then find out it has a license that your lawyers want to avoid, and then you will have to remove that code from your software and replace it with code that is approved, or proprietary.
10. It’s just not that important.
I have more important things to worry about.Using open source while ignoring the responsibility, purpose, and spirit of it discredits all who contribute to the OSS community and puts your company at risk for legal claims. And not utilizing open source means ignoring a powerful instrument.
OSS is an incredible tool that we all have at our disposal. With some planning and organization, it will work for you, not against you. So, dive into OSS and discover an amazing community of developers.