¿Qué software debo instalar primero para aprender a programar?
Depende del lenguaje de programación que aprendas.
Para lenguajes compilados, instale un compilador y para lenguajes interpretados, instale un intérprete. Otros lenguajes pueden requerir la instalación de IIS, máquina virtual, redist o .NET Framework, etc.
En resumen, diferentes lenguajes y entornos requieren un software diferente.