What is Open Source Software, and How is it Used?
Posted by Lacey Wilcox | July 20, 2021
Navigating the waters of software development sometimes feels more daunting than swimming the English Channel. Everything about it feels complex and nuanced, because it actually can be complex. (Anything that requires a special language truly is on its own level.)
But it’s important to remember that complex things are usually built up of many parts working together. And understanding each of those parts can help you better understand the entire concept and its purpose. At its core, software exists to make things happen more smoothly and efficiently. One of the aspects of software development that is helpful to understand is open source software.
What is Open Source Software?
A few months ago, I had the chance to enjoy dinner with some of our team’s software developers, and I spent a large portion of our time asking them to explain to me the different aspects of their work at Primitive. One of the many things we covered was open source software. Here’s a snapshot of how that conversation went:
Lacey: “Ok, Matt. This has all been so helpful, but one thing I still don’t understand is open source software. What does that even mean?”
Matt: “That is a really great question. I’m super impressed with how smart you are. Basically, open source software is any sort of computer software (or application software, etc.), where the software creator gives other developers the right to use, change, and distribute that specific software and its source code for any purpose.”
Lacey: blank stare. “Um. Ok. Maybe you could try to explain it to me like I’m five.”
Matt: “Oh, I thought I was. Ok, do you and Selah like to use coloring books?”
Lacey: “I can’t speak for Selah, but I LOVE coloring books!”
And because I am the smartest five year old ever, I can now tell you exactly how a coloring book can relate to open source software. Imagine that I design a coloring book page, and I decide to share it with my friends. Now, my friends have options:
- They could use that coloring page exactly as it is.
- They could make some adjustments to my page, and then print it for their own use or share it with their set of friends.
- They could also add new pages onto the page I created, and essentially have a new product (which they could also distribute to their friends).
This is the perfect picture (pun intended) of how open source software works. A developer builds out a piece of custom software to serve as a tool, intranet website, or mobile application. If the developer decides to make that tool open source software, then the code is available to other developers: essentially, it’s an open source for their software development. Other developers can use this code exactly as is, make small tweaks to it, or add on to it to create a more extensive package.
How is Open Source Software Used for Businesses?
While this coloring book situation is really positive for me and all of my other friends, you might be wondering exactly what open source software has to do with your business and any software development projects you are considering. This kind of software has multiple advantages and applications for businesses.
- Profitability. It’s no secret that software projects can have high upfront costs. They are custom tools that will benefit your business for the long haul. But, there are a few ways that your software development team or agency can help you save money, and using open source software is one of them. Because much of the foundation has already been laid with open source, your agency can focus more of their time on refining rather than building from scratch.
- Efficiency. On this note, using open source software to build your custom tool or application is efficient. The foundation has already been laid, and your team can focus their efforts on refining that foundation to best meet your needs.
- Excellency. Don’t be deceived by the open source aspect: software developers are relentless perfectionists. The beauty of open source software is that the product just keeps getting better and better.
- Security. Because multiple developers have had their hands on the code of open source software, there are fewer areas of weakness. This means your final product will be more secure and protected.
- Adaptability and flexibility. Open source software is designed to grow and adapt. It’s not meant to be stagnant. This means that it’s poised to grow and develop as your company does.
- Revenue generation. One thing that wasn’t mentioned above in our coloring book example is that my friends and I would always have the option to sell our coloring pages or books. Rather than sweating it out at a lemonade stand (sorry, Oscar), we could just sell coloring books to our friends. When you have a product built with open source software, you have the exact same opportunity. Not only can you use it to meet your business’s needs, you can also sell it to other businesses who have the exact same problem. Win, win, win.
Don’t Try This at Home
One of the things that must be made clear about open source software is that it is not a DIY solution. This is best left to experts, because experts will be able to choose an open source option that is excellent, secure, and best suited to your needs. If you’re looking for an agency to help you build a specific tool or custom software, we’d love to meet with you and hear more about what you’re looking for.
If you’re just interested in learning more about software development and what it can do for your business, we’ve got you covered. Just click the image below to download our free book, A Guide to Software Development.And if reading this blog has put coloring on your brain, or you have a kiddo with a case of summer time “I’m bored,” my daughter did design a coloring page just for you. Feel free to print it out and use as is, tweak it, or add more coloring pages. Either way, we hope you have a sweet time with it.