User-generated content is a trend that we are used to seeing on the internet and that we see every day on social media. In the computer world, it is also possible to create or improve applications, tools or programs using the same collaborative model.
Explained in a very simple way, software is a set of computer instructions necessary for our electronic devices to perform the tasks for which they are designed. These instructions, which are written in a programming language, are called source code. Although we tend to associate the word “software” with computers or smartphones, most of the devices we have today at home or in the office have software built into them: televisions, video game consoles, robot cleaners, connected watches, etc.
You probably had to call tech support when one of these devices stopped working properly, but can you imagine being able to fix it yourself? In the 1980s, American programmer Richard Stallman worked in an office where the printer often jammed. His colleagues only noticed the problem when they saw that the documents they had sent to the printer had not been printed. He decided to modify the source code of the printer so that in the event of a paper jam, users would receive a notification warning them of the error so that they could fix it.
After a while, the office replaced the printer with a new one and the problems caused by paper jams returned. This time, Stallman was unable to do the same thing he had done with the previous printer, because access to the source code had been restricted by the manufacturer. It was then that he started a “free software movement”, which sought to give users the freedom to view, modify and distribute the source code to suit their needs.