sábado, 13 de julho de 2013

🟣⚙️ TRETA.LOG – CECAP 1984

 


🟣⚙️ TRETA.LOG – CECAP 1984

O Neury, o Celo, o Maurício… e o Loop Infinito de Cascudos

Tem histórias do CECAP que parecem programas mal estruturados, daqueles que entram em loop eterno porque ninguém colocou um IF de saída.
E uma dessas joias do meu arquivo SMF mental envolve o Neury da quadra D — amigo, adversário, vítima, comparsa e mascote não oficial das confusões da época.

Pra entender, você precisa lembrar:
O CECAP não era um bairro.
Era um cluster de mini-feudos, cada quadra com seu líder, seus guerreiros, seus onis e suas rivalidades medievais.
Quadra B aliada a C, C contra D, D contra E…
Se deixasse, virava Game of Thrones versão mamona.

E as guerras de mamona, meu amigo…
Ali era bala real.
Nem a tropa de choque da SHCP daria conta.

Mas entre uma guerra e outra, surgiam as alianças improváveis — e também as tretazinhas clássicas, aquelas que começavam por bobagem:

✔ jogo de bafo com figurinhas dos chicletes Ploc, Ping Pong

✔ bolinha de gude

✔ valendo tazo que nem existia ainda
✔ disputa boba por garota
✔ ou só porque alguém respirou mais forte no campinho

Às vezes, muito raro, por que eram preciosas figurinhas da editora Abril de algum álbum do momento.



🔥 Entra em cena: Neury, O Alvo Fácil do Cluster

Eu e o Celo, meu primo e parceiro de crimes lúdicos, éramos uma dupla perigosa:
juntos, virávamos um sistema integrado, quase um CICS+DB2 da malandragem infantil.

Quando jogávamos contra os outros — fosse bafo, bila, pipas ou o que aparecesse — a união fazia a força… e o lucro.

E o Neury, coitado, sempre topava jogar.
O problema é que ele tinha um mal perder tão grande quanto o manual do MVS.

E ele reclamava.
Chorava.
Esbravejava.
Aí sobrava pra quem?
Pra mim, claro.
Eu tinha que dar cascudos pedagógicos para “resetar” o garoto.

Mas o Neury tinha um amigo maior, mais velho e mais forte:
➡️ Maurício, o tanque de guerra humano da quadra D.

E aí nascia o loop eterno mais famoso da história do CECAP:

  • Eu dava cascudo no Neury

  • Maurício vinha e batia no Celo

  • Aí eu ia e batia no Neury de novo

  • Maurício batia em mim

  • O Celo — bravo, porém imprudente — batia no Neury

  • E tudo recomeçava…

Sim, era isso mesmo:
um WHILE TRUE DO da violência controlada e perfeitamente equilibrada.



⚙️ 🛑 Maurício.exe encontrou erro e deixou de responder

Até que um dia, do nada, Maurício juntou nós três:

Chega. Não vou mais me meter, cês que se virem.

E foi embora, tipo um sysadmin largando o sistema e dizendo: “se virar, molecada”.

A partir dali, o loop foi diminuindo.
Mas o Neury continuou sendo aquele personagem icônico:
apanhava, brigava, reclamava…
e no dia seguinte aparecia lá:

Vamo jogar?
Vamo brincar?

Era quase um RETURN CODE 00 automático.
Ele não guardava rancor — apenas hematomas.



🟢 Quadra a Quadra: O Cluster do CECAP

  • Quadra B → Luciano, o líder.

  • Quadra D → Alessandro, primo do Luciano, meio diplomata, meio general romano.

  • Quadra C → Xulapa, o líder oficial.

  • Número 2 da C → Celo, meu primo, rei das tretas e das ideias ruins.

  • Eu → recémt-chegado, sem direito até a foto do crachá ainda.

Mas, vou te falar…
Mesmo sem cargo oficial, vivi as melhores tardes da minha vida:

✔ jogos de taco
✔ queimada
✔ pega-pega
✔ esconde-esconde
✔ “mana-mula”
✔ SWAT de bicicleta (uma obra-prima antes de existir videogame decente)
✔ futebol no campinho
✔ jaboticabas colhidas na base da ousadia
✔ nadar no córrego perto do arrozal (proibido, claro — por isso era bom)




1984 foi um batch perfeito.
Rodou com RC=00.
Tirando os cascudos.
Tirando as tretas.
Tirando o Marreco — que ainda me perseguia em meio a todas essas aventuras.

Mas, sinceramente?
Era parte do charme.
Era parte do caos.
Era parte do aprendizado on-line da vida real, sem manual, sem JIRA, sem logs.

Era só a vida acontecendo, linda e cheia de bugs corrigíveis.

domingo, 30 de junho de 2013

🟦 IBM Enterprise COBOL 5.0 no Mainframe

 


🟦 IBM Enterprise COBOL 5.0 no Mainframe

A virada de chave definitiva do COBOL moderno

(Análise Bellacosa Mainframe™ para Padawans)

“COBOL 5 não é uma nova versão.
É um novo contrato entre o código e o hardware.”

— Bellacosa


🕰️ Origem e data de lançamento

O IBM Enterprise COBOL for z/OS 5.0 foi lançado em junho de 2014.

Esse lançamento não foi incremental.
Foi uma ruptura controlada.

A IBM percebeu três verdades incômodas:

  1. O COBOL ainda movia o mundo 💰

  2. O hardware z havia evoluído absurdamente

  3. O compilador antigo não explorava o ferro

👉 O COBOL 5 nasce para casar código legado com silício moderno.



🔥 O que MUDA em relação ao COBOL 4.x

🧠 1. Novo compilador (rebuild total)

  • COBOL 4 = evolução do compilador antigo

  • COBOL 5 = compilador reescrito do zero

📌 Consequência direta:

  • Código mais eficiente

  • Geração de objeto completamente diferente

  • Menos tolerância a “código gambiarra”

🥚 Easter-egg:

Muito código que “funcionava há 30 anos” passou a falhar corretamente.


⚙️ 2. Foco total em hardware moderno

COBOL 5 só explora arquitetura moderna.

ItemCOBOL 4COBOL 5
Compiladorlegadonovo
Uso de CPUgenéricoespecífico
ARCHlimitadoobrigatório
Performanceboabrutal

🚫 3. Adeus retrocompatibilidade infinita

COBOL 5 removeu suporte a arquiteturas antigas.

Exemplos de coisas que não existem mais:

  • DATA(24)

  • Comportamentos indefinidos

  • Tolerância a lixo em campos numéricos

Bellacosa rule:

COBOL 5 não aceita mais “fé”.
Aceita código correto.



🖥️ Equipamento mainframe indicado

🔹 Requisitos mínimos práticos

  • zEC12 ou superior

  • Ideal: z13, z14, z15 ou z16

🔹 Por quê?

Porque COBOL 5:

  • Usa instruções modernas

  • Gera código específico por ARCH

  • Explora pipeline e cache da CPU

📌 Compilar COBOL 5 sem hardware moderno é:

comprar Ferrari para andar em estrada de terra.


⚡ Performance: onde o COBOL 5 humilha

Estudos reais da IBM mostram:

  • 10% a 40% menos CPU

  • Menos instruções por transação

  • Melhor uso de cache

🥚 Easter-egg técnico:

Muitas vezes o ganho vem sem mudar uma linha de código — só recompilando.


🧪 Parâmetros que viraram OBRIGATÓRIOS

No COBOL 5, PARM não é detalhe.

Exemplo mínimo decente:

RENT OPTIMIZE(2) ARCH(13)

⚠️ Compilar COBOL 5 sem ARCH é como:

pedir comida gourmet e comer fria.


🧨 Código legado: o choque de realidade

COBOL 5 expõe:

  • MOVE inválido

  • Dados sujos

  • Dependência de truncamento

  • Uso incorreto de COMP

👉 Por isso, migração ≠ recompilação.

Bellacosa truth:

Se o programa quebrou no COBOL 5,
ele já estava quebrado antes — só ninguém via.


📜 História resumida (linha do tempo)

  • 1960 – COBOL nasce (negócios)

  • Anos 80/90 – COBOL domina bancos

  • COBOL 3/4 – estabilidade e compatibilidade

  • 2014 – COBOL 5 – modernização real

  • Hoje – COBOL continua crítico, rápido e caro


🧑‍🎓 Primeiros passos para Padawans

1️⃣ Não migre tudo de uma vez

  • Comece por batch simples

  • Depois online

  • Depois sistemas críticos

2️⃣ Compile com tudo ligado

SSRANGE NUMCHECK FLAG(W)

3️⃣ Limpe warnings antes de produção

4️⃣ Só então ligue OPTIMIZE(2)


🧩 Exemplo simples (código ok no COBOL 5)

MOVE WS-VALOR TO WS-TOTAL IF WS-TOTAL IS NUMERIC DISPLAY "OK" ELSE DISPLAY "DADO INVALIDO" END-IF

🥚 Easter-egg:

No COBOL 4 isso talvez “passasse”.
No 5, isso é disciplina.


🟦 Conclusão Bellacosa™

COBOL 5 não moderniza o código.
Ele moderniza a verdade sobre o código.

Quem migra:

  • reduz CPU

  • ganha performance

  • perde ilusões

E isso… é maturidade mainframe.


terça-feira, 11 de junho de 2013

☕ IBM Mainframe & DB2: a engenharia relacional que sustenta o mundo

 

Bellacosa Mainframe apresente o IBM DB2 schemas tables columns and rows

☕ IBM Mainframe & DB2: a engenharia relacional que sustenta o mundo



🧠 Introdução – DB2 no Mainframe não é “apenas um banco”

Quando alguém diz “DB2 é um banco de dados relacional”, está tecnicamente correto…
e conceitualmente incompleto.

No IBM Mainframe, o DB2 não é um software isolado.
Ele é parte da espinha dorsal do z/OS, responsável por processar trilhões de dólares, milhões de transações por segundo e manter sistemas que não podem falhar — nunca.

Enquanto no mundo distribuído o banco “reinicia”,
no mainframe o DB2 continua.


🕰️ Origem & História – da teoria acadêmica ao Big Iron

Tudo começa em 1970, quando Edgar F. Codd, pesquisador da IBM, publica o artigo que mudaria a computação:

“A Relational Model of Data for Large Shared Data Banks”

Ali nascia o modelo relacional.

💡 Curiosidade Bellacosa
O modelo relacional nasceu antes do DB2.
O DB2 foi a industrialização dessa teoria no ambiente mais exigente do planeta: o mainframe.

  • 1983 → DB2 v1 no MVS

  • SQL ainda era novidade

  • Muitos achavam que banco relacional era “moda acadêmica”

Quatro décadas depois…
👉 o dinheiro do mundo discorda.


⚙️ DB2 no Mainframe: como ele realmente funciona

No z/OS, o DB2 é um subsistema profundamente integrado, explorando:

  • Endereçamento de memória avançado

  • Controle sofisticado de concorrência

  • Logging e recovery em nível cirúrgico

  • Data Sharing entre múltiplos LPARs

Ele não vive sozinho:

  • Integra-se ao WLM

  • Usa RACF para segurança

  • Depende de DFS/SMS para storage

  • Trabalha com IRLM para locking

Comentário El Jefe
DB2 no mainframe não é “um processo rodando”.
É um cidadão de primeira classe do sistema operacional.


🧩 Os 4 componentes fundamentais de um banco relacional

(e como o DB2 os executa em escala real)

1️⃣ Tables – onde o dado mora

A tabela é a principal estrutura lógica do modelo relacional.

No DB2:

  • Criada com CREATE TABLE

  • Armazenada fisicamente em Tablespaces

  • Representa entidades reais do negócio:

    • CLIENTE

    • CONTA

    • TRANSACAO

🪺 Easter Egg
Você nunca acessa o dataset da tabela diretamente.
DB2 abstrai tudo — quem tenta “dar jeitinho” apanha 😈


2️⃣ Columns – o contrato do dado

As colunas definem:

  • Tipo

  • Tamanho

  • Regra de nulidade

CPF CHAR(11) NOT NULL SALDO DECIMAL(15,2) DT_ABERTURA DATE

💡 Dica Bellacosa
No DB2 z/OS, erro de modelagem vira dívida técnica de décadas.
Mainframe não perdoa definição mal pensada.


3️⃣ Rows – onde a vida acontece

Cada row é um fato real do negócio:

  • Um cliente

  • Uma conta

  • Uma transação às 14:32:10

No DB2:

  • Linhas são protegidas por locking avançado

  • Trabalham com commit, rollback e isolamento

  • Suportam milhares de acessos simultâneos

Comentário El Jefe
DB2 nasceu para concorrência massiva antes disso virar problema no mercado.


4️⃣ Keys & Relationships – a alma do modelo relacional

Aqui mora a inteligência:

  • Primary Key → identidade

  • Foreign Key → relacionamento

  • Indexes → performance

  • Constraints → integridade

🧠 Curiosidade histórica
Antes do DB2, muitos sistemas usavam arquivos hierárquicos (IMS).
O modelo relacional trouxe algo revolucionário:
👉 relacionar dados sem duplicar estrutura física.


DB2 Schema


🧱 O 5º elemento invisível (e essencial): SCHEMA

Se tabela é a casa…
Schema é o bairro inteiro.

📌 O que é Schema no DB2?

Schema é um namespace lógico que organiza objetos:

  • Tables

  • Views

  • Indexes

  • Procedures

  • Functions

ELJEFE.CLIENTE ELJEFE.CONTA ELJEFE.TRANSACAO

Sem schema, o DB2 seria como:

  • Dataset sem HLQ

  • PDS sem padrão

  • Ambiente pronto para desastre


⚙️ Funcionamento prático

  • Todo objeto pertence a um schema

  • Se não informado:

    • DB2 usa o CURRENT SQLID

SET CURRENT SQLID = 'ELJEFE'; SELECT * FROM CLIENTE;

Na prática:

SELECT * FROM ELJEFE.CLIENTE;

Comentário Bellacosa
Isso é HLQ de dataset aplicado ao mundo relacional.


🔐 Schema e Segurança

Schema também é governança:

  • Permissões por schema

  • Integração com RACF

  • Separação clara entre sistemas e times

🛡️ Dica El Jefe
Grande parte dos erros em produção não é SQL errado —
é schema errado.


🧠 Visão Jedi – tudo conectado

Agora o modelo completo:

SCHEMA └── TABLE ├── COLUMNS ├── ROWS └── KEYS / CONSTRAINTS
  • Schema organiza

  • Tabela estrutura

  • Coluna define

  • Linha materializa

  • Chave relaciona

Tudo isso sustentado por DB2 + z/OS + RACF.


🧪 Dicas práticas Bellacosa Mainframe

✔ Pense em volume e longevidade, não só no hoje
✔ Performance começa no CREATE TABLE
✔ DB2 é arquitetura, não só SQL
✔ Schema bem definido evita desastre silencioso
✔ Mainframe foi feito para não cair


🥚 Easter Eggs & Curiosidades finais

  • DB2 sobrevive a falhas que derrubariam qualquer stack moderna

  • Muitos padrões SQL nasceram no DB2

  • O otimizador do DB2 z/OS é referência mundial

  • COBOL + DB2 ainda move a maior parte do dinheiro do planeta


☕ Conclusão – DB2 é filosofia

Entender os componentes do modelo relacional é fácil.
Entender como o DB2 os executa em escala planetária é outra história.

No El Jefe, a regra é clara:

Quem domina DB2 no Big Iron, domina sistemas críticos de verdade.

Nos vemos no próximo café ☕
Bellacosa Mainframe


segunda-feira, 10 de junho de 2013

🌳 O Quintal dos Avós — Magia, Frutas e Liberdade em Plenos Anos 70

 



🌳 O Quintal dos Avós — Magia, Frutas e Liberdade em Plenos Anos 70

(por Bellacosa Mainframe — Série “Sempre um Isekai”, Capítulo IV)

Houve um tempo em que o mundo cabia dentro de um quintal.
E o meu era o quintal dos meus avós Pedro e Ana, um território sagrado onde a infância tinha sabor de fruta madura e cheiro de terra molhada.

Ali, cada canto escondia um segredo, cada árvore contava uma história, e cada manhã começava como se o sol estivesse nascendo só pra mim.




🍑 O reino encantado da nespereira

O quintal começava com uma nespereira, a árvore que marcava a fronteira entre o real e o imaginário.
Depois vinha uma parreira generosa, um limoeiro de sombra fria, uma uvaia curiosa, uma amoreira doce e uma goiabeira teimosa — todas elas testemunhas silenciosas das minhas primeiras aventuras.

No meio de tudo isso, havia galinheiro, chiqueiro, horta e espaço pra correr até cansar.
Para os olhos de um menino de cinco anos, aquele terreno era um universo inteiro.
Eu subia nos galhos, comia frutos direto do pé, observava os leitõezinhos crescendo mês a mês — sem imaginar que um dia fariam parte da ceia de Natal.

E quando chegava dezembro, o quintal se transformava num espetáculo:
vinte primos, meia centena de pessoas, muito barulho e risadas, mesas enormes e o perfume de comida feita com amor e lenha.
Era o grande evento do ano — o reboot da família, a atualização emocional do sistema.




🧰 O quartinho de ferramentas e o baloiço dos sonhos

No canto do quintal, havia um quartinho de ferramentas, que para mim era uma espécie de laboratório secreto de invenções.
Parafusos, chaves, engrenagens, pedaços de metal, velhos rádios desmontados — tesouros que eu explorava como um pequeno arqueólogo da curiosidade.

E, ao lado, o baloiço pendurado rm caibros na fronteira do cimento com a terra, uma escadinha com tres degraus levava rumo ao portal magico do quintal.
Ali, eu voava.
Subia e descia como se pudesse alcançar o céu, conversar com os passarinhos, ver o mundo inteiro por outro ângulo.
Era o meu sistema de escape, meu hypervisor de imaginação.

Às vezes, o vento trazia o riso da vizinha, o assobio do meu tio Pedrinho empinando pipas e arraias — e tudo se tornava magia pura.




🇧🇷 O Brasil lá fora

Enquanto isso, o mundo dos adultos fervia.
O país já sentia os primeiros espasmos da crise econômica, o milagre brasileiro começava a desbotar, e a ditadura militar, embora em seu ocaso, ainda lançava sombras de medo e silêncio.

Mas o quintal era meu firewall.
Ali dentro, a realidade tinha outro ritmo.
Entre o canto do galo e o ranger da corda do baloiço, eu aprendi que a liberdade não está nas ruas — está na alma de quem ainda consegue sonhar.




☕ Epílogo Bellacosa

Hoje, quando fecho os olhos, ainda ouço o estalar dos galhos, o ronco dos porcos, o bater das asas das galinhas.
O quintal dos meus avós foi meu primeiro data center emocional:
onde armazenei as memórias mais puras, onde compilei meus afetos, e onde aprendi que o tempo é só um ciclo de estação.

Entre uma nespereira e um limoeiro, descobri que a infância é o sistema operacional da alma.
Tudo que vem depois — amores, dores, conquistas — roda sobre ela.

E às vezes, quando o vento sopra do lado certo, juro que ainda escuto o eco distante do meu baloiço…
girando devagar, como se o tempo ainda tivesse paciência.

terça-feira, 4 de junho de 2013

🍡 PARTE 1 – DOCES OTAKU

 


🍡 PARTE 1 – DOCES OTAKU (10 itens)

El Jefe Midnight Lunch – Arquitetura doce em 31 bits de glicose


1) DANGO (だんご)

O docinho oficial da fofura japonesa.
Origem: Período Heian (794–1185).
O que é: Bolinhas de farinha de arroz, geralmente 3 ou 4 no espeto.
Sabores clássicos: Mitarashi (calda de shoyu doce), Hanami (coloridinhos rosa-branco-verde), Anko (pasta de feijão).
Anime: Clannad (e aí todo mundo já começa a chorar).
Curiosidade: No Japão, o dango é tão icônico que virou emoji.
Easter egg: As cores do “Hanami Dango” representam sakura (rosa), pureza (branco) e primavera (verde).
Comentário Bellacosa:
Um dango é tipo aquele arquivo VSAM redondinho que sempre retorna bem — docinho, consistente e com integridade de dados impecável.


2) PUDDING / PURIN (プリン)

O pudim japonês de caramelo que a gente sempre vê tremelicando nos animes.
Origem: Influência do crème caramel francês, adaptado no Meiji.
Ingredientes: Leite, ovos, açúcar e calda.
Anime: Cardcaptor Sakura, Neko Atsume, My Hero Academia (Mineta sequestrando pudim 🙄)
Curiosidade: O purin é tão popular que existe até Purin XL, tamanho “boss final”.
Easter egg: É comum o fã achar que purin é o PokéMon — mas aquele é “Purīn”, outro bicho.
Comentário Bellacosa:
Purin é o checkpoint restart da alma: bateu tristeza, chama o pudim e recompila a felicidade.


3) DORAYAKI (どら焼き)

O lanche oficial do Doraemon.
Origem: Período Meiji.
O que é: Duas panquecas fofas com pasta de feijão doce.
Anime: Doraemon, Shokugeki no Soma, Gintama
Curiosidade: A lenda diz que um samurai descansou sua espada numa frigideira, criando a forma do doce.
Easter egg: Nobita venderia a alma por um dorayaki.
Comentário Bellacosa:
Dorayaki é tipo um job JCL bem montado — duas partes fofas, recheio colante, e se você comer errado, vira dump no estômago.


4) TAIYAKI (たい焼き)

O peixinho doce mais famoso dos animes.
Origem: 1909, criado por Seijirō Kanbei em Tóquio.
O que é: Massa de waffle moldada em peixe, recheada com anko, creme ou chocolate.
Anime: K-on!, Naruto, Azumanga Daioh
Curiosidade: A cauda é a parte mais disputada.
Easter egg: No Japão existe o “Taiyaki sem recheio”, considerado heresia gastronômica.
Comentário Bellacosa:
Caso de uso ideal: cold start no inverno. Esquenta mão, alma e coração — igual IPL de manhã no CP-1.


5) MOCHI (餅)

Um dos doces mais antigos do Japão.
Origem: Século VIII.
Ingredientes: Arroz glutinoso socado até virar massa elástica.
Anime: Inuyasha, Sailor Moon, Tamako Market
Curiosidade: Mochi de Ano Novo matou mais velhinhos no Japão que muito vilão de shonen, porque é pegajoso.
Easter egg: Cada família tem seu próprio “batch job” para batê-lo no pilão (kagami-mochi).
Comentário Bellacosa:
Mochi é basicamente um dataset sticky — se cair na boca, cola até no raciocínio.


6) PARFAIT (パフェ)

A sobremesa mais exagerada e “instagramável” do Japão.
Origem: França → Japão trouxe, exagerou, otakizou.
O que é: Camadas de sorvete, frutas, chantilly, bolo, cereal e tudo que sobrar.
Anime: Love Live!, K-on!, The Melancholy of Haruhi Suzumiya
Curiosidade: Os cafés otaku fazem parfaits temáticos (Naruto, Miku, etc.).
Easter egg: Personagem que come parfait geralmente é meiga… ou psicopata fofinha.
Comentário Bellacosa:
Parfait é igual modernização de mainframe: muita camada, muito topping, mas se juntar tudo direitinho, vira poesia.


7) CASTELLA (カステラ)

Um bolo que nasceu em Portugal e virou símbolo do Japão.
Origem: Século XVI — missionários portugueses.
Ingredientes: Ovos, açúcar, mel e farinha.
Anime: Fate/Stay Night, Gintama
Curiosidade: O nome vem de “Pão de Castela”, dos portugueses.
Easter egg: Até hoje é famoso em Nagasaki, onde virou patrimônio culinário.
Comentário Bellacosa:
Castella é o “dump de infância” dos japoneses — memória boa guardada em formato de bolo.


8) ANMITSU (あんみつ)

Sobremesa refrescante do verão japonês.
O que é: Cubinhos de kanten (gelatina vegetal), frutas, anko, calda preta (kuromitsu).
Anime: Natsume Yuujinchou
Curiosidade: Tem mais fibra que muita salada de dieta.
Easter egg: parente próximo do mitsumame.
Comentário Bellacosa:
É tipo um DASD transparente com vários volumes — doce modular.


9) DAIFUKU (大福)

“Grande sorte” enrolada em mochi.
Origem: Período Edo.
O que é: Mochi recheado — geralmente anko, mas existem versões com morango (ichigo daifuku).
Anime: Shokugeki no Soma
Curiosidade: Em Tóquio existem lojas que vendem +200 variações.
Easter egg: Ichigo Daifuku aparece MUITO em Japão x Dia dos Namorados.
Comentário Bellacosa:
Daifuku é o PDS da doçaria: compacto, eficiente e sempre útil.


10) YATSUHASHI (八つ橋)

Doce clássico de Kyoto.
Origem: Século XVII.
O que é: Massa de arroz com canela (versão assada) ou macia com recheio (versão suave).
Anime: Tamako Market (Kyoto vibes).
Curiosidade: Tem sabor de aventura em templos antigos.
Easter egg: Presente típico que turista leva para casa.
Comentário Bellacosa:
É o tipo de doce que parece um job simples… mas bate com força na nostalgia.



sábado, 1 de junho de 2013

🟦 COBOL 4 vs COBOL 5 no IBM Mainframe

 


🟦 COBOL 4 vs COBOL 5 no IBM Mainframe

O compilador conservador vs o compilador sem piedade

“COBOL 4 aceita seu passado.
COBOL 5 exige que você pague por ele.”

— Bellacosa, 02:17 da manhã, após um RC=12


🧬 Visão geral rápida

AspectoCOBOL 4.xCOBOL 5.x
FilosofiaEvolução seguraModernização radical
Base técnicaMista (transição)LE-only
CompatibilidadeAltíssimaQuebra compatibilidade
PerformanceBoaExcelente
Tolerância a “jeitinhos”AltaZero
Indicado paraSistemas legadosSistemas modernos
Dor na migraçãoBaixaAlta (mas honesta)


🕰️ História resumida (contexto importa)

COBOL 4.x

  • Ponte entre o COBOL clássico e o moderno

  • Mantém compatibilidade

  • Ideal para recompilar sem reescrever

  • Estratégia: ganhar performance sem trauma

COBOL 5.x

  • Reescrito do zero

  • Totalmente 64 bits

  • Totalmente Language Environment (LE)

  • Estratégia: chega de passado mal resolvido

🥚 Easter-egg:

COBOL 5 não “evolui” o COBOL 4.
Ele substitui.


⚙️ Arquitetura interna (onde mora a diferença real)

COBOL 4

  • Compilador moderno, mas ainda tolerante

  • Suporta comportamentos históricos

  • Código objeto previsível

  • Ideal para ambientes mistos

COBOL 5

  • Backend totalmente novo

  • Otimização agressiva

  • Explora z13+

  • Assume que você escreve COBOL correto

💣 Tradução Bellacosa:

Se o código está errado, o COBOL 5 não vai fingir que está certo.


💥 Compatibilidade (a grande ferida)

COBOL 4

✔ Aceita código antigo
✔ Perdoa ambiguidade
✔ Mantém comportamento histórico

COBOL 5

❌ Quebra código legado
❌ Muda comportamento implícito
❌ Não aceita mais “funcionava assim”

Exemplos clássicos que quebram:

  • Dados mal alinhados

  • DEPEND ON inconsistente

  • MOVE implícito perigoso

  • Uso errado de REDEFINES

🥚 Easter-egg de guerra:

O mesmo código que roda há 30 anos pode ABENDAR no COBOL 5 sem mudar uma linha.


🚀 Performance

SituaçãoCOBOL 4COBOL 5
Batch pesadoBoa🔥 Excelente
Loops intensivosOk🚀 Muito melhor
CPU usageMenor que 3Menor que 4
EscalaLimitadaPensada para escala

👉 Se o objetivo é economizar MIPS, o COBOL 5 vence.


🧪 Exemplo conceitual

Código que “passa” no COBOL 4:

01 WS-NUM PIC 9(4). 01 WS-CHAR REDEFINES WS-NUM PIC X(4). MOVE 'ABCD' TO WS-CHAR. ADD 1 TO WS-NUM.

✔ COBOL 4: pode até rodar
❌ COBOL 5: comportamento indefinido → risco real

💡 COBOL 5 exige que você seja explícito.


🛠️ Parâmetros de compilação

COBOL 4

  • Mais permissivo

  • Ideal para legado

  • Bom para transição

COBOL 5

  • ARCH(n) obrigatório

  • OPTIMIZE agressivo

  • Sem modo “compatível”

🥚 Easter-egg técnico:

COBOL 5 não tem “modo COBOL 4”.
A IBM foi clara: corrija o código.


🧭 Quando usar cada um?

✔ Use COBOL 4 se:

  • Sistema é crítico

  • Código antigo e estável

  • Pouco budget para refatoração

  • Objetivo é ganho rápido e seguro

✔ Use COBOL 5 se:

  • Projeto novo

  • Modernização planejada

  • Uso de APIs, serviços, CI/CD

  • Quer performance máxima

  • Quer futuro


🧘 Estratégia Bellacosa recomendada

🥋 Caminho do Jedi Mainframe:

1️⃣ Recompile tudo em COBOL 4
2️⃣ Ative parâmetros rigorosos
3️⃣ Corrija warnings e comportamentos estranhos
4️⃣ Crie suíte de testes
5️⃣ Só então migre para COBOL 5

“Pular do 3 para o 5 é possível.
Mas você vai sangrar.”


🧠 Verdade final (sem marketing)

  • COBOL 4 é o porto seguro

  • COBOL 5 é o futuro inevitável

  • A dor do COBOL 5 vale a pena

  • Mas só para quem está preparado


🟦 Conclusão Bellacosa™

COBOL 4 mantém o legado vivo.
COBOL 5 prepara o legado para sobreviver.

Não existe “melhor versão”.
Existe a versão certa para o momento certo.


segunda-feira, 20 de maio de 2013

Uma tarde no zoo de Lisboa

Aventuras com o Barbinha no Zoologico


Nao sou o melhor pai do mundo, a bem da verdade queria ter aprendido a ser melhor pai, mas de todos os meus conhecimentos essa parte sou medíocre.

Depois do meu divorcio é ida para Italia, de tempos em tempos voltava a Portugal para visitar meu filho. E nosso programa principal é a ida ao jardim Zoológico de Lisboa.

Pena que as restrições de audio tiraram toda a graça do show com os leões marinhos.



Para aqueles que não conhecem o Zoológico de Lisboa é pequenino, porém muito rico em atraçoes, possui uma área de shows com golfinhos e leoes marinhos (acredito que as primeiras memorias divertidas do meu filho, foram feitas aqui ganhando beijos do leão marinho).

Outras atraçoes existentes são o teleférico que circula todo o perímetro, o show de aves exóticas, demonstração de animais e diversos cativeiros construídos da forma mais humana possível, tentando reproduzir o habitat natural.

A principal vantagem deste zoológico é sua posição estratégica ao lado de uma estação conjugada de Trem/Metro/Ónibus e estar próximo ao centro da cidade. Evitando com isso grandes deslocações e perda de tempo em transportes.

Na área externa existe uma grande praça de alimentação com diversos restaurantes, fliperamas e brinquedos para os miúdos, com muita sombra para repousar