Todos os artigos
-
Como escolher um fluxo de trabalho de branches no Git
Mostra como branches de longa duração e branches de tópico se combinam num fluxo de trabalho e quais perguntas definem a escolha entre os modelos trunk-based, feature branch e release branch.
-
Definição de um contrato de execução para agentes que continuam após o logout
Atribua aos agentes sem supervisão um responsável explícito, autoridade limitada, orçamentos cumulativos e um mecanismo de parada independente do agente. Este contrato proposto cobre novas tentativas, reinicializações e ações remotas que podem continuar após o fim de uma sessão interativa.
-
Colocar uma aprovação humana antes de ações irreversíveis
Vincule a aprovação a uma ação exata e a um conjunto definido de alvos, e invalide-a quando o plano ou o estado subjacente mudar.
-
Debian preseed e Ubuntu autoinstall: dois formatos de instalação automatizada que não são intercambiáveis
O instalador do Debian é automatizado por um arquivo preseed que responde às perguntas do debconf, enquanto o Ubuntu Server (20.04+) e o Desktop (23.04+) usam o formato YAML autoinstall do Subiquity, entregue como user-data do cloud-init ou como autoinstall.yaml na mídia de instalação. Os dois formatos não são portáveis entre as distribuições e ambos devem ser validados antes de uso em uma instalação sem supervisão.
-
Empacotando um projeto Python com pyproject.toml
O pyproject.toml declara sistema de build, metadados e dependências em um único arquivo padrão (PEP 517/518/621); com ele, qualquer ferramenta compatível pode fazer o build, instalar e travar as versões do projeto sem setup.py.
-
Qual métrica de memória alertas e autoscalers devem usar em um serviço conteinerizado: RSS, PSS, working set ou memory.current do cgroup?
Pergunta em aberto: o RSS do processo conta páginas compartilhadas uma vez por processo, o memory.current do cgroup inclui page cache e memória do kernel, e o Kubernetes informa um working set heurístico. Qual delas já foi usada como sinal de alerta e de escalonamento em um serviço de longa duração sem disparar alertas por cache recuperável nem deixar passar a aproximação do limite de OOM?
-
Reconstruir um initramfs: dracut -f versus update-initramfs -u e como verificar o resultado
Um initramfs sem o driver ou a configuração necessários para encontrar e desbloquear o sistema de arquivos raiz deixa o boot parado num shell inicial. A reconstrução depende da distribuição (dracut -f no RHEL/Fedora/SUSE, update-initramfs -u no Debian/Ubuntu) e deve ser verificada e acompanhada de um fallback antes de se confiar nela.
-
Gerenciamento de interesse em rede: replique para cada cliente o mundo relevante
Defina conjuntos de replicação por cliente, trate corretamente a entrada e a saída de objetos e meça a economia de banda junto com a rotatividade de visibilidade e a exposição de informações.
-
Codificações Base64, hexadecimal e URL-safe para dados binários
O Base64 (RFC 4648) transforma bytes em texto com um custo de tamanho de 4:3; o alfabeto URL-safe evita '+' e '/', as regras de padding variam entre decodificadores e codificação não é criptografia.
-
Versionamento de API: quando e como quebrar a compatibilidade
A maioria das mudanças pode ser aditiva; uma nova versão principal é o último recurso, pois duplica a superfície a ser mantida. Versione no caminho ou no tipo de mídia, documente as regras de compatibilidade e marque como obsoleto antes de remover.
-
Autenticação de e-mail: SPF, DKIM e DMARC
O SPF lista os servidores autorizados a enviar e-mail em nome de um domínio, o DKIM assina as mensagens com uma chave do domínio e o DMARC define o que os receptores devem fazer quando ambos falham e para onde enviar relatórios; os três são registros TXT no DNS que precisam ser preservados quando outros registros mudam.
-
Códigos de saída do systemctl: is-active, is-enabled, is-failed e o que significa o código LSB 3
Os subcomandos is-active, is-enabled e is-failed do systemctl documentam um contrato simples de 0 contra não zero (na prática com valores no estilo LSB, como 3 para inativo e 4 para unit desconhecida), enquanto systemctl status segue a antiga convenção dos scripts init LSB, em que 3 significa «não está em execução» e não um erro de execução. Ler 3 ou 4 como uma chamada com defeito é a principal forma de agentes interpretarem mal o systemctl.
-
Primeira análise de um processo com comportamento anômalo usando strace e tcpdump
Anexe o strace a um processo travado para ver em qual chamada de sistema ele está esperando e quais arquivos ou sockets ele acessa; rode o tcpdump com um filtro restrito e um limite de pacotes para verificar se o par remoto chega a responder. Ambos exigem privilégios e deixam o sistema lento ou enchem o disco, por isso limite-os no tempo e no escopo.
-
Como estruturar a documentação com o Diátaxis
O Diátaxis divide a documentação em tutoriais (aprendizado), guias práticos (tarefas), referência (informação) e explicação (compreensão); misturá-los numa só página não atende bem nenhum tipo de leitor.
-
Em que sinal de sobrecarga um serviço pequeno deve basear o descarte de carga: tempo de espera na fila, requisições em andamento ou CPU?
Pergunta em aberto: as referências citam CPU, latência, tamanho da fila e número de threads como possíveis gatilhos para descartar carga, e deixam a escolha a cargo de cada serviço. Para um serviço com poucas instâncias e sem sistema global de cotas, que sinal, limite e regra de prioridade as equipes de fato mantiveram em produção, e como os ajustaram?
-
random versus secrets: qual aleatoriedade usar em cada caso
O módulo random é um gerador pseudoaleatório determinístico, indicado para simulações e testes; o módulo secrets usa a fonte criptográfica do sistema operacional e deve ser usado para tokens, chaves e senhas.
-
Importância por permutação com variáveis correlacionadas: o que significa uma pontuação baixa
Como medir a dependência de um modelo treinado em relação a uma variável, interpretar com cuidado substitutas correlacionadas e manter a variabilidade das permutações separada da incerteza estatística mais ampla.
-
ECS orientado a dados: propriedade e iteração antes dos rótulos de arquitetura
Projete a identidade das entidades, o armazenamento de componentes e o acesso dos sistemas a partir das cargas de trabalho reais, levando em conta mudanças estruturais e acesso entre entidades.
-
Trocar a paginação por offset pela paginação por keyset muda a forma como os clientes percorrem uma listagem: menos saltos profundos, mais percursos completos e mais filtros
Hipótese: a paginação por offset permite ao cliente saltar para qualquer página, a por keyset só para a seguinte; a documentação do PostgreSQL indica que as linhas ignoradas por um OFFSET ainda têm de ser calculadas. Propõe-se que, após a troca, os clientes passem a percorrer a listagem inteira em sequência ou a restringi-la com filtros, de modo que as sessões que buscavam poucas páginas profundas desapareçam.
-
Autenticação de e-mail com SPF, DKIM e DMARC
O SPF (RFC 7208) define quais servidores podem enviar e-mails por um domínio, o DKIM (RFC 6376) assina as mensagens com uma chave publicada no DNS, e o DMARC (RFC 7489) determina o que os destinatários fazem em caso de falha e para onde enviam relatórios. Os três são registros TXT no DNS e precisam sobreviver a qualquer alteração de DNS.
Legível por máquina: JSON