| Bellacosa Mainframe e o passo a passo ao MS Copilot |
☕ Um Café no Bellacosa Mainframe
Padawan COBOL e o Copilot — Um Guia Passo a Passo para Sair do “O Que Esse Código Faz?” até “Crie, Teste e Explique a Alteração”
Ou: como usar o GitHub Copilot sem transformar o Jedi iniciante em operador de copiar-e-colar — e por que a primeira regra da Força é simples: o Copilot sugere, mas quem responde pelo código é você
Se você está começando em COBOL e ouviu falar de Copilot, é fácil imaginar duas coisas extremas.
A primeira:
“Agora não preciso mais aprender COBOL.”
A segunda:
“Se eu usar IA, nunca vou aprender de verdade.”
As duas estão erradas.
O melhor uso do Copilot para um iniciante é como instrutor auxiliar, navegador de código, explicador de sintaxe, gerador de exemplos e parceiro de testes.
Ele pode acelerar seu aprendizado.
Mas também pode acelerar seus erros.
A diferença está no método.
Então, para um Padawan COBOL, vamos seguir uma progressão segura:
ENTENDER
↓
EXPLICAR
↓
PERGUNTAR
↓
SUGERIR
↓
ALTERAR
↓
TESTAR
↓
REVISARNão comece pela última etapa.
Começar diretamente com:
“Faça tudo para mim”
é aproximadamente o equivalente a entregar um sabre de luz para alguém que acabou de descobrir qual lado segura.
Vamos por partes.
1. Primeiro passo — entenda qual Copilot você realmente quer usar
Quando falamos em programação, o produto mais relevante é o GitHub Copilot.
Ele é diferente do Microsoft 365 Copilot.
Pense assim:
Microsoft 365 Copilot
→ Word
→ Excel
→ Outlook
→ Teams
→ documentos
→ reuniões
→ trabalho corporativo
GitHub Copilot
→ código
→ IDE
→ repositório
→ testes
→ desenvolvimentoPara aprender COBOL, você provavelmente estará mais interessado no GitHub Copilot integrado a um editor ou IDE.
Exemplos comuns:
VS Code
Visual Studio
JetBrains
GitHubNo universo COBOL moderno, o VS Code é especialmente relevante quando você trabalha com extensões como:
IBM Z Open Editor
Zowe Explorer
Enterprise Developer ToolsDependendo da sua empresa e ambiente.
2. Segundo passo — instale e autentique o GitHub Copilot
No VS Code, o fluxo típico é simples.
Abra:
ExtensionsProcure por:
GitHub CopilotInstale.
Depois autentique sua conta GitHub.
O editor normalmente solicitará login.
Depois disso, o Copilot pode funcionar em duas formas principais:
INLINE COMPLETIONe:
CHATInline Completion significa:
você começa a escrever e ele sugere continuação.
Chat significa:
você pergunta algo diretamente.
Para aprender COBOL, recomendo começar mais pelo Chat do que pelo autocomplete.
Por quê?
Porque o Chat obriga você a formular perguntas.
E fazer boas perguntas é uma das melhores formas de aprender.
3. Terceiro passo — comece usando o Copilot como professor
Pegue um programa COBOL simples.
Exemplo:
IDENTIFICATION DIVISION.
PROGRAM-ID. HELLO01.
DATA DIVISION.
WORKING-STORAGE SECTION.
01 WS-NOME PIC X(20).
PROCEDURE DIVISION.
MOVE 'PADAWAN COBOL' TO WS-NOME
DISPLAY 'OLA ' WS-NOME
STOP RUN.Agora, em vez de pedir:
“Melhore isso.”
pergunte:
“Explique este programa linha por linha para alguém que está começando em COBOL.”
Excelente.
Depois:
“Qual é a função da IDENTIFICATION DIVISION?”
Depois:
“Por que WS-NOME usa PIC X(20)?”
Depois:
“O que aconteceria se eu usasse PIC 9(20)?”
Esse tipo de pergunta transforma Copilot em ferramenta de aprendizagem.
4. Quarto passo — aprenda COBOL por comparação
Uma técnica excelente é pedir comparações.
Por exemplo:
“Compare PIC X(10), PIC 9(10) e PIC S9(7)V99.”
O Copilot pode explicar:
PIC X(10)
→ texto
PIC 9(10)
→ número inteiro
PIC S9(7)V99
→ número com sinal e duas casas decimais implícitasDepois peça exemplos.
“Mostre um exemplo de MOVE válido e inválido para cada um.”
Essa abordagem é muito mais poderosa do que decorar sintaxe.
5. Quinto passo — use o Copilot para entender código legado
Agora entramos no verdadeiro planeta COBOL.
Código legado.
Você recebe algo como:
IF WS-STATUS = 'A'
PERFORM 3000-PROCESSA
ELSE
MOVE 12 TO WS-RETURN-CODE
PERFORM 9000-ERRO
END-IFUm iniciante pode olhar e pensar:
“O que exatamente está acontecendo aqui?”
Pergunte:
“Explique o fluxo deste trecho COBOL em linguagem simples.”
Depois:
“Quais condições levam ao PERFORM 9000-ERRO?”
Depois:
“Quais campos eu deveria investigar antes de alterar este código?”
Isso é ótimo.
Você está usando IA como navegador de fluxo.
6. Sexto passo — nunca pergunte só “o que isso faz?”
A melhor pergunta é:
“O que isso faz, quais premissas assume e o que pode dar errado?”
Essa diferença é enorme.
Compare:
Pergunta pobre:
"O que este código faz?"
Pergunta melhor:
"O que este código faz,
quais entradas ele espera,
quais saídas produz,
quais condições de erro existem,
e quais riscos aparecem se eu alterá-lo?"Isso força uma análise mais completa.
7. Sétimo passo — peça ao Copilot para criar um mapa do programa
Para programas maiores, peça:
“Crie um mapa lógico deste programa COBOL.”
Exemplo esperado:
MAIN
|
+-- 1000-INICIALIZA
|
+-- 2000-LE-ARQUIVO
|
+-- 3000-PROCESSA
|
+-- 4000-GRAVA-SAIDA
|
+-- 9000-FINALIZADepois pergunte:
“Qual parágrafo controla o loop principal?”
Ou:
“Qual parágrafo pode alterar WS-RETURN-CODE?”
Isso ajuda muito a compreender programas antigos.
8. Oitavo passo — use o Copilot para aprender FILE SECTION
COBOL e arquivos são inseparáveis.
Exemplo:
FILE SECTION.
FD ARQ-CLIENTE.
01 REG-CLIENTE.
05 CLI-ID PIC 9(8).
05 CLI-NOME PIC X(30).
05 CLI-SALDO PIC S9(7)V99.Pergunte:
“Explique a diferença entre FD, 01 e 05.”
Depois:
“Mostre como este registro ficaria em bytes.”
Depois:
“Quantos bytes esse registro ocupa?”
Depois:
“Explique o que significa V em PIC S9(7)V99.”
Esse tipo de aprendizado é extremamente eficiente.
9. Nono passo — peça exemplos pequenos
Uma regra essencial para aprender com IA:
não peça um sistema inteiro.
Peça pequenos exemplos.
Ruim:
“Crie um sistema bancário COBOL.”
Bom:
“Crie um exemplo COBOL que leia um saldo, aplique uma taxa e exiba o resultado.”
Depois evolua.
PASSO 1
DISPLAY simples
PASSO 2
IF
PASSO 3
PERFORM
PASSO 4
arquivo
PASSO 5
subprograma
PASSO 6
DB2
PASSO 7
CICSAprendizado incremental é muito melhor.
10. Décimo passo — use Copilot para aprender PERFORM
PERFORM costuma confundir iniciantes.
Pergunte:
“Explique PERFORM como se eu conhecesse loops em Java ou Python.”
Depois peça exemplos:
PERFORM 1000-PROCESSADepois:
PERFORM 1000-PROCESSA
UNTIL WS-FIM = 'S'Depois:
PERFORM VARYING WS-I FROM 1 BY 1
UNTIL WS-I > 10Compare.
Esse é um ótimo uso do Copilot.
11. Décimo primeiro passo — use IA para entender mensagens de compilação
Essa é uma das melhores aplicações para um Padawan.
Imagine receber:
IGYPS2121-SEm vez de entrar em pânico, pergunte:
“Explique esta mensagem de compilação COBOL e mostre causas prováveis.”
Mas envie contexto.
Não diga apenas:
“Erro IGYPS2121-S.”
Diga:
“Estou compilando este trecho COBOL e recebi IGYPS2121-S nesta linha. Explique a provável causa sem inventar.”
Melhor ainda:
“Mostre três hipóteses e diga como validar cada uma.”
Isso transforma a resposta em troubleshooting.
12. Décimo segundo passo — Copilot não substitui o compilador
Aqui está uma regra gravada em pedra.
Copilot pode dizer:
“Esse código parece correto.”
O compilador diz:
ERRORQuem ganha?
O compilador.
Sempre.
Por quê?
Porque Copilot trabalha com probabilidade.
O compilador trabalha com gramática e regras formais.
Então:
COPILOT
→ hipótese
COMPILADOR
→ evidênciaNão confunda os dois.
13. Décimo terceiro passo — peça ao Copilot para gerar testes
Quando você já entende o código, pergunte:
“Quais cenários de teste devo criar?”
Exemplo:
IF WS-SALDO < ZERO
MOVE 'E001' TO WS-ERRO
END-IFPeça:
“Crie cenários de teste para este IF.”
Resposta esperada:
Caso 1
SALDO = 100
Resultado esperado: sem erro
Caso 2
SALDO = 0
Resultado esperado: sem erro
Caso 3
SALDO = -1
Resultado esperado: E001
Caso 4
SALDO = valor mínimo permitido
Resultado esperado: validar limiteIsso ensina uma habilidade importantíssima:
pensar em bordas.
14. Décimo quarto passo — peça testes antes da implementação
Essa técnica é excelente.
Antes de pedir código, diga:
“Antes de implementar, liste os testes que definem o comportamento correto.”
Isso força você e o Copilot a concordarem sobre o problema primeiro.
Fluxo ideal:
REQUISITO
↓
TESTES
↓
IMPLEMENTAÇÃO
↓
EXECUÇÃO
↓
REVISÃOMuito melhor que:
"Código aí qualquer coisa."15. Décimo quinto passo — use Copilot para revisar seu código
Depois que você escrever alguma coisa, pergunte:
“Revise este código sem reescrevê-lo.”
Isso é importante.
Porque se você disser:
“Melhore”
o Copilot pode mudar tudo.
Peça:
“Aponte erros, riscos e melhorias, mas não altere o código ainda.”
Primeiro diagnóstico.
Depois intervenção.
16. Décimo sexto passo — peça explicação antes da correção
Essa é uma regra maravilhosa para iniciantes.
Em vez de:
“Corrija meu programa.”
diga:
“Explique primeiro por que está errado. Depois mostre a menor correção possível.”
Assim você aprende.
Exemplo:
MOVE 'ABC' TO WS-NUMEROPergunte:
“Por que isso é problemático se WS-NUMERO for PIC 9(3)?”
Depois peça correção.
Isso evita o comportamento:
CTRL+C
CTRL+V
Ctrl+Esperança17. Décimo sétimo passo — aprenda SQL embutido com ajuda do Copilot
Quando entrar em COBOL + Db2, use IA como tutor.
Exemplo:
EXEC SQL
SELECT NOME
INTO :WS-NOME
FROM CLIENTE
WHERE ID = :WS-ID
END-EXEC.Pergunte:
“Explique o papel das host variables.”
Depois:
“O que significa SQLCODE +100?”
Depois:
“Qual diferença entre erro de compilação COBOL e erro SQL?”
Depois:
“O que o precompiler faz?”
Isso ajuda muito a montar o mapa mental.
18. Décimo oitavo passo — use Copilot para explicar JCL
Padawan COBOL rapidamente encontra JCL.
Exemplo:
//JOB01 JOB ...
//STEP01 EXEC PGM=MEUPGM
//STEPLIB DD DSN=...
//SYSOUT DD SYSOUT=*
//ARQENT DD DSN=...Pergunte:
“Explique cada DD e sua relação com o programa COBOL.”
Depois:
“Qual arquivo COBOL corresponde a ARQENT?”
Isso conecta:
COBOL
ASSIGN
SELECT
FD
JCL
DD
DATASETEsse casamento é essencial.
19. Décimo nono passo — use Copilot para estudar CICS sem medo
Quando chegar em CICS, não peça:
“Explique CICS.”
É amplo demais.
Pergunte:
“Explique esta instrução EXEC CICS READ.”
Depois:
“O que é RESP?”
Depois:
“Qual diferença entre LINK e XCTL?”
Depois:
“Explique COMMAREA.”
Copilot funciona melhor quando você quebra o monstro em pedaços.
20. Vigésimo passo — aprenda a formular prompts técnicos
Aqui está um modelo de prompt excelente.
Contexto:
Sou iniciante em COBOL.
Objetivo:
Quero entender este trecho.
Faça:
1. explique linha por linha;
2. identifique variáveis relevantes;
3. descreva o fluxo;
4. mostre possíveis erros;
5. dê um exemplo de entrada e saída;
6. não altere o código ainda.Essa estrutura é simples e poderosa.
21. Um prompt Bellacosa para estudar código legado
Use:
Analise este programa COBOL como um instrutor. Primeiro descreva sua finalidade provável. Depois identifique divisions, sections, paragraphs, arquivos, copybooks, chamadas externas e variáveis importantes. Crie um mapa do fluxo principal. Explique os pontos difíceis para um iniciante. Não modifique nada. Se alguma conclusão não puder ser confirmada pelo código disponível, diga explicitamente que é uma hipótese.
Essa última frase é ouro:
“diga explicitamente que é uma hipótese.”
Porque IA adora completar lacunas.
22. Um prompt para debugging
Use:
Estou recebendo este erro ao compilar ou executar. Analise o código e a mensagem. Liste as causas possíveis em ordem de probabilidade. Para cada causa, mostre como validar. Não sugira alterações antes de explicar a causa.
Excelente para aprender investigação.
23. Um prompt para criar alteração
Quando estiver mais confiante:
Analise primeiro o impacto desta alteração. Identifique campos, paragraphs, copybooks, arquivos, SQL, chamadas externas e testes potencialmente afetados. Proponha a menor mudança possível. Explique antes de gerar o código.
Isso evita alterações espalhafatosas.
24. Um prompt para testes
Crie uma matriz de testes para esta regra COBOL. Inclua caminho feliz, zero, valores limites, dados inválidos, erros de arquivo, condições não encontradas e regressões possíveis. Para cada teste, informe entrada, condição e resultado esperado.
Muito útil.
25. Um prompt para revisão
Revise este código COBOL como um revisor sênior. Não reescreva ainda. Identifique problemas de lógica, legibilidade, tratamento de erro, risco de truncamento, tipos incompatíveis, uso de campos, loops e possíveis impactos de negócio.
Agora você começa a utilizar Copilot como mentor técnico.
26. O perigo do autocomplete automático
Inline suggestion é útil.
Mas para iniciantes pode virar armadilha.
Você digita:
IF WS-STATUS =Copilot sugere:
IF WS-STATUS = 'A'
PERFORM PROCESSA-ATIVO
END-IFParece perfeito.
Mas de onde veio 'A'?
Talvez no seu sistema:
A = BLOQUEADOe:
L = LIBERADOO Copilot pode gerar código sintaticamente elegante e semanticamente errado.
Regra:
nunca aceite uma regra de negócio só porque parece plausível.
27. O truque Jedi: pergunte “como você sabe?”
Depois de uma resposta, pergunte:
“Que parte do código sustenta essa conclusão?”
Ou:
“Isso está explícito no código ou você inferiu?”
Esse é um truque excelente.
Ele obriga a separar:
FATOde:
INFERÊNCIA28. Nunca passe segredos
Não cole no Copilot:
senhas
tokens
chaves
credenciais
dados de clientes
dados regulados
informações sensíveisEspecialmente em ambiente empresarial, siga as políticas da organização.
O Padawan precisa dominar o sabre.
Mas também precisa saber onde não balançá-lo.
29. Não use Copilot para driblar revisão
Outro erro:
“Se a IA escreveu, deve estar certo.”
Não.
O correto é:
IA GERA
↓
VOCÊ REVISA
↓
COMPILA
↓
TESTA
↓
REVISA RESULTADONunca:
IA GERA
↓
PRODUÇÃOEssa linha deveria produzir um alarme equivalente a:
ICH408I30. Um laboratório simples para começar
Crie um programa pequeno:
IDENTIFICATION DIVISION.
PROGRAM-ID. SALDO01.
DATA DIVISION.
WORKING-STORAGE SECTION.
01 WS-SALDO PIC S9(5)V99 VALUE 100.00.
01 WS-STATUS PIC X(10).
PROCEDURE DIVISION.
IF WS-SALDO < ZERO
MOVE 'NEGATIVO' TO WS-STATUS
ELSE
MOVE 'OK' TO WS-STATUS
END-IF
DISPLAY WS-STATUS
STOP RUN.Agora siga esta sequência:
1. Peça explicação linha por linha.
2. Pergunte o que significa S9(5)V99.
3. Pergunte por que ZERO funciona.
4. Peça três testes.
5. Altere WS-SALDO manualmente.
6. Execute.
7. Compare o resultado com a previsão.
8. Peça uma melhoria.
9. Entenda a melhoria.
10. Só depois aceite a mudança.Esse laboratório ensina COBOL e ensina a usar IA ao mesmo tempo.
31. Exercício Jedi 2 — arquivo sequencial
Depois faça um programa com:
INPUT
CLIENTE
SALDO
STATUSPeça ao Copilot:
“Ajude-me a criar o layout, mas explique cada PIC.”
Depois:
“Ajude-me a montar SELECT, FD, OPEN, READ e CLOSE.”
Mas não peça tudo de uma vez.
Construa passo a passo.
Assim você aprende a ligação:
ENVIRONMENT DIVISION
↓
SELECT
↓
FILE SECTION
↓
FD
↓
READ
↓
JCL DD32. Exercício Jedi 3 — Db2
Crie uma consulta simples.
Pergunte:
“Como transformar este SELECT em SQL embutido COBOL?”
Depois:
“Onde entra SQLCA?”
Depois:
“Como tratar SQLCODE +100?”
Depois:
“Como tratar SQLCODE negativo?”
Você estará usando Copilot não apenas para escrever.
Estará usando para construir conhecimento conectado.
33. Quando usar Agent Mode?
Somente depois de dominar bem o básico.
Agent Mode pode trabalhar em várias etapas.
Exemplo:
“Adicione validação de saldo negativo e crie testes.”
O agente pode:
analisar arquivos
↓
editar
↓
executar build
↓
rodar testes
↓
corrigirIsso é poderoso.
Para iniciante, também é perigoso.
Porque várias mudanças podem acontecer sem você entender.
Use inicialmente em projetos pequenos e controlados.
34. Antes de usar agente, peça plano
Regra:
Planeje antes de executar.
Prompt:
“Não faça alterações ainda. Primeiro analise o repositório e mostre o plano.”
Leia o plano.
Pergunte:
“Por que precisa alterar esse arquivo?”
Depois autorize.
Esse comportamento aproxima você de engenharia profissional.
35. Quando o Copilot errar, comemore um pouco
Sim.
Errar pode ensinar muito.
Se ele sugerir:
MOVE WS-TEXTO TO WS-NUMEROe der erro, investigue.
Pergunte:
“Por que sua sugestão anterior falhou?”
Você aprende:
tipos
PIC
conversão
truncamento
data exceptionsUma IA perfeita seria um professor pior.
Os erros criam oportunidades de debugging.
36. O Padawan precisa aprender a desconfiar
Uma boa relação com Copilot não é confiança absoluta.
É confiança calibrada.
Use esta escala:
EXPLICAÇÃO CONCEITUAL
→ confiança moderada
SINTAXE
→ validar
REGRA DE NEGÓCIO
→ validar fortemente
SEGURANÇA
→ validar fortemente
PRODUÇÃO
→ revisão obrigatóriaQuanto maior o impacto, menor deve ser sua disposição em aceitar algo sem evidência.
37. Uma rotina diária de 30 minutos
Para aprender COBOL com Copilot:
10 min
Leia código sozinho.
5 min
Anote o que você acha que acontece.
5 min
Pergunte ao Copilot.
5 min
Compare as explicações.
5 min
Execute ou teste.O ponto mais importante:
tente entender antes de perguntar.
Se você pergunta primeiro, seu cérebro pode entrar em modo espectador.
38. A regra dos três “porquês”
Para qualquer resposta importante, pergunte:
Por quê?
Como você sabe?
Como eu posso validar?Essa tríade vale ouro.
Exemplo:
Copilot:
“Esse campo pode sofrer truncamento.”
Você:
“Por quê?”
Depois:
“Como você sabe?”
Depois:
“Como posso demonstrar isso com um teste?”
Pronto.
Você transformou uma resposta em aprendizado.
39. Copilot como mestre, não como muleta
Use Copilot para:
EXPLICAR
COMPARAR
SUGERIR
TESTAR
REVISAR
INVESTIGAREvite depender dele para:
PENSAR POR VOCÊ
VALIDAR NEGÓCIO POR VOCÊ
DECIDIR PRODUÇÃO POR VOCÊEssa distinção será cada vez mais importante.
40. O caminho do Padawan
Eu resumiria o treinamento assim:
NÍVEL 1
"Explique."
NÍVEL 2
"Dê exemplo."
NÍVEL 3
"Compare."
NÍVEL 4
"Encontre o erro."
NÍVEL 5
"Sugira uma solução."
NÍVEL 6
"Crie testes."
NÍVEL 7
"Faça a alteração."
NÍVEL 8
"Execute o ciclo."
NÍVEL 9
"Revise o agente."
NÍVEL 10
"Governança."Não pule do nível 1 para o 8.
Epílogo — o Padawan, o Copilot e o velho terminal verde
Imagine um jovem programador sentado diante de um terminal.
À esquerda:
COBOLÀ direita:
COPILOTO iniciante pergunta:
“Você pode fazer isso por mim?”
O velho mestre no fundo do CPD responde:
“Pode.”
O Padawan sorri.
Então o mestre completa:
“Mas primeiro descubra por que ele fez.”
Essa é a diferença entre alguém que usa IA e alguém que aprende engenharia usando IA.
O Copilot pode completar uma linha.
Pode explicar um programa.
Pode sugerir uma função.
Pode criar testes.
Pode encontrar erros.
Pode, cada vez mais, alterar projetos inteiros.
Mas há uma habilidade que continua sendo sua:
entender o sistema pelo qual você é responsável.
No mundo COBOL, onde uma linha aparentemente inocente pode tocar folha de pagamento, cobrança, estoque, seguro, cartão, governo ou conta bancária, isso não é filosofia.
É requisito operacional.
Então use o Copilot.
Use muito.
Pergunte.
Experimente.
Quebre código de laboratório.
Compile.
Teste.
Discorde dele.
Peça explicações.
E quando ele disser:
“A alteração está pronta.”
faça como qualquer Jedi do mainframe faria.
Olhe para o código.
Olhe para os testes.
Olhe para o retorno.
Tome um gole de café.
E pergunte:
“Pronto segundo quem?”
☕⚔️💻