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.
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:
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.
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.
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.