βOpen sourceβ is a term thatβs typically used with software, and it means that the code is accessible to the public and that anybody can inspect, modify, enhance, improve and share it. Source code isnβt commonly seen by us computer users; instead, itβs what developers work with to control how software functions. The fact that WordPress is open source is beneficial to us all, though, developer or layman.
The concept of open source goes beyond code. It also defines the values shared by developers: a collaborative, transparent approach to projects. For some, open source is about community, sharing and standing behind initiatives you believe in.
For others, itβs lucrative. Depending on the licensing (more on that later), developers may charge for the software theyβve altered and released. Or, they may charge for services and support β the software remains free, but they can make money by helping people install and use it.
In this article, I use the terms βdeveloperβ and βprogrammerβ interchangeably because Iβm referring to their coding expertise. I realize thereβs a difference in job responsibilities, but those differences arenβt critical to this article.
Open Source vs. Closed Source
Source code that isnβt open source is closed source, also referred to as βproprietary.β That means that somebody owns the source code β an individual, a team of developers, a company β and that only they have control over it. Theyβre the only ones who can inspect, change or copy the source code.
To use closed source software, you have to agree to its licensing permissions. If you do something outside those permissions, youβre in trouble. While open source software also has licensing terms, theyβre much more flexible β βHey, free reign, you do you,β or something like that in more legit terms.
Also, the ownerβs servers host closed source software. Theyβre in control, so you canβt build it out. When it comes to open source software, you can install it on any servers you choose. Thatβs why you have to search for a host when you want to build a WordPress.org site. You can extend and modify a WordPress website how you like.
The Case for Closed Source Software
Right now, proprietary software sounds a bit like Big Brother, but thatβs a simplistic view of it. There are plenty of times when proprietary software comes in handy. For example, if you want software that performs X and you donβt care about tweaking how it does that, youβll probably opt for proprietary software. No control also means no responsibility, and depending upon what youβre using the software for, that can be a wonderful thing.
Take Slack, for example. Slack is closed source. If you need a chat tool to bring your team together, and you want to get it set up and then never worry about it, youβll choose Slack. You pay, you use, youβre done.
If youβre sending highly sensitive information back and forth, though, you may want a self-hosted tool. Itβll give you more responsibility to care for it, but also more control. Youβll then look for an open source chat tool instead of Slack.
Open Source Licenses
Open source licenses, sometimes referred to as βcopyleftβ licenses (instead of βcopyright,β get it?), may state that anyone who modifies and releases the software must also release their version of the source code. The original source code and the new source code have to both be open source. You may not be able to charge a licensing fee for your version of the software, either.
The WordPress.org License
WordPress.org operates under a GNU public license: GPLv2 or later. That license states a lot of things, one being that derivative works must also carry the GPL license. Some people feel that this means they can do whatever their little heart desires with WordPress plugins and themes. They can demand or steal plugins and themes because of the freebie licensing. Thatβs misreading the terms, though.
The βfreeβ part doesnβt mean free cost. The βfreeβ isnβt the monetary definition, itβs about freedom. There are no restrictions on the code itself, but the software doesnβt have to be no-cost.
Letβs illustrate βfree.β
Public places are free to the public, right? You can go into them regardless of who you are β you donβt have to be an employee to see them. Some will take you behind the scenes. Restaurants may let you walk into the kitchen. They may even give you their recipes.
But you have to be a customer. You still have to pay β but once you pay, you have lots of access. Open source software is the restaurant that lets you inside, then into the kitchen, then to chat with the chef, then gives you a recipe card so you can make that meal back home. But you donβt get those things without at least ordering a soda.
Thereβs also open source software that doesnβt require you to pay a thing. Thatβs their choice, though. Thereβs nothing that says they have to give you their version of the software for free.
What the license does say is that once you have access to the software, whether you pay for it or itβs given away for free, you will have access to the source code, too, and you can make any changes to it that you want.
Split Licenses (and a Note About Invalid Licenses)
Some developers will have a split license for their software. That means that theyβve made changes to the software and want to release their version. Part of the software remains under the GPL license, but part doesnβt (like the CSS or media, for example). This is legal, but some frown upon it ethically.
If you come across a WordPress plugin or theme that isnβt GPL-licensed at all, you canβt ignore the current license because you know the license is invalid. You still have to abide by the current license until WordPress enforces the correct licensing.
5 Benefits of Open Source Software for Developers and Users
There are a number of benefits of open source software for both developers and users:
1. Control Over the Software
Having control over the source code and the software means developers can tweak it to perform how they want. Even non-programmers can benefit from this. They can use the software however they want, and theyβre only limited by their abilities, not licensing. For example, you can turn your website into a membership site or marketplace; add third-party integrations; and invite as many users as youβd like to contribute to or manage your site.
Without access to the source code, you could end up stuck with a website that doesnβt look or function how you want. You may not have control over the layout, colors or fonts. If you donβt like an aspect of your website, thereβs not much you can do about it β youβll have to live with it or find another theme that makes you happier. If you want to add a feature, youβll have to hope an approved plugin is available.
2. Frequent Updates
The collaborative nature of open source software means that itβs frequently updated by the community. Developers can use the latest trends and techniques to update the software, and users benefit from these upgrades. With more tweaks to the code comes more options and functionality when building a website.
3. Improved Coding Skills
Beginner developers can improve their skills via open source software. The fact that itβs accessible by the public makes it easy to study and play with it. Coding can be shared with other developers who will then critique and comment on it. This is also a good way to uncover mistakes in your code.
Thereβs a huge amount of give-and-take here. Developers of any skill level can benefit from helping others. Explaining entry-level concepts can be a useful refresher, and you never know when a new developer is going to hit on something creative.
4. Long-Term Stability
If you use open source software for an extended period of time, you donβt have to worry that itβll become unusable if the original authors quit working on it. Now, this isnβt true for everyone. Non-developers canβt do much if other developers stop working on and releasing updates to the software theyβre using. Itβs still better than being stuck with stale proprietary software that nobody can do anything about, though.
5. Better Security
This oneβs a bit of a hot topic, but some feel that open source software is more secure than closed source software. More people viewing the source code means more opportunities to spot errors or omissions. And since anyone can work on open source software, you donβt need permission to make the necessary fixes.
A Little More About How Developers Utilize Open Source Software
When developers are able to access source code, they can improve it or fix it by adding useful features or fixing bugs. The developer may:
- Work with the original authors of the software in order to further develop and improve it
- Make the software more useful for themselves for their own use
- Make the software more useful to other users who will pay for the upgraded software or support
Depending upon how and how well a developer utilizes open source software, it can also be beneficial for their career. Open source software allows developers to show off their talent. Long-term, that can mean a well-rounded, impressive portfolio; healthy competition with other developers; and acclaim from the tech world.
Viewable source code means that experts will know what makes the software work and the changes that improved or fixed it. People wonβt just see what you did, but how you did it and why your way is oh-so-brilliant.
Itβs kind of like beating a world record vs. setting a world record. Setting a world record is awesome β you were the first and only. You paved the way. Beating a world record, though? Doubly awesome. Someone already did it, so you were challenged to do it better β and you figured it out.
Final Thoughts
No matter how youβre going to use it, the open source nature of WordPress.org is beneficial for developers and non-developers alike because of the freedom it allows. Freedom to make changes to the code, freedom to hire a developer to make changes to the code for you and freedom to host it wherever you like. Open source software doesnβt automatically make you capable of working with it, but it does put control in your hands, however you decide to use it.
Want to start connecting with other developers? Check out our article Git and Github: A Beginnerβs Guide for Complete Newbies.
Featured Image via Visual Generation / Shutterstock.com
Good Information, Keep Posting..
“When it comes to open source software, you can install it on any servers you choose.
Windows is closed source yet it can be installed on any server. This article is just a WordPress ad, nothing useful.
very helpful article for a beginner like me , but as i am using wordpress i am facing an issue that like there are certain unwanted codes in various plugins and while i am using it for google adword services google is disapproving my advertisement campaign by saying that your website contain malicious content.
Lindsay hi,
From my experience open and closed source software it is every time the question of two sides of the coin. The open source code can be viewed, shared and modified by the community. Which means anyone can fix, upgrade and test the broken code. However, because of availability, the source code is open for hackers to practice on.