What engineers need to know about open source and free IPFollow article
What is open source?
The prospect of giving away something valuable for free will always confuse some, but that is essentially what the practice of open-sourcing intellectual property is all about. The communities that build up around open source technologies are incredible and most have qualities that many corporations – large and small – envy. There is structure, purpose and motivation, operating with a consensus that guides creativity. And, of course, the output is free.
That is, without doubt, the main draw for many. Linux is perhaps the best-known example of open source technology because it is used across most vertical markets. Most applications today need an operating system, so there needs to be a good reason not to use one that is open source. It is not the only open-source operating system, of course, but it will most likely always be the most widely deployed.
An operating system does not run on thin air, it needs a processor and to run Linux it really needs a processor with a 32-bit instruction set architecture (ISA). If the concept of open-source software still seems strange, then how about open-source hardware? One of the most recent and significant developments in open source technology has been the maturation of the RISC-V ISA. Anyone can now take the ISA and use it to instantiate their own 32-bit processor, capable of running Linux.
As this article will show, these developments and others like them are now defining the commercial landscape. Some of the most relevant questions are answered and it also provides a guide to finding some of the best open-source IP now available.
A short history of open source
The term ‘open source’ came into widespread use around 1998, with the formation of the Open Source Initiative and coinciding with the release of the code for Netscape’s browser. However, the concept of sharing patentable IP has existed for much longer.
Henry Ford could be seen as one of the forefathers of open-source after he successfully challenged a patent for an internal combustion engine. He went on to help form the Motor Vehicle Manufacturers Association, which gave all US automotive manufacturers the ability to share and benefit from patented technology, at no fee. This level of cooperation between competitors is now typified by the use of open-source hardware and software.
The Free Software Foundation (fsf.og), founded by Richard Stallman in 1983, launched the GNU Project and was built on ‘Four Essential Freedoms’. Those freedoms include the freedom to run, study, modify and share software. The word ‘free’ has long been open to interpretation, but in this context, it means ‘liberty’, as well as ‘at no cost’.
The GNU Project has close ties to Linux and Unix (Unix being a proprietary operating system, and GNU being a recursive acronym that stands for ‘GNU’s Not Unix’). Linus Torvalds developed a kernel and made it freely available under the GNU General Public License. When this kernel was combined with the utilities developed under the GNU Project, Linux was born.
Collaboration and contribution are at the core of open source technology, which allows the few to support the many without putting too much pressure on resources. Also, providing commercial services to support open source technology is now highly profitable and welcomed across verticals. Today, almost all open source projects make use of websites such as GitHub and Google Code to provide distribution and version control services.
Things to remember about open source
As mentioned earlier, the term ‘open source’ is used widely but it is defined by the Open Source Initiative. It has a ten-point definition of what open means (opensource.org/osd) to avoid any confusion. Even so, engineers will still have many questions about using technology that is made freely available, particularly if adopting it for the first time. Here, we provide answers to what might be the five most commonly asked questions, with additional links to further resources.
- Is open source really free?
The short answer is yes, particularly if it is licensed under a GNU GPL (gnugpl.org). As stated, the Open Source Initiative has its own definition and maintains a list of approved licences (opensource.org/licences) which includes many of the best known, such as GNU, BSD, Apache and Eclipse, as well as details about international, special purpose and miscellaneous licences, and others.
- Do I have to share my own code?
Licences tend to cover the IP (often, but not exclusively, source code) when it is made available, so if you are issuing source code under an open-source licence then you don't necessarily need to share the source code. If you are modifying source code that you are using under licence then you may or may not be required to share the modifications you have made, depending on the conditions of the original licence. In most cases, the licence will probably require you to share, or make available on request, any code you have developed, as this is a fundamental concept of free and open software.
- Is all open-source IP licensed?
There is nothing to stop anyone making anything they have created available to others without any kind of licence in place. However, if any part of that creation is based on licensed, open-source technology, then it is highly unlikely that it could be subsequently released without at least that part being covered by the original licence.
- Where can I find open-source IP?
As outlined earlier, most community projects are made available through GitHub (github.com) and Google Code (code.google.com), as well as many projects created by individuals and commercial companies. The reason commercial companies release their projects is normally to help build interest in the core technology, which is often not the source code provided. A good example would be a semiconductor manufacturer that has open-sourced a circuit design, along with the drivers and APIs for its hardware. The FSF also has a directory of free software (directory.fsf.org). Sites like Thingiverse (www.thingiverse.com) now provide all kinds of makers with access to free design files and resources.
- What control do I have over open-source IP?
This depends on the licence applied. If no (recognised) licence is used, then it is unlikely that the person publishing the IP will have any control over it. But in the nature of openness, most licences will require you to give up most of the control you would have over the IP if you didn’t make it available.
The future of open-source IP
The motivation behind making IP free isn’t to disrupt the commercial sale of technology. Often it complements commercial IP by helping to build an ecosystem within which commercial companies can operate. Providing design services around open source technology is now widely practised and accepted.
One of the most recent success stories here is the RISC-V ISP. While the IP is free to use, it still needs to be instantiated in silicon. This can take the form of an ASIC, an SoC or an FPGA, and not all companies looking to leverage the RISC-V architecture will have the resources needed to close that loop. This is one example of how commercial services and open source technology can be symbiotic.
In the future, the lines may become even more blurred. It is possible that more imaginative licences are developed that provide greater access to IP, or more freedom to modify it. The Open Source Hardware Association, which follows the same definition as the Open Source Initiative, offers a comprehensive FAQ (www.oshwa.org/faq) that gives engineers a good foundation in open source hardware.
One thing seems certain, the availability of open-source IP is likely to increase. The challenge that exists around its use remains one of quality assurance. However, with non-profit organisations in place – sometimes with the funding of commercial companies – acting as gatekeepers, engineers and the wider maker community can expect to enjoy the continued and increased access to ‘free stuff’.