Course Introduction to Programming

Software

Course's Page 6 min Text by
User Image
Thiago Nepomuceno

In this class, we will learn the basic concepts of Software, understanding what it is and how it relates to the computer's operation.

We will see its importance for executing tasks and for the interaction between the user and the hardware, we will analyze the different types of existing software and explore the main forms of distribution, understanding how they reach us and are used in daily life.

What is software

Software is the logical part of the system, consisting of a set of instructions and data organized in the form of programs, which guide devices on what actions to perform and how to execute them. Some examples of software are: Whatsapp, Instagram, PowerPoint, etc.
Thus, it facilitates communication between the user and the machine, as the software translates their actions into a language that the hardware can process.

Figure 1 : Relationship between User, Software, and Hardware

Importance

Software is essential for daily life because it allows electronic devices to perform practical and understandable functions for users. They translate user commands into instructions that the hardware can execute; in other words, without them, hardware would be just a set of physical components incapable of performing tasks. Thus, software enables everything from simple tasks, like writing texts and communicating through social networks, to complex activities, such as controlling industrial systems and artificial intelligence, as well as providing entertainment with video games. Therefore, software not only increases productivity and facilitates communication but also plays a central role in technological development and the advancement of society.

Types of Software

Software can be classified in various ways; a common classification would be to separate them according to their purpose:

System Software:

They are fundamental for managing and controlling the computer's hardware, as well as coordinating the operation of all system resources. They create the necessary foundation for other software to run correctly. Some examples are:

  • Operating Systems: Windows, macOS, Linux, Android, iOS. They manage all hardware resources and provide a platform for other applications.
  • System Utilities: Programs like disk checkers (to analyze the health of HDDs and SSDs), antivirus, and backup software.

Application Software:

They are used by the user to perform specific tasks. Typically used for work, communication, creation, and entertainment. Some examples are:

  • Text Editors: Microsoft Word, Google Docs, Notepad.
  • Web Browsers: Chrome, Firefox, Safari, Edge.
  • Games: Minecraft, Roblox, Fortnite, Valorant.
  • Social Media Apps: Instagram, X (formerly Twitter), TikTok.

Forms of distribution

Software can be distributed in various ways, so each distribution model defines its rules and characteristics, impacting how you can interact with the program. The main models are:

  • Freeware: is completely free, both to use and to share. You can download and use them without spending anything. An example is the Google Chrome browser, in its basic version.
  • Freemium (Shareware): free, but with limited functionalities or for a trial period. If you like it and want to access all the features or use the program without restrictions, you will need to buy a license. An example is Canva.
  • Adware: free, but with advertisements; they make money by displaying ads within the program. Many mobile games feature this model.
  • Open source: The software's source code is publicly accessible. This allows anyone to view, modify, and distribute the code, promoting collaboration and innovation. The biggest examples are Linux and the Firefox browser.

Conclusion

Throughout this class, you have learned the fundamental concepts of software, understanding it as the logical essence behind our digital devices, making technology a powerful and accessible tool.

Now you know all the basic concepts of Software, being more prepared to understand and interact with the digital world around you ๐Ÿ˜ƒ