Todos os artigos
-
Verificações de liveness e readiness
Uma verificação de liveness indica se um processo deve ser reiniciado; uma de readiness indica se ele deve receber tráfego. Confundi-las causa loops de reinicialização ou envia tráfego para instâncias incapazes de atender.
-
Registro de pluviômetro de jardim: tipo de aparelho, altura da borda, exposição e horário fixo de leitura diária
Protocolo proposto para um registro doméstico de precipitação, inspirado na forma como os pluviômetros oficiais de armazenamento são lidos: indicar o tipo de pluviômetro e o orifício, a altura da borda e as obstruções em volta, ler uma vez por dia em horário fixo na resolução do aparelho, anotar explicitamente vestígio e pluviômetro vazio, e manter dias de neve e de funil bloqueado como linhas sinalizadas; nenhum valor de precipitação é afirmado.
-
TLS no encaminhamento do rsyslog com o driver gtls e quando vale a pena adicionar o RELP
O driver de stream de rede gtls do rsyslog cifra a conexão de encaminhamento e pode autenticar ambos os lados com certificados X.509, configurado por meio de StreamDriverAuthMode. TLS sobre TCP simples ainda perde mensagens em trânsito numa desconexão abrupta; a confirmação do RELP na camada de aplicação fecha essa lacuna, ao custo de mais componentes.
-
Projetar URLs e aplicar as regras de percent-encoding
Procedimento para escolher a estrutura de uma URL (segmentos em minúsculas separados por hífens, identificadores estáveis, uma única forma canônica, nenhum segredo na URL) e codificá-la corretamente segundo a RFC 3986: codificar caracteres reservados só quando atuariam como delimitadores, nunca codificar os não reservados, codificar e decodificar exatamente uma vez, usar dígitos hexadecimais maiúsculos e lembrar que + significa espaço apenas em query strings application/x-www-form-urlencoded, conforme o WHATWG URL Standard.
-
Migração de esquema de save games e gravações recuperáveis
Versione os dados persistentes do jogo, migre representações antigas de forma explícita, valide antes de restaurar o mundo e confirme as atualizações sem destruir o último save utilizável.
-
Descompressão zlib limitada: aplique o orçamento cumulativo de saída durante a decodificação
Limite os bytes produzidos ao longo de várias chamadas e distinga fluxos incompletos, entrada não consumida e dados residuais após o fim do fluxo.
-
Configurando um servidor de arquivos Samba: smb.conf, testparm e desativação do SMB1
Montar um compartilhamento Samba exige editar a seção [global] e uma seção de compartilhamento no smb.conf, escolher entre um banco local do smbpasswd e a participação em um Active Directory, validar o arquivo com testparm antes de recarregar e confirmar que o SMB1 continua desativado.
-
Como limpar uma branch antes da revisão
Antes de pedir revisão, faça squash dos commits de correção, divida os que misturam assuntos e reescreva as mensagens, de modo que cada commit seja uma única alteração revisável; git rebase -i e autosquash cuidam da parte mecânica.
-
details e summary: widgets de divulgação nativos, acordeões exclusivos e hidden=until-found
details/summary é um widget de divulgação sem script: o atributo open exibe o conteúdo, um atributo name compartilhado torna o grupo exclusivo (abrir um fecha os outros), o evento toggle informa as mudanças e o summary tem estilo display: list-item. Para conteúdo recolhido que precisa continuar pesquisável, hidden=until-found o revela na busca da página ou na navegação por fragmento.
-
Configurando o kdump para capturar um kernel crash no RHEL
O kdump reserva memória com antecedência para que um segundo kernel mínimo possa iniciar após um panic e gravar um vmcore para análise. Esta metodologia cobre a reserva dessa memória, a ativação do serviço e por que testá-lo de propósito derruba o host — agende o teste com isso em mente.
-
Dígitos verificadores: o que Luhn, ISBN-13 e IBAN mod 97 detectam e o que não detectam
Um dígito verificador é uma redundância calculada a partir dos demais caracteres de um identificador, para que um erro de cópia seja detectado antes da consulta: o Luhn (mod 10 com dígitos duplicados alternadamente) protege números de cartão, o ISBN-13 usa pesos alternados 1 e 3, e o IBAN usa o ISO/IEC 7064 MOD 97-10 com dois dígitos. Detectam erros de um único caractere e a maioria das trocas de dígitos adjacentes, mas nunca um identificador errado que seja válido.
-
Atualizações de status durante incidentes: modelo e cadência
Durante um incidente, uma única pessoa fica responsável pela comunicação e publica atualizações em horários fixos, seguindo um modelo: status, impacto visível para o usuário, o que se sabe, o que está sendo feito e o horário da próxima atualização; a atualização sai no horário mesmo que nada tenha mudado.
-
Como fazer normal maps em espaço tangente concordarem com o renderizador
Diagnostique costuras em normal maps verificando a codificação, a lateralidade das tangentes, a triangulação da malha e a concordância entre as transformações do bake e do runtime.
-
Estrutura MIME de um e-mail: multipart/alternative, a parte em texto simples e as codificações
Uma mensagem com texto e HTML é um multipart/alternative cujas partes seguem da mais simples à mais rica (text/plain primeiro, text/html por último); corpos com bytes não ASCII usam quoted-printable ou base64, e os cabeçalhos usam encoded-words da RFC 2047. Gere a parte em texto a partir dos mesmos dados do HTML, escape as variáveis e respeite os limites de tamanho de linha.
-
Travessia de diretórios na gravação de arquivos via MCP: restrição ao vault do notebook e escopo do Ansible Lightspeed
A injeção indireta de prompt pode levar uma ferramenta de arquivos a gravar fora do diretório de saída previsto. A correção do MCP do notebook exige uma raiz explícita para o vault, enquanto o comunicado do Ansible Lightspeed identifica um problema na extensão sem confirmar um intervalo de versões corrigidas.
-
Circuit breakers: falhar rápido quando uma dependência está fora do ar ou lenta
Um circuit breaker conta as falhas e as chamadas lentas a uma dependência; ao ultrapassar um limite, abre e rejeita as chamadas imediatamente, depois deixa passar algumas chamadas de teste (half-open) antes de fechar de novo. Protege as threads de quem chama e dá à dependência espaço para se recuperar, mas só com janelas bem escolhidas, um fallback e um timeout por baixo.
-
Caminhos de arquivo com pathlib
pathlib.Path representa caminhos como objetos com junção, partes, tratamento de extensões e métodos de E/S, evitando bugs de concatenação de strings; resolve() e relative_to() tornam explícitas as verificações de contenção de caminhos.
-
Normas de comunicação assíncrona para equipes distribuídas
Normas escritas definem qual canal serve a cada tipo de mensagem, em quanto tempo se espera resposta, o que é urgente e onde os resultados ficam registrados; a mensagem em si começa pelo pedido, traz o contexto e é completa o bastante para que quem está em outro fuso horário aja sem precisar de perguntas adicionais.
-
Autorização no MCP 2026-07-28: verificações do emissor e mudanças no registro de clientes
A revisão reforça a validação do emissor nas respostas de autorização, vincula as credenciais de registro armazenadas ao emissor e torna obsoleto o Dynamic Client Registration. Os Client ID Metadata Documents já eram recomendados na revisão anterior.
-
Para engenheiros novos em Rust, o tempo de espera do build supera os erros do borrow checker como principal atrito registrado nos dois primeiros meses
Hipótese: os erros do borrow checker dominam o atrito que engenheiros novos em Rust registram nas primeiras semanas, mas sua participação cai rápido, enquanto as anotações sobre espera por builds (apesar do cargo check, que a documentação do Cargo descreve como um comando que pula a geração de código e, por isso, é mais rápido que o cargo build) crescem e se tornam a maior categoria em até dois meses; propõe-se um teste com diário de atrito, sem alegar resultado.
Legível por máquina: JSON