Você está em: Soluções » COBOLware» COBOL e os programadores do futuro.

Com a linguagem COBOL completando meio século muitos se perguntam por que ainda se fala tanto nela (na maior parte das vezes mal) e se encontram tantas oportunidades de trabalho e, portanto, se valeria mesmo a pena aprender COBOL.


Sinto-me capacitado a emitir uma opinião fundamentada devido ao meu histórico profissional.

Comecei estudar COBOL em 1981 que, já naquela época, era considerada por muitos uma linguagem ultrapassada, com mais de 27 anos e que já devia estar morta a uns 10. Recomendaram-me que estudasse MUMPS, que seria a linguagem do futuro, feita para substituir a base COBOL. Como eu era bem inexperiente acreditei nisso, mas eu não conseguia estágio para trabalhar com outra coisa senão COBOL. Resolvi então embarcar no COBOL na esperança de um dia ter acesso ao tal MUMPS.

Nem tempo para aprender MUMPS eu tive e já caiu em desuso. Mas eu continuava sendo solicitado só para trabalhos em COBOL, e fui notando que, na medida em que o tempo passava, a mesma história se repetia. COBOL só mudava de adversário: Clipper, PL/1, Dataflex, ZIM, PIC, etc. Antes de ver o mesmo acontecer com outras tantas linguagens parei para analisar a questão com o intuito de entender as causas desse fenômeno.

Descobri que a linguagem COBOL fora criada para neutralizar a crescente disseminação de linguagens proprietárias, ou seja, que eram produzidas pelos próprios fabricantes de hardware e só funcionavam na sua arquitetura original. O Pentágono (Departamento de defesa dos Estados Unidos) havia determinado que fosse criada uma linguagem padrão que pudesse ser implementada por todos os fabricantes de hardware de forma que fosse usada por todos os órgãos do governo para escrever os programas. O compilador de cada fornecedor os converteria para a sua linguagem particular, permitindo que o programa fosse executado em uma máquina de arquitetura não necessariamente igual à daquela em que fora escrito.

Interessante para uma época em que existiam tantas arquiteturas de hardware incompatíveis entre si, mas hoje em dia isso não teria tanta importância, já que, excetuando os mainframes, o mercado agora é dominado pelo Windows e pelo Linux, que são sistemas operacionais independentes, que rodam em quase todos os modelos de fabricante de hardware.

Mas não foi só isso, a linguagem foi concebida para que os programas fontes fossem semelhantes a documentos escritos em inglês. O objetivo não era simplesmente programar computadores, os programas deveriam se tornar verdadeiros manuais operacionais das organizações para serem executados pelos computadores e entendidos pelas pessoas, sem que precisassem ser PhD em matemática. Antes da linguagem COBOL somente os programadores os entendiam. Até mesmo para um programador era difícil auditar o que os sistemas faziam.

Enfrentando a resistência dos adeptos das linguagens adversárias, COBOL foi se espalhando pelas empresas viabilizando a informatização em larga escala, suas sementes se alastraram e cresceram, tornando-se grandes árvores nada fáceis de arrancar.

Quem conhece COBOL e alguma coisa das linguagens “pré-COBOL” e tem contato com um código fonte escrito em Java, por exemplo, tem aquela sensação de “déjà vu”, e nota que, se parece mais com aqueles que formavam a torre de babel que era a indústria de informática no fim dos anos 50.

Todos os desenvolvedores de novas linguagens chegam ao mercado batendo forte na linguagem COBOL, usando e abusando da contra-informação, distorcendo fatos, comparando produtos com linguagens. Produtos ficam de fato obsoletos, quando um aparelho celular fica obsoleto, comprando-se um novo o problema está resolvido. Porém as linguagens são intangíveis, são convenções de escrita de código que podem ser revistas e estendidas com a criação de novos compiladores. É como o telefone que vem se renovando a mais de 100 anos: o celular é um adjetivo do telefone que continua vivo.

Quando alguém diz que a linguagem COBOL não faz isso ou não faz aquilo está usando de contra-informação ou está mal informado. Toda espécie de solução pode ser encontrada ou criada para COBOL ou em COBOL, resta saber se vale a pena. Isso depende do caso, e sábios são aqueles que sabem integrar o que já possuem em COBOL com novas tecnologias e linguagens, e não perdem tempo tentando mudar de linguagem ao sabor da moda, o que requer reescrita de muito coisa que já estava funcionando.
Fica fácil ter uma idéia de como algumas coisas vão ser no futuro observando o passado e o presente. Hoje vemos linguagens proprietárias como o Power Builder sendo descontinuadas e quem investiu nessa tecnologia não sabe o que fazer. Quem se manteve em COBOL segue em frente.

Normalmente, o mercado de COBOL paga melhores salários. Não apenas pela escassez de profissionais, pois as faculdades preferem embarcar nas linguagens da moda e os interessados em COBOL precisam fazer cursos por fora, mas também pela maior importância dos sistemas escritos em empresas de grande porte que exigem profissionais capazes de assumir as responsabilidades inerentes.

A grande difusão da linguagem faz com que existam bilhões de linhas de código a serem mantidas. Aplicações que permanecem em funcionamento durante décadas passam por novos patamares tecnológicos. Muitas empresas optam por manterem seus sistemas em COBOL e isso exige que sejam feitas adaptações em milhares de programas, gerando assim oportunidades de trabalho. Outras tantas optam por trocar de linguagem, e nestes casos conhecer COBOL obviamente também ajuda, afinal fica bem mais fácil fazer uma conversão conhecendo as linguagens de origem e destino. Já tive a oportunidade de participar de vários processos de desativação de mainframes que funcionaram como um trampolim para viabilizar a substituição de sistemas em COBOL para outras linguagens.

Quando sai uma tecnologia nova é natural que as pessoas imaginem que ela vai substituir uma tecnologia mais antiga como o CD substituiu o LP, mas isso nem sempre é verdade, quando surgiu a televisão logo diziam que era o fim do rádio e quando se tornou colorida seria o fim do cinema, bem o que acontece é que hoje existem mais rádios do que televisores, um único filme arrecada uma bilheteria bem maior do que toda a indústria do cinema arrecadava durante todo o ano antes do advento da televisão.

Com os mainframes acontece algo semelhante, diziam que os micros iriam acabar com os mainframes o que ocorreu é que o número de mainframes diminuiu, mas em valores o mercado de mainframe agora é cerca de dez vezes maior e está em crescimento o que ocorreu na verdade foi uma adequação, empresas de menor porte puderam adquirir seus próprios sistemas, mas as grandes corporações não podem dispensar um bom mainframe.

Isso ocorre porque as empresas grandes possuem a chamada massa crítica se um sistema falha por poucos minutos, os prejuízos superam os custos de se manter a tecnologia dos mainframes, não se considera que os salários mais altos dos programadores como um custo importante, muito pior seria ter os sistemas parados, por exemplo, em função de um vírus de computador.

Esse é um dos muitos motivos que levam uma grande empresa a optar por um mainframe, nunca houve e jamais vai haver um ataque de vírus em um mainframe nessa arquitetura, isso é inconcebível por uma simples razão, os sistemas operacionais de mainframe não permitem que um programa faça alterações em um executável. Os executáveis só podem ser produzidos pelos processos de compilação e de instalação de software, uma grande capacidade de processamento não é o suficiente para que a baixa plataforma seja considerada capaz de substituir um mainframe.

Nesse meio a linguagem COBOL é muito apreciada e seu uso é crescente, quando se diz que uma linguagem de micro é bem mais utilizada do que o COBOL, em alguns raros casos isso pode até ser verdade, mas existe aí um problema de proporção, é como dizer que fulano comeu mais frutas que cicrano, sem levar em conta que fulano comeu três uvas e cicrano comeu uma melancia.

Em outras palavras, em muitos casos uma única grande organização investe somente em COBOL mais do que todas as organizações do mundo inteiro somadas investem em uma única linguagem de baixa plataforma dentre as tantas que existem, o resultado é que a proporção do mercado em termos de valores e de quantidade de código a ser mantido é da ordem de 70% para COBOL e o resto fica para as outras linguagens, se isso não garante “imortalidade” para a linguagem COBOL, certamente estende bastante a “expectativa de vida” profissional para quem conhece essa linguagem quando comparada com qualquer outra opção.

Isso não quer dizer que as linguagens de micro não possam ser usadas nas grandes corporações, mas mostra porque elas tendem a se mantém na periferia (são periféricos dos mainframes) enquanto uma falha pode parar alguns micros ou servidores WEB a base de dados corporativa se mantém íntegra e em funcionamento, conhecer uma delas e também COBOL pode ser uma porta de entrada para que os profissionais tenham acesso ao departamento de desenvolvimento corporativo da empresa.

Já vi comentários de programadores veteranos em Java dando conselhos para que jovens aprendizes “deixem COBOL para os tios vamos aproveitar nosso tempo para aprender o que interessa”.

Resumindo, o conselho do tio aqui para os jovens interessados em se tornarem programadores é o seguinte: aprender a linguagem da moda é uma boa, pode ser mais fácil e rápido conseguir um emprego, no começo da carreira você pode aceitar um salário mais baixo, mas lembre-se que amanhã você também vai ser tio e se você souber COBOL vai continuar tendo oportunidades na área e vai poder exigir um salário mais alto, pois terá bem mais compromissos do que no inicio da carreira.

Muitas linguagens podem ser bem mais sedutoras do que COBOL para se programar em micro, mas corre-se o risco do profissional ficar “bitolado” nas necessidades de pequenos sistemas, se puder prefira usar também COBOL nos projetos de pequeno porte esses trabalhos podem proporcionar valiosas experiências aplicáveis em projetos de grande porte no futuro.


Copyright © 2011 COBOLware Informática - Desenvolvido por Juliana Villela