Grace
Brewster Murray Hopper
Uma senhora nova-iorquina, Rear Admiral (Contra-Almirante) Grace
Brewster Murray Hopper, sem dúvida merece ser mais conhecida
entre programadores principalmente os “coboleiros”.
Normalmente chamada simplesmente de Grace Hopper, ela foi a
grande mentora intelectual na criação da linguagem
COBOL. Parece que nos preocupamos tanto com a memória
das máquinas, que nos esquecemos de cuidar da nossa e
passá-la para as novas gerações. Vamos
lembrar um pouco da mulher águia, é ! Aquela que
com seus óculos fundo de garrafa enxergava em 360 graus
muitos anos na frente de seu tempo aquilo que os outros só
viam quando ela mostrava. A vovó que todos nós
certamente teríamos orgulho em ter, também é
considerada a mãe dos conceitos de biblioteca de rotinas
e compilador, do costume de usar os termos bug e debug para
a tarefa de identificar e eliminar erros de software e até
mesmo do processamento de dados comercial moderno.
Bom, não tenhamos ciúmes disso. Digamos que os
irmãos do COBOL são todos igualmente ilustres.
Nos Estados Unidos ela é conhecida como: “Grand
Lady of Software”, “Amazing Grace” e “Grandma
Cobol”. Mas foi a idealização do projeto
que culminou na linguagem COBOL que realmente a tornou famosa.
Nascida em 9/12/1906, somente em 1959, já com 52 anos,
o gênio de Hopper apareceu para o mundo. Mas ela já
era brilhante, curiosa e audaciosa. Aos 7 anos, desmontou todos
os relógios e despertadores da casa para ver como funcionavam,
não soube montá-los novamente mas soube enfrentar
a bronca dos pais com diplomacia.
O Primeiro Compilador
Quando a Tenente Hopper criou o primeiro compilador, até
então só existiam montadores e interpretadores.
Como fazem a maioria dos grandes técnicos e cientistas,
os nomes que dava às linguagens que ela criava eram coisas
nada comerciais como: A-0, A-1 e A-2, quando chegou em A-3,
o departamento de vendas rebatizou o compilador para MATH-MATIC.
Suas
primeiras criações eram despretensiosas, simples
material de uso interno para facilitar o seu trabalho e de colegas.
Oficial da marinha norte americana a partir da segunda guerra
mundial, Hopper era disputada a tapas por empresas privadas,
mas volta e meia acabava sendo convocada e voltava para a Marinha.
Todos sentiam muito sua falta.
Enriquecida
com tais experiências, Hopper em 1944 idealizou o conceito
de biblioteca de rotinas, usado até hoje. Quando desenvolveu
a linguagem A-0, a cultura da época era escrever tudo
que o programa tinha que fazer em um só módulo
com comandos em octal. Como o tempo de máquina valia
muito mais que o tempo dos programadores, ninguém se
importava com isso. Mas Hopper insistiu na idéia e em
1953 apresentou com sua equipe, uma linguagem baseada em inglês.
Escreveram um tradutor de palavras em inglês para comandos
octais. Para demonstrar a seus chefes o poder do tradutor B-0,
Hopper previu comandos em Inglês, Francês e Alemão.
O programa era muito rápido pois verificava apenas as
primeiras 3 letras de cada palavra. O resto era simplesmente
ignorado.
Abobalhados
com os resultados, seus chefes na Remington Rand (depois chamada
de Sperry Rand, da série UNIVAC), perguntaram como ela
tinha conseguido tal façanha e ela disse que tinha todos
os comandos que a máquina aceitava catalogados na uma
biblioteca de rotinas. Os programas eram construidos montando-se
estes módulos como um estudante compilando uma pesquisa
em função de uma biblioteca de livros. Por isso
classificou o programa como um compilador, o departamento de
vendas rebatizou o B-0 para FLOW-MATIC.
Bug e Debug
Outro caso curioso da vida de Hopper, foi em 1945 quando o computador
que utilizava, o Harvard Mark I, parou de funcionar. Ela fez
uma varredura de detetive, em meio aos circuitos de válvulas
e relês. Encontrou uma mariposa eletrocutada bloqueando
uma chave elétrica.
Usando
uma pinça, ela extraiu a mariposa e a máquina
voltou a funcionar normalmente. A partir daí, com seu
tradicional bom humor, sempre que cobrada sobre o andamento
de um projeto respondia: “Estamos desinsetizando (debugging)
o computador” o jargão debug pegou. Até
mesmo em outras línguas, é usado até hoje
como referência a correção de erros em programas.
E parece difícil que algum dia venha a sair de uso.
Por
certo um técnico comum diria um palavrão e jogaria
o bicho no lixo, deixando o caso para lá. Mas tratava-se
de uma mulher e as mulheres, nós sabemos desde que comparamos
os cadernos das meninas com os dos meninos, são mais
caprichosas. Ela colou a mariposa com uma fita adesiva em seu
meticuloso relatório que chamava de “diário
de bordo”. Nele constava “O primeiro caso real de
inseto (Bug) a ser encontrado”. Seu relatório,
virou literalmente peça de museu.
A COBOL
As habilidades e a personalidade forte de Grace Hopper foram
fundamentais para a criação da linguagem COBOL.
Só uma pessoa com tais qualidades teria conseguido tanto.
Não só com seu gênio técnico mas
com grande capacidade de argumentação e a patente
de capitão da Marinha. Apenas com conhecimentos técnicos,
não se consegue sensibilizar uma industria inteira a
adotar um padrão. Grace Hopper foi muito hábil
para promover sua idéia, percebendo que não só
ela criara compiladores. Ela foi a primeira. Muitos outros seguiram
seu caminho criando linguagens cada qual a sua maneira, formando
uma imensa torre de babel.
gnorando
a idade e esquecendo de se aposentar, ela usou sua experiência
e sua influência na marinha e começou a chamar
a atenção do departamento de defesa, o Pentágono,
para a tal babel e para os imensos prejuízos que tal
situação estava causando e o potencial de riscos
para a governabilidade no futuro e da possibilidade do surgimendo
de um grande monopólio, caso uma empresa conseguisse
uma solução proprietária.
Simplesmente
não havia portabilidade, legibilidade, confiabilidade
e nem continuidade nas linguagens até então. Todas
tinham origens semelhantes a A-0 que ela mesma havia criado.
Linguagens muito especificas para um determinado equipamento,
com comandos muito tecno-matemáticos, obscuras, e dominadas
por muito poucas pessoas. Desapareciam quando seus criadores
as abandonavam. Não se podia investir muito em nenhuma
delas para adoção como padrão. A situação
tendia a se perpetuar com linguagens cada vez mais efêmeras.
A
concepção de Hopper de que havia a necessidade
de se criar uma linguagem orientada para negócios comuns,
deu origem ao acrônimo COBOL (COmmon Business Oriented
Language).
Tudo
foi feito, sem definir os comandos para minimizar melindres
entre os técnicos das empresas convocadas a participar
da criação de um denominador comum entre todos
os fabricantes existentes na época. Grace Hopper participou
contribuindo com a abertura dos comandos FLOW-MATIC.
Os
melindres foram minimizados mas não totalmente evitados.
Em Maio de 1959 com os trabalhos do comitê CODASYL (COnference
on DAta SYstems Languages) criado pelo Pentágono em pleno
andamento, chegou uma encomenda em nome do líder Charles
Phillips, um pesado caixote, contendo uma lápide de mármore
com o nome COBOL escrito mas sem epitáfio. O primeiro
a dizer que aquilo não daria certo, que o COBOL estava
“morto”.
Em
1985, na festa do 25° aniversario da linguagem COBOL, Howard
Bromberg da RCA confessou ser o autor da brincadeira que deu
origem a fama de “morto” que dura até hoje
entre seus adversários. Usam muitos epitáfios,
todos infundados e facilmente derrubados. O apelido de “mato”
que também foi dado ao COBOL, fez muito mais sentido
pois ele continua a crescer e a se espalhar apesar das inúmeras
tentativas de arrancá-lo.
A
universalidade da linguagem COBOL ficou evidente, quando Hopper
em uma visita que fez a um centro de computação
no Japão. Ela e seus anfitriões não conseguiam
se entender, até que ela lembrou de alguns comandos do
COBOL. “MOVE”, disse ela apontando para si mesma,
“GO TO Osaka Hotel”. Os Japoneses imediatamente
entenderam e levaram-na para seu hotel.
A PARTIDA
Grace
Hopper era a pessoa certa na época certa com as intenções
certas. Tal situação jamais se repetirá.
Nenhuma empresa e nem mesmo o governo dos EUA voltará
a ter o poder de influência em todas as plataformas de
hardware que se compare ao que ela teve. Com 85 anos, ela nos
deixou em 1/1/92 mas seu legado é eterno. A Marinha tratou
de seu funeral com honras militares e em 6/9/1997 a homenageou
lançando o destróier USS Hopper (DDG 70) e uma
moeda com sua esfinge. Um merecido tratamento digno de uma rainha.
Foi
graças a Grace Hopper que até hoje nada conseguiu
superar o COBOL com suas inúmeras implementações
e versões. Realizou o seu velho sonho da programação
universal. 2/3 do segmento de aplicações comerciais
e industriais continuam baseadas em COBOL e movimentam dezenas
de bilhões de dólares no mundo todo, com mais
de 3 milhões de programadores profissionais em plena
atividade. O último epitáfio que dizia que o bug
do ano 2000 mataria o COBOL já que seria a linguagem
mais afetada em virtude da sua idade e difusão, também
foi derrubado. Os programadores puderam corrigir tudo a tempo
justamente graças a legibilidade do COBOL tão
defendida por ela.
Grace
Hopper nos deu uma grande lição. Chamou a atenção
não apenas para um problema de computação
ou de uma época, mas para estarmos alertas à tendência
da natureza humana ao bairrismo. De termos uma visão
restrita à uma tarefa, sem considerarmos as conseqüências
que afetarão a nós mesmos.
|