By Salgado on 17th setembro

ATENÇÃO: 

Senhores pais, esse artigo não é recomendado para menores de 40 anos

Prezados amigos e leitores, de vez em quando alguém se lembra do tal do COBOL, ou do inesquecível COBOL, lança a dúvida e, pronto, reacende aquelas velhas e famosas questões: “…o COBOL morreu? … o COBOL não morreu? … quem disse que o COBOL morreu?

… vez por outra, como o nado dos golfinhos, esse tema vem à tona …

Com certeza esses questionamentos não partem dos que há muitos anos vivem às voltas com essa linguagem aceitando, equacionando e resolvendo (programando) todos os diferentes tipos de desafios de desenvolvimento com essa linguagem cinquentona. E, mais do que depressa vemos levantar de um lado, um grupo ora meio calvo, ora de cabelos brancos, ora um misto dos dois, que por se sentir ofendido ou incomodado, ostenta suas armas e escudos numa posição meio que defensiva, ou meio que agressiva.

Que tal darmos um pouco de ouvido às partes? Realmente existe uma forte corrente de não simpatizantes, até por conta de sua idade e dos recursos em meio aos quais eles cresceram e foram criados. E então levanta-se a alegação de que em COBOL escreve-se muito, muitas linhas (!!!???). O que temos a contra-argumentar para esses é que isso é uma das características principais da linguagem com suas Divisões e Seções, e que contribuem para uma boa arrumação e disposição de suas partes, componentes e funcionalidades. Será que poderíamos chamar de auto-documentação?

Será que não podemos ver isso sob uma outra lente, sob uma outra abordagem e bem atual? 

Numa época em que muito se fala em Métodos Ágeis, Scrum, XP (eXtreme Programming), TDD (Test Driven Development), FDD (Function Driven Development) etc, e que se defende uma das premissas do Manifesto Ágil de que “código funcionando é melhor do que uma documentação bonita”, falarmos de uma linguagem praticamente auto-documentável como o COBOL e questionarmos sua aplicabilidade, usabilidade, estabilidade e durabilidade/eternidade, acho que não tem muito a ver com o que se observa e se vê por aí, mesmo com as muitas “ameaças” ou alternativas destes outros recursos mais “modernosos”.

Creio que devemos respeitar todas as linguagens e ferramentas de desenvolvimento, assim como as demais plataformas de hardware e de sistema operacional com suas caraterísticas intrínsecas. Existe espaço e uma legião de simpatizantes para todas elas; até porque isso abre um grande leque de opções de tecnologias, dando uma oxigenada bastante saudável, redefinindo parâmetros e conceitos em nossa “massa cinzenta”.

E pensar que já estivemos restritos a umas poucas linguagens: Autocoder, Assembler, Cobol, Fortran, PL/1, RPG. Hoje, sem muito esforço, somos capazes de mencionar algumas dezenas de linguagens, ferramentas ou plataformas de desenvolvimento, nos mais distintos cenários operacionais.

Confesso até que isso – essa imensa diversidade de recursos a serem utilizados – às vezes, nos conduz à situações bem curiosas. Lembro-me até de uma passagem bem interessante: certa vez, precisei acessar um colega de trabalho bem mais novo para tirar umas dúvidas sobre o acesso pelo COBOL a arquivos tradicionais (tipo VSAM-like) na plataforma UNIX – no caso, era o AIX da IBM. E, ao formular a pergunta sobre o acesso a dados ele respondeu rapidamente, ou sem deixar a bola cair, como se costuma dizer: ora, usa-se SELECT, INSERT, etc … E eu retruquei: mas não estou falando de Banco de Dados Relacional; e ele, mais surpreso ainda, e mais do que depressa exclamou: mas como assim? Como não é banco de dados relacional?

Teci alguns comentários, fiz algumas considerações e chegamos a um consenso. E, passado o episódio, ríamos muito quando nos encontrávamos e relembrávamos da cena. E ele não estava errado não; afinal, no bondinho que caminha sobre os trilhos da estrada evolutiva da tecnologia, ele havia embarcado numa parada bem depois da minha e não teve que “aturar” uns passageiros meio chatos (ou seriam exigentes?) chamados SAM, ISAM, DAM/BDAM, ESDS, KSDS, RRDS. Mas em verdade eles não eram chatos não; até que não. Tinham lá sua maneira de ser e de agir, suas manias, seus hábitos, suas posturas e reações, mas definitivamente não eram chatos.

A forma de nos aproximarmos deles, de cumprimentá-los e de acessarmos e recorrermos a eles era um pouco diferente, talvez bem mais formal, logicamente seguindo um certo protocolo mais antigo: tinha um tal de OPEN para começar a conversa, e depois um GET ou um PUT, ou talvez um READ ou um WRITE, sei lá. Talvez tivéssemos um pouquinho mais de trabalho, agindo com mais educação, respeito, diplomacia, sem nos intrometermos muito em suas coisas, em seus afazeres e em suas reações. Às vezes não nos davam muita satisfação sobre o fazer ou não fazer, o sucesso ou a falha, mas … paciência, tínhamos que conviver com aquele ar assim meio que de misteriosos, de meias palavras …

Já com os passageiros atuais, mais “moderninhos”, mais simpáticos, afáveis, metidos a rápidos, ágeis e demonstrando muita dinâmica, podemos até ser mais diretos nos diálogos, sem grandes protocolos e cerimônias, com bem mais intimidade. Podemos sair sapecando logo um SELECT, um INSERT, quem sabe até um UPDATE, desde de que cercado de alguns cuidados, ou até mesmo um DELETE bem mais ousado.

E eles, mais atenciosos acabam cumprindo à risca o que solicitamos sem nos dar muito trabalho. E, para nossa satisfação, nos entregam ou devolvem o que lhes foi pedido numa prática e funcional bandeja – como diriam os comerciais da TV – e que em algumas lojas costumam chamar de “answer set”, mas que em lojas mais simples e populares, sem muito luxo ou pompa chamam de “conjunto resposta”.

E pensar que até por essa mudança de hábitos e costumes esse camaleão cinquentão chamado COBOL teve que passar: das mesuras e protocolos lá pelos idos dos anos 80 e início dos anos 90, até o palavreado e a ginga que se popularizou com o nome de SQL explodindo a partir da segunda metade dos anos 90.

E, quando os mais jovens – menos de 30 anos – começam a desfiar a lista ou rosário de características ou exigências do mundo atual, aquele moço de mais de 50 anos responde sempre de forma positiva, com aderência. Ele, apesar da idade e dos cabelos brancos, frequenta as aulas das tecnologias atuais e se mantem aderente a essas “modernidades”.

O COBOL é uma das poucas linguagens desenvolvidas nos últimos 50 anos que é de fácil leitura e entendimento. Meus amigos, o que dizer de uma linguagem em que uma frase bem simples, sonora e inteligível é uma instrução para o seu compilador?

               DIVIDE  TOTAL  BY  NUMERO  GIVING  PRO-RATA  REMAINDER  RESIDUO.

No momento em que muito se fala em negócio – o tal do “business” – e que muito se discute e defende a necessidade de uma integração da TI com os negócios, cobrando inclusive a presença e participação de seus representantes na mesa das discussões e definições estratégicas das empresas, não podemos deixar de mencionar – ou lembrar – que o B de COBOL significa “Business”.

E quanto às novidades e novas tecnologias, o “véinho” ou cinquentão – vai se adaptando, vai “mudando de cor”, ao estilo dos camaleões. Meus amigos, segundo dados disponíveis na Internet …

  • Ø existem cerca de 220 bilhões de linhas de codificação em COBOL,
  • Ø esse número equivale a cerca de 80% de todos os códigos em uso no mundo,
  • Ø anualmente esse valor cresce em cerca de 5 bilhões de novas linhas,
  • Ø existe uma legião de cerca de 1 milhão de profissionais COBOL,
  • Ø há 200 vezes mais transações COBOL ocorrendo a cada dia do que pesquisas no Google.

A partir do exposto, não podemos em hipótese alguma dar as costas para uma realidae, ou simplesmente “desligar o cara, o tal do COBOL”, como se déssemos um “Power Off” simbólico nele, ou decretássemos a sua morte.

Isso me faz lembrar de outra discussão não menos famosa… o mainframe vai acabar … hehehe
A esse respeito, o Devil’s IT Dictionary define dessa forma os mainframes (dinossauros) com sua pitada de humor irreverente:

“An obsolete device still used by thousands of obsolete companies serving billions of obsolete customers and making huge obsolete profits for their obsolete shareholders. And this year’s run twice as fast as last year’s”

“Um dispositivo obsolete, ainda usado por milhares de empresas obsoletas servindo a bilhões de clientes obsoletos e gerando altos lucros obsoletos para seus acionsiats obsoletos. E atualmente executam duas vezes mais rápido do que no ano passado” 

Afinal, morre ou não morre ?

Façam suas apostas. Alguém se candidata nesse jogo?

Eu pouparia minhas fichas e meu suado dinheirinho…

Até a próxima.

Rui Natal

Encontre agora mesmo vagas em COBOL: http://goo.gl/eEChXy

There are no comments yet.

Leave a Comment

O seu endereço de e-mail não será publicado. Campos obrigatórios são marcados com *