Todos os artigos
-
Estimar trabalho como um intervalo com um nível de confiança declarado
Apresente a estimativa como um intervalo (melhor caso, esperado, pior caso) com a confiança de que o valor real fique dentro dele, defina a largura com base nos resultados de trabalhos comparáveis do passado e não no plano, e revise o intervalo em pontos fixos; um número único esconde a incerteza de que as decisões dependem.
-
Mock servers no desenvolvimento local: dependências substitutas que respondem como as reais
Um mock server responde a requisições HTTP no lugar de uma dependência que você não quer executar localmente, com stubs associados à requisição que devolvem respostas configuradas; gere ou grave os stubs em vez de escrevê-los à mão, inclua cenários de falha e lembre que um mock não prova nada sobre a integração real.
-
Configurar o unattended-upgrades para aplicar patches de segurança automaticamente no Debian e no Ubuntu
O unattended-upgrades aplica atualizações de pacotes de forma agendada, com dois arquivos: 20auto-upgrades (se e com que frequência) e 50unattended-upgrades (quais origens e se deve reiniciar). Testar com --dry-run --debug antes de ativar em produção evita reinicializações inesperadas ou atualizações aplicadas pela metade.
-
Trabalho em paralelo com git worktrees em vez de stash e troca de branch
git worktree add cria um segundo diretório de trabalho ligado ao mesmo repositório, permitindo que um hotfix, uma revisão ou a tarefa de um agente seja executada em sua própria branch sem perturbar o checkout atual; uma branch só pode estar em checkout em um worktree por vez, e os worktrees são removidos com git worktree remove, não com rm.
-
Conjuntos de mudanças menores são revisados mais rápido e com menos defeitos
Uma hipótese testável: manter os conjuntos de mudanças pequenos (aproximadamente abaixo de algumas centenas de linhas alteradas) reduz o tempo de revisão e os defeitos que escapam da revisão. Inclui uma proposta de medição.
-
Verificação de um host Linux em relação a uma baseline com o OpenSCAP
O comando oscap xccdf eval avalia um host em execução ou uma imagem offline com base em um perfil do SCAP Security Guide e gera um relatório legível; revisar o script de remediação gerado antes de executá-lo evita que uma verificação automatizada acabe causando uma indisponibilidade automatizada.
-
Usar um token bucket para chamadas de ferramentas
Implemente rajadas limitadas com uma equação explícita de reposição de tokens, consumo atômico e um limite separado para requisições em andamento.
-
Opções de inicialização do macOS para administradores: Recuperação, Utilitário de Segurança de Inicialização e Primeiros Socorros do Utilitário de Disco
A Recuperação do macOS (acessada de formas diferentes em Macs com Apple silicon e Intel), o Utilitário de Segurança de Inicialização, o Modo de Segurança e os Primeiros Socorros do Utilitário de Disco cobrem a maior parte da recuperação não destrutiva em um Mac sob controle físico do administrador. A Proteção da Integridade do Sistema (SIP) limita o que até um processo de administrador pode alterar fora desses caminhos.
-
Estratégias de deduplicação de registros: linhas exatas, manter o mais recente por chave e janelas limitadas
Primeiro defina o que conta como duplicata: linhas idênticas, várias versões da mesma chave ou mensagens reentregues dentro de uma janela. Duplicatas exatas se resolvem com DISTINCT; versões exigem uma regra de manter o mais recente com ordenação explícita; reentregas são deduplicadas por uma chave de idempotência dentro de uma janela de tempo ou de estado limitada, como fazem filas de mensagens e engines de streaming.
-
MCP 2026-07-28 atrás de balanceadores de carga HTTP: roteamento e escopo seguro de cache
Os cabeçalhos das requisições permitem rotear sem analisar JSON, enquanto as indicações de cache do MCP regem os resultados elegíveis. Ainda são necessários validação de cabeçalhos, isolamento por contexto de autorização e um cache que compreenda MCP; um cache genérico de respostas POST não os substitui.
-
Skeleton screens que reproduzem o layout superam spinners na espera percebida apenas em carregamentos curtos
Hipótese: um skeleton que reproduz o layout final é avaliado como mais rápido do que um spinner centralizado quando o conteúdo chega em poucos segundos, porque o layout é estável e o olhar tem para onde ir. Em esperas mais longas, a vantagem desaparece ou se inverte, pois o skeleton não indica progresso nem transmite a segurança de que algo está acontecendo.
-
Como nomear documentos e arquivos para que ordenem, sejam encontrados e durem
Uma convenção de nomes de arquivos define os componentes do nome e a sua ordem, um único separador, o conjunto de caracteres portável, uma data no estilo ISO que ordena como texto, números de sequência com zeros à esquerda e versões explícitas; é registrada uma só vez por pasta e nunca depende de maiúsculas e minúsculas nem de espaços.
-
Fluxo authorization code do OAuth 2.0 com PKCE para clientes públicos
Um cliente público (aplicação de página única, app nativo ou CLI) não consegue guardar um client secret. Por isso vincula cada requisição de autorização a um code verifier descartável: envia o hash SHA-256 como code_challenge, e o token endpoint só libera tokens a quem apresentar o verifier correspondente. A RFC 9700 torna o PKCE obrigatório para clientes públicos e desaconselha o implicit grant.
-
Colunas de identidade, sequences e por que os IDs gerados têm lacunas
Colunas de identidade são a forma padrão de numerar linhas automaticamente no PostgreSQL; elas usam uma sequence cujos valores são distribuídos fora do controle de transações, então rollbacks, falhas, cache e inserts com ON CONFLICT deixam lacunas. Lacunas são normais; uma numeração sem lacunas exige um contador separado e serializado.
-
Quando as equipes de documentação excluem uma página em vez de atualizá-la, e o que aconteceu depois com leitores e links?
Pergunta em aberto: páginas desatualizadas costumam ser reescritas e raramente removidas; a MDN descreve o status 410 Gone como sinal de que o recurso não está mais disponível e de que a condição provavelmente é permanente, mas a maioria das páginas excluídas vira redirecionamento ou 404. Quais critérios de exclusão as equipes usaram, e o que ocorreu depois com tráfego, resultados de busca e links de entrada?
-
Projetar ferramentas MCP que agentes possam usar com segurança
As ferramentas do Model Context Protocol devem ter finalidade restrita, esquemas tipados de entrada e saída, anotações fiéis à realidade (somente leitura, destrutiva), resultados limitados e erros que indiquem a causa; as descrições pertencem ao código, não a conteúdo editável por usuários.
-
Censo de postes de iluminação em um trajeto fixo de caminhada: postes numerados, aceso ou apagado a cada passagem e o horário da caminhada na mesma linha
Protocolo proposto, apenas de registro, para uma caminhada noturna repetida em um trajeto fixo: cada poste de iluminação é identificado uma única vez, pelo número no próprio poste quando houver (que a wiki do OpenStreetMap documenta como a tag ref em nós highway=street_lamp) ou pela posição em um croqui, e registrado a cada passagem como aceso, apagado, piscando, encoberto ou não avaliado, junto com o horário da passagem, a condição do céu e a duração da caminhada. Não se faz nenhum juízo sobre segurança ou qualidade da iluminação.
-
"version `GLIBC_2.xx' not found" and how to diagnose a glibc mismatch
A dynamically linked binary that references a newer glibc symbol version than the runtime provides fails to load with 'version `GLIBC_2.xx' not found'. The article shows how to read the mismatch with ldd, objdump and readelf, and orders the fixes from matching the base image to static or musl builds.
-
Estratégias de rollout: rolling, blue-green e canary
O rolling update substitui as instâncias gradualmente, dentro dos limites de maxSurge e maxUnavailable; o blue-green mantém a nova pilha completa ao lado da antiga e troca todo o tráfego de uma só vez; o canary envia a nova versão a uma pequena fração das requisições reais e a aumenta conforme as métricas. A escolha depende da capacidade livre, do tempo de reversão desejado e de duas versões poderem ou não rodar ao mesmo tempo.
-
Triagem do ThreadSanitizer: recuperar o contrato de sincronização que falta
Leia os dois caminhos de acesso em conflito e corrija a regra de propriedade ou de sincronização que os liga.
Legível por máquina: JSON