Software – o que nos fez sair do estado de apertadores de botão
Uma curiosidade para começar...
Ao fazer uma pesquisa no Google Trends, comparando os tópicos de pesquisa “software” e “food” nos últimos 5 anos, obtemos o seguinte!
Isso nos mostra que vamos falar de um assunto muita gente já perguntou ao nosso guru moderno e, portanto, temos que ser criativos para que o leitor não julgue que perdeu tempo.
Por outro lado, se você está lendo esse texto, então sabe muito bem que nossa vida online ocupa uma parcela cada vez maior de nosso tempo acordado. Estamos “sempre” interagindo com dispositivos eletrônicos - navegando na Internet pelo smartphone, trabalhando em nosso computador, interagindo nas redes sociais ou combatendo alienígenas em nossos videogames. Todas essas atividades têm em comum a necessidade de software para viabilizá-las. Damos instruções aos computadores e processadores por meio de interfaces gráficas de software, que traduzem essas ordens em um idioma que o computador possa entender.
Mas antes de chegarmos nessa forma avançada e amistosa de comunicação, passamos por uma grande evolução que nos ensinou como fazer com que os computadores trabalhassem para nós.
Fazendo o computador nos entender
Uma das primeiras “interfaces” de comunicação com o computador foi uma dupla de máquinas perfuradoras e leitoras de cartão. Vejam como elas eram elegantes, (para a época!) na figura 2. Os programadores e estudantes usavam o teclado da perfuradora para transferir as linhas de código que escreveram para as linhas de um cartão com 80 colunas. Quando o espaço no cartão acabava, um botão era apertado e o deck era alimentado com um novo cartão. Quando a programação era concluída, a pilha de cartões era levada para a “sala do computador”, onde os operadores alimentavam as leitoras que o transferiam para algum armazenamento magnético na sala do computador, onde aguardavam em fila para serem processados. Dependendo da prioridade, você podia esperar mais de 8 horas para ao receber sua listagem com os “resultados” – só então era possível saber se você havia cometido algum erro de codificação!
Os cartões perfurados tinham fileiras de pontos que armazenavam dados digitais pela presença ou ausência de buracos em posições predefinidas. Podemos fazer uma analogia com uma planilha de 12 linhas e 80 colunas, todas preenchidas com 0 ou 1 (com furo / sem furo). As leitoras tinham conjuntos de suaves estiletes que ao contato com o cartão penetravam nas células furadas registrando a intenção do programador.
Verificar a codificação olhando os cartões perfurados era uma verdadeira “escovação de bits”. Na medida em que seu programa e seus dados processados iam crescendo, era bom fazer um “backup” e a forma mais acessível era usar uma duplicadora, que lia e perfurava um pilha de cartões idênticos à original. Era realmente um trabalho duro! Bem, o ambiente descrito acima era típico dos CPDs (Centros de Processamento de Dados) do final dos 60 até meados de 80.
Mas afinal se dentro do computador havia só bits, o que “escrevíamos” nos cartões? Na década de 60, o conjunto de instruções nativas (internas) no computador era muito simples - operações de manipulação de bits em endereços da memória, sequenciamento de operações, repetições, desvios, operações aritméticas etc. Os programadores aprendiam esse conjunto básico e a forma como binariamente passar tais instruções ao computador era chamada de linguagem de máquina. Contudo, mesmo nos anos 60, os computadores já tinham suas linguagens de primeiro nível chamadas de assembler, que eram um pouco mais simbólica que a linguagem de máquina, mas cada computador tinha um assembler diferente – Ufa! Também surgiu nessa década a primeira geração de linguagens de “alto nível”, as mais famosas sendo o Cobol para a área comercial e o Fortran para a científica. Tais linguagens eram processadas por compiladores escritos em assembler que as traduziam para a máquina específica em que iam rodar.
Este é um breve resumo de como nós pesquisadores, programadores e analistas nos comunicávamos com os computadores até início dos anos 1980 - quando tudo começou a mudar de forma muito rápida. Essa mudança – sem volta - e que chegou aos nossos dias será o tema dos nossos próximos posts! [continua…]