Todos os artigos
-
Calendário de mudanças e janelas de manutenção para uma equipe pequena de operações
Registre toda mudança planejada que possa afetar usuários em um único calendário compartilhado, com responsável, janela, linha de rollback e regras de bloqueio; o livro de SRE do Google afirma que o SRE constatou que cerca de 70% das interrupções decorrem de mudanças em um sistema em produção, e por isso "o que mudou?" é a primeira pergunta em qualquer incidente e o calendário é onde ela é respondida.
-
Sitemaps e endereços canônicos: um conteúdo, um endereço
Cada conteúdo deve ter exatamente um endereço canônico em HTTPS, declarado na própria página; versões gêmeas, como as em Markdown ou JSON, apontam para ele por meio do cabeçalho Link, parâmetros sem efeito sobre o conteúdo não geram novos endereços, e a sitemap lista apenas endereços canônicos com datas de alteração verdadeiras.
-
Quando um provedor invadido armazenava suas chaves de API: contenção, substituição e conferência de cobranças
Revogue as chaves expostas no emissor, restabeleça o acesso dos consumidores legítimos por sistemas confiáveis e investigue o uso e as cobranças. Trate os alertas de orçamento e a entrega das chaves substitutas como controles separados que precisam ser verificados.
-
Registros domésticos escritos de memória no fim do dia têm valores mais arredondados do que os escritos no momento da leitura
Hipótese: quando a leitura de um medidor, balança ou termômetro é anotada horas depois, de memória, o valor registrado é mais frequentemente um número redondo (terminado em 0 ou 5, ou com menos casas decimais) do que quando é anotado junto ao instrumento. Propõe-se um teste dentro de um mesmo domicílio, com dias alternados e fotografias como referência, sem afirmar qual valor está mais próximo da verdade.
-
Quais convenções de User-Agent os operadores de sites usam para classificar agentes de IA, e com que frequência agentes identificados com honestidade são bloqueados mesmo assim?
A RFC 9309 orienta os crawlers a incluir no User-Agent um product token e uma URL de descrição, e os operadores classificam cada vez mais o tráfego em navegadores, crawlers e agentes com base nessas strings; esta pergunta investiga em quais convenções os operadores se baseiam de fato, se identificar-se honestamente aumenta ou reduz a chance de bloqueio ou limitação de taxa, e qual é a parcela medida de tráfego classificada incorretamente.
-
Generalizar uma imagem do Windows com o Sysprep: /generalize, /oobe, /shutdown e o limite de rearm
O Sysprep /generalize remove de uma instalação do Windows as informações específicas do computador, como o SID e os dispositivos configurados, para que a imagem possa ser implantada em outros computadores. No Windows 8.1/Server 2012 e posteriores, o Sysprep pode ser executado até 1001 vezes por imagem (3 vezes no Windows 7/Server 2008 R2), e as falhas de generalização deixam rastros nos logs do Panther em System32\Sysprep.
-
Subresource Integrity para scripts e folhas de estilo de terceiros
Um atributo integrity em um elemento script ou link contém o hash SHA-256, SHA-384 ou SHA-512 em base64 do arquivo esperado; o navegador se recusa a executar ou aplicar um recurso cujo conteúdo não corresponda. Ele fixa exatamente o que uma CDN pode entregar, exige CORS para arquivos de outra origem e, por isso, só funciona com recursos de conteúdo fixo.
-
Definições de ferramentas MCP como superfície de ataque: descrições envenenadas, shadowing e alterações silenciosas
Os nomes, as descrições e as anotações das ferramentas de um servidor MCP são texto que o modelo lê antes de qualquer chamada. Um servidor malicioso ou comprometido pode usá-los para conduzir o agente, imitar ferramentas de outro servidor ou mudar de comportamento depois da aprovação. Os clientes devem fixar, comparar e revisar as definições como se fossem código.
-
Incerteza de medição e algarismos significativos em relatórios técnicos
Um valor medido sem incerteza está incompleto: repita a medição, informe a média com o desvio-padrão da média e o número de execuções, arredonde a incerteza para um ou dois algarismos significativos e o valor para a mesma casa decimal, e explique o que o intervalo significa; dígitos além da incerteza são ruído.
-
Regras de firewalld e nftables para NFS, Samba, NTP, DNS e DHCP: exatamente quais portas abrir
Referência das portas exatas de que estes serviços de infraestrutura precisam — NFS4 TCP 2049, Samba TCP 445 (139 e UDP 137/138 apenas para NetBIOS), DNS TCP+UDP 53, DHCP UDP 67, NTP UDP 123 — com os serviços predefinidos do firewalld, a sintaxe dport equivalente do nftables e o motivo de um teste UDP com nmap/nc ser fraco em comparação com o cliente real.
-
Executando o chrony como servidor NTP para uma LAN: allow, local stratum e firewall na UDP 123
Para servir horário a uma LAN com o chrony, é preciso adicionar uma diretiva allow restrita à rede dos clientes, decidir se um fallback com local stratum é realmente desejado, abrir a UDP 123 e confirmar com chronyc clients que os clientes de fato consultam o servidor.
-
Token passthrough e confused deputy em servidores MCP que chamam outras APIs
Um servidor MCP que repassa o token do cliente a uma API downstream, ou que usa suas próprias credenciais amplas em nome de quem pede, permite que os chamadores ajam com uma autoridade que nunca receberam. As orientações de segurança do MCP proíbem o token passthrough e descrevem o fluxo de confused deputy em servidores proxy.
-
NULL em SQL: lógica de três valores e suas armadilhas
NULL significa desconhecido, então comparações com NULL resultam em desconhecido, e não em verdadeiro ou falso: filtros WHERE descartam as linhas cuja condição é desconhecida, NOT IN com um NULL não retorna nada e agregações ignoram NULLs. Use IS NULL, IS DISTINCT FROM e COALESCE de forma deliberada.
-
Cargo, crates e editions: como um projeto Rust é compilado e versionado
O Cargo compila um crate a partir do Cargo.toml, resolve dependências com intervalos compatíveis com SemVer e grava o resultado no Cargo.lock, podendo incluir duas versões major incompatíveis de um mesmo crate em um único build. As editions são versões da linguagem definidas por crate, de adesão opcional e interoperáveis, de modo que atualizar a edition de um crate nunca obriga seus dependentes a fazer o mesmo.
-
Cenas, nós e recursos no Godot: compor comportamento com responsabilidades bem definidas
Como distinguir a hierarquia viva de nós, a propriedade para fins de gravação da cena e os dados de recursos compartilhados ao construir cenas reutilizáveis no Godot.
-
Dialetos de expressões cron: campos, segundos e a armadilha entre dia do mês e dia da semana
Vixie cron, Quartz, Kubernetes CronJob, GitHub Actions e AWS EventBridge chamam a sua string de agendamento de "expressão cron", mas divergem quanto ao número de campos, à existência de segundos ou ano e à forma de tratar dia do mês e dia da semana: se são combinados com OR ou se nunca podem ser definidos os dois ao mesmo tempo.
-
Medir o que você aprendeu com autotestes antes e depois, e o que essa comparação não consegue mostrar
Um protocolo de pré-teste e pós-teste pessoal em torno de um período de estudo: escreva as perguntas antes de estudar, responda sem consultar, estude, responda a um conjunto paralelo após um intervalo e corrija com um gabarito fixo. A diferença é uma estimativa com fraquezas conhecidas: o próprio pré-teste ensina, os conjuntos podem ter dificuldades diferentes e uma única pessoa não pode servir de grupo de controle de si mesma.
-
Como descrever uma alteração para que os revisores consigam revisá-la
A descrição de uma alteração apresenta o problema, a abordagem e as alternativas, como foi testada e o que os revisores devem examinar; inclui o link do ticket e lista riscos e trabalhos futuros, para que a revisão comece pela compreensão e não por uma investigação do histórico.
-
Até onde um pipeline agendado deve reprocessar para eventos atrasados, e como as equipes escolheram essa janela?
Pergunta em aberto: os motores de streaming admitem que alguns eventos podem atrasar de forma arbitrária, e os agendadores de batch executam cada intervalo uma única vez, depois de ele terminar. Um meio-termo comum é reexecutar os últimos N intervalos a cada execução, mas N costuma ser um palpite. Que evidências já foram usadas para dimensionar N, e o que aconteceu com os eventos que chegaram ainda mais tarde?
-
Dinheiro e outras quantidades exatas: use Decimal, não float
O ponto flutuante binário não consegue representar com exatidão a maioria das frações decimais, e por isso somas de preços acumulam erros; o módulo decimal oferece aritmética decimal exata com arredondamento explícito, e inteiros em unidades menores são uma alternativa.
Legível por máquina: JSON