DZone
Thanks for visiting DZone today,
Edit Profile
  • Manage Email Subscriptions
  • How to Post to DZone
  • Article Submission Guidelines
Sign Out View Profile
  • Post an Article
  • Manage My Drafts
Newsletter
Log In / Join
Refcards Trend Reports
Events Video Library
Refcards
Trend Reports

Events

View Events Video Library

Related

  • Top 11 Selenium Testing Misconceptions You Should Know
  • How Open Source Can Elevate Your Career as a Software Engineer
  • Open-Source AI Tools for More Efficient Development
  • How To Learn Software Development Without a Degree

Trending

  • Building a Real Pipeline With senro: Monorepos, Caching, and Triggers
  • Giving AI Agents Safe Access to Legacy Systems: Introducing legacy2mcp
  • Searching Kafka Without an Index: Lessons From Building Message Search for Kafdrop
  • Beyond the Endpoint: How Agent Cards Enable Discovery, Interoperability, and Trust

Draft This article hasn't been published, so readers can't see it.

In moderation This article is waiting for review, so readers can't see it yet.

Deleted This article has been deleted, so readers can't see it.

  1. DZone
  2. Popular
  3. Open Source
  4. Free Software vs Open Source vs Freeware: What's the Difference?

Free Software vs Open Source vs Freeware: What's the Difference?

In this, a developer takes a look at the difference between the various types of software, and how developers can take advantage of each of them.

By 
Dr. Michael Garbade
·
Updated May. 28, 20 · Analysis
Post on X (opens in a new tab) Share on LinkedIn (opens in a new tab)
123.5K Views

Join the DZone community Save articles, join the discussion, and download Refcards and Trend Reports with a free account.

Join for free Already a member? Log in


In the software development industry, technical terms are often dropped here and there. While some people unknowingly use them interchangeably, some confuse their meanings altogether.

Free software, open source, freeware, and shareware are some of the most commonly confused software terms in the industry.

Kuzzmi, who has more than eight years of experience in the software development industry and currently teaches people how to build powerful web-based applications, says that “understanding the difference between the technical terminologies is important for making the right decisions when building your tech products.”

In this article, I’ll talk about the main differences between these terms.

Free Software

Let me make this clear beforehand: the word 'free' in 'free software' emphasizes freedom, not price. That’s why, to avoid the ambiguity in the English language, sometimes free software is called libre software.

According to the Free Software Foundation (FSF), a non-profit organization that supports the development of free software, “free software is the software that grants the user the freedom to share, study, and modify it.” The FSF coined the term in the 1980s.

This type of software allows you to do anything you want with it, even improving the version and profiting from it.

The FSF asserts that a free software must adhere to the following four pillars of freedom (which are rights and not obligations):

  • The freedom to deploy the software for any use case without any restrictions. For example, saying that the license of a program expires after 30 days makes it non-free.
  • The freedom to study how the software works and modify it according to your needs and preferences.
  • The freedom to freely re-distribute the software to assist someone in need. The redistribution can be done at a cost or at no cost.
  • The freedom to enhance the performance of the software and release your enhancements for the community to benefit—both programmers and non-programmers. You can do this at a cost or at no cost.

The FSF emphasizes that free software is not limited to non-commercial use. A commercial program can allow users to indirectly access the above freedoms.

Additionally, as opposed to freeware, free software allows users to access the source code (because of the freedom to modify).

Any free software license should give users the ability to benefit from the four pillars of freedom. These licenses can either be protective (copyleft) licenses or non-protective licenses. Whereas the former upholds the rights to use, study, distribute, and modify the software, the latter allows for distribution with those rights scrapped off.

Here are three of the most popular type of licenses that define free software:

  • The MIT (Massachusetts Institute of Technology) License: This is a permissive license that places limited restrictions on software reuse.
  • The GNU General Public License v2: This copyleft license gives users the freedom to run, study, and make improvements to the software.
  • The Apache License v2: This is a permissive license that mandates preservation of the copyright notice and disclaimer.
  • The BSD Licenses: They are a set of non-copyleft licenses that gives minimal restrictions on the use and redistribution of the software.

A popular example of a free software that is completely freedom-respecting is the Linux operating system. An example of a distribution of a Linux package is Debian.

Open Source Software

Open source software has a close meaning to free software, although the two terms are not identical. Although both terminologies refer to a similar group of licenses and software, each term alludes to different underlying ideologies.

The Open Source Initiative (OSI), the non-profit organization that supports the development of open source software, asserts that any open source software must adhere to the following criteria:

  • Free redistribution of the software.
  • The source code should be publicly available.
  • The software can be modified and distributed in a different format from the original software.
  • The software should not discriminate against persons or groups.
  • The software should not restrict the usage of other software.

Historically, the term free software came before open source. Although both terms have roots in supporting the idea of free software (right to use, study, share, and modify), their objectives and philosophies are different.

The term open source was introduced in the late 1990s in response to the limitations of free software. In fact, the OSI says that it coined the term to “educate and advocate for the superiority of an open development process.”

The organization adds that the term provides “a valuable way to engage with potential software users and developers, and convince them to create and improve source code by participating in an engaged community.”

Therefore, the term open source emphasizes on the practical benefits of “free software”: supporting collaboration on software development projects.

In other words, while open source is a development philosophy that is more business oriented, free software is a social and moral philosophy. That’s why the term open source is more palatable to the corporate world because it places less emphasis on freedom.

For example, while the Android mobile operating system is an open source software, it cannot be referred to as a free software because it does not respect all four pillars of freedom.

To minimize misunderstandings and avoid the terminology debate between free software and open source software, other terms such as FOSS (free and open source software) and FLOSS (free, libre, and open source software) may be used to describe the concepts.

Freeware

Typically, freeware refers to a software that you can use without incurring any costs. Unlike open source software and free software, freeware offers minimal freedom to the end user.

Whereas it can be used free of charge, often modification, redistribution, or other improvements cannot be done without getting permission from the author.

As such, freeware is often shared without including its source code, which is atypical to open source software or free software.

Two of the most common types of freeware are Skype and Adobe Acrobat Reader. While both programs are free to use, their source codes are unavailable to the public.

Most developers usually market freeware as freemium or shareware with the intention of encouraging users to buy a more capable version.

Freemium refers to a program that is offered at no cost, but money (premium) is paid for extra, more capable features.

Shareware refers to a program that is initially available without any costs attached, and users are encouraged to distribute copies. However, that cost-free period usually lasts for a certain period; thereafter, a user is required to pay for continued use.

Conclusion

So, the next time you build your tech product — whether it’s a mobile game, a cryptocurrency trading bot, or a website — ensure that you use the right terminology to describe it.

For example, if you want to release your created program freely to the open source community, ensure you do sufficient research to understand the limitations and responsibilities of the licensing you select.

Which term are you going to use to describe your next software?

Please provide your comment below.

Software development Open source Free software

Opinions expressed by DZone contributors are their own.

Related

  • Top 11 Selenium Testing Misconceptions You Should Know
  • How Open Source Can Elevate Your Career as a Software Engineer
  • Open-Source AI Tools for More Efficient Development
  • How To Learn Software Development Without a Degree

Partner Resources

×

Comments

Loading comments

The comments didn't load

Please try again in a moment.

Likes

Loading

The next likes didn't load. Please try again.

The likes didn't load

Please try again in a moment.

See who liked this

Log in or join DZone for free to see who liked this article.

Log in Join for free
  • RSS
  • X
  • Facebook

ABOUT US

  • About DZone
  • Support and feedback
  • Community research

ADVERTISE

  • Advertise with DZone

CONTRIBUTE ON DZONE

  • Article Submission Guidelines
  • Become a Contributor
  • Core Program
  • Visit the Writers' Zone

LEGAL

  • Terms of Service
  • Privacy Policy

CONTACT US

  • 3343 Perimeter Hill Drive
  • Suite 215
  • Nashville, TN 37211
  • [email protected]

Let's be friends:

  • RSS
  • X
  • Facebook