Software

What is open source software and how does it work?

A screen showing open source code on a computer screen

Open source software refers to software released without the usual copyright restrictions. This means the developer/s who invented are happy for other people to use their software for their own purposes, adapt and develop it as they see fit. More often than not, open source software is free, too, making it the perfect solution for individuals and businesses alike.

Advertisement

Developers release open source software without restrictions into the public domain. This means anybody can inspect, study and modify the software’s ‘source code’, its building blocks, whether that’s to understand how it works, change it for their own purposes or make improvements for other users. Beyond this, a key characteristic of open source software is that users are allowed to distribute the software on, with or without changes they’ve made, to anybody they like. There’s therefore no “end product” when it comes to open source software – it’s constantly evolving as different users and developers collaborate from all over the world.

Examples of open source products such as WordPress (a content management system), Open Office, the internet browser Mozilla Firefox, Wikipedia, the GNU/Linux operating system and its derivative Android, an operating system for mobile devices.

This comprehensive guide takes you through all you need to know about open source software, in the following sections:

What is open source software?

What specifically makes software open source is the license attached to it. Open source licenses, sometimes known as free software licenses, can be implicit or explicit. They are unique in that they grant users ample freedom over the product: specifically the freedom to alter and redistribute the software, which is something usually prohibited by copyright law. When a rights-holder chooses to remove these restrictions, they do so by using a free software licence or open source software license, meaning that users have free reign over the software without paying any fees to the original creator.

The opposite of open source software is proprietary software, where only the individual creator/s, or the business who created it, has the right to control or modify the source code. Examples of proprietary software include Microsoft Office and Adobe Photoshop – paying customers may use the software, but they may use it only for the purposes expressly permitted by the creator/s.

Advertisement

Open source software is often confused with freeware, but the two are very different. Freeware refers to software that users can download and use entirely for free, at no cost. However, they don’t have the right to change the source code.

The versatility of open source software means you can use it for almost anything. For businesses, OS software solutions can help you with accounting, customer relations management, enterprise resource management and even point of sale transactions. Many professions rely daily on OS software, such as photographers using video editing software and offices relying on LibreOffice. Less technical OS software includes many of the most popular video and music players.

Types of open source license

There is a range of open source licenses available to software creators. While they all follow the main principles and criteria of open source software, they differ slightly in the extent to which they allow users to modify the source code, and under which conditions. Some of the most popular licenses are:

The final category is BSD licenses. The BSD license places fewer restrictions on its developers, though there’s disagreement over whether this makes the software freer or not.

The main difference with the BSD license is that users are allowed to use and manipulate the program’s source code, but they aren’t obliged to then share their modifications back to the community. This means they can keep any improvements for personal gain, and market the new product under a commercial license. Although this type of license affords the developer more freedom, many supporters of the open source philosophy feel this goes against the ethos of the initiative.

Advertisement

Open source Vs free licenses software

We often hear open source software used interchangeably with free license software. The two are mostly similar, although the OSS criteria issued by the Open Source Initiative came almost ten years after the free licence software, and places a greater emphasis on modifications to the software. A common misconception is that free license software or open source software refers to the price, and are therefore free. While many do happen to be free, it’s not a condition, and there are many paid OS software solutions.

Advantages of the open source model

Many people, both individuals and companies, prefer to use open source software over propriety or commercial software. There are a number of reasons for this, including:

Disadvantages of the open source model

While the benefits of open source software are considerable, there are a few drawbacks to consider:

Why make software open source?

Technology is continually evolving, updating and adapting to better fit our daily needs. Google’s innovative artificial intelligence engine, Tensorflow, is the technology behind its cutting-edge tools which recognise spoken words and search photos. Why, then, did Google make Tensorflow open source in 2015?

The simple answer is that more heads together equals more progress. They hoped that by opening up the table to other developers, they could create software better suited to their needs. More than 1,300 external developers have now worked on TensorFlow. This collaboration has meant that it’s now one of the standard frameworks used to develop AI applications, which will help Google’s own cloud-hosted AI services, thus completing the circle. By putting the code out in the open, Google has ensured that they can profit from better software which will continue to evolve.

Advertisement

Opening the software up to the public also provides good promotion. When Google released its TensorFlow, it sparked significant interest in the software, now used by the likes of Dropbox and Airbnb. All in all, contributing to open source software has mutual benefits for all the parties involved, making sure nobody misses out on the latest improvements.

The critical thing to remember is that each company manipulates the source code for their own uses. The idea isn’t to replicate and privatise the same design but to share base knowledge to create different solutions for differing purposes, at the same time benefitting from the experience, expertise and improvements made by others. The open-source development model encourages open collaboration, driven by peer production, benefitting millions of users worldwide.

The history of open source

When software was in its early youth, it was commonplace to share software and source code, particularly in universities or research organisations. However, in 1974, the U.S. Commission on New Technological Uses of Copyrighted Works (CONTU) declared software as copyrightable. Software, therefore, gained the same status as literary works, which kickstarted the licensing of software. From then on, purchasing software didn’t mean you could use the source code, or even see it, let alone manipulate it for your own uses or pass it on.

This change took away from the collaboration that many software developers had been enjoying. In 1983, a man named Richard Stallman released a free alternative to the popular operating system at the time, Unix, dubbing the free version GNU. GNU was an attempt to bring back open collaboration amongst developers, and he released his code under a GNU Public License, known as a GPL, which gave users the freedom to use the code.

The GPL was crucial in establishing a new culture of collaboration, as the license also stipulated that any derivatives of the original code must also remain under a GPL license, keeping the code firmly within the public domain. In the late 90s, many companies and programmers pushed a similar movement with greater stress on the business potential of sharing and collaborating on software code, adopting the term open source.

Advertisement

Final thoughts & FAQ’s

Whether you’re a new start-up, formidable enterprise, or just an individual, open source software can be an innovative, cost-effective solution for any of your online, PC or business needs. The collaborative ethos of OS software means users have access to the latest improvements, allowing even the smallest of businesses to integrate cutting edge software solutions without having to shell out for expensive proprietary software.

What is source code?

Source code essentially forms the basis of any programming. It’s plain text, human-readable programming which gives instructions to the computer. By inspecting software’s source code, you can learn about how it works. Developers can then use this source code to write more code and program a computer to perform other actions.

Several prominent programmers soon supported the initiative and followed Stallman’s example, one of the most notable being Linus Torvalds, the brains behind the Linux operating system. Linux provided the basis for Android, which today powers more than 86% of smartphones worldwide according to IDC. Its open source license means anybody can view, modify and share the code behind the vast majority of smartphones. It’s no surprise, then, that over 15,000 programmers worldwide are involved in maintaining Android.

Related topics

Exit mobile version