Episódio 75 – O office antes do Office: Bancos de Dados – Parte A

retrocomputaria_vitrine_570x190

Sobre o episódio

Micros clássicos não são apenas jogos, mas também trabalho duro. Por isso fizemos a série O office antes do Office.

Para fechar nossa série, trataremos os bancos de dados, componentes essenciais de qualquer workflow corporativo.

Nesta parte do episódio

Começamos falando de moedores de carnes, quer dizer, de mainframes, para falar dos “pré-bancos de dados”. Depois falamos de COBOL, modelos navigacionais, árvores binárias, hierárquicas e finalmente dos relacionais.

Finalmente chegamos a épocas mais familiares e falamos da era do dBASE, das origens no IMSAI 8080 à dominação no mundo do CP/M (dBASE II) e no mundo do MS/PC-DOS (dBASE III) até o desastre dBASE IV e a venda da Ashton-Tate à Borland.

Também falamos de um legado do dBASE, o padrão xBase e, entre eles, o Clipper, velho conhecido de todo mundo que trabalhou com informatização de pequenas e médias empresas dos anos 80 e 90. Entramos na treta entre Ashton-Tate e Fox Software por causa do “padrão xBase”. E citamos Oracle Database porque né

Ficha técnica:

URLs do podcast:

Não se esqueça de deixar seu comentário aí embaixo; afinal, seu comentário é o nosso salário. No entanto, caso você prefira, entre diretamente em contato conosco.

7 comentários sobre “Episódio 75 – O office antes do Office: Bancos de Dados – Parte A

  1. Ótimo episódio pessoal!

    BEGIN TRANSACTION

    Me faz lembras dos depois que desenvolvia para dBase III Plus e que depois fui migrando de produto em produto até largar desse mundo MS-DOS com o CA Visual Objects.

    Comecei em meados de 94 dando manutenção num sistema financeiro de uma fabrica de lustres aqui perto de casa, onde o cara tinha tudo dentro do dBase III Plus, mas como já mexia com o dBase II do MSX, tirei de letra.

    Depois de brincar de consultor (sim, na década de 90), entrei para uma pequena empresa em Santo André – São Paulo, onde comecei a desenvolver em Clipper Summer 97 e rapidamente passaram a usar Clipper 5.1. Depois de um tempo migramos tudo para Clipper 5.2 e ficamos desenvolvendo sistemas EPR para diversas empresas da região até chegar na versão Clipper 5.2e, quando começamos a bater cabeça com o limite de memória de 640K. Nessa época começamos quebrar a cabeça, fazer overlays, configurar mil variáveis de sistema, menus em batch chamando executáveis separados e um monte de outras maluquices, até começar a experimentar o Exospace e o Blinker para romper essa barreira. Foram muitos erros e mais erros até acertamos o sistema todo a funcionar sem dar um erro de Access Violation, foram tempos assombrosos.

    Após 3 anos de desenvolvimento dos sistemas ERP, começamos a trabalhar com o centro de pesquisas da CA para achar novas soluções para estabilidade dos benditos arquivos DBF/NTX, estes que a cada espirro do operador do servidor, corrompiam miseravelmente.

    Uma solução que começávamos a testar juntamente com a equipe da CA foi o Clipper ADS, onde prometia transformar o simplório DBF em um “banco de dados relacional”, podendo até utilizar comandos SQL para manutenção das “tabelas”, utilizando índices em CDX que já eram amplamente utilizados no FoxPro. Infelizmente essa solução não era muito prática, necessitava reescrever todo o código do sistema, comprar licença adicionais, ter servidor com muita memória (na época 8MB de RAM era uma fortuna).

    Quando os testes se cessaram do ADS, eis que a CA em conjunto com a Oracle, criaram um wrapper para conectar os sistemas existentes em Clipper 5.2e a um bando de dados Oracle! Nascia então o OraCLip, que seria a salvação da lavoura para muitas software houses do pais. Mas depois de muitos testes, o produto se apresentou instável e lento demais, fora o custo para se montar um servidor Oracle, coisa que nenhuma farmácia de esquina iria querer na época.

    Meses depois a CA lançou o Cliper 5.3 e este já vindo alguma bibliotecas gráficas e com um driver que permitia acesso ao banco de dados OpenIngres, então vamos nós testar para os caras e mandar um relatório da experiencia de uso desse driver. Conseguimos migrar um sistema ERP inteiro com sucesso, para uma empresa bem conhecida para quem tem carro, a Sachs Automitive (sim, a que fabrica a embreagem do seu carro). O projeto foi maravilhosamente bem, até que um dia a empresa resolveu querer migrar tudo para outro bando de dados, adivinhe só qual foi? Lógico que com a experiencia anterior, que foi um desastre, acabamos perdendo o cliente. Nesta época já estava surgindo no mercado a Microsiga, com seu ERP todo pomposo para Windows (que depois descobrimos que não passava da mistura de Clipper 5.2e com a biblioteca FiveWin).

    Com a saída do nosso sistema desse grande cliente, começamos a flertar com o CA Visual Objetcs e após 2 meses tentando fazer algo nessa coisa medonha, desistimos de vez da CA. Cada vez que se gravava os fontes no repositório binário dele e saísse do mesmo e desliga-se a maquina, quando se entrava novamente no CA Visual Objects, muitas vezes não conseguia se recuperar os fontes armazenados previamente, resultando em perda de horas de trabalho. Um desastre de solução.

    Foram 4 anos de muito aprendizado mas a Computers Associates ficou no passado, literalmente. Depois de mais 2 anos voltando a programar em Clipper 5.2e para um sistema de PDV em uma grande editora (Ática/Scipione), resolvi largar de vez a área de desenvolvimento para desktops e só me foquei no desenvolvimento web, ai entra o bom e velho MySQL. Mas isso já são outros 500…

    Em tempo: Giovanni o DBU era um programa que vinha com o Clipper para lhe auxiliar a dar manutenção nos arquivos DBF/NTX, editando dados, criando índices exportando e importando dados. Eu cheguei a modifica-lo para utilizar índices CDX do FoxPro.

    Em tempo 2: existiu uma empresa aqui em SP que criava seu ERP em Visual FoxPro! StarSoft, que existe até hoje, mas pelo portfólio da empresa, portaram tudo para web e devem ter abandonado a raposinha.

    COMMIT

  2. Muito bom episódio, como sempre. Diz a lenda que Larry não fez quase nada de código e sim o Bruce Scott, responsável pelas primeiras 3 versões do banco de dados. O seu legado ficou só no schema de exemplo que existe no Oracle, onde o login é SCOTT e a senha é TIGER, que era o nome do gato da filha de Bruce.

      1. Discordo, com relação à exclusividade do Delphi neste papel.

        Por melhor que o Delphi tenha sido, e foi muito significativo, infelizmente o MS Visual Basic era mais popular.

        Acredito que, se alguma linguagem de desenvolvimento da década de 90 foi responsável pelo declínio do Clipper, foram ambas as linguagens, Delphi e VB.

  3. Clipper é Orientado a Objetos?

    As versões mais populares de Clipper não são OO.

    PORÉM, com o projeto Aspen, a Nantucket queria trazer OO para o Clipper.

    Desta iniciativa surgiu o Visual Objects, que foi lançado no mercado pela CA e competiu com outras linguagens mais populares como Delphi e VB.

    Mas isto foi do lado do CA Clipper…… o ramo XBase evoluiu e temos, ainda hoje, a linguagem Vulcan .NET!

    Go Vulcan! http://www.govulcan.net/portal/

    “Vulcan.NET is the next generation of the xBase family of languages. Vulcan.NET provides a high level of backwards-compatibility with the Visual Objects language, while at the same time bringing it into the 21st century with all the features you would expect in a modern programming language.”

  4. Senti falta do FiveWin, que, até onde conheci, era um “Clipper para Windows”. Você tinha que programar na mão as localizações dos objetos na janela (quase impossível) mas os comandos de acesso aos DBF eram os mesmos. Vi pouca coisa feita para isso mas havia um sistema do Bradesco (me parece, feito em FiveWin) para emissão de boletos e e-mails. Era um sistema excelente.

    Sobre o MS Fox Pro, utilizei bastante o 2.3 para Windows 3.1 na década de 90 (acho que foi a primeira versão para Windows). Era muito bacana. Você montava a tela em um editor, programava os “eventos” e ele gerava um linguição que era o código interpretável. Também se podia gerar EXE. O DBF era o mesmo mas os índices eram agrupados em um único arquivo .CDX.

    Ótimo podcast. Parabéns a todos.

Deixe uma resposta

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