Sou fã de IDEs desde que um colega de trabalho sem querer demonstrou durante uma sessão de programação em par que é possível criar código na velocidade do pensamento.
Ultimamente, tenho aprendido o node.js (e, portanto, o JavaScript), e meu primeiro reflexo foi baixar o plugin do node para IntelliJ, começar a configurar projetos e hackear. Então percebi que estava gastando mais tempo mexendo no ambiente e pensando por que meu CSS não estava destacando a sintaxe e como eu deveria organizar meus arquivos de origem do que realmente aprendendo a tecnologia.
Decidi esquecer tudo e usar a linha de comando enquanto fazia alguns exercícios guiados, graças ao learnyounode . Aprendi com o simples uso do vi que deixar os parênteses à direita em uma chamada de função sem parâmetro pode ter consequências sutis, mas desastrosas (ao contrário do Scala).
Não ter uma compilação / interpretação instantânea do meu código me forçou a pensar cuidadosamente sobre como a linguagem está estruturada e realmente aprender as APIs da biblioteca, em vez de apenas depender de um compilador / interpretador para me dizer o que perdi.
É revigorante poder abrir um novo arquivo de origem e começar a codificar do início, sem ter que pensar “como faço para começar?” Sou capaz de escrever um servidor HTTP de nó simples, em grande parte da memória das APIs, e honestamente não posso dizer o mesmo de nenhuma biblioteca HTTP Scala.
A outra grande lição é que não usar um IDE realmente o força a se familiarizar com a documentação. A maneira como os documentos do node.js são estruturados é muito diferente de, digamos, javadoc, e aprender a navegar rapidamente e obter o que você precisa é uma habilidade em si.