# Understanding Different Types of Software

## Introduction

🎮 Video games, music players, and internet browsers are all examples of different types of software, each with their own unique functions. Think about the apps on your phone and laptop. We spend a lot of time interacting with this type of software, but we may not fully understand how it works or how it is added to our systems. In the previous lessons, we learned about networking and the internet. Many applications rely on the internet to function. Consider your social media apps, messaging apps, and more—they depend on the internet. However, this internet integration is not magically added to an application; it is built-in to require it for functioning.

## Common Terms Related to Software

🔤 Before diving deeper into the world of software, let's clarify some common terms you may come across:

1. **Coding**: Coding is the process of translating one language into another. It could involve translating English to Spanish, English to Morse code, or even English to a computer language. When someone builds an application, we refer to it as coding an application.
2. **Scripting**: Scripting involves coding in a scripting language. We will cover scripting languages in a later lesson. Scripts are primarily used to perform a single or limited-range task. There are specific languages we can use to build scripts.
3. **Programming**: Programming also involves coding, but in a programming language. Programming languages are specialized languages that software developers use to write instructions for computers to execute. Larger applications like web browsers, text editors, and music players are typically written in programming languages.

These terms—coding, scripting, and programming—are often used interchangeably, but they do have subtle distinctions. However, don't worry too much about the details. For our purposes, we can use these terms interchangeably.

## What Software is Made of and Who Builds It

🏗️ Now let's explore what software is made of and who builds it. Anyone who knows a programming or scripting language can write code to create software. There is a significant demand for this skill set, and it is becoming easier for people to learn how to code. As someone working in IT, it's important to understand how software works and how it gets installed on your systems. You may encounter software errors or failures, and you need to know how to handle them.

## Conclusion

📚 Understanding different types of software, common terms related to software development, and the process of building software will be valuable as you navigate the world of IT. Being knowledgeable about software will help you troubleshoot issues and ensure the smooth functioning of computer systems.

Onwards and upwards! Let's continue our exploration of software. If you have any questions or need further assistance, feel free to reach out. 😊
