☕ 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

sábado, 24 de maio de 2025

Kubernetes Services Muito Além do ClusterIP

 

Bellacosa Mainframe e os kubernetes

☕ Um Café no Bellacosa Mainframe

Kubernetes Services Muito Além do ClusterIP

O Que Todo Programador COBOL Padawan Precisa Saber Sobre ClusterIP, NodePort, LoadBalancer, ExternalName, DNS, Balanceamento, Alta Disponibilidade e Como os Grandes Bancos Mantêm Milhares de Microsserviços Funcionando Sem Que Ninguém Perceba

"Um bom programador conhece um endereço IP. Um excelente engenheiro cria sistemas onde ninguém precisa conhecer endereço algum."


Introdução

Durante décadas, nós, profissionais de Mainframe, aprendemos que estabilidade era uma virtude.

No IBM Z, dificilmente pensamos no endereço físico de uma aplicação.

Quando um operador acessa uma transação CICS, ele não precisa saber em qual LPAR ela está executando.

Quando um lote conversa com o DB2, ele não sabe onde está o buffer pool.

Quando um terminal 3270 executa uma transação, ele não precisa conhecer qual região AOR irá atendê-lo.

Existe uma camada de abstração.

Essa camada protege o usuário da complexidade.

Curiosamente, quase cinquenta anos depois, o Kubernetes resolveu exatamente o mesmo problema.

Só que agora para milhares de containers distribuídos em centenas de servidores Linux.

Se você é um Programador COBOL Padawan entrando no universo DevOps, Kubernetes pode parecer um mundo completamente diferente.

Mas não é.

Na verdade, muitos dos conceitos já existem no Mainframe há décadas.

Neste artigo vamos descobrir por que os Kubernetes Services talvez sejam um dos recursos mais importantes de toda a plataforma.


Antes de falar de Services...

Precisamos entender um conceito fundamental.

Tudo no Kubernetes é temporário.

Isso assusta quem vem do Mainframe.

No IBM Z pensamos assim:

"Meu programa está naquela máquina."

No Kubernetes pensamos diferente.

"Meu programa está em algum lugar do cluster."

Essa pequena mudança de mentalidade muda tudo.

Imagine uma aplicação simples.

Internet

↓

Frontend

↓

Backend

↓

Banco

Agora imagine que o Backend roda em três Pods.

Pod A

Pod B

Pod C

Cada Pod possui um endereço IP.

10.244.1.3

10.244.8.15

10.244.2.9

Até aqui parece simples.

O problema aparece quando um Pod morre.


Pods nascem e morrem o tempo todo

Ao contrário de um servidor tradicional, Pods são descartáveis.

Podem desaparecer por diversos motivos.

  • atualização

  • falha

  • manutenção

  • escalabilidade

  • reinício do Node

  • Rolling Update

  • Auto Scaling

Imagine:

Pod B

10.244.8.15

Foi destruído.

Kubernetes cria outro.

Pod D

10.244.19.44

Novo IP.

Novo identificador.

Nova localização.

Se todas as aplicações utilizassem o IP antigo, tudo quebraria.

É exatamente aqui que nasce o Kubernetes Service.


Afinal, o que é um Kubernetes Service?

A definição oficial diz:

Um Service fornece um endpoint de rede estável para acessar um conjunto de Pods.

Na prática podemos traduzir para:

Um Service é um endereço permanente que representa vários Pods temporários.

Observe.

Sem Service.

Cliente

↓

Pod A

10.244.1.7

Quando o Pod muda...

Tudo quebra.

Com Service.

Cliente

↓

backend-service

↓

Pod A

Pod B

Pod C

Agora o cliente nunca mais conversa diretamente com os Pods.

Essa é uma das ideias mais elegantes do Kubernetes.


A analogia perfeita para quem conhece Mainframe

Imagine um ambiente CICS.

Você possui:

  • TOR

  • AOR

  • FOR

  • WLM

  • Sysplex

  • VIPA

Quando um usuário acessa uma aplicação, ele normalmente não conhece qual AOR irá executar sua transação.

Existe uma infraestrutura inteligente fazendo esse trabalho.

No Kubernetes acontece exatamente a mesma coisa.

Cliente

↓

Service

↓

Pod 1

Pod 2

Pod 3

O Service é uma espécie de endereço lógico.

Assim como um VIPA.


Por que Services existem?

Existem cinco motivos principais.

1. Endereço permanente

Mesmo que todos os Pods sejam recriados.

O endereço continua igual.


2. DNS automático

Todo Service recebe automaticamente um nome DNS.

Exemplo.

backend-service

Ou

backend-service.default.svc.cluster.local

Isso elimina IPs fixos no código.


3. Balanceamento

Se existem quatro Pods...

Pod1

Pod2

Pod3

Pod4

O Service distribui as requisições.

Nenhum Pod fica sobrecarregado.


4. Descoberta de serviços

Imagine um cluster com:

  • PIX

  • Conta Corrente

  • Cartão

  • Investimentos

  • Fraude

  • Autenticação

Como um microsserviço encontra o outro?

Através do Service.


5. Desacoplamento

Aplicações deixam de depender da infraestrutura.

Mudamos Pods.

Mudamos Nodes.

Mudamos Cluster.

Nada muda para o cliente.


Como um Service funciona internamente?

Muita gente imagina que existe um processo rodando como um proxy.

Na maioria dos casos não.

O fluxo real é aproximadamente este.

Cliente

↓

DNS

↓

Service

↓

EndpointSlice

↓

kube-proxy

↓

iptables/IPVS/eBPF

↓

Pod

O kube-proxy cria regras dentro do próprio Kernel Linux.

O encaminhamento acontece praticamente sem intervenção de processos em espaço de usuário.


Endpoint e EndpointSlice

Quando criamos um Service, ele precisa descobrir quais Pods pertencem à aplicação.

Isso acontece através dos Labels.

Pod.

labels:
  app: backend

Service.

selector:
  app: backend

O Kubernetes encontra automaticamente todos os Pods.

Esses Pods são armazenados em objetos chamados EndpointSlices.

Nos clusters antigos existiam apenas Endpoints.

Hoje o EndpointSlice melhora muito a escalabilidade.


Os quatro tipos clássicos de Services

Agora chegamos ao coração do assunto.


ClusterIP

Este é o padrão.

Sempre que você cria um Service sem especificar o tipo, ele será ClusterIP.

type: ClusterIP

Ele cria um IP virtual acessível apenas dentro do cluster.

Arquitetura.

Frontend

↓

ClusterIP

↓

Backend

É o tipo mais utilizado.

Por quê?

Porque a maioria dos microsserviços nunca deve ficar pública.

Imagine um banco.

Você possui.

  • Serviço PIX

  • Serviço Cartão

  • Serviço Conta

  • Serviço Investimentos

  • Serviço Fraude

Nenhum deles precisa ser acessado pela Internet.

Todos usam ClusterIP.


Casos de uso

  • APIs internas

  • Banco de Dados

  • Redis

  • RabbitMQ

  • Kafka

  • Elasticsearch

  • MongoDB


NodePort

Agora a história muda.

NodePort abre uma porta fixa em todos os servidores do cluster.

Exemplo.

Node1

30080
Node2

30080
Node3

30080

Qualquer um responde.

Mesmo que o Pod esteja em outro servidor.

O acesso acontece assim.

192.168.1.50:30080

Muito útil para laboratório.

Pouco utilizado em produção.


Limitações

  • portas limitadas

  • pouca segurança

  • difícil gerenciamento

  • IP dos Nodes exposto

Por isso normalmente é utilizado apenas para desenvolvimento.


LoadBalancer

Quando trabalhamos em Cloud, LoadBalancer torna-se extremamente importante.

Criamos.

type: LoadBalancer

O Kubernetes conversa automaticamente com o provedor.

AWS cria um ELB.

Azure cria um Azure Load Balancer.

Google cria um Cloud Load Balancer.

IBM Cloud cria um IBM Cloud Load Balancer.

Tudo automaticamente.

Arquitetura.

Internet

↓

Cloud Load Balancer

↓

Service

↓

Pods

Essa automação impressiona quem vem do mundo tradicional.

Em poucos segundos uma infraestrutura completa aparece pronta.


ExternalName

Este tipo é diferente de todos os outros.

Ele não cria IP.

Não cria balanceamento.

Não cria Endpoint.

Não cria Proxy.

Ele apenas responde um nome DNS.

Exemplo.

externalName:
   api.bcb.gov.br

Agora qualquer aplicação utiliza.

banco-central

Mesmo que o endereço verdadeiro mude.

Isso facilita migrações.


O quinto tipo que poucos lembram

Embora muitos materiais apresentem apenas quatro tipos, existe outro extremamente importante.

Headless Service.

clusterIP: None

Nesse caso não existe IP virtual.

O DNS devolve diretamente todos os Pods.

Muito utilizado em StatefulSets.

Exemplo.

  • Kafka

  • Cassandra

  • MongoDB

  • Elasticsearch

  • ZooKeeper


O papel do DNS

Uma das maiores mágicas do Kubernetes.

Criamos.

name: backend-service

Automaticamente nasce.

backend-service.default.svc.cluster.local

Nenhuma configuração adicional.

Isso é fornecido pelo CoreDNS.

Assim os desenvolvedores nunca precisam decorar IPs.


Como acontece o balanceamento?

Imagine.

Pod1

Pod2

Pod3

Chegam 900 requisições.

O Service distribui.

300

300

300

Na prática depende do mecanismo utilizado.

  • iptables

  • IPVS

  • eBPF

Mas a ideia continua sendo a mesma.

Distribuir carga.


O que acontece quando um Pod morre?

Suponha.

Pod2

Falhou.

Kubernetes percebe.

Remove o Pod do EndpointSlice.

O Service deixa imediatamente de enviar tráfego para ele.

O usuário nem percebe.

Depois um novo Pod nasce.

Automaticamente entra no balanceamento.

Tudo sem intervenção humana.


O papel das Readiness Probes

Outro conceito fundamental.

Um Pod pode estar vivo.

Mas ainda não pronto.

Imagine um sistema Java iniciando.

O processo já está executando.

Mas ainda carregando centenas de classes.

O Kubernetes espera a Readiness Probe informar.

"Agora estou pronto."

Só então o Service começa a enviar requisições.


Ingress não substitui Service

Esse erro aparece frequentemente em entrevistas.

Ingress faz uma função diferente.

Arquitetura correta.

Internet

↓

Load Balancer

↓

Ingress Controller

↓

ClusterIP

↓

Pods

Ingress trabalha na camada HTTP/HTTPS.

Service trabalha na camada de rede interna.

São tecnologias complementares.


Session Affinity

Por padrão.

Cada requisição pode ir para qualquer Pod.

Mas algumas aplicações antigas dependem de sessão.

Nesse caso.

sessionAffinity:
   ClientIP

O mesmo cliente tende a conversar sempre com o mesmo Pod.

É semelhante ao conceito de Sticky Session.


Erros clássicos

Selector errado

Service.

selector:
   app: api

Pods.

labels:
   app: backend

Resultado.

Zero Endpoints.


TargetPort incorreto

Service.

targetPort: 8080

Container.

9090

Nada funciona.


Pod não Ready

Existe.

Está executando.

Mas ainda não recebe requisições.


NetworkPolicy

O Service funciona.

Mas a política de rede bloqueia o acesso.


O paralelo com o IBM Mainframe

Chegamos à parte mais interessante.

Veja esta comparação.

IBM MainframeKubernetes
Região CICSPod
SysplexCluster
VIPAClusterIP
Sysplex DistributorService
WLMBalanceamento
VTAMRede do Cluster
DNS CorporativoCoreDNS
Health CheckReadiness Probe
Região AORRéplica do Deployment
Balanceador F5LoadBalancer

Perceba que o Kubernetes não inventou todos esses conceitos.

Ele apenas os adaptou para um mundo distribuído baseado em Linux e containers.


Como um banco utiliza tudo isso?

Imagine um Internet Banking.

Internet

↓

Load Balancer

↓

Ingress

↓

Gateway

↓

Conta Corrente

↓

PIX

↓

Cartão

↓

Investimentos

↓

DB2

Cada caixa dessa arquitetura possui seu próprio ClusterIP.

Cada aplicação possui diversas réplicas.

Cada réplica pode estar em um servidor diferente.

Se um Node inteiro falhar.

O Kubernetes recria os Pods em outro Node.

Os Services continuam exatamente iguais.

Os clientes continuam utilizando os mesmos nomes DNS.

Nenhum código precisa ser alterado.

Esse é o verdadeiro poder da abstração.


Conclusão

Quando começamos a estudar Kubernetes, é comum dedicar muita atenção aos Pods, Deployments e Containers. Eles são importantes, mas representam apenas parte da história.

O componente que realmente transforma um conjunto de processos efêmeros em uma plataforma corporativa é o Service.

Ele fornece identidade estável para aplicações que mudam constantemente, esconde a complexidade da infraestrutura, distribui carga, integra-se ao DNS do cluster e permite que atualizações, escalabilidade e recuperação de falhas ocorram de forma transparente.

Para quem vem do universo IBM Mainframe, a ideia não é totalmente nova. Há décadas, tecnologias como VIPA, Sysplex Distributor, WLM e CICS já abstraem a localização física das aplicações e distribuem trabalho entre múltiplas instâncias. O Kubernetes segue a mesma filosofia, adaptando-a ao mundo dos containers, dos microsserviços e da computação em nuvem.

O grande aprendizado para o Programador COBOL Padawan é que o endereço de uma aplicação nunca deve depender da máquina onde ela está executando. Assim como um usuário de um sistema bancário não precisa saber qual região CICS processará sua transação, um consumidor de um microsserviço não deve conhecer o IP de um Pod. Ele deve conhecer apenas um nome lógico — o Service.

No fim das contas, Kubernetes Services representam muito mais do que um recurso de rede. Eles materializam princípios clássicos de engenharia de software: abstração, desacoplamento, alta disponibilidade, balanceamento de carga, resiliência e escalabilidade. São esses princípios que permitem que grandes bancos, seguradoras e empresas globais executem milhões de transações por dia, mantendo seus sistemas disponíveis mesmo quando containers são criados, destruídos e recriados continuamente. Entender esse mecanismo é um passo fundamental para qualquer desenvolvedor COBOL que deseje evoluir do mundo do processamento tradicional para a moderna engenharia de software baseada em DevOps, Cloud Native e IBM Z integrado ao ecossistema Kubernetes.

Muito Além das Fronteiras: Como a Quarta Temporada Ensina que Diplomacia, Inteligência Estratégica e Alianças Valem Mais do que Força Bruta

 

Bellacosa Mainframe e quarta temporada de tate no yusha no nariagari 

☕ Um Café no Bellacosa Mainframe

Tate no Yūsha no Nariagari Season 4 (盾の勇者の成り上がり Season 4)

Muito Além das Fronteiras: Como a Quarta Temporada Ensina que Diplomacia, Inteligência Estratégica e Alianças Valem Mais do que Força Bruta

"No IBM Z, os maiores desafios não são apenas técnicos. Eles envolvem negociação, integração entre organizações e decisões estratégicas. O mesmo acontece com Naofumi."


Ficha Técnica

Título original: 盾の勇者の成り上がり Season 4

Título internacional: The Rising of the Shield Hero Season 4

Obra original: Aneko Yusagi

Ilustrações (Light Novel): Seira Minami

Estúdio: Kinema Citrus

Diretor: Hitoshi Haga

Composição da série: Keigo Koyanagi

Trilha sonora: Kevin Penkin, Alfredo Sirica e Natalie Jeffreys

Estreia: 9 de julho de 2025

Exibição: 9 de julho a 24 de setembro de 2025

Episódios: 12


Gênero

  • Isekai

  • Fantasia

  • Aventura

  • Ação

  • Drama

  • Política

  • Fantasia Medieval

  • Estratégia

  • RPG


Classificação

16 anos

Aborda temas como:

  • conspirações políticas;

  • tentativas de assassinato;

  • guerras;

  • escravidão;

  • conflitos diplomáticos;

  • violência moderada.


O Studio

A Kinema Citrus manteve a produção da franquia e consolidou a recuperação iniciada na terceira temporada.

A direção de Hitoshi Haga privilegiou uma narrativa mais fiel às light novels, melhor ritmo e desenvolvimento dos personagens, mantendo a qualidade visual característica da série. (Wikipedia)


Sinopse

Após reconstruir sua equipe, Naofumi recebe um convite para visitar Siltvelt, país que venera o Herói do Escudo.

Entretanto, sua viagem rapidamente se transforma em uma crise diplomática.

Enquanto tenta evitar conflitos entre nações, ele também precisa enfrentar conspirações vindas de Q'ten Lo, um poderoso reino cuja política ameaça Raphtalia e o equilíbrio entre os países.


Resumo

A quarta temporada muda completamente o foco.

Agora a história deixa de ser apenas sobre monstros e Ondas da Catástrofe.

O centro da narrativa passa a ser:

  • diplomacia;

  • geopolítica;

  • sucessão política;

  • alianças internacionais;

  • estabilidade entre reinos.

É uma temporada muito mais estratégica.


História

Grande parte da trama ocorre entre Siltvelt e Q'ten Lo.

Naofumi percebe que diversos conflitos são provocados não por monstros, mas por interesses políticos.

Raphtalia torna-se peça central da disputa devido à sua origem e importância para determinadas facções.

Enquanto isso, novos inimigos manipulam governos, espionagem e guerras para ampliar seu poder.

Naofumi precisa agir como negociador, estrategista e líder militar ao mesmo tempo.


Personagens Principais

Naofumi Iwatani

Já não luta apenas como Herói.

Age como diplomata.

Negocia.

Forma alianças.

Evita guerras.


Raphtalia

Recebe enorme destaque.

Sua origem torna-se um dos pilares da temporada.

Ela deixa de ser apenas companheira de Naofumi para assumir importância política.


Filo

Continua oferecendo leveza ao grupo, mas também demonstra evolução em combate e maturidade.


Atla

Sua participação cresce significativamente.

Representa coragem, dedicação e sacrifício.


Fohl

Mostra amadurecimento constante e reforça o espírito de equipe.


Os líderes de Siltvelt e Q'ten Lo

Introduzem uma dimensão política inédita na série, mostrando diferentes interesses nacionais e disputas pelo poder.


O que esta temporada tem de diferente?

Pela primeira vez, a ameaça principal não é um monstro.

É a política.

A temporada enfatiza:

  • diplomacia;

  • espionagem;

  • conflitos internacionais;

  • liderança estratégica;

  • alianças entre países;

  • equilíbrio de poder.

É uma mudança importante em relação às temporadas anteriores.


As Aventuras

Durante os episódios acompanhamos:

  • viagem diplomática a Siltvelt;

  • negociações entre reinos;

  • atentados políticos;

  • proteção de Raphtalia;

  • conflitos em Q'ten Lo;

  • batalhas contra novos adversários;

  • fortalecimento da equipe;

  • preparação para desafios futuros.

Cada arco amplia o universo político da obra.


Temáticas

A quarta temporada trabalha principalmente:

  • liderança;

  • diplomacia;

  • confiança;

  • responsabilidade;

  • estratégia;

  • identidade;

  • governança;

  • cooperação internacional.


As Mensagens Ocultas

1. O maior inimigo pode estar dentro do sistema

Nem sempre o problema vem de fora.

Conflitos internos podem ser mais perigosos.


2. Liderança exige diálogo

Nem toda vitória acontece no campo de batalha.

Muitas são conquistadas em uma mesa de negociação.


3. Arquitetura também é integração humana

Tecnologia resolve problemas.

Relacionamentos evitam que eles aconteçam.


4. Poder sem legitimidade é instável

Governos e líderes precisam da confiança das pessoas.

A força sozinha não sustenta um sistema.


5. Toda organização depende de alianças

Nenhuma empresa, banco ou país cresce isoladamente.


Analogia Bellacosa Mainframe

Imagine um grande banco internacional.

Os servidores funcionam.

O IBM Z continua disponível.

Mas agora o desafio não é técnico.

É integrar:

  • fornecedores;

  • parceiros;

  • filiais;

  • órgãos reguladores;

  • equipes globais;

  • ambientes híbridos.

A quarta temporada mostra exatamente isso.

Naofumi deixa de ser apenas um excelente engenheiro.

Ele torna-se um verdadeiro arquiteto corporativo.


O que recebeu mais elogios?

Os fãs destacaram:

  • adaptação mais fiel às light novels;

  • excelente desenvolvimento de Raphtalia;

  • expansão do universo político;

  • melhor ritmo narrativo;

  • direção consistente;

  • trilha sonora marcante.

Também foi elogiada por explorar conflitos diplomáticos sem abandonar a ação característica da franquia.


Impacto Cultural

A quarta temporada consolidou a recuperação da franquia iniciada na terceira. A recepção positiva da crítica e do público fortaleceu o anime, e o anúncio oficial de uma quinta temporada logo após o episódio final confirmou a continuidade da adaptação. A expansão do mundo de Shield Hero, com maior foco em política e relações internacionais, foi vista como uma evolução natural da obra. 


Nota Bellacosa Mainframe

CritérioNota
História⭐⭐⭐⭐⭐ (9,3/10)
Desenvolvimento de personagens⭐⭐⭐⭐⭐ (9,4/10)
Construção do mundo⭐⭐⭐⭐⭐ (9,8/10)
Ação⭐⭐⭐⭐☆ (8,8/10)
Trilha sonora⭐⭐⭐⭐⭐ (10/10)
Ritmo⭐⭐⭐⭐⭐ (9,2/10)
Fidelidade à obra⭐⭐⭐⭐⭐ (9,5/10)

Veredito Bellacosa Mainframe

A quarta temporada representa a evolução definitiva de Naofumi. Ele deixa de ser apenas o Herói do Escudo para se tornar um estadista, alguém capaz de unir povos, evitar guerras e tomar decisões que afetam nações inteiras. Para quem trabalha com IBM Z, arquitetura corporativa ou grandes ambientes distribuídos, a mensagem é clara: os maiores desafios não são apenas tecnológicos; são humanos, organizacionais e estratégicos. Sistemas robustos são construídos com infraestrutura sólida, mas também com confiança, cooperação e visão de longo prazo.


sexta-feira, 23 de maio de 2025

Apocalypse Bringer Mynoghra : Quando um Programador COBOL Descobre que até uma Civilização do Mal Precisa de Boa Arquitetura de Sistemas

Bellacosa Mainframe apresenta o apocalypse bringer mynoghra

☕ Um Café no Bellacosa Mainframe

Apocalypse Bringer Mynoghra (2025) sem Mistérios

Quando um Programador COBOL Descobre que até uma Civilização do Mal Precisa de Boa Arquitetura de Sistemas

Ficha Técnica

  • Título original: 異世界黙示録マイノグーラ ~破滅の文明で始める世界征服~

  • Romaji: Isekai Mokushiroku Mynoghra: Hametsu no Bunmei de Hajimeru Sekai Seifuku

  • Título internacional: Apocalypse Bringer Mynoghra: World Conquest Starts with the Civilization of Ruin

  • Autor: Fehu Kazuno (Fefu Kazuno)

  • Ilustrações: Jun

  • Estúdio: Maho Film

  • Diretor: Yūji Yanase

  • Estreia: 6 de julho de 2025

  • Temporada: Verão de 2025

  • Episódios: 13

  • Origem: Light Novel (GC Novels)

  • Streaming: Crunchyroll  


Sinopse

Takuto Ira era um jovem apaixonado por um jogo de estratégia chamado Eternal Nations. Após morrer devido a uma doença, desperta justamente naquele universo, mas não como um herói.

Ele renasce como o governante da lendária civilização do mal:

Mynoghra.

Ao seu lado está sua heroína favorita, a misteriosa Atou, e juntos começam algo inesperado:

não conquistar o mundo pela destruição...

mas construir uma nação.


Resumo da História

Enquanto quase todos os isekais seguem o modelo:

"Derrote o Rei Demônio."

Mynoghra pergunta:

"E se você fosse justamente o Rei Demônio?"

Só que Takuto não é cruel.

Ele administra recursos.

Negocia.

Expande território.

Protege refugiados.

Constrói infraestrutura.

Faz diplomacia.

Em vez de uma aventura tradicional, temos praticamente um Civilization + Age of Empires + Total War + RPG em formato anime. 


Os Personagens

Takuto Ira

O protagonista.

Quieto.

Inteligente.

Excelente estrategista.

Sua força está no planejamento.

Lembra muito um gerente de projeto ou um arquiteto de software.


Atou

A "Bruxa do Lodo".

Heroína lendária da civilização Mynoghra.

Apesar da aparência delicada, possui enorme poder destrutivo.

É extremamente leal a Takuto.

Talvez seja uma das personagens mais interessantes do anime.


Os Refugiados

Conforme a história avança, várias raças passam a procurar Mynoghra.

Elfos.

Humanos.

Criaturas discriminadas.

Monstros.

Todos descobrem algo curioso:

o chamado "Reino do Mal" trata seus cidadãos melhor que muitos reinos "do bem".


Temática

O anime mistura diversos elementos:

  • Isekai

  • Dark Fantasy

  • Estratégia

  • Construção de Reino

  • Política

  • Administração

  • Diplomacia

  • Economia

  • Guerra

  • Gestão de Recursos

É muito menos um anime de batalhas e muito mais um anime de decisões.


O que há de diferente?

Mynoghra quebra praticamente todas as convenções do gênero.

Normalmente temos:

  • Herói bom

  • Rei Demônio mau

  • Humanos corretos

Aqui ocorre justamente o contrário.

Os humanos frequentemente demonstram preconceito, corrupção e intolerância.

Enquanto isso, o chamado "Império das Trevas" acolhe quem foi rejeitado.

É uma excelente inversão narrativa.


As Aventuras

Boa parte da história gira em torno de:

  • expansão territorial;

  • desenvolvimento da cidade;

  • descoberta de recursos;

  • diplomacia entre nações;

  • pesquisa tecnológica;

  • gerenciamento populacional;

  • guerras estratégicas.

É quase um simulador administrativo em formato anime.


Mensagens Ocultas

O verdadeiro mal nem sempre parece maligno

O anime questiona a ideia de que aparência define caráter.

Os "vilões" frequentemente demonstram compaixão.

Já os "heróis" cometem atrocidades.


Liderança

Takuto nunca governa pelo medo.

Ele lidera pela confiança.

Mesmo sendo o governante de uma civilização sombria.


Civilizações

O anime mostra que construir uma sociedade é muito mais difícil do que vencer uma guerra.

Infraestrutura.

Alimentos.

Segurança.

Leis.

Tecnologia.

Tudo precisa funcionar.


Planejamento vence força

Grande parte das vitórias acontece porque Takuto pensa vários movimentos à frente.

É praticamente um jogo de xadrez.


Bellacosa Mainframe ☕

Imagine que Mynoghra seja um enorme ambiente IBM Z.

Takuto seria o arquiteto responsável pelo sistema inteiro.

Em vez de lançar ataques aleatórios, ele faria:

  • Capacity Planning

  • WLM

  • Balanceamento

  • Segurança

  • Crescimento controlado

  • Disaster Recovery

Atou seria uma espécie de "job crítico" que ninguém deseja executar... até perceber que resolve problemas gigantescos.

Enquanto outros reis vivem apagando incêndios, Takuto administra como um bom sysprog:

"Primeiro estabilizamos o ambiente. Depois pensamos em expansão."


O que torna a obra interessante?

A maioria dos isekais utiliza RPG apenas como pano de fundo.

Aqui, o sistema de jogo é praticamente a própria narrativa.

O crescimento da civilização é tão importante quanto os personagens.

Para quem gosta de estratégia, gerenciamento e construção de impérios, isso faz enorme diferença.


Impacto Cultural

Embora não tenha alcançado a popularidade de gigantes como Overlord ou That Time I Got Reincarnated as a Slime, Apocalypse Bringer Mynoghra conquistou um público fiel por combinar administração de reinos, fantasia sombria e estratégia em um formato pouco comum para o gênero. Muitos fãs destacam que a light novel aprofunda muito mais os personagens e o desenvolvimento político do mundo do que a adaptação em anime. 


Classificação

  • Gênero: Isekai, Fantasia Sombria, Estratégia, Construção de Reino, Aventura

  • Classificação indicativa: 14 anos

  • Ritmo: Médio

  • Violência: Moderada

  • Fanservice: Baixo

  • Comédia: Leve

  • Política: Forte

  • Estratégia: Muito alta


Vale a pena?

Se você procura apenas batalhas frenéticas, talvez o ritmo pareça mais lento.

Mas, se gosta de obras como:

  • Overlord

  • That Time I Got Reincarnated as a Slime

  • How a Realist Hero Rebuilt the Kingdom

  • Log Horizon

há grandes chances de apreciar Apocalypse Bringer Mynoghra. Ele aposta em planejamento, administração e construção de um império, mostrando que inteligência estratégica pode ser tão empolgante quanto um combate épico.  

quinta-feira, 22 de maio de 2025

O Scheduler da Curiosidade: IA, Backlogs e o Dia em que Tínhamos 30 Assuntos em Paralelo e Nenhum Queria Dar $HASP395

Bellacosa Mainframe e o scheduler da curiosidade 

☕ Um Café no Bellacosa Mainframe

O Scheduler da Curiosidade: IA, Backlogs e o Dia em que Tínhamos 30 Assuntos em Paralelo e Nenhum Queria Dar $HASP395

Por Vagner Bellacosa

Existe um problema novo acontecendo na minha mesa.

Não é falta de documentação.

Não é falta de livros.

Não é falta de cursos.

Não é falta de acesso à informação.

Também não é exatamente falta de tempo — embora os boletos continuem insistindo que o dia tenha apenas 24 horas.

O problema é quase o contrário.

Há conhecimento demais ao alcance das mãos.

E então chegou a Inteligência Artificial.

Agora existe uma criatura disponível praticamente a qualquer momento que aceita perguntas sobre COBOL, filosofia, economia, anime, história, mainframe, arqueologia, inteligência artificial, acidentes aéreos, linguística, segurança, psicologia, grafos, bancos, YAML, XML, Atari e aquela dúvida completamente absurda que apareceu às duas da manhã e que você jamais perguntaria numa reunião de trabalho.

Você pergunta.

Ela responde.

A resposta produz outra pergunta.

Essa produz três.

Uma delas parece muito mais interessante do que a pergunta original.

Você segue por ali.

Duas horas depois está lendo sobre uma tabuinha de argila babilônica de milhares de anos atrás e já não consegue explicar exatamente como uma conversa sobre COBOL terminou na Mesopotâmia.

Bem-vindo ao problema.

Ou talvez...

bem-vindo à solução.

Coloque café na xícara.

Hoje não vamos falar exatamente sobre COBOL.

Vamos falar sobre o programa mais complexo que provavelmente executaremos durante toda a nossa vida:

a nossa própria curiosidade.

E aparentemente o scheduler está tendo problemas.


$HASP100: JOB CURIOSIDADE ON READER

Outro dia olhei para minha lista de conversas fixadas no ChatGPT.

Ali estavam coisas como:

Anime Another Resumo
Memórias Vagnerianas
JSON no COBOL Mainframe
Manias Econômicas Históricas
Curso Lógica Programação
YAML para Programadores
Inuyasha Anime e Legado
Impacto de Conan no Anime
Análise de Erros XML
Homenagem ao Atari

Olhei aquilo e comecei a rir.

Não porque fossem assuntos ruins.

Justamente o contrário.

Todos eram interessantes.

Esse era o problema.

Cada conversa havia começado por alguma razão perfeitamente legítima. Algumas estavam virando artigos. Outras eram investigações técnicas. Algumas eram memórias. Outras tinham começado simplesmente porque alguma coisa despertara curiosidade.

Nenhuma havia realmente terminado.

E então percebi algo.

Minha lista de conversas estava começando a parecer:

SDSF STATUS DISPLAY

Só que em vez de JOBs havia ideias.

JOBNAME     STATUS
COBOLJSON   ACTIVE
YAML001     HELD
ATARI001    WAITING
INUYASHA    ACTIVE
MEMORIA     ACTIVE
ECONHIST    HELD
XMLERROR    ACTIVE
CONAN001    WAITING
LOGICA15    ACTIVE

E em algum lugar do sistema:

30 JOBS ACTIVE
47 JOBS WAITING
123 JOBS DISCOVERED

Nenhum querendo emitir:

$HASP395 JOB ENDED

Foi quando percebi que talvez tivéssemos inventado acidentalmente uma espécie de JES2 da curiosidade intelectual.

E o ChatGPT estava funcionando como uma mistura perigosa de READER, CONVERTER, EXECUTOR e operador da console.


A escola ensinou conhecimento como uma fila

Durante muito tempo fomos educados segundo uma estrutura predominantemente linear.

Capítulo 1.

Depois capítulo 2.

Depois capítulo 3.

Prova.

Próxima matéria.

A própria estrutura física dos livros reforçava isso.

Página 1 → página 2 → página 3.

Claro que sempre existiram notas de rodapé, referências e bibliografias. Mas havia um custo para abandonar a estrada principal.

Imagine estudar alguma coisa em 1985.

Você encontra uma referência interessante:

"Esse conceito deriva dos trabalhos de Fulano publicados em 1967."

Interessante.

Mas você não possui o livro de Fulano.

Talvez exista na biblioteca.

Talvez precise pedir emprestado.

Talvez nem esteja traduzido.

Então você faz uma anotação:

Pesquisar Fulano depois.

E continua lendo.

A escassez de informação produzia involuntariamente uma coisa extremamente valiosa:

foco.

Não porque as pessoas fossem necessariamente mais disciplinadas.

Mas porque perseguir cada ramificação era caro.

Hoje o custo marginal de abrir outra porta intelectual aproxima-se perigosamente de zero.

Estou lendo sobre COBOL.

Encontro "JSON GENERATE".

Pesquiso.

Descubro JSON PARSE.

Pergunto ao ChatGPT.

Aparece uma discussão sobre interoperabilidade.

Interoperabilidade lembra APIs.

APIs levam ao z/OS Connect.

z/OS Connect leva a REST.

REST leva a OpenAPI.

OpenAPI leva a YAML.

YAML lembra pipelines.

Pipelines levam a Jenkins.

Jenkins leva a DevOps.

DevOps leva a agentes de IA.

Agentes levam a sistemas autônomos.

Sistemas autônomos levam a governança.

Governança leva a acidentes.

Acidentes levam à aviação.

Aviação leva a Crew Resource Management.

CRM leva a psicologia organizacional.

Psicologia leva a vieses cognitivos.

E de repente...

onde está o JSON?

Ele continua lá.

Cinco níveis acima no stack trace da curiosidade.


Talvez estejamos pensando errado sobre conhecimento

Aqui aparece algo fascinante.

Talvez o problema seja esperar que conhecimento verdadeiro tenha estrutura linear.

Porque ele não tem.

Conhecimento parece muito mais um grafo.

Para quem passou recentemente pelo Neo4j, a analogia é irresistível.

Imagine:

(:Pessoa)-[:ESTUDA]->(:COBOL)

(:COBOL)-[:EXECUTA_EM]->(:Mainframe)

(:Mainframe)-[:UTILIZA]->(:zOS)

(:zOS)-[:POSSUI]->(:JES2)

(:JES2)-[:GERENCIA]->(:Jobs)

(:Jobs)-[:PODEM_FALHAR_COM]->(:ABEND)

(:ABEND)-[:EXIGE]->(:Diagnostico)

(:Diagnostico)-[:USA]->(:Raciocinio)

(:Raciocinio)-[:SOFRE_COM]->(:ViesCognitivo)

(:ViesCognitivo)-[:APARECE_EM]->(:Aviacao)

(:ViesCognitivo)-[:APARECE_EM]->(:Medicina)

(:ViesCognitivo)-[:APARECE_EM]->(:MercadoFinanceiro)

Agora faça uma pergunta aparentemente inocente:

"Como diagnosticar melhor um problema em produção?"

Podemos começar no COBOL e terminar estudando Sherlock Holmes, House, Patrick Jane, Kahneman, acidentes aéreos e medicina diagnóstica.

E isso não é necessariamente desvio.

Pode ser travessia do grafo.


O ChatGPT virou uma máquina de criar arestas

Essa talvez seja uma das transformações intelectuais mais interessantes provocadas pelos grandes modelos de linguagem.

Google tradicionalmente é extraordinário para encontrar nós.

Você pergunta:

IBM COBOL JSON GENERATE

e recebe documentos relacionados ao assunto.

Mas numa conversa podemos fazer algo diferente:

"Isso me lembrou o problema de comunicação entre pilotos em acidentes aéreos. Existe alguma relação conceitual?"

Agora estamos procurando uma aresta.

COBOL → operação → incidente → comunicação → aviação

Ou:

"Essa arquitetura de agentes lembra CICS?"

Outra aresta.

"O problema de memória de agentes lembra checkpoint/restart?"

Outra.

"Essa ideia econômica existia na Roma antiga?"

Outra.

"Esse comportamento de IA lembra alguma coisa da psicologia cognitiva?"

Outra.

É como se tivéssemos colocado diante do grafo uma máquina especializada em sugerir:

MATCH (ideia)-[r:?]->(outra_ideia)
RETURN outra_ideia

Só existe um pequeno problema.

O MATCH não termina.


O Rabbit Hole virou feature

Existe uma expressão inglesa maravilhosa:

rabbit hole.

A toca do coelho.

Alice vê o coelho, entra atrás dele e descobre que aquilo era apenas a entrada para um universo inteiro.

A Internet já havia industrializado rabbit holes.

A IA generativa colocou elevadores dentro deles.

Você pergunta:

"Por que isso acontece?"

Recebe resposta.

Pergunta:

"Mas de onde veio?"

Resposta.

"Existe precedente histórico?"

Resposta.

"Quem discordava?"

Resposta.

"Isso ainda é válido?"

Resposta.

"E se aplicarmos ao mainframe?"

Resposta.

"E ao mercado financeiro?"

Resposta.

"E aos agentes de IA?"

Resposta.

Às 03:17 da manhã:

"Então precisamos voltar aos babilônios."

Parabéns.

Você começou querendo entender um parâmetro do JCL.


A diferença entre distração e exploração

Mas precisamos tomar cuidado para não diagnosticar toda ramificação como déficit de atenção.

Há uma diferença enorme entre:

COBOL
 ↓
Instagram
 ↓
meme
 ↓
vídeo
 ↓
notícia
 ↓
WhatsApp
 ↓
esqueci o COBOL

e:

COBOL
 ↓
Mainframe
 ↓
Sistemas críticos
 ↓
Resiliência
 ↓
Falhas
 ↓
Fator humano
 ↓
Psicologia cognitiva
 ↓
Gestão de incidentes

O primeiro fluxo provavelmente representa distração.

O segundo pode representar exploração intelectual.

Existe coerência semântica.

O problema é que ambos consomem o mesmo recurso físico:

tempo.

Seu cérebro pode ter descoberto a conexão intelectual mais extraordinária da semana.

O relógio continuará dizendo:

03:42.


O verdadeiro recurso escasso mudou

Durante séculos o recurso escasso foi informação.

Hoje, para grande parte de nós, não é mais.

Temos Wikipedia.

Livros digitais.

Papers.

Vídeos.

Cursos.

Podcasts.

Blogs.

GitHub.

Documentação.

Fóruns.

Reddit.

Stack Overflow.

ChatGPT.

Outras IAs.

E bilhões de páginas indexadas.

O recurso escasso passou a ser:

atenção.

E logo atrás:

capacidade de seleção.

A pergunta intelectual moderna não é apenas:

"O que devo aprender?"

É também:

"O que deliberadamente não vou aprender agora?"

Essa segunda pergunta é muito mais cruel.

Porque dizer "não" para algo desinteressante é fácil.

O verdadeiro problema é dizer:

"Isso é fascinante. Mas ficará para depois."


Surge o backlog intelectual

É exatamente aí que nasce nossa lista.

JSON no COBOL
YAML
XML
Atari
Anime
Economia
Memórias
IA
Segurança
História

Ela não é necessariamente um cemitério de projetos abandonados.

Talvez seja algo mais interessante:

um buffer intelectual.

Uma área de spool.

A ideia chegou.

Foi registrada.

Ainda não existem recursos disponíveis para executá-la.

Então:

JOB STATUS = HELD

Isso é infinitamente melhor do que perder a ideia.

O problema começa quando confundimos:

HELD

com:

FAILED

Uma investigação estacionada não fracassou.

Ela apenas perdeu prioridade para outra.


Precisamos de WLM para a cabeça

Quem trabalha com mainframe imediatamente perceberá o próximo problema.

Se existem dezenas de workloads competindo pelos mesmos recursos, alguém precisa estabelecer prioridades.

No z/OS temos Workload Manager.

Na cabeça temos...

Bem...

Café.

Talvez seja justamente aí que precisamos melhorar.

Imagine um WLM intelectual:

SERVICE CLASS: PRODUCAO
-----------------------
Curso atual
Trabalho
Artigo com prazo
Aula da semana

SERVICE CLASS: ALTA
-------------------
Pesquisa diretamente relacionada
Projeto em andamento

SERVICE CLASS: DISCRETIONARY
----------------------------
Anime obscuro de 1987
História do Atari
Origem de palavra suméria
Tecnologia soviética esquecida

SERVICE CLASS: SYSOTHER
-----------------------
"Por que os romanos não inventaram..."

😂

O objetivo não seria matar SYSOTHER.

Aliás, algumas das descobertas mais deliciosas provavelmente estão lá.

O objetivo seria impedir SYSOTHER de consumir toda a capacidade enquanto PRODUCAO está atrasada.


A IA não eliminou a necessidade de disciplina

Esse é um ponto importante.

Existe uma fantasia contemporânea segundo a qual IA permitirá aprender tudo.

Não permitirá.

Pode reduzir brutalmente o custo de explicação.

Pode resumir.

Pode traduzir.

Pode comparar.

Pode produzir exemplos.

Pode adaptar a linguagem.

Pode ajudar a encontrar relações.

Pode responder perguntas imediatamente.

Mas existe uma coisa que ela ainda não consegue aumentar:

24 horas = 24 horas

Podemos aumentar nossa eficiência.

Não podemos aumentar indefinidamente nosso throughput humano.

E pior:

compreender continua custando tempo.

Ler uma explicação não significa incorporá-la.

Reconhecer um conceito não significa dominá-lo.

Assistir a uma demonstração não significa conseguir reproduzi-la.

Receber código funcionando não significa compreender sua arquitetura.

Esse talvez seja um dos perigos da aprendizagem com IA:

confundir velocidade de obtenção da resposta com velocidade de aquisição do conhecimento.

São coisas diferentes.

Muito diferentes.


Conhecimento não é download

Se conhecimento fosse simplesmente transferência de bytes, poderíamos fazer:

//LEARN EXEC PGM=UPLOAD
//SYSIN DD *
  COBOL
  NEO4J
  PYTHON
  QUANTUM
  JAPANESE
/*

Resultado:

IEC999I KNOWLEDGE SUCCESSFULLY INSTALLED

Infelizmente não funciona.

Aprendizagem exige reconstrução interna.

Você precisa errar.

Relacionar.

Esquecer.

Relembrar.

Aplicar.

Comparar.

Explicar para outra pessoa.

Encontrar contradições.

Reformular.

Voltar meses depois e perceber que aquilo que parecia óbvio não era.

A IA pode acompanhar todo esse processo.

Mas não pode simplesmente substituir o processo.


Talvez nossa aparente desorganização esconda alguma coisa valiosa

Aqui entra uma hipótese que me fascina.

E se parte dessas ramificações não for desperdício?

E se estivermos construindo uma espécie de Knowledge Graph pessoal?

Durante décadas de trabalho uma pessoa acumula experiências.

Banco.

Mainframe.

Incidentes.

Programação.

Gestão.

Pessoas.

Viagens.

Livros.

Filmes.

Histórias.

Tecnologias.

Fracassos.

Acertos.

Essas coisas ficam armazenadas como nós aparentemente desconectados.

Então surge uma conversa.

Um assunto ativa outro.

Uma memória conecta-se a um conceito novo.

Uma história profissional antiga encontra uma teoria publicada décadas depois.

De repente:

(:Experiencia1989)
      |
      | [:EXPLICA]
      v
(:Conceito2026)

A experiência sempre esteve lá.

Faltava a aresta.

Talvez uma das funções mais poderosas da IA para alguém que acumulou décadas de experiência não seja simplesmente ensinar fatos novos.

Talvez seja ajudar a indexar intelectualmente a própria vida.

Isso é enorme.


Curiosidade como algoritmo de busca

Uma pessoa curiosa executa continuamente algo parecido com:

while alive:
    observe()
    question()
    connect()
    investigate()
    update_model()

Só existe um pequeno bug:

while alive:

não possui END-IF.

E aparentemente tampouco possui MAX-DEPTH.

😂

Por isso precisamos talvez acrescentar:

IF DEPTH > ACCEPTABLE-LIMIT
   MOVE CURRENT-TOPIC TO BACKLOG
   PERFORM RETURN-TO-MAIN-QUEST
END-IF

Esse talvez seja o algoritmo intelectual necessário para a era da IA.

Não bloquear rabbit holes.

Controlar profundidade.


O conceito de estacionamento intelectual

Imagine que estamos estudando agentes de IA.

Durante a conversa surgem:

[ ] memória vetorial
[ ] MCP
[ ] sistemas multiagentes
[ ] segurança
[ ] prompt injection
[ ] teoria de jogos
[ ] swarm intelligence
[ ] governança
[ ] custos de inferência
[ ] mainframe integration

Não precisamos abrir dez frentes.

Podemos dizer:

CURRENT:
Agentes e memória

PARKED:
MCP
Segurança
Swarm
Governança
Mainframe integration

A curiosidade continua viva.

Mas o scheduler recupera o controle.

Essa simples mudança psicológica é poderosa porque reduz aquela sensação:

"Estou deixando algo importante para trás."

Não.

Você colocou no spool.


O perigo oposto: nunca terminar nada

Agora precisamos tomar a red pill.

Existe uma versão romântica da curiosidade que pode virar desculpa.

"Sou explorador."

"Tenho muitos interesses."

"Estou conectando conhecimentos."

Tudo verdadeiro.

Mas existe um teste brutal:

o que foi concluído?

Porque conhecimento também precisa produzir $HASP395.

Artigo publicado.

Programa funcionando.

Curso concluído.

Experimento documentado.

Livro lido.

Hipótese descartada.

Aula preparada.

Problema resolvido.

Sem isso podemos passar anos em:

$HASP373 JOB STARTED

sem jamais chegar a:

$HASP395 JOB ENDED

E então o backlog não é biblioteca.

É dívida.


Talvez terminar seja uma tecnologia

Essa é outra ideia que merece reflexão.

Somos treinados para começar.

Cursos vendem começos.

Tutoriais ensinam começos.

Plataformas recomendam novos começos.

Algoritmos apresentam novidades.

IA responde imediatamente à próxima curiosidade.

Pouquíssimos sistemas são economicamente incentivados a dizer:

"Não abra nada novo. Termine aquilo."

Porque novidade gera clique.

Descoberta gera dopamina.

Conclusão frequentemente exige a parte menos glamourosa:

revisar.

corrigir.

testar.

reescrever.

organizar.

publicar.

documentar.

É muito mais divertido descobrir outro rabbit hole.

Talvez finalização tenha se tornado uma competência intelectual própria.


O Scheduler da Curiosidade

Chegamos então ao nosso pequeno sistema operacional mental.

Eu o imaginaria assim:

                 ┌───────────────┐
                 │ CURIOSIDADE   │
                 └───────┬───────┘
                         │
                         ▼
                  NOVA PERGUNTA
                         │
               ┌─────────┴─────────┐
               │                   │
         RELEVANTE AGORA?          NÃO
               │                   │
              SIM                  ▼
               │               BACKLOG
               ▼
           EXECUTAR
               │
         ┌─────┴─────┐
         │           │
   NOVO RAMO?       NÃO
         │           │
        SIM          ▼
         │       CONCLUIR
         ▼           │
    REGISTRAR        ▼
         │       $HASP395
         │
         └──────► VOLTAR

Parece trivial.

Mas pense na diferença.

Não estamos dizendo:

"Pare de ser curioso."

Estamos dizendo:

"Faça scheduling da curiosidade."


E onde vamos parar?

Essa talvez seja a pergunta mais divertida.

Provavelmente em lugar nenhum.

E isso não é necessariamente ruim.

Porque conhecimento não possui tela final.

Não existe:

CONGRATULATIONS
YOU HAVE COMPLETED KNOWLEDGE
100%

Quanto mais aprendemos, maior parece o mapa.

É quase cruel.

Quando sabemos pouco, o mundo parece relativamente simples.

Quando aprendemos mais, começamos a enxergar as dependências.

Depois enxergamos as exceções.

Depois as controvérsias.

Depois a história.

Depois as escolas rivais.

Depois descobrimos que algumas certezas eram aproximações.

O mapa aumenta justamente porque aprendemos a enxergá-lo.

Talvez seja esse o paradoxo definitivo da curiosidade:

cada resposta aumenta o território das perguntas.


A IA tornou o universo intelectual navegável — não finito

Esse ponto é fundamental.

ChatGPT e outras ferramentas não transformaram conhecimento em algo que podemos terminar.

Transformaram conhecimento em algo que podemos percorrer com muito menos atrito.

Antes havia oceanos entre os continentes intelectuais.

Agora construímos pontes.

Isso muda completamente a viagem.

Mas não reduz o tamanho do planeta.

Talvez até faça o contrário.

Quando percebemos que COBOL pode conversar com IA, que mainframe pode conversar com cloud, que psicologia pode conversar com segurança, que história pode explicar tecnologia e que experiências de décadas atrás podem iluminar problemas atuais...

o mundo fica intelectualmente maior.

Não menor.


O profissional em T

Durante muito tempo falou-se no profissional em T.

Conhecimento amplo horizontalmente.

Especialização profunda verticalmente.

Talvez a IA esteja favorecendo outro formato.

Algo parecido com um grafo.

Você possui alguns nós extremamente profundos.

Mainframe.

COBOL.

Sistemas financeiros.

E centenas de conexões menos profundas:

        História
           |
Economia--Mainframe--IA
           |
      Segurança
       /      \
 Psicologia  Aviação
      |
  Gestão

O valor não está necessariamente em dominar todos esses campos.

Está também em conseguir perceber:

"Eu já vi esse padrão em outro lugar."

Essa capacidade é extraordinariamente poderosa.

Porque inovação muitas vezes nasce justamente da transferência de modelos entre domínios.


Easter egg: talvez o cérebro seja um mainframe ruim

Antes que algum neurocientista jogue café em mim:

é uma metáfora.

Mas divertida.

Temos memória.

Temos processamento.

Temos prioridades.

Temos interrupções.

Temos cache.

Temos processos esquecidos.

Temos informações que sabemos que estão armazenadas em algum lugar, mas cujo endereço aparentemente foi perdido.

Temos:

"Eu conheço essa pessoa..."

seguido de:

SEARCHING...
SEARCHING...
SEARCHING...

Três horas depois, tomando banho:

HIT!

😂

Temos também algo equivalente a storage leak:

uma música ruim de 1987 permanece perfeitamente armazenada enquanto esquecemos por que entramos na cozinha.

O hardware humano definitivamente possui algumas decisões arquitetônicas curiosas.


O grande desafio não será saber mais

Será governar o que queremos saber.

Isso talvez seja uma das grandes competências da próxima década.

Não apenas prompt engineering.

Não apenas saber perguntar.

Mas saber decidir:

qual pergunta merece continuação?

qual merece estacionamento?

qual merece profundidade?

qual merece abandono?

qual precisa virar projeto?

qual deve permanecer apenas como curiosidade?

Porque podemos perguntar praticamente indefinidamente.

Mas não podemos viver indefinidamente.

Existe aí uma dimensão profundamente humana que nenhuma otimização elimina.

Escolher aprender alguma coisa significa escolher não aprender outras naquele momento.

Escolher escrever um artigo significa deixar três esperando.

Escolher terminar um curso significa ignorar temporariamente cinco tecnologias novas.

Escolher profundidade significa renunciar momentaneamente à novidade.

Esse é o verdadeiro scheduler.


Blue Pill ou Red Pill?

A Blue Pill é confortável:

"Com IA finalmente conseguirei aprender tudo."

Não.

Provavelmente acontecerá exatamente o contrário.

A IA mostrará quanto existe para aprender.

A Red Pill é mais interessante:

"Nunca aprenderei tudo. Então preciso escolher melhor minhas viagens."

Isso muda completamente nossa relação com conhecimento.

Não precisamos conquistar todo o mapa.

Podemos explorá-lo.

Construir caminhos.

Registrar descobertas.

Voltar.

Conectar regiões.

E ocasionalmente colocar uma placa:

TODO:
RETORNAR AQUI

$HASP395: ou talvez não

Chegamos ao fim deste artigo falando sobre...

Deixe-me conferir.

Começamos com conversas abertas no ChatGPT.

Passamos por JES2.

Grafos.

Neo4j.

Rabbit holes.

Psicologia.

WLM.

Aprendizagem.

Gestão de atenção.

IA.

Knowledge Graph.

E terminamos discutindo finitude humana.

Nada mal para uma conversa que começou olhando uma barra lateral cheia de chats inacabados.

Talvez seja exatamente esse o ponto.

A curiosidade intelectual não é uma estrada.

É uma rede.

Cada pergunta é um nó.

Cada associação cria uma aresta.

Cada experiência antiga pode ganhar significado novo quando conectada a alguma coisa aprendida hoje.

ChatGPT não inventou esse comportamento.

Nós sempre fizemos isso.

A diferença é que agora existe uma ferramenta capaz de acompanhar nossa corrida pelo grafo quase na velocidade em que surgem as perguntas.

E isso é maravilhoso.

Também é perigoso.

Porque sempre haverá outra aresta.

Sempre haverá outro nó.

Sempre haverá:

"Só mais uma pergunta..."

O verdadeiro desafio intelectual da era da IA talvez não seja descobrir como começar uma investigação.

Isso ficou absurdamente fácil.

Será aprender quando continuar, quando estacionar e quando terminar.

Precisamos ser simultaneamente exploradores e operadores.

Curiosos e schedulers.

Alice e JES2.

Precisamos permitir:

$HASP373 CURIOSITY STARTED

Mas de vez em quando precisamos olhar para o backlog, escolher alguma coisa e exigir:

$HASP395 CURIOSITY ENDED

Mesmo sabendo que aquilo nunca terminou completamente.

Porque uma boa resposta deixa uma pergunta.

Uma boa pergunta encontra outra área.

Uma experiência encontra uma teoria.

Uma memória encontra significado.

Um artigo encontra outro artigo.

E talvez seja justamente por isso que continuamos estudando depois de décadas.

Não porque estejamos chegando ao fim.

Mas porque finalmente começamos a enxergar o tamanho do grafo.

Então onde vamos parar?

Não faço a menor ideia.

Provavelmente começaremos falando sobre o scheduler da curiosidade, alguém mencionará teoria dos grafos, daí surgirá a história dos sete graus de separação, que levará a redes sociais, que levará a algoritmos de recomendação, que levará a manipulação comportamental, que levará a Skinner, que levará a psicologia, que lembrará inteligência artificial...

...e daqui a pouco estaremos novamente discutindo COBOL.

Talvez exista uma explicação técnica para isso.

Ou talvez seja simplesmente:

//CURIOS EXEC PGM=LIFE
//PARM DD *
   MAXDEPTH=UNLIMITED
   CURIOSITY=YES
   COFFEE=STRONG
   RETURN=OPTIONAL
/*

IEFBR14 provavelmente não resolverá.

☕ Café terminado.

Artigo terminado.

JOB terminado.

Finalmente:

$HASP395 CURIOSITY ENDED

...

Espera.

Se conhecimento funciona como grafo, será que nosso backlog de conversas poderia ser automaticamente transformado em um grafo visual de interesses, mostrando quais assuntos deram origem a quais outros?

Droga.

$HASP100 NEWJOB ON READER

E lá vamos nós outra vez. ☕🖥️

sábado, 17 de maio de 2025

The IT Crowd encontra o Nubank: o Dia em que o COBOLzeiro Entrou na Nuvem, Viu Kubernetes, Clojure, Datomic e Perguntou Onde Esconderam o CICS

 

Bellacosa Mainframe e a arquitetura do Nubank

☕ Um Café no Bellacosa Mainframe

The IT Crowd encontra o Nubank: o Dia em que o COBOLzeiro Entrou na Nuvem, Viu Kubernetes, Clojure, Datomic e Perguntou Onde Esconderam o CICS

💳 AWS, microserviços, containers, bancos imutáveis, observabilidade, FinOps, IA e o estranho caso de uma instituição com mais de 100 milhões de clientes que resolveu problemas antigos com ferramentas completamente novas — enquanto o veterano do CPD repetia: “Have you tried turning it off and on again?”

Imagine o porão de um departamento de informática.

Luzes fluorescentes.

Cabos.

Monitores.

Uma caneca esquecida ao lado do teclado.

Um cartaz na parede:

HAVE YOU TRIED TURNING IT OFF AND ON AGAIN?

Roy está sentado olhando para um terminal.

Moss aparece carregando uma pilha de livros.

Na porta surge um programador COBOL iniciante.

Ele segura um notebook.

Na tela:

KUBERNETES
CLOJURE
DATOMIC
AWS
MICROSERVICES
CONTAINERS

Roy olha.

— O que é isso?

O novato responde:

— Estou estudando a arquitetura do Nubank.

Moss imediatamente se interessa.

— Nubank? Fascinante. Instituição financeira digital, arquitetura distribuída, alta escalabilidade...

Roy interrompe:

— Quantas agências?

— Nenhuma.

— Nenhum mainframe?

— Pelo menos não como fundamento público da arquitetura original.

— E atende mais de cem milhões de clientes?

— Sim.

Roy fica em silêncio.

Olha para Moss.

Olha novamente para o novato.

— Então onde esconderam o CICS?

☕

Bem-vindo a mais um Um Café no Bellacosa Mainframe.

Hoje vamos entrar numa das comparações mais interessantes para quem está começando COBOL e quer entender por que o mundo moderno fala tanto de cloud-native, microserviços, containers, Kubernetes e bancos de dados diferentes.

Nosso laboratório será o Nubank.

Não para declarar que cloud venceu mainframe.

Nem para dizer que mainframe é superior à cloud.

Essas guerras religiosas normalmente produzem mais calor do que conhecimento.

A pergunta realmente interessante é:

Como uma instituição financeira que nasceu na nuvem conseguiu crescer até uma escala gigantesca resolvendo problemas que bancos tradicionais enfrentam há décadas?

E mais importante:

Quantos desses problemas são realmente novos?

Spoiler:

Pouquíssimos.

As tecnologias mudaram.

Os problemas fundamentais continuam terrivelmente familiares.

Pegue o café.

Vamos descer ao porão.


1. Primeiro: esqueça o aplicativo roxo

Quando alguém olha para o Nubank, normalmente vê:

APP
CARTÃO ROXO
PIX
CONTA
EMPRÉSTIMO

O profissional de infraestrutura deveria enxergar outra coisa.

Por trás daquele botão bonito existe algo mais parecido com:

CLIENTE
   |
   v
APLICATIVO
   |
   v
APIs
   |
   v
SERVIÇOS
   |
   v
CORE FINANCEIRO
   |
   v
DADOS
   |
   v
EVENTOS
   |
   v
AUDITORIA
   |
   v
SEGURANÇA

E ainda:

ANTIFRAUDE
CRÉDITO
KYC
COMPLIANCE
OBSERVABILIDADE
LOGS
BACKUP
DR
CAPACITY
IA

Então guarde uma regra.

Interface simples não significa sistema simples.

O cliente toca em:

PAGAR

e espera:

PAGO

Entre uma coisa e outra pode existir uma pequena guerra civil distribuída.

É justamente aí que Nubank e mainframe começam a ficar curiosamente parecidos.


2. O banco tradicional construiu uma fortaleza

Grandes bancos cresceram durante décadas.

Muitos construíram arquiteturas centradas em:

IBM Z
COBOL
CICS
DB2
IMS
VSAM
MQ
JCL
RACF

Essas tecnologias não apareceram por acaso.

Elas resolvem problemas reais.

Consistência.

Volume.

Disponibilidade.

Segurança.

Recuperação.

Processamento transacional.

Auditoria.

Controle de carga.

Imagine algo conceitualmente parecido:

CLIENTE
   |
   v
CANAL
   |
   v
CICS
   |
   v
PROGRAMA COBOL
   |
   v
DB2 / VSAM / IMS
   |
   v
MQ / BATCH / CONTABILIDADE

Agora multiplique isso por:

décadas
milhares de programas
milhões de clientes
centenas de integrações

Pronto.

Você tem um banco.

Ou um monstro mitológico.

Depende do horário do incidente.


3. Nubank começou pelo outro lado

O Nubank nasceu já pensando em cloud.

Esse detalhe muda tudo.

Um banco tradicional frequentemente precisa modernizar sistemas existentes.

O Nubank pôde construir de maneira greenfield.

Greenfield significa basicamente:

“Ainda não temos quarenta anos de decisões para carregar.”

Isso é uma vantagem brutal.

Imagine duas equipes.

A primeira recebe:

SISTEMA X
CRIADO EM 1989
ALTERADO 12.417 VEZES
AUTOR ORIGINAL APOSENTADO
DOCUMENTAÇÃO: TALVEZ

A segunda recebe:

README.md

É outro planeta.

Mas não se engane.

O segundo sistema eventualmente também vira o primeiro.

Só precisa sobreviver tempo suficiente.


4. AWS: o CPD terceirizado

Uma maneira divertida de explicar cloud para um veterano seria:

Você não eliminou o datacenter.

Você terceirizou uma enorme parte dele.

No modelo tradicional:

BANCO
 |
 +-- DATACENTER
     |
     +-- SERVIDORES
     +-- STORAGE
     +-- REDE
     +-- ENERGIA
     +-- DR

No modelo cloud:

BANCO
 |
 +-- AWS
     |
     +-- COMPUTE
     +-- STORAGE
     +-- NETWORK
     +-- DATABASE
     +-- SECURITY

Fisicamente continuam existindo máquinas.

CPUs.

Memória.

SSD.

Switches.

Cabos.

Energia elétrica.

O que mudou foi o modelo operacional.

Você pede recursos por software.

Escala.

Cria ambientes.

Destrói ambientes.

Automatiza infraestrutura.

Isso reduz dramaticamente o tempo entre:

PRECISO DE SERVIDOR

e:

SERVIDOR EXISTE

Quem viveu compras corporativas tradicionais entenderá imediatamente a importância disso.


5. A nuvem não é infinita

Aqui aparece um dos maiores mitos.

Muita gente imagina:

CLOUD = INFINITO

Não.

Cloud continua limitada por física.

Em algum ponto existem:

CPU
RAM
SSD
REDE
ENERGIA
DATACENTER

Uma empresa suficientemente grande pode encontrar limites que empresas pequenas jamais verão.

É quase como alguém perguntando:

— A internet aguenta?

Roy responde:

— Depende.

Moss:

— Tecnicamente a internet está naquela pequena caixa preta ali.

Se você entendeu essa referência, parabéns.

Você ganhou o primeiro Easter egg.


6. Clojure: porque Java seria normal demais

Uma das escolhas técnicas mais interessantes do Nubank foi Clojure.

Clojure é uma linguagem funcional da família Lisp executada sobre JVM.

Para quem vem de COBOL, isso parece inicialmente uma linguagem alienígena.

COBOL:

IF SALDO > LIMITE
    DISPLAY 'OPERACAO RECUSADA'
END-IF

Lisp-like:

(parênteses
    (dentro
        (de
            (parênteses))))

O COBOLzeiro olha.

Moss aparece.

— É extremamente elegante.

Roy responde:

— Parece que alguém derrubou a caixa de parênteses.

Mas existe racionalidade por trás da escolha.

Linguagens funcionais favorecem conceitos como:

imutabilidade
funções puras
composição
transformação de dados

Isso pode ser interessante em sistemas distribuídos.

Porque estado compartilhado é uma fonte clássica de sofrimento.

E sofrimento distribuído escala muito bem.


7. Datomic: o banco que gosta do passado

Agora chegamos a uma ideia deliciosa.

Em muitos bancos relacionais tradicionais pensamos no estado atual.

Exemplo:

SALDO = 1000

Depois:

SALDO = 800

Atualizamos o registro.

Mas no mundo financeiro o passado importa muito.

Quem alterou?

Quando?

Qual era o estado anterior?

Qual evento produziu o estado atual?

Datomic trabalha com uma filosofia fortemente temporal e imutável.

Conceitualmente:

T0 SALDO = 1000
T1 COMPRA = -200
T2 SALDO = 800

O histórico não desaparece simplesmente.

Para um COBOLzeiro isso desperta uma sensação familiar.

Ele pensa:

— Então vocês guardam histórico?

Sim.

— E querem reconstruir estado?

Sim.

— E auditoria?

Sim.

— E temporalidade?

Sim.

O veterano dá um gole no café.

— Conheço esse filme.


8. A imutabilidade é uma obsessão financeira antiga

Sistemas financeiros gostam de histórico porque dinheiro deixa rastros.

Em muitos casos não queremos:

DELETE

Queremos:

REVERSAO

Por quê?

Porque apagar o passado é péssimo para auditoria.

Imagine:

TRANSAÇÃO 100
TRANSAÇÃO -100

É muito diferente de:

NUNCA EXISTIU

Essa diferença conceitual é crítica.

Sistemas modernos chamam isso de:

event sourcing
immutable data
audit history

O veterano do mainframe talvez diga:

— Interessante.

Depois acrescenta:

— Em 1987 nós chamávamos de “não apague esse registro porque a auditoria vai perguntar”.


9. Microserviços: cada problema ganha sua casinha

Arquiteturas modernas frequentemente dividem sistemas em serviços menores.

Algo como:

CARTÃO
   |
   +-- limite-service
   +-- transaction-service
   +-- fraud-service
   +-- notification-service
   +-- customer-service

Cada serviço pode ter:

código
deployment
dados
observabilidade
equipe

Isso oferece vantagens.

Escalabilidade independente.

Implantação independente.

Domínios separados.

Equipes autônomas.

Mas também cria problemas.

Muitos problemas.

Agora você precisa administrar:

rede
latência
timeout
retry
idempotência
consistência
service discovery
tracing
versionamento
contratos

O sistema que antes tinha chamadas internas agora possui rede entre pedaços.

E existe uma máxima importante:

A rede sempre encontra maneiras criativas de lembrar que existe.


10. O COBOLzeiro conhece microserviços melhor do que pensa

Imagine um banco tradicional com:

CICS REGION A
CICS REGION B
MQ
DB2
BATCH
IMS

Você já possui componentes distribuídos.

Já possui fronteiras.

Já possui mensageria.

Já possui sistemas independentes.

A diferença é que arquiteturas cloud-native tornam essas divisões muito mais granulares.

Então quando alguém disser:

“Microservices revolucionaram tudo.”

Você pode responder:

— Sim, revolucionaram muita coisa.

Mas alguns problemas são velhos.

Por exemplo:

COMO GARANTIR QUE A MESMA OPERAÇÃO NÃO SEJA EXECUTADA DUAS VEZES?

Isso se chama:

IDEMPOTÊNCIA

No mainframe talvez você não usasse esse termo diariamente.

Mas o problema já existia.


11. Kubernetes: o gerente dos containers

Agora surge Kubernetes.

Imagine milhares de pequenos serviços.

Cada um rodando em containers.

Você precisa controlar:

onde roda
quantas cópias
quando reiniciar
como atualizar
como escalar
como descobrir

Kubernetes tenta resolver essa orquestração.

Conceitualmente:

KUBERNETES
   |
   +-- POD A
   +-- POD B
   +-- POD C
   +-- POD D

Se um morre:

RESTART

Se precisa de mais capacidade:

SCALE

Se uma versão nova chega:

ROLLING UPDATE

Um veterano do mainframe olha para isso e pensa:

“Então vocês construíram um sistema que administra workload, disponibilidade e recursos?”

Sim.

O veterano:

— Interessante.

WLM tossindo discretamente no canto.


12. WLM encontra Kubernetes no corredor

Essa comparação é deliciosa.

Não são tecnologias equivalentes.

Mas ambas convivem com perguntas semelhantes.

QUEM PRECISA DE RECURSO?
QUANTO?
COM QUAL PRIORIDADE?
ONDE EXECUTAR?
COMO REAGIR A CARGA?

No mainframe:

WLM
service classes
importance
goals

No cloud-native:

requests
limits
autoscaling
scheduling
pods
nodes

Mudou o vocabulário.

O problema continua sendo:

recursos são finitos.

Moss explica Kubernetes durante vinte minutos.

Roy resume:

— Basicamente você tem um monte de computadores e precisa impedir que eles façam besteira.

Moss:

— Tecnicamente incorreto.

Roy:

— Mas funcionalmente preciso.


13. Containers não são máquinas virtuais pequeninas

Essa é uma boa dica para o iniciante.

Container não é simplesmente:

VM PEQUENA

Ele compartilha o kernel do host e empacota aplicação e dependências de maneira isolada.

Isso torna deployment mais previsível.

A clássica frase:

NA MINHA MÁQUINA FUNCIONA

vira:

ENTÃO EMPACOTE SUA MÁQUINA

Não literalmente.

Mas quase.

Essa é uma das grandes contribuições dos containers:

reduzir diferenças entre ambientes.

Dev.

Teste.

Produção.

Todos executam artefatos semelhantes.

O sysprog antigo entende imediatamente o valor disso.

Ambiente diferente é combustível para incidente.


14. Observabilidade: porque agora ninguém sabe onde o erro aconteceu

Em um sistema distribuído, uma transação pode atravessar:

APP
 ↓
API
 ↓
SERVICE A
 ↓
SERVICE B
 ↓
DATABASE
 ↓
EVENT BUS
 ↓
SERVICE C

Quando algo falha, surge a pergunta:

ONDE?

Observabilidade tenta responder usando:

logs
metrics
traces
events

Tracing distribuído é especialmente importante.

Você pode acompanhar uma transação atravessando vários serviços.

Para o mundo mainframe isso lembra a necessidade histórica de:

SMF
RMF
CICS statistics
DB2 traces
logs
dumps

Novamente:

tecnologia nova.

Problema velho.


15. SMF provavelmente olharia para observability e diria “fofo”

Brincadeiras à parte, SMF é uma das grandes fontes históricas de telemetria de z/OS.

O mainframe registra uma quantidade extraordinária de informação operacional.

CPU.

Jobs.

I/O.

Segurança.

Subsistemas.

Performance.

Cloud-native descobriu sua própria versão desse universo.

Prometheus.

OpenTelemetry.

Grafana.

Tracing.

Logs centralizados.

A filosofia é semelhante:

se não consigo medir, não consigo administrar.

Esse é um princípio universal.


16. O custo da nuvem: a pergunta que ninguém responde com um número simples

Quanto custa atender 100 milhões de clientes?

Não existe resposta direta.

Porque:

100 MILHÕES DE CLIENTES

não significa:

100 MILHÕES DE CLIENTES ATIVOS AO MESMO TEMPO

Você precisa conhecer:

transações por segundo
storage
network
database I/O
logs
backups
replicação
ML
fraude
analytics
DR

Uma fórmula simplificada seria:

CLOUD COST =
COMPUTE
+ STORAGE
+ DATABASE
+ NETWORK
+ OBSERVABILITY
+ SECURITY
+ BACKUP
+ ANALYTICS
+ ML

Depois vem:

- otimização
- contratos
- reservas
- descontos

E aparece uma nova profissão:

FinOps

17. FinOps: o capacity planner voltou usando tênis

FinOps é a disciplina de administrar financeiramente consumo de cloud.

Porque existe uma armadilha.

Cloud facilita criar recursos.

Muito fácil.

Talvez fácil demais.

Alguém faz:

CREATE INSTANCE

Depois esquece.

Ela continua ligada.

Por semanas.

Meses.

Até alguém encontrar a conta.

No mainframe sempre existiu obsessão com:

CPU
MSU
MIPS
SOFTWARE COST

Cloud reintroduziu a mesma disciplina com nomes diferentes:

vCPU
instance hours
storage
egress
reserved instances
savings plans

O gestor antigo olha.

— Então consumo computacional continua custando dinheiro?

Sim.

— Fascinante.


18. AWS Graviton e os 14%

Uma das otimizações interessantes atribuídas publicamente ao Nubank foi adoção de processadores AWS Graviton.

A motivação é simples:

melhor relação custo/performance em determinados workloads.

Quando uma organização desse tamanho reduz uma fatia percentual relevante do custo de computação, isso pode representar muito dinheiro.

E aqui surge uma lição importante.

Em escala:

1% = DINHEIRO

Muito dinheiro.

No sistema pequeno, otimizar 3% é luxo.

No sistema gigante, pode financiar uma equipe inteira.

Isso é algo que mainframe conhece há décadas.


19. Performance engineering não morreu

Às vezes existe uma ideia ingênua:

cloud elimina preocupação com performance.

Não.

Ela pode tornar performance comprável.

Mas ainda custa.

Se um serviço usa o dobro de CPU porque o código é ruim:

CONTA = DOBRO

aproximadamente, dependendo da carga.

Então aquele velho programador obcecado por eficiência não estava completamente errado.

Talvez estivesse apenas trinta anos adiantado para a reunião de FinOps.


20. Sharding: quando um banco de dados começa a ficar apertado

Quando um banco cresce, existe outro problema.

Dados.

Muito dado.

Em algum momento você pode dividir os dados entre várias unidades.

Isso é sharding.

Imagine:

CLIENTES A-F -> SHARD 1
CLIENTES G-M -> SHARD 2
CLIENTES N-S -> SHARD 3
CLIENTES T-Z -> SHARD 4

É apenas um exemplo.

Na prática estratégias podem ser muito mais sofisticadas.

Sharding resolve alguns problemas.

E cria outros.

Sempre existe essa regra da arquitetura:

Toda solução resolve um problema e ganha três novos de bônus.

Agora surgem questões:

rebalanceamento
hotspots
consistência
roteamento
falhas
migração

Roy olha.

— Parece complicado.

Moss:

— É porque é.


21. Banco distribuído é um casamento entre física e filosofia

Quando dados estão distribuídos, surgem perguntas como:

SE DOIS NÓS DISCORDAM, QUEM ESTÁ CERTO?

Ou:

O QUE ACONTECE SE A REDE CAIR?

Ou:

QUANDO UMA TRANSAÇÃO ESTÁ REALMENTE CONFIRMADA?

Isso nos leva a consistência distribuída.

CAP theorem.

Quórum.

Replicação.

Consensus.

Eventual consistency.

Termos modernos.

Mas bancos sempre tiveram obsessão por:

ACID
COMMIT
ROLLBACK
LOCK
LOG
RECOVERY

Porque dinheiro não aceita filosofia muito abstrata.

O saldo precisa fechar.


22. Cloud-native não elimina contabilidade

Esse ponto parece óbvio.

Mas é importante.

Você pode usar:

Kubernetes
Clojure
Kafka
Datomic
AI

No fim do dia:

DÉBITO = CRÉDITO

A contabilidade continua lá.

Pode mudar a arquitetura.

Pode mudar o deployment.

Pode mudar o banco de dados.

Não muda a matemática.

Esse é o tipo de realidade que une mainframe e fintech.


23. IA agora entra no salão

Com escala gigantesca, atendimento também vira tecnologia.

Imagine milhões de perguntas:

onde está meu cartão?
por que meu limite caiu?
qual minha fatura?
como bloquear?
como negociar dívida?

Atender tudo apenas com humanos custa muito.

Então IA começa a entrar.

Chatbots.

Modelos.

Agentes.

Classificação.

Automação.

Mas agora o problema muda.

Uma IA pode responder errado.

Em banco, resposta errada pode virar:

reclamação
fraude
prejuízo
risco regulatório

Então surge outro desafio:

automação precisa ser auditável.

O mundo tecnológico moderno eventualmente descobre o mesmo princípio do mainframe:

TRUST, BUT LOG EVERYTHING.

24. Segurança: zero confiança, muitos logs

Banco digital é um alvo gigantesco.

Então precisa de:

IAM
MFA
secrets
encryption
network controls
fraud detection
monitoring
audit

No mainframe temos:

RACF
ACF2
Top Secret
SAF
profiles
permissions
logs

Novamente:

novo vocabulário.

Mesmo problema fundamental:

WHO ARE YOU?
WHAT CAN YOU DO?
WHAT DID YOU DO?

Essas três perguntas praticamente resumem segurança corporativa.


25. O curioso caso do “legado cloud”

Agora uma provocação.

Nubank nasceu moderno.

Mas qualquer plataforma suficientemente antiga cria legado.

Se um microsserviço criado em 2015 ainda existe em 2035, ele será legado.

Legado não é:

COBOL

Legado é:

software importante que sobreviveu.

Essa definição é muito mais útil.

Java vira legado.

Python vira legado.

Kubernetes vira legado.

Seu framework JavaScript favorito provavelmente já nasceu legado enquanto você lia esta frase.


26. O mainframe possui uma vantagem obscena

Existe algo que cloud-native frequentemente tenta reconstruir:

simplicidade operacional centralizada.

No mainframe você pode ter enorme quantidade de workloads dentro de uma plataforma extremamente integrada.

No mundo distribuído você ganha flexibilidade.

Mas paga em complexidade.

Milhares de containers.

Centenas de serviços.

Networking.

Observabilidade.

CI/CD.

Secrets.

Deployments.

Dependencies.

Service mesh.

Moss começa a explicar service mesh.

Roy levanta a mão.

— Não.

Moss:

— Mas é fascinante.

— Não.


27. Cloud possui outra vantagem obscena

Agora o outro lado.

Provisionamento.

Automação.

Experimentação.

Escalabilidade.

Velocidade de desenvolvimento.

Um time pode criar infraestrutura via código.

terraform apply

E ambientes aparecem.

Compare com processos históricos:

FORMULÁRIO
APROVAÇÃO
COMPRA
ENTREGA
INSTALAÇÃO
CONFIGURAÇÃO

Cloud mudou radicalmente o ciclo.

Isso foi crucial para empresas que cresceram rápido.


28. Arquitetura segue organização

Conforme a empresa cresce, aparece um problema humano.

Imagine:

10 engenheiros

Todo mundo conversa.

Agora:

100

Complica.

Agora:

1000

Você criou uma cidade.

Precisará de:

equipes
domínios
ownership
standards
platform engineering
governança

A Lei de Conway basicamente diz que sistemas tendem a refletir estruturas de comunicação das organizações.

Ou seja:

organograma também produz arquitetura.

Essa é uma verdade subestimada.


29. O programa COBOL também é arquitetura organizacional fossilizada

Pegue um programa antigo.

Ele talvez tenha:

PARA-CALCULA-TARIFA
PARA-AUTORIZA-LIMITE
PARA-GERA-HISTORICO

Por que esses módulos existem?

Talvez porque em 1994 existiam departamentos diferentes.

Arquitetura captura decisões humanas.

Software é arqueologia organizacional.

Isso vale igualmente para microservices.

Daqui a vinte anos alguém perguntará:

— Por que existem 417 serviços para processar uma fatura?

Resposta:

— Era assim que os squads estavam organizados em 2026.

😂


30. Passo a passo para um COBOLzeiro estudar arquitetura Nubank

Agora uma rota prática.

Passo 1 — Domine transações

Entenda:

COMMIT
ROLLBACK
ACID
LOCK
RECOVERY

Sem isso, arquitetura financeira vira decoração PowerPoint.

Passo 2 — Estude CICS

Entenda:

transaction manager
task
region
program
resource

Depois compare com serviços modernos.

Passo 3 — Estude Db2

Aprenda:

index
transaction
isolation
logging
recovery

Depois veja bancos distribuídos.

Passo 4 — Estude MQ

Mensageria é ponte perfeita entre os mundos.

Entenda:

queue
producer
consumer
delivery
retry

Depois Kafka e event-driven ficam muito mais fáceis.

Passo 5 — Estude containers

Docker primeiro.

Kubernetes depois.

Não comece tentando decorar YAML de 300 linhas.

Entenda o problema antes da ferramenta.

Passo 6 — Estude observabilidade

Compare:

SMF/RMF

com:

metrics/logs/traces

Passo 7 — Estude cloud economics

Aprenda:

compute
storage
network
database
egress

Depois FinOps.

Passo 8 — Estude arquitetura distribuída

Especialmente:

latency
timeout
retry
idempotency
consistency
partition

Passo 9 — Estude segurança

Compare:

RACF

com:

IAM

Passo 10 — Nunca aceite desenho de arquitetura sem perguntar:

WHAT HAPPENS WHEN THIS FAILS?

Essa pergunta vale mais que cem certificações.


31. Easter egg final: desligar e ligar não resolve tudo

Roy provavelmente tentaria:

— Have you tried turning Kubernetes off and on again?

Moss entraria em pânico.

— Não se desliga Kubernetes dessa maneira!

Roy:

— Então por que chamam de cluster?

Jen pisaria num cabo.

Produção cairia.

Alguém abriria um Sev1.

O COBOLzeiro no canto ficaria olhando.

Depois perguntaria:

— Existe rollback?

Silêncio.

— Existe backup?

Mais silêncio.

— Existe DR?

Moss:

— Naturalmente.

O veterano sorri.

Agora eles finalmente falam a mesma língua.


32. A grande conclusão

Nubank e mainframe representam épocas diferentes da engenharia.

Um nasceu em um mundo de:

cloud
smartphone
APIs
containers
distributed systems

Outro consolidou-se num mundo de:

centralized computing
transaction processing
batch
terminals

Mas ambos enfrentam:

dinheiro
estado
risco
falha
segurança
volume
auditoria
performance

E esses problemas não respeitam moda tecnológica.

É por isso que comparar Nubank com mainframe é tão interessante.

Você descobre que muitas vezes não estamos reinventando o problema.

Estamos reinventando a solução.

Às vezes melhor.

Às vezes apenas diferente.

Às vezes mais barata.

Às vezes mais rápida.

Às vezes mais complicada.

Às vezes todas essas coisas ao mesmo tempo.


Epílogo — O chamado do incidente

São 02:47 da manhã.

O celular toca.

Produção.

Roy atende.

— IT.

Do outro lado:

— Os pagamentos estão lentos.

Roy:

— Have you tried turning it off and on again?

Moss arranca o telefone.

— NÃO!

O programador COBOL olha para o dashboard.

CPU normal.

Banco normal.

Rede estranha.

Um serviço está repetindo requisições após timeout.

Retry.

Retry.

Retry.

Milhares.

Ele pergunta:

— As operações são idempotentes?

Moss congela.

Roy pergunta:

— Isso é alguma religião?

O COBOLzeiro dá um gole no café.

— Não.

Aponta para a tela.

— É a diferença entre cobrar uma vez e cobrar três.

Silêncio.

Finalmente todos entendem.

Porque por trás de:

AWS
CLOJURE
DATOMIC
KUBERNETES
MICROSERVICES
AI

continua existindo a pergunta mais antiga do sistema bancário:

O dinheiro chegou ao lugar certo, uma única vez, e conseguimos provar isso?

Se a resposta for sim, o sistema está funcionando.

Se a resposta for não...

bem...

ligue para o CPD.

☕

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...