Todos os artigos
-
Definir locale e fuso horário e reconfigurar pacotes sem interação no Debian e no Ubuntu
localectl, timedatectl e update-locale alteram o locale e o fuso horário sem diálogo em modo texto, e dpkg-reconfigure -f noninteractive repete a configuração de um pacote baseada em debconf como um script faria na instalação original; tudo isso serve para scripts de provisionamento sem terminal.
-
Dados de seed e fixtures para bancos de dados locais: pequenos, idempotentes e versionados junto com o esquema
Separe dados de referência (necessários em todo lugar), dados de exemplo (desenvolvimento e demos) e dados de teste (criados pelos próprios testes). Escreva o seed como código idempotente com upserts em chaves naturais, mantenha o conjunto de exemplo pequeno e nomeado, execute-o após as migrations no script de setup e no CI, e nunca popule máquinas de desenvolvimento com dados brutos de produção.
-
Acompanhar as ações de um postmortem até o fechamento: tracking bugs, responsável único e revisão por idade
O Site Reliability Workbook alerta que, sem um processo formal de acompanhamento, as ações de um postmortem costumam ser esquecidas. Dê a cada item um tracking bug, um único responsável, um tipo e uma prioridade, revise os itens abertos por idade com periodicidade fixa e trate um item com prazo vencido como uma decisão a tomar, não como uma linha a ignorar.
-
Como reproduzir uma observação de consumo de água doméstico?
Pedido em aberto por um protocolo de observação delimitado, sem afirmações sobre economia de água.
-
Tracing distribuído em resumo: spans, IDs de pai e W3C Trace Context
Um trace é uma árvore de spans, cada um com ID do trace, ID próprio, ID do span pai, timestamps, atributos e status; o cabeçalho W3C traceparent leva o ID do trace, o ID do pai e um flag sampled entre processos, e um serviço que apenas repassa os dois cabeçalhos já mantém os traces unidos.
-
Passes do render graph no Unity URP: declare as dependências antes de desenhar
Projete passes personalizados do URP em torno de entradas e saídas explícitas e migre passes antigos com base na documentação da versão instalada do engine e do pacote.
-
Tags de idioma: BCP 47 em conteúdo e APIs
Tags de idioma combinam um código de idioma ISO 639 com subtags opcionais de escrita e região (de, de-CH, zh-Hant); use-as em declarações de idioma do conteúdo, no atributo lang do HTML e em filtros de API, e valide-as em vez de aceitar texto livre.
-
Gameplay Ability System da Unreal: ativação, efeitos e ponto de commit
Separe a execução da habilidade das mudanças de atributos e da apresentação, e defina quando custos, cooldowns e cancelamento passam a valer.
-
Como projetar uma tabela de séries temporais somente de inserção no PostgreSQL
Armazene medições em uma tabela particionada por intervalo de tempo, com timestamptz, chave composta de série e tempo, índices adequados ao padrão de consulta (B-tree por série, BRIN para varreduras de tempo na tabela inteira) e retenção feita por detach e drop de partições, em vez de DELETE; as escolhas decorrem de as linhas chegarem em ordem de tempo e saírem em fatias inteiras de tempo.
-
Cancelamento e prazos em Go com context.Context
Propague um context.Context desde a requisição recebida por todas as chamadas que podem bloquear, derive contextos filhos com WithTimeout ou WithCancel, sempre chame a função cancel e verifique ctx.Done() em laços, para que a desconexão do cliente ou um prazo esgotado interrompa toda a árvore de goroutines em vez de deixá-las em execução.
-
Paginação e chaves de idempotência na API da Stripe: starting_after, has_more e a janela de 24 horas
Os endpoints de listagem da v1 da Stripe paginam com os parâmetros de cursor mutuamente exclusivos starting_after/ending_before (limit de 1 a 100, padrão 10) e o indicador has_more, e as bibliotecas cliente trazem auxiliares de auto-paginação para percorrer todas as páginas. Requisições POST podem levar uma Idempotency-Key, cujo resultado salvo a Stripe reproduz por cerca de 24 horas, depois das quais as chaves podem ser removidas. Requisições barradas pelo limite de taxa recebem 429 com o cabeçalho Stripe-Rate-Limited-Reason.
-
Testes baseados em propriedades com entradas geradas
Em vez de exemplos escolhidos à mão, um teste baseado em propriedades declara um invariante e deixa uma biblioteca gerar muitas entradas, reduzindo as falhas a contraexemplos mínimos; o Hypothesis é a implementação de referência para Python.
-
Preparar o fluxo de tratamento de vulnerabilidades de um fabricante para o CRA: recebimento, evidências e contagem dos prazos de notificação
Um protocolo de preparação proposto conecta o recebimento de relatos de vulnerabilidades e os registros de componentes à decisão de notificar segundo o CRA. Ele separa a obrigação de notificação já aplicável em 2026 dos requisitos mais amplos de tratamento de vulnerabilidades aplicáveis em dezembro de 2027.
-
Diagnosticar «No space left on device» quando o df mostra espaço livre
Além do disco cheio, o ENOSPC tem três causas comuns: inodes esgotados, espaço retido por arquivos apagados que um processo ainda mantém abertos e a percentagem de blocos reservados em sistemas de arquivos ext. Verifique df -i, lsof +L1 e a reserva do ponto de montagem antes de apagar qualquer coisa.
-
Wave Function Collapse: restrições locais e jogabilidade global
Gere arranjos de tiles por redução de domínios e escolhas ponderadas, trate contradições de forma explícita e valide propriedades de jogabilidade que vão além da adjacência local.
-
Princípios ágeis como acordos de trabalho concretos
Os doze princípios por trás do Manifesto Ágil tornam-se úteis quando traduzidos em acordos verificáveis da equipe: cadência de entrega, comunicação direta, ritmo sustentável, excelência técnica e reflexão regular.
-
cgroups v2 no host: verificar o modo e ler os limites de recursos por unidade
Os runtimes de contêineres modernos e o systemd usam cgroups v2 (a hierarquia unificada) para impor limites de memória e CPU. Esta metodologia mostra como confirmar que o host está em modo unificado, navegar pela árvore com systemd-cgls/systemd-cgtop e ler os limites reais de uma unidade ou de um contêiner.
-
Amostragem de contadores de desempenho do Windows Server com Get-Counter e exportação para CSV
O Get-Counter coleta amostras de caminhos de contadores nomeados em um intervalo definido, de forma contínua ou por um número fixo de amostras; o Export-Counter (somente no Windows PowerShell 5.1) preserva todos os campos no formato nativo BLG, e o relog converte uma captura para CSV depois, mesmo sem o comando Export-Counter original.
-
Páginas 404 personalizadas e soft 404: sirva a página de erro com o status de erro
Uma página 404 personalizada só ajuda os usuários se for servida com status 404; uma página de não encontrado servida com 200 é um soft 404, que os crawlers continuam a buscar e os buscadores excluem. O error_page do nginx pode reescrever o status (error_page 404 =200 ...), e é exatamente assim que soft 404 surgem por acidente; mantenha o status, torne a página útil e verifique com curl -I.
-
Dry-run e confirmação em scripts de administração: -WhatIf/-Confirm no PowerShell e uma flag --dry-run no shell
O PowerShell tem um mecanismo nativo, o SupportsShouldProcess, que dá a uma função própria os switches -WhatIf e -Confirm reais, ligados à mesma chamada $PSCmdlet.ShouldProcess() usada pelos cmdlets internos. Scripts de shell não têm um equivalente nativo, por isso uma flag --dry-run precisa ser propagada manualmente.
Legível por máquina: JSON