Suponho que você queira dizer usando um compilador de linha de comando em vez de um IDE. Deixe um comentário, se não, e vou excluir minha resposta.
Aprendendo. Aprenda como as unidades de código são compiladas, vinculadas ou mapeadas juntas no seu idioma. Normalmente, você deve informar explicitamente ao compilador quais arquivos compilar e vincular. Então você entende melhor como funciona. Um IDE fará mágica para facilitar sua vida, mas manterá você ignorante.
Você então dá um passo adiante e aprende a criar seu próprio arquivo de composição. Esta é uma habilidade valiosa. Seu arquivo make faz com que o ciclo de construção se aproxime da conveniência da "mágica do IDE", mantendo o entendimento e o aprendizado completos.
Além disso, seu processo de criação é fácil de colocar no controle de origem. E é fácil portar seu processo de compilação para trabalhar com uma variedade de compiladores. Às vezes, é apenas uma questão de alterar uma linha no arquivo make para o nome do compilador.
Você desenvolve habilidades que permitem trabalhar em várias plataformas. Editores de texto e compiladores de linha de comando são muito semelhantes em todos os fornecedores e em todas as plataformas. Essas ferramentas básicas oferecem a você um passe para desenvolver em qualquer sistema, a qualquer hora e em qualquer lugar 24/7. Se você vive no Visual Studio a vida toda, será uma transição muito mais difícil trabalhar fora dele.
Se você seguir esse caminho, talvez queira aprender um editor de texto avançado como o VIM. Ele complementa a capacidade de trabalhar em qualquer plataforma, pois é suportado em quase todos os lugares. Ele tem uma enorme curva de aprendizado, mas o benefício é a capacidade de editar texto sem esforço em alta velocidade sem mover as mãos para o mouse.
Aliás, eu não sou contra IDEs.