☕ Um Café no Bellacosa Mainframe
Gostou do conteúdo? Ajude a manter o café quente, o COBOL compilando e o mainframe acordado. 😄
☕ Pague um café ao Bellacosa

Translate

quarta-feira, 9 de novembro de 2011

Action Bias: Doctor Who, COBOL e o Dia em que Reiniciamos Tudo Antes de Descobrir o que Estava Errado

 

Bellacosa Mainframe e a action bias

☕ Um Café no Bellacosa Mainframe

Action Bias: Doctor Who, COBOL e o Dia em que Reiniciamos Tudo Antes de Descobrir o que Estava Errado

Uma viagem pela TARDIS dos incidentes para entender por que, diante da pressão, fazer alguma coisa parece melhor do que esperar — mesmo quando agir cedo demais pode destruir exatamente as evidências de que precisamos

03:07.

Produção.

Madrugada.

Café número quatro.

O telefone toca.

O monitoramento dispara:

ALERT

PAYMENT RESPONSE TIME
ABOVE THRESHOLD

O operador olha.

03:08.

Outro alerta:

QUEUE DEPTH +180%

03:09.

Um usuário reclama.

03:10.

O gerente entra na War Room.

— O que aconteceu?

Nosso jovem programador COBOL responde:

— Ainda estamos levantando.

O gerente pergunta:

— Já reiniciaram?

Silêncio.

— Não.

— Por quê?

— Ainda não sabemos o que está acontecendo.

O especialista olha para CICS.

— Podemos restartar a região.

O DBA:

— Talvez reciclar uma conexão.

Middleware:

— Posso reiniciar o consumer.

Outro analista:

— Vamos limpar a fila.

De repente todo mundo possui uma ação.

Ninguém possui ainda uma explicação.

03:12.

O gerente pergunta novamente:

— Então vamos fazer o quê?

Nosso programador responde:

— Eu queria observar mais dois minutos.

A frase cai na sala como se ele tivesse sugerido sacrificar um servidor aos deuses antigos.

— Observar?

— Sim.

— Produção está degradada!

— Eu sei.

— Então precisamos fazer alguma coisa.

VWORP.

VWORP.

VWORP.

A TARDIS materializa-se ao lado do console.

A porta abre.

O Doctor sai.

Olha para a fila.

Olha para CICS.

Olha para o gerente.

Depois pergunta:

— Por que vocês querem reiniciar alguma coisa?

O gerente responde:

— Porque precisamos agir.

— Isso responde por que precisam agir.

Pausa.

— Não responde por que precisam reiniciar.

Silêncio.

O Doctor sorri.

— Excelente.

— Excelente o quê?

— Vocês acabaram de demonstrar uma das armadilhas mais humanas da operação.

Bem-vindo ao:



Action Bias

Ou:

Viés da Ação

A tendência de preferir fazer alguma coisa em vez de não agir, especialmente em situações de incerteza, pressão ou medo — mesmo quando esperar, observar, coletar dados ou simplesmente não interferir ainda seria a melhor decisão.


🌀 Nossa TARDIS dos incidentes continua ficando mais perigosa

Até aqui já encontramos uma coleção respeitável:

Swiss Cheese Model — várias barreiras podem falhar juntas.

Normalization of Deviance — desvios viram rotina.

Hindsight Bias — o passado parece óbvio depois.

Confirmation Bias — buscamos provas daquilo que já acreditamos.

Anchoring Bias — a primeira explicação pesa demais.

Groupthink — grupos inteligentes podem errar juntos.

Authority Gradient — hierarquia pode transformar dúvida em silêncio.

Plan Continuation Bias — continuamos planos que já deixaram de fazer sentido.

Alarm Fatigue — alertas demais viram ruído.

Automation Bias — confiamos demais na máquina.

Drift Into Failure — pequenas adaptações empurram o sistema para a borda.

Diffusion of Responsibility — todos veem e ninguém assume.

Normalcy Bias — esperamos que tudo volte ao normal.

Survivorship Bias — estudamos apenas quem sobreviveu.

Base Rate Neglect — esquecemos a frequência real dos eventos.

Availability Heuristic — o que lembramos facilmente parece mais provável.

Outcome Bias — bom resultado parece provar boa decisão.

Overconfidence Bias — acreditamos que sabemos mais do que realmente sabemos.

Planning Fallacy — subestimamos tempo e complexidade.

Sunk Cost Fallacy — investimentos passados influenciam demais as decisões futuras.

Status Quo Bias — preferimos o estado atual porque já existe.

Present Bias — o conforto de hoje vence o custo de amanhã.

Optimism Bias — acreditamos que o pior provavelmente acontecerá com os outros.

Agora encontramos um viés especialmente perigoso durante incidentes:

agir só para sentir que estamos fazendo alguma coisa.


🧠 O que é Action Bias?

Imagine:

problema apareceu.

Você ainda não conhece a causa.

Existem duas opções:

A

Observar.

Coletar dados.

Esperar mais dois minutos.

B

Executar uma ação.

Restart.

Kill.

Clear.

Flush.

Rollback.

Reboot.

Disable.

A opção B parece mais confortável porque cria sensação de:

controle;

movimento;

progresso.

Mesmo que ainda não saibamos se ela ajuda.

Representando:

INCERTEZA
   ↓
DESCONFORTO
   ↓
“PRECISO FAZER ALGO”
   ↓
AÇÃO
   ↓
SENSAÇÃO DE CONTROLE

O problema é que:

sensação de controle não é evidência de controle.


☕ Bellacosa Mainframe: o restart mágico

Existe uma terapia universal na informática:

restart.

Aplicação lenta?

Restart.

CICS estranho?

Restart.

MQ consumer parado?

Restart.

Servidor respondeu torto?

Restart.

Notebook?

Restart.

Pessoa?

Café.

Restart funciona muitas vezes.

E justamente por funcionar, pode virar ritual.


🧙 “Desliga e liga novamente”

É quase um feitiço.

Em muitos casos:

resolver estado inconsistente;

limpar recursos;

recriar conexões;

liberar memória;

recarregar configuração

realmente ajuda.

O problema não é restartar.

O problema é:

restartar antes de entender o suficiente para saber o que estamos destruindo.


🧠 Reiniciar também apaga evidências

Imagine um problema transitório.

Antes do restart temos:

threads;

locks;

queues;

dumps;

memory state;

connection state;

logs correlacionados.

Depois do restart:

parte disso desaparece.

O sistema volta.

Ótimo.

Pergunta:

“Qual era a causa?”

Resposta:

“Não sabemos. Restart resolveu.”

Agora o incidente morreu.

Mas o conhecimento também.


💀 Fix by reboot

Na próxima semana:

mesmo problema.

Restart.

No mês seguinte:

restart.

Depois vira runbook:

IF SYSTEM-SLOW
    RESTART

Parabéns.

Transformamos Action Bias em procedimento operacional.


👻 Easter Egg nº 1 — Sonic Screwdriver

Companion:

— Doctor, a porta não abre.

Doctor pega sonic screwdriver.

Companion:

— Você sabe o que está errado?

— Não.

— Então por que está usando isso?

— Porque segurar uma ferramenta me faz parecer ocupado.

Pausa.

— Ah.

Action Bias explicado com excelente merchandising.


🧠 A pressão social para parecer ativo

Durante incidentes existe um elemento poderoso:

visibilidade.

Se você está olhando gráficos:

parece que não está fazendo nada.

Se digita comando:

parece ação.

Se reinicia:

ação.

Se altera parâmetro:

ação.

Se diz:

“Vamos observar dois minutos”

pode parecer passividade.

Esse incentivo social é perigoso.


🪜 Authority Gradient entra imediatamente

Gerente:

— Faça alguma coisa.

Especialista sabe:

mais dados ajudariam.

Mas gerente está pressionando.

Então:

F CICS,RESTART

Não porque evidência apontou.

Porque autoridade exigiu movimento.

Action Bias + Authority Gradient.


👥 Groupthink também gosta de ação

Sala inteira nervosa.

Uma pessoa sugere restart.

Outra:

— Boa.

Terceira:

— Vamos.

Agora consenso se forma em torno de algo concreto.

Agir une o grupo.

Observar parece indecisão.


🧠 “At least we tried something”

Depois, se falhar:

“Pelo menos fizemos alguma coisa.”

Isso é emocionalmente reconfortante.

Mas sistemas não recompensam intenção.

Precisamos perguntar:

a ação tinha fundamento?


🎯 O custo invisível da ação

Toda ação em produção possui custo potencial.

Restart pode:

derrubar sessões;

perder transações em voo;

gerar backlog;

alterar timing;

mascarar causa.

Rollback pode:

introduzir incompatibilidade.

Kill pode:

deixar dados parciais.

Flush pode:

perder cache útil.

Logo:

“fazer alguma coisa” não é neutro.


🧠 Inação também pode ser ação

Importante:

Action Bias não significa:

“nunca faça nada.”

Às vezes agir rápido é essencial.

Disco enchendo.

Fraude em andamento.

Dado sendo corrompido.

Incêndio.

Você precisa agir.

O ponto é:

não confundir velocidade com qualidade.


☕ Emergência real: STOP primeiro

Imagine:

processamento duplicando pagamento.

Nesse caso:

STOP

pode ser a melhor ação mesmo sem saber causa.

Porque custo de continuar é alto.

Ou seja:

às vezes agir antes do RCA é correto.

Mas a ação precisa estar ligada a:

impacto;

contenção;

critério.

Não ansiedade.


🧠 Containment versus Random Action

Essa distinção é excelente.

Contenção

Sabemos:

processamento está causando dano.

Então interrompemos.

Action Bias

Não sabemos o que ocorre.

Mas reiniciamos algo porque precisamos sentir progresso.

Uma é gestão de risco.

Outra pode ser reflexo.


🧀 Swiss Cheese + Action Bias

Pense em uma barreira:

diagnóstico antes da mudança.

Action Bias fura.

Outra:

preservar evidência.

Fura.

Outra:

change control.

Fura.

De repente, um incidente original pequeno ganha um segundo incidente:

causado pela resposta.


🔥 Incidente secundário

Essa é uma das coisas mais interessantes.

Primeiro problema:

latência.

Equipe reinicia Db2.

Agora:

indisponibilidade.

O primeiro incidente talvez fosse pequeno.

A resposta criou o maior.

Em aviação, medicina e operações complexas isso é um princípio conhecido:

intervenções podem introduzir novos riscos.

TI não é diferente.


🧠 Iatrogenia operacional

Na medicina, existe a ideia de dano causado pelo próprio tratamento.

Podemos brincar com:

iatrogenia operacional.

O sistema tinha um problema.

Nós tentamos corrigir.

Criamos outro.

Perfeito tema Bellacosa.


💻 Exemplo COBOL

Job está lento.

Operador cancela.

Depois percebe:

estava em fase de commit.

Agora restart precisa:

reconciliation;

cleanup;

rollback de dados.

Talvez esperar mais dois minutos fosse melhor.

A ação antecipada aumentou trabalho.


⏱️ “Está parado” talvez não esteja parado

Batch pode parecer:

sem output.

Mas pode estar:

sort;

checkpoint;

commit;

I/O pesado;

lock wait temporário.

Antes de cancelar:

observe.

SDSF.

SMF.

DB2 thread.

CPU.

I/O.

Joblog.

Evidence first.


☕ O CANCEL que vira aventura

03:00.

— Job está há 20 minutos sem mensagem.

— Cancela.

03:01.

JOB CANCELLED

03:02.

— Como restartamos?

Silêncio.

Clássico.


🧠 Planning Fallacy pode alimentar Action Bias

Planejamos mudança em 40 minutos.

Já passou uma hora.

Pressão aumenta.

Agora qualquer problema produz:

“faz alguma coisa!”

O cronograma irreal reduz paciência diagnóstica.

Planning Fallacy cria pressão.

Action Bias produz intervenção prematura.


▶️ Plan Continuation Bias também entra

Plano está dando errado.

Ao invés de parar e reavaliar:

fazemos mais uma ação para manter plano vivo.

Ajusta parâmetro.

Restart.

Mais CPU.

Mais threads.

Mais retries.

Tudo para continuar.

Action Bias pode virar braço operacional do Plan Continuation Bias.


🧠 Sunk Cost também

Já gastamos três horas.

Então:

“Vamos tentar mais um restart.”

Mais 30 minutos.

Depois outro.

Porque parar agora faria esforço anterior parecer perdido.

Sunk Cost + Action Bias:

loop infinito.


🔁 O loop do “mais uma tentativa”

AÇÃO
↓
NÃO RESOLVEU
↓
MAIS AÇÃO
↓
NÃO RESOLVEU
↓
AÇÃO MAIS AGRESSIVA

Em algum momento:

ninguém mais lembra qual era o estado inicial.

Excelente maneira de destruir observabilidade.


🔍 Confirmation Bias

Hipótese:

CICS.

Fazemos restart de CICS.

Sistema melhora por acaso.

Conclusão:

“Era CICS.”

Talvez não.

Pode ter coincidido com:

fila drenando;

lock expirando;

dependência voltando.

Outcome Bias entra depois e transforma ação aleatória em “solução comprovada”.


🧠 Action Bias + Outcome Bias

Esse é um casamento perigoso.

Ação não fundamentada.

Resultado melhora.

Outcome Bias:

ação foi correta.

Agora ela entra no runbook.

Próximo incidente:

fazemos automaticamente.

É assim que superstição vira operação.


🧙 Ritual operacional

Pode existir:

1. Restart CICS
2. Clear MQ
3. Bounce JVM
4. Pray

Ninguém sabe exatamente por quê.

Mas:

“Funciona.”

Talvez às vezes.

Sem causalidade demonstrada, temos ritual.


👻 Easter Egg nº 2 — o botão vermelho

Doctor:

— O que esse botão faz?

Operador:

— Não sabemos.

— Então por que apertam?

— Porque da última vez o sistema voltou.

— E apertaram antes ou depois de o sistema começar a voltar?

Silêncio.

Correlação manda lembranças.


🧠 Automation Bias pode produzir Action Bias automatizado

Sistema detecta anomalia.

Runbook automático:

restart.

Ótimo até o dia em que:

anomalia é sintoma de sobrecarga;

restart multiplica demanda;

todos os nodes reiniciam;

thundering herd.

Agora automatizamos o impulso.

Action Bias em velocidade de máquina.


🤖 Auto-remediation

Auto-remediation pode ser excelente.

Mas precisa:

detecção confiável;

scope limitado;

guardrails;

cooldown;

observabilidade;

rollback;

escalation.

Não:

IF ALERT
   RESTART EVERYTHING

Mesmo que seja tentador.


🚨 Alarm Fatigue + Action Bias

Muitos alertas.

Finalmente um vermelho forte.

Operador reage agressivamente porque quer “resolver logo”.

Fadiga reduz qualidade do diagnóstico.

Action Bias oferece saída psicológica:

faça algo e o alerta cala.


🧠 Normalcy Bias parece oposto — mas não é

Normalcy Bias:

espere, vai normalizar.

Action Bias:

faça algo agora.

Parecem opostos.

E são em parte.

Mas podem ocorrer em sequência:

primeiro esperamos demais.

Depois percebemos gravidade.

Entramos em pânico.

Agora fazemos coisas demais.

Isso acontece muito.


🌀 Do nothing → do everything

Primeiros 20 minutos:

“vai passar.”

Minuto 21:

“reinicia tudo!”

Uma bela oscilação entre Normalcy Bias e Action Bias.

Maturidade mora no meio:

monitorar;

usar triggers;

agir proporcionalmente.


🧠 Optimism Bias também pode inverter

Antes:

“não vai dar problema.”

Depois:

problema aparece.

Agora surpresa aumenta ansiedade.

Action Bias.

Quem não preparou contingência tende a improvisar.

Otimismo excessivo ontem vira hiperatividade hoje.


🔐 Segurança cibernética

Alerta de possível ataque.

Alguém:

— Bloqueia todos os acessos externos!

Talvez correto.

Talvez derrube negócio inteiro.

Ação de contenção precisa considerar:

escopo;

evidência;

impacto.

Não pode ser simplesmente:

“faz alguma coisa.”


🏦 Fraude

Transação suspeita.

Bloquear conta imediatamente?

Talvez.

Mas false positive pode prejudicar cliente.

Base Rate Neglect volta.

Action Bias pode reagir a um evento raro sem considerar probabilidade.


🧠 Base Rate + Action Bias

Quanto menos entendemos a taxa real de ameaça, mais fácil reagir exageradamente.

Evento dramático.

Disponibilidade mental alta.

Action Bias:

aja agora.

Base Rate Neglect:

esquece frequência.

Availability Heuristic:

lembra do incidente recente.

Combo poderoso.


🧪 Observe, Orient, Decide, Act

Uma estrutura útil é pensar no ciclo:

OODA

Observe.

Orient.

Decide.

Act.

Action Bias tenta pular:

Observe.

Orient.

Decide.

E ir diretamente para:

ACT.

A famosa metodologia:

AODA

ACT
OH NO
DO SOMETHING ELSE
AGAIN

Talvez menos recomendada.


☕ OODA Bellacosa

Observe

O que realmente está acontecendo?

Orient

Que contexto temos?

Decide

Qual ação tem melhor relação risco/benefício?

Act

Execute.

Depois:

observe novamente.

Isso é ação disciplinada.


🧠 Tempo diagnóstico não é tempo perdido

Se dois minutos de observação evitam restart de uma hora:

foram extremamente produtivos.

Mas precisamos culturalmente reconhecer isso.

Pensar também é trabalho.


⏱️ Diagnostic Budget

Em incidentes podemos definir:

temos cinco minutos para levantar dados antes de ação X.

Isso evita tanto:

paralisia;

quanto ação impulsiva.

Exemplo:

IF DATA CORRUPTION CONFIRMED
   STOP IMMEDIATELY
ELSE
   OBSERVE 5 MIN
   REASSESS

Agora existe critério.


🧠 Action Threshold

Defina previamente:

qual sinal exige ação?

Exemplo:

FAILURE RATE > 5%
AND TREND RISING
→ STOP PROCESSING

Isso reduz necessidade de improvisar.


🎯 Pergunta Bellacosa nº 1

Quando alguém disser:

“Precisamos fazer alguma coisa.”

Pergunte:

“Qual problema específico essa ação pretende resolver?”

Se resposta for vaga:

cuidado.


🎯 Pergunta Bellacosa nº 2

Outra:

“Que evidência esperamos ver se essa ação funcionar?”

Isso transforma ação em teste.


🎯 Pergunta Bellacosa nº 3

Outra:

“O que perdemos se fizermos isso agora?”

Estado?

Logs?

Sessões?

Dados?

Tempo?


🎯 Pergunta Bellacosa nº 4

E:

“Quanto custa esperar dois minutos?”

Talvez muito.

Talvez quase nada.

Precisamos saber.


🧪 Ação como experimento

Uma ação pode ser ótima se planejada como experimento.

Exemplo:

hipótese:

consumer X está bloqueado.

Ação:

restart apenas X.

Previsão:

queue depth começa a cair em 2 min.

Se cair:

hipótese ganha suporte.

Se não:

reavalie.

Muito melhor que:

restartar tudo.


🧠 Falsifiability

Ação madura precisa produzir informação.

Se:

“vamos restartar e ver”

mas qualquer resultado será interpretado como sucesso,

não temos teste.

Temos ritual.


📊 Before/After

Antes da ação:

registre:

QUEUE: 12.000
RATE IN: 500/s
RATE OUT: 200/s
TIMEOUT: 8%

Depois:

compare.

Sem baseline:

não sabemos se ação melhorou.


📝 Decision Log

03:14
HYPOTHESIS: MQ CONSUMER STALLED

ACTION:
Restart consumer 02 only

EXPECTED:
outflow > inflow within 3 min

OWNER:
Carlos

ROLLBACK:
N/A

RESULT:
No improvement

Excelente.

Agora próximo passo possui evidência.


🧠 Diffusion of Responsibility

Curiosamente, Action Bias pode surgir quando ninguém possui coordenação.

Cada especialista faz algo.

DBA altera.

Middleware reinicia.

Sysprog mexe.

Aplicação testa.

Cinco ações simultâneas.

Agora:

se melhora, qual resolveu?

Ninguém sabe.

Ownership ajuda a controlar ação.


👥 War Room sem Incident Commander

É uma jam session.

Todo mundo toca.

Nenhuma partitura.

Action Bias cria “ação paralela”.

Às vezes poderosa.

Às vezes destrói causalidade.


🧭 Incident Commander como scheduler

Já brincamos:

Incident Commander é o JES humano.

Agora novamente.

Ele controla:

qual ação;

quem;

quando;

dependências.

Sem isso:

dez jobs mexendo na mesma região.


💻 Parallel Changes são inferno diagnóstico

Se você:

restarta CICS;

aumenta threads;

limpa fila;

altera DB2

ao mesmo tempo,

e sistema melhora:

qual era a causa?

Não sabe.

Melhor:

ações controladas quando possível.


🧠 One Change at a Time

Não é regra absoluta.

Emergência pode exigir paralelismo.

Mas quando diagnóstico importa:

uma mudança de cada vez reduz confusão.


🔥 Tempo crítico muda tudo

Se clientes estão sendo debitados duas vezes:

não espere laboratório perfeito.

Contain.

Depois diagnostique.

Action Bias não significa ser lento.

Significa:

agir proporcionalmente à urgência e à evidência.


🧠 Reversibilidade

Quanto menos reversível uma ação:

mais cuidado.

Restart simples?

Talvez baixo risco.

Delete de fila?

Alto.

ALTER de dados?

Muito alto.

Defina escala.


📊 Action Risk Matrix

AÇÃO            REVERSÍVEL?     IMPACTO
Restart worker     SIM           BAIXO
Restart CICS       PARCIAL       MÉDIO
Clear queue        NÃO           ALTO
Delete data        NÃO           CRÍTICO

Quanto maior impacto:

mais evidência e aprovação.


🧠 Irreversible Action Gate

Uma regra útil:

para ação irreversível:

pause.

Second pair of eyes.

Confirm.

Isso reduz impulsividade.


🔐 “rm -rf” filosófico

Qualquer comando equivalente a:

DELETE
PURGE
CLEAR
DROP

merece um microsegundo adicional de humildade.

Às vezes muitos.


👨‍💻 COBOL iniciante: não mexa em tudo ao mesmo tempo

Bug.

Você altera cinco trechos.

Compila.

Funciona.

Qual mudança resolveu?

Não sabe.

O mesmo princípio.

Debugging científico:

hipótese;

uma mudança;

teste;

resultado.


🧪 Scientific Method em produção

Observe.

Hipótese.

Experimento.

Resultado.

Atualize.

Action Bias quer:

ação;

ação;

ação.

Método científico quer:

informação.


🧠 Curiosity beats panic

A pergunta:

“O que isso está tentando nos dizer?”

é melhor que:

“O que podemos reiniciar?”

Curiosidade reduz reflexo.


☕ Bellacosa Mainframe: logs antes de reboot

Antes de qualquer restart:

capture:

SDSF;

dumps;

queue depths;

threads;

locks;

CPU;

I/O;

timestamps.

Crie snapshot.

Cinco minutos depois, você pode agradecer.


📸 Preserve Evidence

Checklist:

[ ] Logs
[ ] Metrics
[ ] Dump
[ ] Queue state
[ ] Thread state
[ ] Recent changes
[ ] Timestamp
[ ] Correlation IDs

Depois aja.

Quando houver tempo.


🧠 Forensic Readiness

Isso não vale só segurança.

Operação também.

Você quer capacidade de reconstruir estado antes da intervenção.

Senão:

“restart resolveu”

vira RCA.


😄 RCA mais triste do mundo

ROOT CAUSE:
UNKNOWN

RESOLUTION:
RESTART

PREVENTIVE ACTION:
RESTART FASTER NEXT TIME

Quase arte contemporânea.


🔁 Action Bias institucional

Algumas organizações premiam:

velocidade de reação.

Bom.

Mas se única métrica é:

“tempo até primeira ação”,

talvez pessoas façam qualquer ação cedo.

Melhor medir:

tempo até contenção útil;

tempo até hipótese;

tempo até recuperação.


🧠 Metric Design matters

Se você recompensa movimento:

receberá movimento.

Se recompensa redução de risco:

talvez receba decisões melhores.

Goodhart aparece de novo.


🏆 Hero Culture

Pessoa reinicia tudo e salva o dia.

Aplausos.

Pessoa observa 90 segundos, identifica causa e evita outage:

menos drama.

Outcome Bias faz primeiro parecer herói.

Mas segunda resposta pode ser superior.


🧠 Action Bias + Heroism

Cultura de heróis adora ação visível.

Botões.

Comandos.

Telefonemas.

Não gosta tanto de:

hipótese;

pausa;

análise.

Isso precisa ser corrigido.


🌀 Drift Into Failure

Ao longo do tempo:

runbooks ganham mais ações rápidas.

Menos diagnóstico.

Sistema fica dependente de intervenções.

Workarounds acumulam.

Action Bias vira Drift.


🧠 Present Bias

Resolver sintoma agora:

restart.

Root cause amanhã.

Amanhã nunca chega.

Present Bias protege Action Bias.

Então:

restart vira processo permanente.


🧠 Status Quo Bias

“É assim que tratamos.”

Mesmo sem saber por quê.

Ação antiga vira status quo.

Ninguém questiona.


💸 Cost of Action

Precisamos contabilizar:

downtime;

perda de contexto;

trabalho;

risco;

reprocessamento.

Uma intervenção possui custo.

Isso ajuda a tornar a decisão menos emocional.


📋 Checklist anti-Action Bias

[ ] Qual problema estamos tentando resolver?

[ ] Qual é nossa hipótese?

[ ] Qual evidência suporta essa ação?

[ ] Qual impacto se esperarmos?

[ ] Quanto tempo podemos observar?

[ ] A ação é reversível?

[ ] O que ela pode destruir?

[ ] Preservamos evidências?

[ ] Qual resultado esperamos após agir?

[ ] Como saberemos se funcionou?

[ ] Estamos agindo por evidência ou pressão?

[ ] Existem várias mudanças acontecendo ao mesmo tempo?

[ ] Quem coordena?

[ ] Existe alternativa menos invasiva?

[ ] Precisamos conter ou diagnosticar primeiro?

🧪 Passo a passo para combater Action Bias

Passo 1 — Nomeie o problema

Não:

“Produção ruim.”

Mas:

“Failure rate de pagamento subiu de 0,2% para 8%.”


Passo 2 — Defina urgência

Está causando dano agora?

Sim?

Contain.

Não?

Talvez observe.


Passo 3 — Preserve estado

Colete evidência.


Passo 4 — Formule hipótese

O que acreditamos?


Passo 5 — Escolha ação mínima

A menor mudança capaz de testar ou conter.


Passo 6 — Defina resultado esperado

Como saberemos?


Passo 7 — Execute

Owner claro.


Passo 8 — Observe

Não saia fazendo próxima coisa instantaneamente.


Passo 9 — Atualize hipótese

Funcionou?

Não?


Passo 10 — Documente

Para não transformar coincidência em ritual.


🧠 Minimum Effective Intervention

Uma ideia útil:

mínima intervenção efetiva.

Não mude cinco componentes se um basta.

Quanto menor o blast radius:

melhor.


💥 Blast Radius

Toda ação possui área de impacto.

Reiniciar worker:

pequeno.

Reiniciar cluster:

maior.

IPL?

Bem...

Talvez queira café antes.


☕ O IPL como martelo de Thor

Se alguém sugere:

“Faz IPL.”

Logo no início da investigação...

Talvez seja hora de perguntar gentilmente:

“Qual é nossa hipótese mesmo?”


🧠 Escalation Ladder

Crie sequência:

1. Observe
2. Ajuste componente isolado
3. Restart worker
4. Restart serviço
5. Restart região
6. Failover
7. Medidas maiores

Suba conforme evidência e impacto.

Não comece no apocalipse.


🧪 Timeboxed Observation

Uma defesa contra parecer passivo:

“Vamos observar por três minutos, com critérios X e Y.”

Isso não é inação.

É decisão explícita.


⏰ Reassessment Timer

DECISION:
Observe

UNTIL:
03:18

ACT IF:
Failure > 10%
Queue > 20k
Data loss detected

Agora todos sabem que há plano.


🧠 “Wait” sem critério é Normalcy Bias

Importantíssimo.

Não transforme defesa contra Action Bias em:

“espera para ver.”

Sem timer.

Sem threshold.

Isso vira Normalcy Bias.

Precisamos:

observação ativa.


👀 Active Observation

Observe:

tendência;

correlação;

impacto;

novos sinais.

Não:

ficar tomando café olhando luzes piscarem.

Embora café continue permitido.


🧠 Action versus Reaction

Engenharia madura:

ação deliberada.

Action Bias:

reação.

A diferença é pequena na velocidade.

Enorme na qualidade.


🔄 OODA novamente

OBSERVE
↓
ORIENT
↓
DECIDE
↓
ACT
↓
OBSERVE

A última seta é crítica.

Toda ação produz novo estado.

Você precisa olhar.


🧠 Feedback Loop

Sem feedback:

ação vira disparo no escuro.

Com feedback:

controle.

Isso é teoria básica de sistemas aplicada à War Room.


🎛️ Controle sem sensor é chute

Se você altera parâmetro sem medir resultado:

não está controlando.

Está torcendo.

Otimism Bias manda lembranças.


🧬 Regeneração organizacional

Como uma organização se recupera de Action Bias?

Ela:

define critérios de contenção;

treina diagnóstico;

cria timers;

preserva evidência;

usa ações mínimas;

reduz mudanças simultâneas;

fortalece Incident Command;

documenta resultados;

faz drills;

recompensa decisões boas, não apenas ações rápidas.

Principalmente:

ensina uma frase:

“Não agir por dois minutos pode ser uma ação deliberada.”


📓 Diário do Doctor

Se guardar apenas algumas ideias desta viagem, guarde estas:

Action Bias é a tendência de agir simplesmente porque agir parece melhor que esperar.

Ação visível não é sinônimo de progresso.

Restart pode resolver o sintoma e destruir evidência.

Containment e ação impulsiva não são a mesma coisa.

Ações podem criar incidentes secundários.

Outcome Bias transforma ações sortudas em rituais.

Authority Gradient e pressão social podem empurrar equipes para agir cedo demais.

Observation time pode ser investimento diagnóstico.

Toda ação precisa de hipótese, resultado esperado e feedback.

Quanto mais irreversível a ação, maior o rigor.

O melhor primeiro passo costuma ser a menor intervenção que preserve informação e reduza risco.

E principalmente:

Em uma War Room, a pergunta não é “o que podemos fazer agora?”. É “qual ação melhora nossa situação com o menor risco e a melhor evidência disponível?”.


🕰️ De volta às 03:10

A TARDIS retorna.

O gerente pergunta:

— Já reiniciaram?

Nosso programador responde:

— Ainda não.

— Por quê?

— Estamos comparando entrada e saída da fila.

03:11.

INPUT RATE: 700/s
OUTPUT RATE: 680/s

03:12.

INPUT RATE: 500/s
OUTPUT RATE: 690/s

Fila começa a cair.

O DBA observa:

— Lock wait também caiu.

03:13.

Failure rate:

8% → 4% → 1.2%

O gerente pergunta:

— Então se tivéssemos reiniciado?

O especialista responde:

— Teríamos criado downtime num sistema que já estava se recuperando.

Silêncio.

O Doctor sorri.

— Fascinante.

— O quê?

— Vocês acabaram de resolver um incidente sem tocar no sistema.

O gerente:

— Mas não fizemos nada.

Nosso programador aponta para a timeline.

— Fizemos.

— O quê?

— Observamos, medimos e decidimos não interferir enquanto a tendência melhorava.

O Doctor concorda.

Não confunda ausência de comando com ausência de decisão.


🥚 Easter Egg final

Na manhã seguinte surge:

BELLACOSA.BIAS(ACTION)

Dentro:

       IF SOMEONE-SAYS
          'DO-SOMETHING'
           PERFORM ASK-WHAT-PROBLEM
       END-IF.

       IF ACTION-IS-IRREVERSIBLE
           PERFORM SECOND-PAIR-OF-EYES
       END-IF.

       IF OBSERVATION-HAS-VALUE
           PERFORM WAIT-AND-MEASURE
       END-IF.

Comentário:

* MOTION IS NOT PROGRESS.

Outro:

* RESTART IS A TOOL.
* NOT A DIAGNOSIS.

Outro:

* IF YOU CHANGE EVERYTHING,
* YOU LEARN NOTHING.

E naturalmente:

* BAD WOLF PRESSED THE BUTTON.

Nosso jovem fecha o membro.

Horas depois chega mensagem:

“Sistema está lento. Reinicio?”

Ele responde:

“Talvez.”

— Talvez?

“Primeiro me diga o que está lento, desde quando e qual tendência.”

Cinco minutos depois:

consumer identificado.

Uma única instância travada.

Restart localizado.

Fila recupera.

Nenhuma região inteira reciclada.

Nenhuma evidência perdida.

Nenhuma magia.

Apenas uma mudança importante de comportamento:

antes, o desconforto produzia ação.

Agora, o desconforto produz pergunta.

VWORP.

VWORP.

VWORP.

A TARDIS desaparece.

No quadro da War Room fica:

Às vezes coragem é apertar o botão. Às vezes coragem é manter a mão longe dele por tempo suficiente para entender o que está acontecendo.

☕🌀

Next stop: Omission Bias — quando fazer algo parece moralmente mais perigoso do que deixar acontecer, e a organização começa a preferir o risco da inação porque ele parece menos “culpável”.

domingo, 6 de novembro de 2011

🛣️ A Estrada Para Cornélio Procópio

 


🛣️ A Estrada Para Cornélio Procópio

ou: a primeira grande expansão de fronteira do pequeno Bellacosa
(Crônica ao estilo Bellacosa Mainframe para o El Jefe Midnight Lunch)


A memória da infância é um spool interessante:
grava só o que quer, descarta o resto em purge, e ainda assim mantém os fragmentos mais poderosos, aqueles que, mesmo meio pixelados, carregam toda a emoção intacta.

E assim é a lembrança daquela viagem — a mais longa da minha pequena infância.

Não há certeza se foi carro da família ou caravana de carros de parentes, mas uma coisa é absoluta:
era aventura.
A maior aventura da minha vida até então.



🚗 A Estrada do Sul – Quando Viajar Era Descobrir o Mundo

Nos anos 70/80, viajar não era rotina.
Não era GPS, não era playlist, não era ar-condicionado digital.
Viajar era ato solene, quase rito de passagem.

As estradas tinham poucos carros, os caminhões eram gigantes mitológicos, e cada parada em posto de gasolina era uma expedição arqueológica:

  • o cheiro de café fresco misturado com graxa,

  • os mapas dobrados em painel,

  • o “vamos esticar as pernas”,

  • e o senso de estar entrando num mundo que ia muito além da Vila Rio Branco.

Eu era pequeno, mas nesse dia já sentia que estava atravessando não só o estado — estava atravessando minha própria infância.

O velho fusquinha vermelho, superaquecia e precisa arrefecer de tempos em tempos, às vezes parávamos a beira da estrada para apanhar frutas, ver ninhos de passarinho, olhar a carcaça de algum animal morto e limpar o para-brisa com a quantidade de insetos grudados.



🌱 O Norte do Paraná – Uma Fronteira Viva

O destino era Cornélio Procópio, a terra onde sua mãe nasceu, a terra que moldou a “menina da roça”, a futura Dona Mercedes que viria a ser o eixo central da família Bellacosa. A terra roxa e conhecer Jaguapitã, Londrina, Maringa e outras cidades pelo caminho.

E aquele norte do Paraná… ah, aquilo era outro planeta.

Era uma região ainda jovem, recém desbravada, marcada por:

  • madeireiras gigantes com cheiro de pinho e serragem no ar,

  • cidades com não mais que duas décadas de vida,

  • ruas largas e poeirentas,

  • um futuro em construção.

Ali, tudo parecia temporário e definitivo ao mesmo tempo — um faroeste brasileiro moldado em madeira, café, suor e esperança.


🏡 As Casas de Madeira — Uma Revelação Americana

Mas o grande choque da viagem estava na arquitetura.

Para quem vinha da dura e concreta São Paulo, ver casas de madeira estilo americano, com:

  • lareiras,

  • chaminés,

  • telhados inclinados,

  • varandas de tábuas,

era como entrar num episódio vivo de Bonanza ou A Casa da Pradaria.

De repente tudo fez sentido:
quando minha mãe ensinava vocês a desenhar casinhas e insistia em colocar chaminés, achávamos aquilo estranho, fora da realidade paulistana.

Mas ali, naquele Paraná de clima frio e casas quentinhas, entendi:

ela desenhava a própria infância.



👪 A Grande Família – Tio-Avô Bau e o Clã Expandido

E então veio a avalanche de parentes.
Primos que surgiam como NPCs novos na história.
Gente que ria como sua mãe, gente que gesticulava como ela, gente que olhava como ela olhava.

O tio-avô Bau e sua grande família — aquela unidade expansiva que abre a porta, puxa cadeira, serve café, conta história e faz você se sentir parte de algo maior.

Era, para você criança, como descobrir uma expansão de mapa num jogo:
de repente o mundo cresceu, ganhou novas áreas, novas histórias, novas missões.




🧠 A Memória Falha — Mas o Sentimento Permanece

A mente adulta tenta puxar mais detalhes, mas não consegue.
Os pixels se perderam, o tempo deu purge, o spool girou.

Mas o essencial ficou:

  • a sensação de estrada infinita,

  • o impacto das casas de madeira,

  • o fascínio pelo sul,

  • a descoberta de um ramo inteiro da família,

  • e o primeiro contato real com a infância de sua mãe.

Essa viagem foi, sem dúvida, uma das primeiras grandes fronteiras que cruzei na vida.


📜 Epílogo Bellacosa Mainframe

E assim, sem perceber, o menino que partiu de São Paulo voltou maior.

Não em idade.
Mas em mundo.

Aquele dia não foi só a primeira viagem longa.
Foi a primeira vez que viu que:

Sua mãe tinha um passado.
Sua família tinha raízes.
E você tinha um mapa muito maior do que imaginava.

Um mapa que começava em São Paulo, descia por estradas vazias e terminava…
no coração simples de Cornélio Procópio —
e no começo da história de Dona Mercedes.


sábado, 5 de novembro de 2011

🌸 Yamato Nadeshiko — A Mulher Ideal do Japão

Bellacosa Mainframe apresenta Yamato Nadeshiko

 

🌸 Yamato Nadeshiko — A Mulher Ideal do Japão (versão Bellacosa Mainframe)

Se no mainframe temos o Master Scheduler — aquela entidade mística que, quando funciona, ninguém lembra, mas quando falha, todo mundo chora — na cultura japonesa existe o equivalente feminino simbólico: Yamato Nadeshiko.

O termo mistura tradição, idealização, pressão social, história e uma pitada de “isso ainda faz sentido hoje?”
É basicamente a imagem cultural da mulher perfeita, calma, gentil, dedicada, forte na adversidade e elegante sem esforço.


1) 🌺 Origem do Termo — da Flor ao Arquétipo

  • Yamato = nome poético antigo para o Japão.

  • Nadeshiko = uma flor (Dianthus superbus), delicada, pequena, tradicionalmente associada à feminilidade e beleza suave.

Juntando tudo:
➡️ “A flor delicada do Japão”
➡️ “A mulher ideal japonesa”

Nasceu na era clássica, reforçou-se na era Edo e virou símbolo nacional no início do século XX, especialmente durante períodos militaristas (a ideia da mulher que apoia o lar, a nação, o soldado).

Sim, é cultura… mas também é propaganda. 🫢
(E aqui começam os easter-eggs culturais.)


Dianthus superbus


2) 🏯 A Estrutura Interna do Arquétipo

Em linguagem Mainframe COBOLzística:

01 YAMATO-NADESHIKO. 05 CARATER PIC X(20) VALUE 'GENTIL'. 05 SOBRIEDADE PIC X(20) VALUE 'ELEGANTE'. 05 SACRIFICIO PIC X(20) VALUE 'SILENCIOSO'. 05 FORCA PIC X(20) VALUE 'INTERIOR'. 05 LEALDADE PIC X(20) VALUE 'ATE-O-FIM'.

É quase um COPYBOOK passado de mãe pra filha.
E, claro… quase impossível de cumprir na vida real.


Idealização e fantasia


3) 💬 Curiosidades — “isso não te contam no anime”

✔ A seleção feminina de futebol do Japão adotou o nome

A seleção feminina japonesa se chama Nadeshiko Japan.
Porque a flor representa beleza, mas também resiliência.

✔ A flor Nadeshiko era símbolo secreto entre amantes

Samurais carregavam pétalas como amuleto de amor e lealdade.

✔ Nem toda personagem “boazinha” é Yamato Nadeshiko

Precisa ter:

  • calma sobrenatural,

  • postura refinada,

  • sacrifício quase espiritual,

  • maturidade emocional.

Sim: é pesado.


Imaginação, sedução e erotismo


4) ✨ Personagens icônicas (e por quê)

1. Hinata Hyuga – Naruto

  • Tímida, dedicada, gentil, leal.

  • Conseguiu o combo "doce + forte" sem virar estereótipo vazio.

  • O fandom diz: “Hinata é a versão moderna do Nadeshiko.”

2. Belldandy – Ah! My Goddess

  • Quase um blueprint do arquétipo.

  • Educada, serena, e tem uma luz própria de “deusa doméstica de alta disponibilidade”.

3. Misuzu – Air

  • Pureza, fragilidade, sacrifício emocional…

  • Representa o lado trágico do arquétipo.

4. Sawako Kuronuma – Kimi ni Todoke

  • Doçura, bondade e evolução pessoal constante.

  • Mostra o Nadeshiko que se descobre e amadurece.

5. Tohru Honda – Fruits Basket

  • A “mãe emocional” dos amigos.

  • A versão moderna que combina bondade e independência.


5) ☕ Fofoquices Culturais (o lado B da fita)

  • Muitos japoneses usam “Yamato Nadeshiko” ironicamente para se referir a uma garota calma demais, submissa ou antiquada para os padrões modernos.

  • Em fóruns otaku, virou meme:

    “Procuro Yamato Nadeshiko. Vale skill em culinária.”

  • Em doramas, existe o trope do ‘Nadeshiko exterior, demônio interior’ — perfeita por fora, caos absoluto por dentro.


6) 🎎 Easter-Eggs escondidos em animes

🥢 1. O penteado tradicional

Personagens Yamato Nadeshiko quase sempre têm:

  • cabelo longo,

  • cores suaves,

  • tiaras discretas,

  • movimentos de cabeça lentos.

🌸 2. O gesto “dobrar pano”

Várias protagonistas fazem aquele movimento calmo de dobrar toalhas → gesto cultural de cuidado e graça feminina.

🔪 3. O contraste: a “Yamato Nadeshiko Do Inferno”

Archetype reverso:

  • parece delicada

  • mas é uma yandere, ninja, assassina ou dominadora silenciosa.

É O easter-egg favorito dos roteiristas.
(Kurumi Tokisaki manda abraços.)


7) 🧩 Porque isso ainda aparece tanto?

Porque:

  • o Japão adora arquétipos (como classes de RPG);

  • o contraste “delicada por fora / forte por dentro” gera drama;

  • é uma ponte entre passado e presente.

E, como em mainframe, certas estruturas antigas continuam vivas porque… continuam funcionando.


8) 💡 Comentário estilo Bellacosa Mainframe

O Yamato Nadeshiko é como aquele programa COBOL setentão que ainda roda firme no banco, no governo, na seguradora —
todo mundo jura que é ultrapassado, mas delicadamente, silenciosamente… ele mantém o mundo funcionando.

É tradição, é estética, é pressão social, é literatura, é mito, é encanto, é crítica velada.
E, acima de tudo, é um reflexo de como o Japão equilibra modernidade e passado como quem equilibra JCL, RACF e CICS às 3 da manhã.

O extremo



quarta-feira, 12 de outubro de 2011

🔥 COMMAREA vs CHANNEL/CONTAINER no CICS

 


🔥 COMMAREA vs CHANNEL/CONTAINER no CICS



☕ Midnight Lunch, COMMAREA gigante e o CICS olhando feio

Todo mainframer já viveu esse momento:

“Só aumentei a COMMAREA… de 2K pra 32K.”

Minutos depois:

  • ASRA misterioso

  • Storage estourando

  • Performance caindo

  • E alguém sussurra:
    👉 “Por que não usaram CHANNEL?”

Hoje vamos resolver essa treta histórica: COMMAREA vs CHANNEL/CONTAINER, com números, boas práticas, cicatrizes e filosofia Bellacosa.


🏛️ História: do bloco único ao container moderno

COMMAREA

  • Nasceu nos primórdios do CICS

  • Simples, direta, rápida

  • Pensada para pequenos volumes de dados

  • Era “o suficiente” nos anos 70/80

CHANNEL/CONTAINER

  • Introduzido no CICS TS 3.x

  • Resposta à complexidade crescente

  • Feito para dados grandes, estruturados e flexíveis

  • Arquitetura mais próxima de “mensageria moderna”

📌 Não é moda. É evolução arquitetural.


🧠 Conceito essencial (guarde isso)

COMMAREA = um bloco fixo de memória
CHANNEL/CONTAINER = coleção flexível de blocos independentes

Isso muda tudo.


📦 COMMAREA – o clássico confiável (e perigoso)

O que é?

Um único bloco contínuo de memória, passado entre programas via LINK/XCTL.

📏 Tamanho máximo

  • Até 32.767 bytes (~32 KB)

Sim. Esse é o limite duro.
Passou disso? Nem adianta insistir.


👍 Pontos fortes

✔ Simples
✔ Rápido
✔ Fácil de debugar
✔ Ideal para estruturas pequenas

👎 Limitações

❌ Tamanho limitado
❌ Forte acoplamento entre programas
❌ Layout rígido
❌ Difícil evoluir sem impacto


❌ Erros comuns com COMMAREA (easter eggs)

🐣 COMMAREA gigante “só por garantia”
🐣 Layout diferente entre programas
🐣 Reutilizar COMMAREA sem limpar
🐣 Usar COMMAREA como “dump de dados”

📌 COMMAREA não é mala de viagem.


📦 CHANNEL/CONTAINER – o adulto da sala

O que é?

Um CHANNEL é um agrupador lógico.
Um CONTAINER é um bloco individual de dados dentro do channel.

📦 Channel
└── Container A
└── Container B
└── Container C

Cada um com:

  • Tamanho próprio

  • Tipo próprio

  • Vida própria


📏 Tamanho máximo

  • Praticamente ilimitado (dependente de storage)

  • Containers podem ter megabytes

  • Muito além do limite da COMMAREA

📌 Aqui o gargalo deixa de ser o CICS e passa a ser o bom senso.


👍 Pontos fortes

✔ Estrutura flexível
✔ Baixo acoplamento
✔ Ideal para dados grandes
✔ Melhor para evolução de sistemas
✔ Integra bem com Web Services e MQ

👎 Cuidados

❌ Mais verboso
❌ Exige disciplina
❌ Overkill para casos simples


🥊 COMMAREA vs CHANNEL/CONTAINER

CritérioCOMMAREACHANNEL/CONTAINER
Tamanho máx~32 KBMuito grande
EstruturaFixaFlexível
EvoluçãoDifícilFácil
PerformanceExcelenteMuito boa
AcoplamentoAltoBaixo
ModernidadeClássicoAtual

📌 Não existe melhor. Existe mais adequado.


🛠️ Passo a passo: como escolher

1️⃣ Dados pequenos e estáveis? → COMMAREA
2️⃣ Muitos campos opcionais? → CHANNEL
3️⃣ Dados grandes (XML, JSON)? → CHANNEL
4️⃣ Sistema legado crítico? → COMMAREA (com cuidado)
5️⃣ Integração moderna? → CHANNEL/CONTAINER


⚡ Boas práticas Bellacosa

✅ COMMAREA

  • Use o menor tamanho possível

  • Documente o layout

  • Inicialize sempre

  • Evite “COMMAREA universal”

✅ CHANNEL/CONTAINER

  • Um container = um conceito

  • Nomeie containers claramente

  • Evite “container Frankenstein”

  • Libere quando não precisar

📌 Arquitetura também é educação.


🧪 Exemplo mental de otimização

Antes (COMMAREA)

  • Estrutura única de 30 KB

  • Metade dos campos nunca usados

  • Cada mudança quebra alguém

Depois (CHANNEL)

  • Container CLIENTE

  • Container PRODUTO

  • Container CONTROLE

  • Cada programa lê só o que precisa

🔥 Resultado:

  • Menos impacto

  • Mais clareza

  • Menos bug fantasma


📚 Guia de estudo recomendado

Para dominar o tema:

  • CICS Program Control

  • Storage Management

  • COMMAREA lifecycle

  • CHANNEL/CONTAINER APIs

  • Performance tuning em CICS

📖 Manual essencial: CICS Application Programming Guide


🤓 Curiosidades de boteco mainframe

🍺 CHANNEL foi criado porque COMMAREA virou “caixa de Pandora”
🍺 Há sistemas que simulam JSON dentro de COMMAREA (não faça isso)
🍺 Web Services no CICS usam CHANNEL por baixo dos panos
🍺 Muitos ainda usam COMMAREA por medo, não por necessidade


💬 Comentário El Jefe Midnight Lunch

“COMMAREA resolve rápido.
CHANNEL resolve certo.
O mainframe não perdoa preguiça arquitetural.”


🚀 Aplicações reais hoje

  • Core bancário moderno

  • APIs CICS

  • Integração com MQ

  • Processamento XML/JSON

  • Sistemas híbridos (CICS + Cloud)


🎯 Conclusão Bellacosa

COMMAREA não morreu.
CHANNEL não é bala de prata.

O mainframer experiente:

  • Sabe quando usar cada um

  • Respeita limites

  • Pensa no futuro

🔥 Arquitetura boa não dá abend. Dá orgulho.

segunda-feira, 10 de outubro de 2011

U 518 - Nazario Sauro submarino museu

Entrado por agua baixo, da serie afundei o submarino.

Quem nunca sonhou em entrar em um Submarino, sentir o cheiro, tocar os instrumentos, ver e ouvir. 

Uma experiência única que vale a pena conhecer. Sentir a claustrofobia, ver como sofriam os tripulantes dessas maquinas, ver o espaço reduzido, saber q partilhavam as camas, que havia poucos banheiros. 

A falta de luz solar, o stress por estar confinado, tantas coisas q so percebemos uma leve fraçao ao entrar num submarino.


A equipe que preparou o museu esta de parabéns, pois literalmente a imersão é completa, as luzes, o cheiro, os ruídos, a iluminação tudo te transporta para um submarino em operação em algum lugar secreto do Mediterrâneo.

domingo, 9 de outubro de 2011

Present Bias: Doctor Who, COBOL e o Dia em que o Problema de Amanhã Perdeu para o Conforto de Hoje

Bellacosa Mainframe e o present bias


☕ Um Café no Bellacosa Mainframe

Present Bias: Doctor Who, COBOL e o Dia em que o Problema de Amanhã Perdeu para o Conforto de Hoje

Uma viagem pela TARDIS dos incidentes para entender por que preferimos economizar tempo, esforço e desconforto agora — mesmo quando sabemos que a conta futura será maior

08:11.

Segunda-feira.

Café recém-passado.

Produção estável.

Uma reunião rápida.

Tema:

ATUALIZAÇÃO DE ROTINA CRÍTICA

O analista explica:

— Precisamos revisar o programa de reconciliação.

O gerente pergunta:

— Está com problema?

— Ainda não.

— Então por que mexer?

— Porque estamos com pouca margem, a rotina depende de intervenção manual e o volume cresceu 30%.

Silêncio.

— Quanto tempo levaria?

— Talvez três dias de análise e testes.

O gerente olha para a lista de entregas.

— Não temos três dias agora.

— Podemos fazer no próximo ciclo.

— Ótimo.

Próximo ciclo.

Outra prioridade.

Depois:

auditoria.

Depois:

release.

Depois:

férias.

Depois:

fechamento.

Seis meses passam.

A rotina continua.

Todo dia alguém executa um pequeno workaround.

Cinco minutos.

Nada demais.

Até que:

03:21:44

RECONCILIATION FAILED

03:22.

Operador corrige manualmente.

03:29.

Produção normal.

Nada grave.

Então todos respiram.

— Depois corrigimos definitivamente.

Mais seis meses.

Agora o workaround leva vinte minutos.

Depois quarenta.

Depois precisa de duas pessoas.

Depois existe uma planilha.

Depois um script.

Depois uma instrução de oito páginas explicando como contornar o sistema que ainda “funciona”.

Até que numa madrugada:

02:41

RECONCILIATION FAILED
MANUAL PROCEDURE FAILED
BACKLOG: 1.870.000 RECORDS

A War Room abre.

Alguém pergunta:

— Como chegamos aqui?

VWORP.

VWORP.

VWORP.

A TARDIS materializa-se ao lado da impressora.

A porta abre.

O Doctor sai.

Olha para a timeline.

— Quando vocês perceberam que esse problema existia?

O gerente responde:

— Hoje.

Nosso jovem programador COBOL olha para a documentação.

— Na verdade...

Pausa.

— Há registros de mais de um ano.

Silêncio.

O Doctor sorri.

— Ah.

— O quê?

— Então o problema não era invisível.

Aponta para a lista de adiamentos.

— Só estava sempre perdendo para alguma coisa mais urgente.

Bem-vindo ao:



Present Bias

Ou:

Viés do Presente

A tendência de dar peso excessivo aos custos e benefícios imediatos e peso insuficiente às consequências futuras.

Em português operacional:

“Resolvo depois.”


🌀 Nossa TARDIS dos incidentes está ficando lotada

Até aqui conhecemos:

Swiss Cheese Model — várias barreiras podem falhar juntas.

Normalization of Deviance — desvios viram rotina.

Hindsight Bias — o passado parece óbvio depois.

Confirmation Bias — buscamos provas para aquilo que acreditamos.

Anchoring Bias — a primeira informação pesa demais.

Groupthink — grupos convergem cedo demais.

Authority Gradient — hierarquia silencia sinais importantes.

Plan Continuation Bias — continuamos porque já começamos.

Alarm Fatigue — alertas demais viram ruído.

Automation Bias — confiamos demais na máquina.

Drift Into Failure — pequenas adaptações empurram sistemas para a borda.

Diffusion of Responsibility — todo mundo vê e ninguém assume.

Normalcy Bias — esperamos que tudo volte ao normal.

Survivorship Bias — estudamos apenas quem sobreviveu.

Base Rate Neglect — ignoramos frequências reais.

Availability Heuristic — o que lembramos facilmente parece mais provável.

Outcome Bias — confundimos resultado bom com decisão boa.

Overconfidence Bias — acreditamos que sabemos mais do que sabemos.

Planning Fallacy — subestimamos tempo e complexidade.

Sunk Cost Fallacy — gastos passados nos prendem ao futuro.

Status Quo Bias — preferimos o estado atual porque já existe.

Agora encontramos um combustível poderoso para vários desses vieses:

o conforto imediato.


🧠 O que é Present Bias?

Imagine duas opções.

Opção A

Resolver hoje.

Custo:

dor;

tempo;

teste;

trabalho;

reunião;

risco de mudança.

Opção B

Não resolver hoje.

Custo imediato:

quase zero.

Consequência futura:

possivelmente maior.

Nosso cérebro tende a dar peso desproporcional ao que acontece agora.

Então:

CUSTO HOJE = MUITO VISÍVEL

CUSTO FUTURO = ABSTRATO

Resultado:

“Depois fazemos.”

O problema?

O futuro eventualmente se transforma em presente.

E normalmente chega acompanhado de juros.


☕ Bellacosa Mainframe: o TODO de dez anos

Todo programador conhece:

      * TODO - CORRIGIR DEPOIS

O comentário é criado em 2016.

Em 2026:

      * TODO - CORRIGIR DEPOIS

O “depois” demonstrou impressionante resiliência.

Por quê?

Porque corrigir possui custo imediato.

Deixar como está possui custo futuro.

Então o futuro perde.


🧠 Temporal Discounting

Present Bias está relacionado a uma ideia chamada desconto temporal.

Simplificando:

tendemos a valorizar mais algo disponível agora do que algo equivalente no futuro.

R$100 hoje parece mais valioso que R$100 daqui a um ano.

Isso pode ser racional em algum grau.

O problema aparece quando descontamos o futuro de maneira exagerada.

Em TI:

“Economizamos duas horas hoje.”

Excelente.

Mas criamos:

20 horas mensais de operação manual.

A economia imediata parece vitória.

O custo futuro vai ficando invisível.


📊 A matemática do workaround

Imagine:

corrigir definitivamente:

16 horas de trabalho

Workaround manual:

20 minutos/dia

Parece barato.

Mas em 1 ano:

20 min × 250 dias
=
5.000 minutos
=
83 horas

Você evitou 16 horas.

Criou 83.

E continua aumentando.

Present Bias faz o primeiro número parecer grande.

E o segundo desaparecer porque está dividido no tempo.


🧠 Microcustos escondem macroproblemas

Cinco minutos aqui.

Dez ali.

Um restart.

Uma intervenção.

Uma planilha.

Separadamente:

pequenos.

Acumulados:

enormes.

Esse é um ponto central.

O futuro frequentemente cobra em parcelas pequenas antes de mandar a fatura grande.


👻 Easter Egg nº 1 — “Resolveremos amanhã”

Imagine Doctor Who.

Uma rachadura temporal aparece.

Companion:

— Devemos fechar isso?

Doctor:

— Sim.

— Agora?

— Temos chá.

— Então amanhã?

Corta para:

três universos colidindo.

Present Bias aplicado à cosmologia.


🌀 Present Bias + Status Quo Bias

Nosso episódio anterior encaixa perfeitamente.

Status Quo Bias diz:

“Mudar parece arriscado.”

Present Bias acrescenta:

“E dá trabalho agora.”

Resultado:

não fazemos nada.

O sistema atual ganha duas vantagens:

familiaridade;

conforto imediato.


💰 Present Bias + Sunk Cost

Já gastamos muito no sistema atual.

Mudar custa hoje.

Benefício aparece depois.

Então:

“Vamos manter.”

Sunk Cost protege o passado.

Present Bias protege o presente.

O futuro fica sem advogado.


🌀 Drift Into Failure adora isso

Cada melhoria preventiva é adiada.

Margem cai.

Workarounds aumentam.

Capacidade diminui.

Nada explode hoje.

Então:

“Ainda dá.”

Centímetro por centímetro:

Drift Into Failure.

Present Bias é uma das forças que empurra.


🧠 Normalization of Deviance

Workaround temporário.

Hoje:

mais fácil usar.

Amanhã:

também.

Depois:

normal.

O desvio é mantido porque corrigir exige custo imediato.

Normalization of Deviance transforma Present Bias em procedimento.


🔔 Alarm Fatigue

Alerta ruidoso.

Ajustar monitoramento leva trabalho.

Mais fácil:

silenciar.

Resolve o incômodo hoje.

Mas talvez elimine capacidade de detectar problema amanhã.

Present Bias:

conforto imediato.

Risco futuro.


🔐 Segurança é terreno fértil

Patch.

Agora:

precisa testar.

Pode causar indisponibilidade.

Tem mudança.

Tem CAB.

Adiar:

produção tranquila hoje.

Mas vulnerabilidade fica aberta.

Present Bias pode empurrar patch indefinidamente.


🧠 “Não aconteceu nada ainda”

Essa frase mistura:

Normalcy Bias;

Outcome Bias;

Present Bias.

“Não precisamos fazer hoje porque nada aconteceu.”

Mas controles preventivos existem exatamente para antes.

Depois do incidente:

já não são prevenção.

São recuperação.


🧯 Manutenção preventiva

Pense num carro.

Trocar óleo:

custo agora.

Não trocar:

economia agora.

Motor quebrado:

custo depois.

TI funciona igual.

Só que o motor pode processar milhões de transações bancárias.


💾 Storage

Dataset:

80%.

85%.

90%.

Planejar expansão:

trabalho.

Hoje ainda cabe.

Então:

“Depois.”

95%.

98%.

03:00.

Incidente.

Present Bias transforma capacity planning em firefighting.


📈 Capacity Planning é exercício de respeito pelo futuro

Você compra capacidade antes de precisar.

Isso parece desperdício.

Até precisar.

Margin é recurso que existe precisamente para eventos futuros.

Present Bias gosta de consumir margem porque seu benefício não aparece imediatamente.


☕ “CPU ociosa é dinheiro parado”

Talvez.

Mas se eliminar toda folga:

qualquer pico vira crise.

Eficiência absoluta e resiliência raramente são a mesma coisa.


🧠 Slack organizacional

Slack aqui não é a ferramenta de chat.

É folga.

Tempo.

Capacidade.

Pessoas.

Um sistema sem folga parece eficiente.

Mas pode ser frágil.

Present Bias incentiva cortar a folga porque economia aparece hoje.

A fragilidade aparece amanhã.


🧀 Swiss Cheese + Present Bias

Barreira 1:

backup.

Custo hoje.

Barreira 2:

teste.

Custo hoje.

Barreira 3:

redundância.

Custo hoje.

Barreira 4:

treinamento.

Custo hoje.

Incidente:

talvez nunca.

Então alguém pergunta:

“Por que gastamos nisso?”

Present Bias começa a furar o queijo.


🧠 Prevention Paradox volta

Quando prevenção funciona:

nada acontece.

E justamente por nada acontecer, ela pode parecer desnecessária.

Resultado:

cortamos.

Até descobrir por que existia.

Present Bias torna prevenção politicamente difícil porque benefício é invisível e futuro.


👥 Gestão e metas trimestrais

Aqui o problema sai da psicologia individual e vira desenho organizacional.

Imagine gerente avaliado por:

custo deste trimestre.

Investimento em prevenção reduz resultado imediato.

Incidente talvez aconteça no ano seguinte.

Que incentivo existe?

Talvez racionalmente ele adie.

Agora Present Bias foi institucionalizado.


🧠 Short-termism

Esse comportamento pode aparecer como short-termism:

foco excessivo em resultados de curto prazo às custas de saúde futura.

Em tecnologia:

reduzir equipe;

adiar manutenção;

cortar testes;

empurrar dívida técnica.

O trimestre melhora.

Sistema piora.


💸 Dívida técnica é crédito no banco do futuro

Analogia perfeita.

Atalho hoje:

ganha tempo.

Mas paga:

juros.

Cada mudança futura custa mais.

Technical debt não é automaticamente ruim.

Às vezes tomar dívida é racional.

Mas precisa ser consciente.


☕ Bellacosa Bank of Technical Debt

Contrato:

PRINCIPAL:
8 horas economizadas hoje

JUROS:
2 horas extras em cada manutenção futura

Quantas manutenções?

Se vinte:

péssimo negócio.


🧠 Dívida sem plano vira presente permanente

Dívida técnica pode ser aceitável se:

temporária;

documentada;

com owner;

prazo;

plano de pagamento.

Sem isso:

vira Status Quo.


💻 COBOL iniciante: “faço hardcode agora”

Exemplo:

       IF WS-CODE = '8472'
           MOVE 'Y' TO WS-VALID
       END-IF.

Negócio:

— Precisamos hoje.

Hardcode resolve.

Pode ser perfeitamente justificável.

Problema:

ninguém cria tarefa para parametrizar.

Cinco anos depois:

       IF WS-CODE = '8472'
          OR WS-CODE = '9221'
          OR WS-CODE = '1034'
          OR WS-CODE = '1148'
          OR ...

Present Bias construiu arquitetura.

Uma urgência de cada vez.


🧠 Tactical versus Strategic

Solução tática:

resolve agora.

Solução estratégica:

melhora futuro.

Ambas podem ser necessárias.

O erro é deixar solução tática virar estratégica por abandono.


📋 Regra simples

Todo workaround deveria responder:

POR QUÊ?
OWNER?
DATA DE EXPIRAÇÃO?
CORREÇÃO DEFINITIVA?

Se não:

o temporário está tentando comprar residência permanente.


▶️ Plan Continuation Bias

Projeto atrasado.

Parar agora é doloroso.

Continuar é mais confortável no instante.

Present Bias pode reforçar Plan Continuation.

Benefício imediato:

evitar decisão difícil.

Custo futuro:

mais investimento.


🧠 Procrastinação é prima

Procrastinação e Present Bias possuem conexão intuitiva.

Escrever documentação:

dor agora.

Benefício depois.

Então:

depois.

Fazer teste:

custo agora.

Bug evitado:

futuro e abstrato.

Depois.

Treinar sucessor:

tempo agora.

Risco de conhecimento:

futuro.

Depois.


👨‍💻 Documentação

Um dos maiores exemplos.

Desenvolvedor pensa:

“Lembro perfeitamente.”

Hoje.

Daqui a dois anos:

não.

Ou nem estará mais na equipe.

Documentar tem custo presente e benefício futuro.

Logo:

é vítima natural.


🧠 Bus Factor + Present Bias

Treinar alguém:

leva tempo hoje.

Mais fácil:

Carlos resolve.

Amanhã Carlos continua.

Até um dia não.

De repente a economia passada aparece como risco.


👥 Cross-training

Duplicar conhecimento parece ineficiente.

Duas pessoas aprendendo mesma coisa.

Mas é redundância.

Present Bias enxerga:

custo duplicado hoje.

Resiliência aparece só depois.


🪜 Authority Gradient e prioridades

Júnior:

— Deveríamos corrigir isso.

Gerente:

— Não é prioridade.

Tudo bem.

Mas pergunte:

“O que precisaria acontecer para virar prioridade?”

Sem critério:

“não prioritário” pode significar:

nunca.


🎯 Pergunta Bellacosa nº 1

Quando alguém disser:

“Fazemos depois.”

Pergunte:

“Quando exatamente é depois?”

Se não tem data:

talvez signifique nunca.


🎯 Pergunta Bellacosa nº 2

Outra:

“Quanto economizamos hoje e quanto isso custa ao longo de um ano?”

Transforme futuro em número presente.


🎯 Pergunta Bellacosa nº 3

Outra:

“Que risco estamos transferindo para a equipe futura?”

Excelente para arquitetura.


🎯 Pergunta Bellacosa nº 4

E:

“Se o problema explodir amanhã, vamos desejar ter gasto essas duas horas hoje?”


🧪 Como combater Present Bias

Passo 1 — Traga o futuro para o presente

Quantifique.


Passo 2 — Calcule custo acumulado

Não só custo unitário.


Passo 3 — Dê owner aos débitos

Nada de TODO órfão.


Passo 4 — Coloque data de expiração

Workaround precisa vencer.


Passo 5 — Reserve capacidade para manutenção

Se manutenção compete sempre com features, sempre perde.


Passo 6 — Automatize o futuro bom

Backup.

Testes.

Patches.

Monitoramento.


Passo 7 — Use precommitment

Defina antes quando corrigir.


Passo 8 — Crie thresholds

Quando risco futuro vira ação presente?


Passo 9 — Inclua custo de oportunidade

O que o workaround está consumindo?


Passo 10 — Meça dívida acumulada

Se não mede, some.


📊 Future Cost Dashboard

Imagine:

MANUAL WORKAROUNDS
143/mês

TEMPO:
36h/mês

CUSTO:
R$ X/ano

INCIDENT RISK:
crescendo

Agora “depois” deixa de ser abstrato.


🧠 Hyperbolic Discounting

Existe uma forma interessante de pensar nesse viés.

A distância temporal muda percepção de valor de maneira não linear.

Exemplo:

Hoje:

fazer duas horas de documentação dói.

Daqui a seis meses:

você adoraria ter aquela documentação.

Mas seis meses atrás:

não parecia urgente.

Essa inconsistência temporal é uma característica importante de como avaliamos presente e futuro.


☕ O “eu de amanhã” é sempre mais organizado

Hoje:

— Amanhã documento.

Amanhã:

— Amanhã documento.

Surpreendentemente, o profissional de amanhã possui agenda infinita.

Precisamos parar de terceirizar trabalho para essa criatura mitológica.


👻 Easter Egg nº 2 — o funcionário do futuro

Doctor:

— Quem vai corrigir isso depois?

Gerente:

— Nossa equipe futura.

Doctor:

— Quem exatamente?

Silêncio.

— Ah. Mais um funcionário imaginário.

Primo do famoso “alguém” da Diffusion of Responsibility.


🧠 Present Bias + Diffusion of Responsibility

“Depois alguém resolve.”

Aqui temos:

tempo indefinido;

pessoa indefinida.

Perfeito.

O problema alcançou invisibilidade máxima.


🗓️ Owner + Date

Uma tarefa real:

ACTION:
Eliminar workaround X

OWNER:
Maria

DUE:
30/09

SUCCESS:
zero intervenção manual

Agora o futuro ganhou endereço.


🔄 Continuous Improvement

Melhoria contínua existe justamente porque problemas pequenos precisam ser tratados antes de virarem grandes.

Um percentual fixo da capacidade pode ser reservado para:

dívida;

automação;

observabilidade;

documentação.

Não existe número universal.

O princípio é:

o futuro precisa ter orçamento.


🧠 Se só financiamos urgência, produzimos mais urgência

Essa frase merece destaque.

Equipe sempre ocupada apagando incêndio.

Nunca melhora.

Porque melhoria não é urgente.

Então incêndios continuam.

Agora temos um ciclo:

INCIDENTE
↓
CORREÇÃO RÁPIDA
↓
SEM TEMPO PARA CORREÇÃO ESTRUTURAL
↓
NOVO INCIDENTE
↓
CORREÇÃO RÁPIDA

Present Bias vira modelo operacional.


🔥 Firefighting Culture

Algumas organizações até valorizam heroísmo.

Pessoa salva produção.

Recebe elogio.

Quem automatizou e evitou o incidente?

Ninguém percebe.

Outcome Bias + Present Bias.

Recuperação imediata é visível.

Prevenção futura, não.


🧠 Incentivo à prevenção

Mude reconhecimento.

Celebre:

alerta eliminado;

runbook melhorado;

reprocessamento removido;

dívida paga;

near miss evitado.

Isso ajuda a equilibrar presente e futuro.


🔐 Patch Tuesday e depois

Patch está disponível.

Negócio:

— Não podemos parar agora.

Semana seguinte:

— Ainda não.

Mês seguinte:

— Estamos em freeze.

Outro:

— Agora fechamento.

Esse calendário pode existir.

Mas vulnerabilidade não respeita agenda.

Precisamos definir:

risco;

prazo máximo;

compensating controls.


🧠 Risk Acceptance com validade

Se adiar:

registre:

RISCO:
CVE X

ACEITO POR:
Y

ATÉ:
DATA Z

COMPENSATING CONTROL:
W

FIX:
JANELA N

Isso transforma Present Bias em decisão governada.


☁️ Cloud cost optimization

Outro exemplo.

Instância superdimensionada.

Custa R$ 10 mil/mês extra.

Corrigir leva um dia.

Mas:

“estamos sem tempo.”

Um ano:

R$ 120 mil.

Present Bias também queima dinheiro.


🧠 Pequenos custos recorrentes importam

Sistemas grandes escondem milhares de microdesperdícios.

Cada um parece pequeno.

Acumulado:

milhões.

FinOps, capacity planning e observabilidade ajudam a transformar futuro em dado.


🏦 Present Bias em finanças e legado

Um banco pode preferir adiar modernização porque o sistema ainda funciona.

Talvez correto.

Mas se todo investimento preventivo perde para metas trimestrais:

mais cedo ou mais tarde o futuro cobra.

A questão é construir equilíbrio entre:

estabilidade atual;

capacidade futura.


🧠 Modernização sem hype

Present Bias não significa:

“faça tudo agora.”

Isso seria absurdo.

Recursos são finitos.

Precisamos priorizar.

O ponto é:

não tratar benefício futuro como zero só porque não chega esta semana.


⚖️ Discount Rate explícita

Na prática, organizações podem comparar:

custo agora;

benefício anual;

risco evitado.

Mesmo sem matemática sofisticada.

Exemplo:

CORREÇÃO:
40h

WORKAROUND ATUAL:
10h/mês

PAYBACK:
4 meses

Agora decisão fica concreta.


📈 Payback técnico

Essa ideia é poderosa.

Uma automação custa:

80h.

Economiza:

20h/mês.

Payback:

4 meses.

Depois disso:

ganho.

É mais difícil adiar indefinidamente quando isso está visível.


💻 Refactoring economics

Refatorar não é automaticamente bom.

Pergunte:

  • quanto custa?

  • quanto reduz manutenção?

  • quantas mudanças futuras?

  • qual risco?

Talvez não valha.

Mas calcule.

Não simplesmente:

“não temos tempo.”


🧠 Opportunity Cost novamente

Se gastamos toda capacidade em feature urgente:

não investimos em:

testes;

segurança;

automação.

Resultado futuro:

mais lentidão.

A empresa precisa tratar capacidade de engenharia como capital.


🎯 Pergunta Bellacosa nº 5

“Quanto da nossa semana existe para que a próxima semana seja melhor?”

Se resposta:

zero,

talvez tenhamos um problema estrutural.


📋 Checklist anti-Present Bias

[ ] Qual benefício imediato estamos escolhendo?

[ ] Qual custo futuro estamos aceitando?

[ ] Esse custo futuro está quantificado?

[ ] Quantas vezes esse workaround acontece?

[ ] Qual o custo anual acumulado?

[ ] Existe owner para a correção?

[ ] Existe data?

[ ] O “temporário” possui expiração?

[ ] O risco cresce com o tempo?

[ ] Estamos usando pessoas como buffer?

[ ] Estamos adiando porque é racional ou porque é desconfortável?

[ ] A decisão futura terá menos margem que hoje?

[ ] Existe payback claro para corrigir agora?

[ ] Se não fizermos nada por 12 meses, como estaremos?

🧠 Future Self Test

Pergunte:

“O que a equipe de daqui a um ano pensará desta decisão?”

Não é magia.

É perspectiva temporal.

Ajuda a quebrar fascínio pelo presente.


🧪 Pre-mortem temporal

Imagine:

“Daqui a um ano tivemos um incidente grave causado por esse problema.”

Pergunte:

“O que deixamos de fazer hoje?”

Isso força o futuro a entrar na reunião.


🌀 Status Quo + Present + Drift

Temos uma combinação extraordinária:

Status Quo:

não muda.

Present Bias:

não agora.

Drift:

enquanto isso, margem cai.

Essa tríade explica muitos sistemas que permanecem “estáveis” até o dia em que descobrimos que estabilidade era apenas ausência de perturbação suficiente.


🧠 Planning Fallacy também entra

— Corrigimos depois.

Quanto leva?

— Um dia.

Seis meses depois descobrem:

agora leva três semanas.

Por quê?

Complexidade cresceu.

Present Bias adiou.

Planning Fallacy subestimou.

O futuro ficou mais caro.


💰 Compound Interest da dívida técnica

Dívida pode acumular juros compostos.

Mais atalhos dependem de atalhos anteriores.

Correção fica exponencialmente mais difícil.

Isso é como juros:

tempo aumenta custo.


🧠 “Depois” não é neutro

Esperar pode:

aumentar volume;

aumentar complexidade;

reduzir skills;

perder documentação;

aumentar dependência.

Logo:

adiar não significa manter custo igual.

Pode multiplicá-lo.


👨‍💻 Dica para o COBOL iniciante

Se precisa fazer workaround:

faça.

Produção importa.

Mas escreva:

ticket;

owner;

razão;

expiração;

plano de remoção.

O problema não é improvisar numa emergência.

O problema é esquecer que improvisou.


☕ Regra Bellacosa do esparadrapo

Esparadrapo salva.

Mas se o paciente aparece cinco anos depois ainda coberto de esparadrapo:

talvez precisemos de cirurgia.

Workaround é esparadrapo.

Use.

Depois trate.


👻 Easter Egg nº 3 — Sonic Screwdriver Tape

Doctor:

— Colei provisoriamente.

Companion:

— Quanto dura?

Doctor:

— Até resolvermos de verdade.

Corta para:

três temporadas depois.

Até Time Lords precisam de backlog.


🧠 Incident follow-up

Após incidente:

hotfix.

Produção normal.

É aí que Present Bias aparece.

A pressão acabou.

Todos voltam às prioridades.

Root fix morre.

Então incident management deve incluir:

follow-up action;

owner;

deadline.


🔁 Post-Incident Improvement

Um incidente só gera aprendizado se ações realmente forem implementadas.

Senão:

post-mortem vira literatura.

Interessante.

Bem diagramada.

Inútil.


📊 Track closure quality

Não apenas:

action closed.

Pergunte:

risco foi realmente reduzido?

Porque também podemos ter Present Bias no fechamento:

marcar ticket como concluído com solução superficial.


🧠 Goodhart volta ao horizonte

Se KPI é:

“ações fechadas”,

pessoas fecham ações.

Não necessariamente corrigem sistema.

Métrica precisa refletir resultado de segurança.


🧬 Regeneração organizacional

Como regenerar uma organização dominada pelo presente?

Ela passa a:

quantificar custos recorrentes;

reservar capacidade para manutenção;

criar owners;

usar datas de expiração;

fazer business cases de automação;

valorizar prevenção;

medir dívida;

revisar workarounds;

criar stage gates;

e olhar 12, 24, 36 meses.

Principalmente:

transforma o futuro de abstração em item de backlog com nome, data e custo.


📓 Diário do Doctor

Se guardar apenas algumas ideias desta viagem, guarde estas:

Present Bias é a tendência de dar peso excessivo ao benefício e ao custo imediato e pouco peso às consequências futuras.

“Depois” precisa de data.

Workarounds pequenos podem acumular enormes custos.

Dívida técnica é benefício presente comprado com custo futuro.

Status Quo Bias e Present Bias reforçam um ao outro.

Drift Into Failure cresce quando manutenção preventiva é sempre adiada.

Prevenção parece cara porque seu benefício é invisível.

Capacidade para manutenção é investimento em resiliência.

Owner, prazo e expiração impedem que temporários virem permanentes.

O custo de não agir também precisa ser calculado.

E principalmente:

Toda vez que economizamos uma hora hoje criando dez horas para amanhã, não economizamos tempo — apenas fizemos um empréstimo com juros.


🕰️ De volta à reunião das 08:11

A rotina ainda tem:

143 INTERVENÇÕES/MÊS

O gerente diz:

— Não temos três dias agora.

Nosso programador abre a calculadora.

Cada intervenção:

15 minutos.

143 × 15
=
2.145 minutos
=
35h45 por mês

Mostra.

— Não temos três dias para corrigir.

Pausa.

— Então gastamos quase uma semana todo mês mantendo o problema.

Silêncio.

O Doctor sorri.

— Ah.

O gerente pergunta:

— Quanto tempo para payback?

— Menos de dois meses.

A decisão muda.

Equipe reserva três dias.

Corrige.

Automatiza.

Três meses depois:

INTERVENÇÕES/MÊS:
7

O gerente olha.

— Por que não fizemos isso antes?

Nosso programador sorri.

— Porque três dias atrás pareciam mais caros do que quarenta horas espalhadas pelo futuro.

Boa resposta.


🥚 Easter Egg final

No dia seguinte aparece:

BELLACOSA.BIAS(PRESENT)

Dentro:

       IF BENEFIT = 'NOW'
           PERFORM CALCULATE-FUTURE-COST
       END-IF.

       IF FIX = 'LATER'
           PERFORM REQUIRE-DATE
       END-IF.

       IF WORKAROUND = 'TEMPORARY'
           PERFORM SET-EXPIRATION
       END-IF.

Comentário:

* TOMORROW IS JUST TODAY
* WITH INTEREST.

Outro:

* TEMPORARY WITHOUT A DATE
* IS JUST PERMANENT IN DENIAL.

E naturalmente:

* BAD WOLF SAID "LATER".

Nosso jovem fecha o membro.

Pouco depois recebe um pedido:

— Podemos deixar essa validação para próxima sprint?

Ele pergunta:

— Podemos.

— Ótimo.

— Só preciso de três coisas.

— Quais?

— Owner, data e custo de esperar.

Silêncio.

— Tudo isso?

— Sim.

— Parece burocracia.

Ele olha para o velho workaround que acabaram de eliminar.

— Não.

Pausa.

— Burocracia é preencher papel sem propósito.

— E isso?

— Isso é impedir que “depois” vire uma arquitetura.

Em algum lugar:

VWORP.

VWORP.

VWORP.

A TARDIS desaparece.

No quadro permanece:

A urgência de hoje sempre fala mais alto. A engenharia madura é garantir que o futuro também tenha voz.

☕🌀

Next stop: Optimism Bias — quando reconhecemos que incidentes, atrasos e falhas acontecem com os outros, mas continuamos acreditando que conosco “provavelmente vai dar tudo certo”.

Vagner Renato Bellacosa, IBM Champion e especialista em IBM Mainframe
IBM Z17 SYSTEM ONLINE
Sobre o autor

Vagner Renato Bellacosa

IBM Champion 2026 • Especialista em IBM Mainframe

Vagner Renato Bellacosa trabalha com IBM Mainframe desde 1988 , é IBM Champion e especialista em COBOL, CICS, Db2, z/OS e IBM Z. Compartilha experiências profissionais, conhecimento técnico, história da computação e práticas do universo mainframe para aproximar novas gerações das tecnologias que sustentam empresas, bancos e governos ao redor do mundo.

IBM Champion IBM Z COBOL CICS Db2 z/OS Mainframe desde 1988
GitHub LinkedIn
Inicializando conteúdo...