Então, como você pode aprender, ganhar muito dinheiro, e salvar muitas agências estatais que precisam de um novo código para lidar com todos os novos programas de estímulo do governo?
Era uma vez, quando o mundo e os computadores eram novos, eu estava em um programa de grau associado para processamento de dados — não havia programas de “ciência da computação” na época — nos quais eu tinha que estudar contabilidade, matemática, estatística e três idiomas de computador: IBM/360 Basic Assembly Language, FORTRAN e COBOL. Nos anos 80, os alunos estavam sendo informados de que cobol era uma língua morta, e ninguém estava estudando mais.
Agora, em 2020, governos e bancos estão implorando por programadores COBOL, a linguagem que nunca morre.
Governadora Laura Kelly do Kansas disse:
“Muitos dos nossos Departamentos de Trabalho em todo o país ainda estão no sistema COBOL. Você conhece uma tecnologia muito, muito antiga”, disse Kelly na terça-feira. “Nosso Departamento do Trabalho reconheceu que isso era um problema e tinha iniciado a modernização, e, infelizmente, isso é algo que leva tempo. Este (vírus) interferiu e eles tiveram que cessar a transição para um sistema muito mais robusto. Então eles estão operando em coisas muito velhas.
O governador de Nova Jersey, Phil Murphy, fez uma aparição na televisão para implorar para que os programadores da COBOL ajudassem.
Então, como você pode aprender COBOL, ganhar muito dinheiro, e salvar muitas agências estatais que precisam de um novo código para lidar com todos os novos programas de estímulo do governo?
Vamos descobrir.
Cobol? O que é esse COBOL?
COBOL significa COmmon Business Oriented Language. Uma das primeiras línguas de alto nível, foi montada por um grupo patrocinado pelo Departamento de Defesa para desenvolver uma linguagem de negócios comum. Esse grupo passou a ser chamado de CODASYL — o Comitê de Linguagens de Sistemas de Dados — e definiu uma “linguagem comum orientada para negócios”, a partir do FLOW-MATIC de Grace Hopper e outras linguagens, incluindo o AIMACO da Univac e o COMTRAN da IBM. A linguagem resultante passou por mais revisões, mas rapidamente se tornou a linguagem dominante para a construção de sistemas de negócios, e tem permanecido dominante desde então.
Muitas empresas ainda usam COBOL, incluindo IBM, UPS e Cigna. Mario Ceballos, engenheiro de software da Cigna, me disse: “A sintaxe é mantida simples para permitir que não-programadores (“The Business”) leiam e compreendam. COBOL é feito para ser explícito, porque não deve haver espaço para suposições.
Claro, teve seus críticos. Em 1975, Edsgar Dijkstra proclamou famosamente que “o uso de COBOL aleija a mente; seu ensino deve, portanto, ser considerado como um crime[sic].” Isso, sem dúvida, levou ao declínio do ensino de COBOL nas universidades, mas permaneceu a linguagem empresarial dominante.
Mas encontrar pessoas com habilidades COBOL pode ser difícil. “O mainframe é uma plataforma muito difícil de aprender, e isso se deve ao custo”, disse Ceballos. “As pessoas físicas não têm dinheiro para pagar para alugar um mainframe. Uma quantidade muito pequena de escolas ensinam cursos sobre mainframes e COBOL. Quando a IBM começou o trabalho remoto e a terceirização, eles pararam de incentivar escolas americanas a ministrar cursos em Mainframes e COBOL. A piscina de talentos mudou de on-shore para off-shore. Qualquer talento local será caro com suas taxas de consultoria.”
Por que a COBOL ainda é dominante?
Comparado com as linguagens de programação comuns hoje em dia, o COBOL é diferente, e de certa forma muito limitado: você não pode fazer alocação dinâmica de memória, você não pode acessar facilmente recursos de baixo nível do sistema operacional ou arquitetura de computador particular. As formas mais comuns da linguagem não podem usar recursão. Você nunca iria querer escrever um compilador em COBOL. Um estudante de ciência da computação apresentado com COBOL ficaria chocado.
Este é um erro de categoria. Na terminologia moderna, o COBOL é na verdade uma linguagem específica de domínio,específica para o domínio particular da programação de negócios. Robert Glass identificou maneiras específicas em que o COBOL é mais adequado à programação de negócios do que a línguas de propósito geral, entre elas:
Uma linguagem orientada para os negócios precisa declarar, gerenciar e manipular dados heterogênios. Os programas de negócios misturam cordas de comprimento fixo e variável, pontos flutuantes, inteiros e dados decimais com abandono selvagem em estruturas de registros complicadas, muitas vezes com peças variáveis. Os programadores de banco de dados estão familiarizados com algumas dessas questões, e ferramentas de mapeamento objeto-relacional tropeçam nessas complexidades regularmente.
Os dados comerciais e financeiros precisam ser gerenciados usando verdadeiros tipos de dados decimais. Os sistemas contábeis devem estar corretos até o último dígito decimal e precisam reproduzir exatamente os resultados do cálculo manual; números convencionais de pontos flutuantes levam a complexidades e erros.
Uma linguagem orientada para os negócios precisa acessar e manipular grandes quantidades de dados estruturados com registros mantidos externamente.
Agora, nada disso está além das capacidades das linguagens de programação de propósito geral, é claro. Mas na COBOL, é nativo da língua.
Podemos debater a necessidade de COBOL, mas o fato é que existem centenas de bilhões de linhas de COBOL, e as tentativas de migrar para longe da COBOL não foram geralmente bem sucedidas.
Seu primeiro programa COBOL
Os arquivos de origem são arquivos de texto simples. Ter um editor de programação útil com suporte a idiomas é tão conveniente para o COBOL quanto qualquer outro idioma, se não mais. A coisa mais fácil para um iniciante é usar o Visual Studio Code, o único concorrente para meus afetos desde o EMACS.
Há surpreendentemente muitas extensões VSCode para COBOL. Agora, estou usando o colorador de código bitlang e o suporte à linguagem Broadcom COBOL. Muitos dos outros são destinados à programação de pessoas em um ambiente de mainframe, mas isso adiciona complexidade que não precisamos para uma introdução.
Então, resumindo, para começar a experimentar com COBOL:
Baixe e instale o Visual Studio Code se você ainda não tiver.
Instale as extensões de suporte de linguagem bitlang.cobol e Broadcom COBOL.
Insta
.png)
.png)
.png)
.png)