Primeiramente, devemos ter uma máquina razoável, com RAM e espaço no HD suficiente para os software e programas.
Veja abaixo algumas linguagens, requisitos e programas (lembrando que as instruções são para Windows, em outras plataformas como o Linux alguns são instalados pelo gerenciador de pacotes):
O programa mais antigo para aprender algoritmos com Portugol é o Visualg, mas ele só roda em Windows. Hoje em dia temos a opção do Portugol Studio que tem uam sintaxe mais fácil de entender e roda em outras plataformas
Um editor de texto, pode ser até o Bloco de Notas, mas é preferível um editor melhor, como o Notepad++ ou o Sublime Text. Pode ser usado uma IDE mais robusta para isso, como o PHPStorm. O JQuery precisa ter um arquivo JS baixado para trabalhar com ele. Uma opção é o BlueFish, alternativa ao programa pago Adobe Dreamweaver, que no Linux pode ser instalado com o comando sudo apt install bluefish.
PS: PHPStorm precisa ter o Java Instalado para funcionar. O Sublime Text para Linux pode ser baixado digitando sudo apt install sublime-text, o Notepad++ pode ser instalado com sudo apt install notepad-plus-plus.
Para o Node, no Linux, digite sudo apt install curl, e em seguida execute esse script:
curl -fsSL https://deb.nodesource.com/setup_lts.x | sudo -E bash -
E termine instalando sudo apt install nodejs.
No Windows e no Mac, basta instalar pelo instalador do site oficial.
O Node não é usado apenas no Node.JS, ele também é necessário para usar com o Typescript. Para instalar o Typescript, depois de instalar o Node digite no terminal npm install -g typescript.
Além do editor de texto (tal como o HTML, que é integrado ao PHP), precisamos de um servidor para nosso sistema, como o WAMP/LAMP/MAMP ou o XAMPP (no Linux basta digitar sudo apt install php apache2 mysql-server phpmyadmin lamp-server^ sem esquecer do ^, e usar a pasta /var/www/html para as páginas). Um editor de banco como o MySQL Workbench é opcional.
No caso de configurar o servidor no Linux, faça assim:
Se ao tentar acessar o PHPMyAdmin aparecer um erro, edite o arquivo /etc/apache2/apache2.conf colocando no final dele Include /etc/phpmyadmin/apache.conf, e para acessar a página, vá em /etc/phpmyadmin/config.inc.php e descomente a linha $cfg['Servers'][$i]['AllowNoPassword'] = TRUE;, reinicie o servidor digitando sudo systemctl restart apache2.
Os serviços são parados com sudo service apache2 stop e sudo service mysql stop e iniciados trocando por start. Pra entrar no mysql apenas digite sudo mysql, caso esteja configurado com senha digite sudo mysql -u root.
Pode ser necessário copiar a pasta do PHPMyAdmin para a pasta do Apache digitando sudo ln -s /usr/share/phpmyadmin /var/www/html, e depoiis entrar na pasta /var/www/ e dar permissão 777 para os arquivos para abrir o PHPMyAdmin e os arquivos PHP funcionarem. Para isso digite sudo chmod -R 777 /var/www.
Para criar o usuário root, entre no mysql via terminal e dentro dele digite create user root@localhost; e grant all on *.* to root@localhost with grant option;.
Para habilitar a exclusão de bancos, coloque true na linha $cfg['AllowUserDropDatabase'] = true; do arquivo /var/www/html/phpmyadmin/libraries/config.default.php
Praticamente só é necessário o interpretador Python e um editor (o interpretador Python vem por padrão no Linux e Mac, mas geralmente é a versão 2, sendo que hoje se usa a 3, no Linux ele pode ser baixado pelo apt-get digitando sudo apt-get install python3.10 idle3), mas é recomendado uma IDE melhor como o Pycharm. O SQLite pode ser usado para criar aplicações com banco de dados. Uma opção é o Thonny, que no Linux pode ser instalado com o comando sudo apt install thonny.
Alguns programas como o Visual Studio também oferecem o Python.
PS: PyCharm precisa ter o Java Instalado para funcionar.
É necessário ter o JDK instalado (esse já vem com a JRE inclusa), uma IDE (as mais usadas são Netbeans, Eclipse e Intellij IDEA) e o JavaFX Scene Builder (essa última é usada com a IDE para criar aplicativos JavaFX). É necessário também indicar no path o caminho do JDK numa variável de ambiente JAVA_HOME também, e a JRE na variável JRE_HOME (e também a variável CATALINA_HOME caso use o Apache pra web). Para trabalhar com bancos de dados é necessário um servidor SQL. Se for programar em Java Web, precisa do Apache Tomcat ou do Glassfish. Para programar pra Android, precisa ter o JDK instalado e a IDE Android Studio, as aplicações são feitas em Java, e ele também possuí emulador de Android, o que consome muitos recurso do PC.
PS: Intellij IDEA também é usado para aplicações em Kotlin, essa linguagem é interoperável com Java, portanto é possível também usar Kotlin no Android Studio, já que esta é baseada no Intellij IDEA. Para Kotlin também é necessário instalar o JDK. O Kotlin pode ser instalado no Linux através do comando sudo apt install kotlin.
Caso não queira usar o OpenJDK distribuído com o Android Studio, vá em Default Project Structure, em SDK Location e escolha o diretório do JDK instalado no seu computador (no caso, o da Oracle).
Outra coisa: Use o Apache Tomcat na versão 8 ou 9 caso use JSF com os pacotes javax, pois a partir da versão 10 eles foram substituídos por jakarta.
Essa linguagem praticamente só precisa do Visual Studio Community corretamente configurado. Para programar para Windows Mobile, precisa baixar a SDK do Windows 10 Mobile. Para programas em C# com banco de dados, precisa baixar o SQL Servers Express.
Para instalar os módulos, marque a opção "Desenvolvimento para Desktop com .NET" para aplicações Windows e "Asp.NET e Desenvolvimento Web" para aplicações Web (podemos marcar opções como "Processamento e Armazenamento de Dados" pra trabalhar com SQL Server ou "Desenvolvimento Desktop com C++" para programar nessa linguagem). As atualizações do SQL Server podem ser encontradas aqui: https://learn.microsoft.com/pt-br/sql/database-engine/install-windows/upgrade-sql-server
Essa opção costuma ter várias IDEs para isso, a mais conhecida é o Codeblocks, que em algumas versões já vem com o compilador Mingw na versão do Windows (apesar de que é recomendado instalar separado nesse sistema), em Linux basta dar um apt-get nos pacotes gcc e g++, mas costumam já vir instalados nesses sistemas. Outras opções como o Visual Studio podem ser usadas, principalmente para interfaces gráficas. O QTCreator é usado para criar interfaces gráficas e pode ser integrado ao SQLite para usar banco de dados. Uma opção é o Geany, que suporta outras linguagens também, e que no Linux pode ser instalado com o comando sudo apt install geany No Mac também é necessário instalar o XCode para instalar o compilador, mesmo que use o Codeblocks pra desenvolver.
PS: Ao baixar o Mingw, escolha a opção x86_64-posix-seh, e ao instalar o Mingw, selecione mingw32-base e o mingw320-gcc-g++, depois vá em Installation e Apply Changes. No caso do Linux, pode ser necessário adicionar o PPA usando sudo add-apt-repository ppa:damien-moore/codeblocks-stable e depois dando um update. No caso do QT, em Linux é necessário instalar pelo terminal os pacotes necessários, usando o comando sudo apt install build-essential libgl1-mesa-dev.
Em sistemas Linux e Mac o Perl vem instalado por padrão, mas em Windows precisamos instalar o Strawberry Perl, além de um editor.
PS: O XAMPP também vem com um interpretador Perl, nesse caso basta colocar na variável de ambiente do Windows a pasta C:\Xampp\perl\bin.
Em sistemas Linux, talvez precise instalar caso não já venha incluído digitando sudo apt install ruby-full, em Mac pode ser instalado pelo Rbenv, e em Windows precisamos instalar o Ruby Installer.
Nessas linguagens só é possível trabalhar no Mac, usando o XCode configurado. Ele também é usado para programar em IOS. Como alternativa, podemos usar o Objective-C em Linux, desde que ele não use bibliotecas específicas do Mac, como o Cocoa. Para instalar no Linux use o comando sudo apt-get install gcc gobjc gnustep-devel. Para o Swift, podemos programar online por esse site: https://www.tutorialspoint.com/compile_swift_online.php
Para instalar o Rust, usamos o rustup via linha de comando. O rustup pode ser instalado no Windows do site oficial. Em Linux e Mac usamos esses comandos:
curl https://sh.rustup.rs -sSf | sh
E depois, podemos adicionar essa linha no path:
export PATH="$HOME/.cargo/bin:$PATH"
Em qualquer sistema, para atualizar o Rust basta digitar no terminal rustup update.
Em sistemas Linux, o Nasm, programa pra Assembly pode ser baixado pelo apt-get, mas em Windows e Mac precisamos instalar ele separadamente.
PS: No Windows também deve se ter instalado o Mingw, o mesmo usado em C e C++.