El software es aquello que le indica al hardware qué hacer y cómo hacerlo. El software incluye las instrucciones y reglas informáticas que la CPU debe ejecutar.

Un software puede ejecutarse en diversos dispositivos, como tu computadora o dispositivos móviles. Por ejemplo:

Constantemente, en todo momento, estás rodeado de software. Ampliemos un poco más el abanico:

Todos estos ejemplos tienen algo en común: son programas que incluyen instrucciones y reglas informáticas para que la CPU las ejecute. Por eso decimos que el software no podría existir sin el hardware. Este es un aspecto que debes tener en cuenta y considerarlo de aquí en adelante: todo software requiere un hardware… SIEMPRE. Ya sea la caja registradora, tu teléfono o el peaje, tienen un hardware (o varios) donde se ejecuta dicho software.

El software está escrito en lenguajes de programación. Ya veremos más adelante en detalle este tema, aunque por ahora vamos a comentar que en su gran mayoría los lenguajes de programación utilizados para construir software son de alto nivel, dado que son más fáciles y eficientes para que los programadores lo utilicen.

Clasificación de Software

No todos los autores coinciden en esta clasificación. En #YoQuieroProgramar vamos a identificar tres tipos de software:

¡Cuidado! No todo el software es “bueno”

Quizás hayas escuchado hablar de virus, troyanos, y otros malwares. Esto también es software, aunque no es del tipo que quisieramos tener como “amigo” en nuestra computadora.

Este tipo de software (que se conoce como malicioso) son programas que ejecutan instrucciones a través de reglas informáticas, utilizando estructuras de control, pero con un fin de daño: ya sea para borrar archivos, realizar acciones repetitivas intencionalmente, o encriptar (cifrar) archivos para luego pedir una recompensa por devolverlos tal cual estaban.

Es por esto que HTML y CSS no pueden introducir ningún tipo de malware en tu computadora: dado que no son programas, no ejecutan instrucciones, ni reglas informáticas. Ahora bien, cuando incluímos JavaScript en la ecuación: la situación cambia. A partir de ese momento, podrían existir sitios web (que en realidad son aplicaciones web) maliciosas. No obstante, por ahora no debes preocuparte por eso.