Demystifying Open Source
So what does Open Source mean? Let’s bake a cake...
Cake? Yes, you did read that correctly. To help demystify the concept of Open Source we’ll be using a metaphor - a Cake Recipe.
As highly skilled bakers, we are known for our delicious signature cake - the Umbra-cake. And because we want you to be able to enjoy our yummy cake at home, we have decided to share our special cake recipe with everyone - no hidden ingredients, no hidden instructions. We’ve therefore published our cake recipe on our baker-blog and told everyone that they are allowed to use and share the recipe. They can even change the recipe however they like - perhaps they need a gluten-free variation one week and a nut-free variation the next. We also tell people they are welcome to request and suggest improvements to the original recipe to make the cake even more delicious. However, to maintain order within the infinite number of suggestions, we must approve or decline any change before incorporating it into the original recipe.
So, after publishing our recipe, people start baking at home and soon someone comments on our blog:
Sara: “Do you really mean a cup of salt? I think this is a mistake - it should be a cup of sugar, right?”
Of course Sara is right - good job we have others reading and testing our recipe! With the help of Sara, we decide to correct the original recipe so no one else will have an unpleasant cake-experience.
Next Tom makes a suggestion:
Tom: “I think adding raisins to the cake will make it even tastier.”
To ensure our signature is a good foundation for as many people as possible, we decide not to add raisins as part of the main recipe. However, Tom still wants to bake the cake with raisins - and he’s free to do so and share his addition with other raisin-loving bakers as an “Add-On” to our original. We don’t mind that Tom shares his raisin recipe - actually we think it’s great! By supporting our fellow-bakers, we are sure that our recipe will keep getting better and hereby keep being tasted and baked.
SO. Hungry yet?
In a nutshell (or a cake tin!) Open Source software is one with its source code (recipe) available under a license in which the publisher provides users the rights to make changes and copies (usually under very relaxed restrictions). The Open Source license is what allows the product owner to add quality control processes or monitor changes that are submitted to the publicly accessible source-code. For example it could impose some regulations such as, an author attribution must be included where the source code has been modified. Many recognisable and highly used applications are open source, some of these may surprise you - Microsoft ASP .NET, OpenOffice, Firefox, Android = all open source!
This is of course compared to its opposite - closed source, or Proprietary software. This cannot be changed or distributed without complying to licensing agreements. The owner can restrict use, access and modification of source code, and redistribution. In essence the product is built, managed and provided to customers in a one-way manner, under full control by the publisher.
Why did Umbraco choose to be Open Source?
At the heart (and start) of Umbraco is “U”. Umbraco was born from its belief in people and the desire to empower creativity in its users through a tool that enables great digital projects. Being Open Source puts the power and control into the hands of these talented craftspeople, so they have the freedom and flexibility to create amazing work without being limited by their software. This continues to be our vision and it has proven successful in our community now consisting of over 200,000 people who continuously share their knowledge, contribute to the project and build clever packages for everyone to enjoy.
What kinds of Open Source license are there?
There are several Open Source software licenses, which grant rights to users that would usually be reserved only to the copyright holder (the publisher). The most prominent are modeled after the mainstream GNU General Public License, the Apache License, and the MIT License, the last under which Umbraco operates. The MIT License originates at the Massachusetts Institute of Technology who's passion for research, education and innovation aligns to the values and mission of Umbraco. It is also one of the shortest and most flexible licenses. You can do whatever you want with the source code as long as the original copyright and license notice is included in any copy. In 2015 the MIT License also became the most widely used “free-and-open-source” license. You can view the license notice on our website here.
How does Umbraco run an Open Source project?
Glad you asked! Our very own Sebastiaan Janssen delivered a presentation on exactly this at Codegarden 2016. Watch the session here and see the inner workings of Umbraco HQ and how you can contribute!
How do you benefit from Umbraco being Open Source?
Aside from being able to use and modify the source code to make Umbraco do whatever your heart desires? Let’s look at a few of the benefits of Umbraco being open source;
- Transparency - one of the values of Umbraco is honesty. We have nothing to hide and are transparent in everything we do, starting with our source code, through to our planned roadmap and this has only helped us evolve and grow to build the best product we can.
- No “lock-in” - you are not bound by licenses and financial commitments. So whilst we hope you love Umbraco so much that you won’t want to use anything else, you are free to come and go as suits you.
- Continual improvement - Umbraco CMS is always being optimised and updated, not only by our dedicated team at Umbraco HQ, but by contribution of its 200,000 strong community. And 200,000 sets of eyes and 200,000 brains are better than 10 right?
- Growth and scalability - supporting Open Source software keeps it alive, allows it to thrive and makes it an accessible and viable option for a broad range of customers. A reputable and stable Umbraco is a viable and competitive option for smaller organisations without large development budgets through to large scale complex web solutions.
- Lower cost - Umbraco CMS is free, however it is still possible to get help. You have access to 24/7 support from the community, which makes your maintenance costs lower. Or you can sign up for a paid support plan. Whatever safety net you need, we have a level of support available.
For more on the value of Open Source read this great article from the Umbraco Community Magazine, Skrift.
We hope this article has helped to relieve some of the misunderstandings and nerves around Open Source. Be confident that Umbraco is backed (and baked!) by a solid commercial organisation and is here to stay, yet remains true to its roots by handing you the keys to free yourself from the limitations of other solutions. Thank you for being part of Umbraco and contributing to the Friendliest CMS in the world.
Photo by the eminent Douglas Robar @percipientstudios