Those of you who have been reading the website for a decade or so may recall that I’ve spoken in the past about free and open source software (FOSS) in education. If you did, I’m sure you decided that getting everything education-related for free was a good idea, and you’re now on board with me. If, for some reason, you didn’t jump on the bandwagon, or if you’ve been reading this blog for less than five years, I’d like to introduce you to the world of FOSS.
What is free and open source software (FOSS)?
FOSS refers to software that’s, well, free. However, the term “freedom” is a little more inclusive than you may think. Let’s have a look:
- “Free as in beer.” The open source community uses this phrase to indicate that FOSS doesn’t cost anything (presumably, as when somebody buys you a round). You can get whatever software you want without paying a dime, nor do you have any obligation to say nice things about it online, tell the developers that you like it, or even acknowledge that you’re using it. FOSS costs nothing and confers no obligation of any kind on you, the user.
- “Free as in freedom.” FOSS is free in the sense that you can use it however you want. If you get your hands on a piece of open source software you can make copies of it and give them to your friends. Heck, if you want to sell copies of the software online, you’re welcome to do that, too. If you want to put your own logo on the software and put it out there, you can do that, too. The software is completely free in that you can do whatever you want with it. Period.
How is FOSS actually free? Don’t developers need to pay their bills?
There are a few ways in which people actually pay for free software. Let’s have a look at how this happens:
- Some developers don’t get paid at all. Some programs are really just small bits of code that somebody decided would be personally handy and they decided to publish it so other people could have an easier time. Other apps are labors of love in which somebody works hard because they really want to make a difference.
- Developers don’t do all the work themselves. When FOSS software is in development (and even afterwards), many of the users will find errors with the software and submit fixes to the developer. In some cases somebody may want additional functionality and will submit it to the developers to be incorporated into the software. This isn’t to say that FOSS devs are lazy – only that they get help that allows them to get more done than they might usually do.
- Developers take donations. This isn’t the case with all software, but users usually have the option to donate money to developers who make software they like. For example, I have donated money to Linux Mint, Puppy Linux, and the Free Software Foundation. It’s important to note that in none of these cases was I ever asked for money, nor was any payment expected.
- Large organizations pay for software support. My computer is currently running on the Lubuntu operating system, which is organized by Canonical. I’ve never paid a dime for it and when I’ve had problems, I’ve fixed them myself using the extensive help files online. However, if I were a system administrator at a large company, I’d need to get problems fixed right now – in these cases, the admins will pay for service contracts with Canonical to support their programs. Probably the best known case of this happening is the Red Hat/Fedora Linux operating systems. Fedora Linux is free for all, while Red Hat is the enterprise version for which larger users will pay for support.
How do I use free and open source software?
Before you use FOSS, you’re most likely going to have to install the Linux operating system on your computer. Though there is some open source software written for Windows and a little bit written for Apple, various copyright and trademark issues make it difficult to publish for these operating systems. As a result, Linux is the most common operating system for computers running open source software. Keep reading for more information.
So, what is Linux, anyway?
Linux is an operating system for your computer. Like Windows, MacOS, Android, and all of the other OSes out there, the purpose of Linux is to serve as an intermediary between you and your computer. After all, your computer speaks in 0s and 1s, while you probably don’t. Operating systems allow you and the computer to talk to each other in terms that you both understand.
The big three operating systems of laptop/desktop computers are, as I mentioned before, Windows, MacOS, and Linux. Here’s some info about each:
- Windows is an operating system that originated in the 80s and runs on about 81% of laptop/desktop computers. Unless you’ve been living with the Amish for the past 40 years, you already know what this is.
- MacOS is the Apple operating system. It’s very closely monitored by Apple and notoriously noncompatible with software from other companies. It’s like the anti-FOSS. But is very pretty.
- Linux is an operating system which was written from the ground up to be an open-source version of UNIX (which was and is used by people even nerdier than Linux users). The biggest force behind it is Linus Torvalds, a notoriously touchy programmer who makes people cry at the same time he manages the Linux project. I wish that was a joke, but it’s not. Unlike Windows (which you need to buy to install on a computer) or MacOS (which you have to buy on special price-inflated Apple hardware), Linux can be downloaded for free and installed on any computer.
Unlike Windows or MacOS, there are literally thousands of different versions of Linux out there. However, all of these versions use the same underlying software and are, for the most part, compatible with one another. As a result, no matter what version you use, you can use the same software as other people. I’ll probably talk about this more in the future, when I get around to it.
How do I get Linux?
I’d go through the directions, but instead I’ll just suggest you read this article and follow them instead: https://www.howtogeek.com/693588/how-to-install-linux/. When you install Linux, I recommend that you do a dual-install (which is something that will make sense when you get started) and that you backup your programs before doing anything.
How do I get good teaching software?
This post is already too long, so I’m going to put it in the next post.