Computer software is a set of instructions that tells a computer what to do. There are three basic types of software: system software, programming software, and application software (or “apps”). System software defines and controls a computer’s core functions, including the operating system (OS), disk management, and utilities. Programming software refers to programs that help people create and edit code, including text editors, compilers, and linkers. Apps act as tools for end-users. These programs include everything from productivity and documentation tools, security programs, and media players to web applications, social media platforms, and games. Some consider embedded software to be a fourth category, including programs that control and connect Internet of Things (IoT) devices like cars, telecommunication networks, and smart thermostats.