Cover do episódio 57: Como eu organizava meu ambiente de dev em 2019
#05728 de janeiro, 20193 min leituraFerramentas que Eu UsoS3 · 2018–2019

Como eu organizava meu ambiente de dev em 2019

Setup de dev não é só estética. É quanto tempo você perde procurando coisa, chaveando contexto, esperando build. Em 2019 aprendi isso da forma difícil.

SetupProdutividadeTerminalVSCode

Meu primeiro ambiente de dev era uma bagunça controlada.

Windows 10, VSCode instalado na semana anterior, Python vindo do python.org, Node instalado por algum tutorial que não lembro mais. Três versões do Python no PATH ao mesmo tempo. Nenhuma delas era a certa.

Levei 2 horas numa manhã tentando entender por que o script do colega funcionava e o meu não. Era versão de Python. 3.6 vs 3.7. Um detalhe. Duas horas.


Não é que você não consegue trabalhar com ambiente bagunçado. Você consegue. O problema é quanto energia mental você gasta em coisas que não são o problema.

Quando seu ambiente está certo, você abre o terminal e começa. Quando está errado, você passa 20 minutos lembrando como ativar o virtualenv, procurando qual porta o banco está rodando, descobrindo por que a variável de ambiente sumiu. Não parece muito. Mas acontece todo dia, em toda sessão. Acumula.


Em 2019 eu usava VSCode — sem mistério. O que me levou tempo foi aprender os atalhos: Ctrl+P para abrir arquivo por nome, Ctrl+Shift+P para qualquer comando. Parece pouco, mas quando você para de tirar a mão do teclado para navegar, o ritmo muda.

Terminal: comecei com PowerShell no Windows, migrei para Git Bash depois de uns 2 meses porque o PowerShell me irritava tentando fazer coisas Unix. Em 2019 WSL ainda não era prático para mim.

Python: aprendi sobre virtualenv do jeito errado — depois de poluir o Python global com um pip install que quebrou outro projeto. Depois disso, toda vez: python -m venv venv, source venv/bin/activate, só então pip install. Banco: PostgreSQL local sem Docker ainda. Comecei com pgAdmin, migrei para psql e nunca voltei para GUI.


Em 2019 também comecei o Proxmox em casa. PC antigo virou servidor. Isso foi, olhando agora, o começo do meu entendimento de infra de verdade.

Quando você tem servidor em casa, aprende coisas que tutorial não ensina: rede estática, SSH de verdade, monitorar o que está rodando, destruir VM sem medo porque você recria em 5 minutos. Esse laboratório me deu confiança com infra que acelerou muito o aprendizado de AWS depois.


O que eu faria diferente: teria aprendido dotfiles antes. São os arquivos de configuração do ambiente — .bashrc, .gitconfig. Quando você versiona no git, o ambiente é reproduzível. Novo computador? Clone, roda o script, 30 minutos e está igual. Em 2019 eu reconfigurava tudo na mão toda vez. Perdia horas, perdia atalhos que tinha esquecido que existiam.

O que realmente importa no setup não é qual editor, qual terminal, qual tema. É: você consegue começar em menos de 5 minutos numa máquina nova? Seu ambiente é consistente entre sessões?

Essa semana: cronometra quanto tempo você perde em setup e espera de build. Se passar de 30 minutos no dia, algo precisa de atenção.