Nem toda nota vira um post sozinha. Estas quatro não têm uma tese em comum, mas funcionam como um guia rápido de assuntos que vale consultar de vez em quando.
1. Consulte as permissões Unix
Todo arquivo e pasta tem três permissões — read, write, execute — aplicadas em três níveis: dono, grupo, todo mundo. Rodando ls -alh, a primeira coluna (algo como drwxr-xr-x) mostra isso em três blocos de rwx, um por nível. Um - no lugar de uma letra significa que aquela permissão está negada. Pastas precisam de permissão de execução pra poderem ser “entradas” — sem isso, você não consegue nem listar o que tem dentro.
O formato octal resume tudo num número: Read = 4, Write = 2, Execute = 1, Nada = 0 — soma-se os valores por nível. 777 é todo mundo com tudo liberado; 644 é o dono lendo e escrevendo, o resto só lendo.
2. Lembre como o Node.js funciona
Node funciona com uma call stack — a primeira função chamada é a última a sair da fila. Ser single-thread não impede processamento assíncrono: isso só é possível graças ao trio Thread Pool, Event Loop e Callback Queue trabalhando juntos por trás da call stack.
Outro ponto que ajuda a entender o ecossistema: no Node, tudo é módulo. Existem três tipos — os nativos (parte do runtime), os do npm, e os que você mesmo escreve.
3. Relembre o que significa ser ágil
Todo programador é arquiteto. Não existe gestor de projeto de software que nunca programou de verdade conseguindo montar algo que funcione sozinho — a decisão técnica precisa vir de quem entende o problema por dentro.
Estimar não é prever. E “um bom design é mais fácil de mudar que um mau design” é a frase que deveria guiar boa parte das decisões: pensar não em acertar de primeira, mas em tomar decisões que sejam mais fáceis de mudar depois, quando a informação for melhor.
Agilidade, no fim, é andar um passo de cada vez, avaliar o resultado, ajustar o caminho quando não bate com o esperado, e repetir. Programar é fazer escolhas — boas ou não.
4. Guarde estes três comandos de Git
git reset --hard branch— descarta tudo e volta pro estado exato de outra branch.git switch branch— troca de branch sem o overload semântico docheckout.Ctrl+L— não é Git, mas mora no mesmo fluxo: limpa o terminal antes do próximo comando.
Como usar estas notas
Nenhum destes tópicos precisa de um post de 2000 palavras. Eles aparecem de novo, de vez em quando, numa conversa ou numa dúvida rápida — e vale mais consultar tudo num lugar só do que confiar na memória.