The debate between open source and closed source software is as old as the software industry itself. Both models have their place and advantages, but at CodeMill we have a clear preference: open source. In this article, we explain why.
Closed source: control within walls
Closed source software is developed and maintained by a single vendor. The source code is not accessible, and the user only gets the end product. This has some advantages:
- Consistent experience: the vendor determines the direction and ensures compatibility.
- Support: there is often a central point of contact for assistance and updates.
But there are also significant downsides:
- Vendor lock-in: switching is difficult or expensive because you are tied to a vendor.
- Limited innovation: only the vendor decides what gets developed.
- Recurring costs: closed source software almost always comes with a licensing model, including annual costs that can be substantial.
- Hidden risks: you have to blindly trust the quality and security of the code.
- Slower adoption of new technologies: open source frameworks often adopt the latest developments and techniques quickly. Closed source software typically lags behind, which slows down innovation.
Open source: transparency and collaboration
With open source, the source code is public and can be viewed, modified, or improved by anyone. The success of this model is visible in projects like Linux, Kubernetes, and even major AI models. The benefits are clear:
- No vendor lock-in: you are free to choose the best implementation or vendor.
- Security through transparency: vulnerabilities are discovered and resolved faster.
- Community and innovation: thousands of developers worldwide collaborate and build on each other’s work. Because everything is open, there’s less room for hidden vulnerabilities.
- Speed: problems are solved quickly, and new features often come directly from the community.
Are there downsides too? Yes. Not every open source project has active maintainers or a strong community. And support is not always centrally organized—although specialized companies now often fill that gap.
Why CodeMill chooses open source
At CodeMill, we believe open source is the foundation for sustainable and future-proof software. Our main reasons:
- Transparency and trust: you know what’s happening under the hood.
- Independence: we never want to lock our clients into an ecosystem they can’t leave.
- Development speed: by leveraging existing open source libraries, we can build faster and more cost-efficiently.
- Knowledge sharing: open source strengthens the community, and we actively contribute.
- Cost efficiency: no recurring license fees.
Custom solutions within open source
Open source is not just a source of ready-made solutions; it’s also an ideal foundation for customization. Standard software often doesn’t fully align with the specific processes of an organization. With open source, we can build exactly the extra functionality that’s needed—without reinventing the wheel.
Examples of the power of custom solutions on open source:
- Custom extensions: enhancing existing libraries or frameworks with client-specific features.
- Integrations: connecting with internal systems, APIs, or external platforms.
- Optimization: improving performance or refining user experience, tailored to the client’s context.
The beauty is: customization within open source combines the best of both worlds. You benefit from the stability and innovation of the community, plus solutions that seamlessly fit your unique situation.
Real-world experience: the limits of closed source
From our own project experience, we’ve frequently encountered the limitations of large closed source software packages. These systems are often powerful, but at the same time rigid and difficult to adapt. Some examples we see often:
- Workflow modifications: alternative approval processes or order flows are technically possible, but usually only via expensive consultants or additional modules.
- Data model extensions: adding extra fields (e.g. “dock number” or “driver ID”) can become a major project, while in open source frameworks this can be done in an afternoon.
- Integrations: vendors often force you to use their own costly connectors, which are limited. With open source, you can directly use the API or build your own integration.
- Licensing models: costs scale quickly with more users or modules. This slows down innovation, while open source has no such barrier.
In short: where closed source often sets boundaries, open source and custom solutions give us the flexibility and scalability organizations need.
Open source licenses: what to watch out for
Open source doesn’t mean “free of rules.” Every project is governed by a license that determines what you can and can’t do with the software. Some common ones are:
- MIT License: very permissive; you can use, modify, and distribute the software—even in commercial projects—as long as you include the original license.
- Apache 2.0: similar to MIT, but with additional protections around patents.
- GPL (General Public License): stricter terms; if you make changes and distribute the software, you must also release those changes as open source.
- BSD License: similar to MIT, but with different variants that sometimes add extra requirements.
Things to consider:
- Does the license fit how you plan to use the software (internal use, commercial, SaaS)?
- Do you need to make your own modifications public, or can they remain closed?
- What obligations are there around attribution and documentation?
At CodeMill, we have experience evaluating licenses and advising clients on choosing and applying open source responsibly. This ensures you get the benefits without unpleasant surprises.
Conclusion
Open source is not a hype, but a proven model that has permanently changed the software world. For us, it’s not just a choice for better technology, but also for more freedom, security, and collaboration. Together with our clients, we can build software that works today and is ready for tomorrow.
At CodeMill, we are committed to open source because we believe true progress is only possible when knowledge is shared. That’s why we’re also active on GitHub, where we’ll soon release some of the software we’ve developed in-house. We’ll tell you more about that in our next blog post.
Curious? Let’s connect.
Send us a message or schedule a call—we’d love to hear about your challenge.
Follow us on LinkedIn