domingo, 16 de janeiro de 2011

Quer ser programador Cobol?

Continuando a nossa série de artigos para quem quer se tornar um programador, hoje falaremos de uma linguagem antiga (existe desde o início dos anos sessenta), mas que ainda não morreu. Para quem ainda não percebeu (você não leu o título do post?) hoje falaremos do Cobol.

Mas então, o que é Cobol?

Cobol é a sigla de COmomon Business Oriented Language (Linguagem Orientada aos Negócios) que foi criada em 1959, durante o CODASYL (Conference on Data Systems Languagem), um comitê que foi criado para recomendar as diretrizes de uma linguagem para negócios. Este comitê era composto de seis fabricantes de computadores e três órgãos governamentais dos EUA.

O Cobol foi baseado nas linguagens FLOW-MATIC e COMTRAN e a versão final da linguagem saiu em janeiro de 1960 com o nome de Cobol 60.

O Cobol foi desenvolvido num período de seis meses e continua ainda em uso depois de mais de 40 anos, vai completar 5 décadas no próximo ano. Quase na hora de se aposentar, ou não!

Mas por que Cobol?

O Cobol é uma linguagem que nasceu para ser utilizada por empresas, isto é notado até no significado do nome, além disso foi criado para ser estável, onde é principalmente aplicado em aplicações críticas, ou seja, que necessitam funcionar 99,9999…% do tempo.  Agora pense, se você tem uma aplicação que funciona perfeitamente, quase sem pausa, por que você vai mudar? E este é o principal motivo que o Cobol ainda existe até hoje.

Vamos a outro pensamento: Se você tem uma linguagem de quase 50 anos, qual é a idade dos programadores desta linguagem? Quem pensou em pessoas de idade, acertou. Atualmente um bom programador de Cobol está em falta, porque todos estão se aposentando, ou já se aposentaram. Já ouvimos dizer que o programador Cobol é o único que começa e se aposenta trabalhando com a mesma linguagem. Inclusive, algumas empresas buscaram profissionais aposentados, nos últimos anos, para suprir a falta de mão de obra.

Se você ainda está em duvida se quer ou não ser um programador Cobol, então está faltando, mais uma dica: Pelo simples fato de que os profissionais Mainframe estão ou em breve estarão em falta, as empresas dificilmente deixam um bom funcionário sair da empresa. Por este motivo, os bons programadores/analistas Cobol são muito bem remunerados e disputadíssimos entre as empresas.

Agora vamos a parte chata, é muito difícil aprender Cobol, para ficar com mesmo é necessário aprender todo o ambiente de um Mainframe, como sistema operacional, CICSJCL, etc, pois a maioria das aplicações rodam nestes sistemas. Além disso, é necessário conhecer o banco de dados DB2 que é o banco de dados mais utilizado nos MainFrames (ou os arquivos seqüenciais, como o VSAM, por exemplo).

Mas o sacrifício compensa no final.

Por onde começar?

Não tem muito por onde começar. Bons cursos estão em falta, então a melhor forma de se aprender é já estando dentro de uma empresa, e ir pegando dicas com os colegas de trabalho.

Além disso, a técnica de desenvolvimento em Cobol é um pouco diferente da que um programador de C#, Delphi, PHP, etc está acostumado. De qualquer forma, é interessante que saiba uma destas linguagens antes do Cobol, e depois disto, estude algum bando de dados, pode ser qualquer um, mas de preferência ao DB2. Por ultimo e mais importante, estude o ambiente Mainframe (CICS, VSAM, SO, etc). Só então, depois de aprender tudo isto, vem a parte fácil: Aprender a linguagem Cobol.

Se você for maluco e quiser aprender Cobol sozinho, lamento informar que não existe muito conteúdo em português, então vai outra dica, invista no inglês.

Para os malucos de plantão, os melhores lugares para aprender são nos fóruns, principalmente o oficial da IBM. Vamos listar alguns links, se vocês conhecerem outros, por favor, contribuam nos comentários.

- http://ibmmainframes.com/index.php
- http://www.cobug.com/cobug/docs/manuals0010.html
- http://www.cobug.com/cobug/docs/tutorials0032.html
- http://www.cobolstandards.com/
- http://www.infogoal.com/cbd/cobol.htm
- http://www.csis.ul.ie/cobol/default.htm

Boa sorte para aqueles que se aventurarem nesta linguagem, até a próxima!