Welcome to Ryan's Blog!

Hi! I'm Ryan! Welcome to my weblog, an online journal consisting of my opinions and experiences that I would like to share with you. I write most of the content on here unless specified otherwise.

This started as a blog based on completely random ideas but now that content is accumulating, I am starting to categorize posts, making links for specific topics up on top.

When you click on a link up top, the first post on the page is in full length but all other posts are minimized so you will have to click Read more >> to see them in full-length.

Below, you will find the most recently added content. Thanks for visiting my blog!

Tuesday, May 20, 2014

What is Free software?

Introduction

Many people think they know what free software is but are completely wrong. Many people also assume that open source software is a synonym for free software. It is definitely not. Let me begin by showing you the three main classifications of software.

  • Free Software
  • Open Source Software
  • Proprietary Software

Informal Descriptions and Examples

Here are my informal descriptions of each of these types of software.

Free Software: Description

The word free in free software does not refer to money. It refers to freedom. If you have software which is classified as free software, then you have the freedom to modify, copy, or redistribute the source code or the program itself without punishment. And just because it's called free software, that does not mean that you cannot use it to make money.

Personally, I feel that the term free software is a horrible and misleading name for this software. To me, I believe a much better name for it would be freedom software. This way, it clearly emphasizes the purpose and nature of the software.

Free Software: Example

The Red Hat Linux operating system is a perfect example to show that free software can generate revenue. Anybody can go to the Web site and download Red Hat Linux, free of charge. Red Hat, Inc. makes its money by selling software support subscriptions.

Open Source Software: Description

Open source software is software that has its source code available for people to see. You might or might not be able to do things like copy, modify, or distribute it without the risk of breaking the law or getting sued.

Open Source Software: Example

For example, open source software might or might not be free software (because you can see the source code but might not be able to do whatever you want with it). But free software is always open source (because you have the freedom to see the source code and do with it whatever you want. This example was based information found on differencebetween.net.

Proprietary Software: Description

When you choose to use proprietary software, you forfeit your freedom, and even your privacy in far too many cases, for convenience. The advantages are usually extremely appealing and seemingly wonderful, but don't forget that you are paying this convenience with a price that extends far past money.

Proprietary software is made to control the user. If you use a proprietary program, you can do very little with the software outside of using it for exactly what it is intended for. You do not have the right to copy it. You do not have the right to modify it. You do not have the right to distribute it. And most of the time you are not allowed to even look at the source code. You are supposed to use it how the author or owner intends for you to use it and nothing more.

Proprietary Software: Example

For example, if you make a copy of Microsoft Windows without paying Microsoft for it, you are breaking the law. Another example: If you hack and build a program based off of Adobe Flash Player, you will likely be sued. Also, if you want to use Google or Facebook, it is almost, if not completely, mandatory for you to give information about who you are, where you live, where you work, how to find you, how to contact you, and even who your friends and family are.

Formal Definitions

  • Free Software requires four specific criteria, including 1) users' freedom to run the software for any reason, 2) users' freedom to access and modify the source code, 3) users' freedom to distribute and share copies with others, and 4) users' freedom to redistribute modified copies.
  • Open Source Software requires ten specific criteria, including 1) free distribution, 2) available source code, 3) allowed derived works, 4) restricted source code only if patch files are allowed, 5) no discrimination against people, 6), no discrimination against fields of endeavor, 7) mandatory license distribution, 8) inability to tie to a specific product, 9) inability to restrict other software, and 10) mandatory technology neutrality.
  • It is difficult to find a formal definition for proprietary software, so I have a couple definitions for you.
    • I think the most relevant dictionary.com definition of proprietary software is software that is privately owned and operated for profit.
    • The Wikipedia definition of Proprietary Software states that Proprietary software or closed source software is computer software licensed under exclusive legal right of the copyright holder with the intent that the licensee is given the right to use the software only under certain conditions, and restricted from other uses, such as modification, sharing, studying, redistribution, or reverse engineering.

I hope this clears up some of the confusion.