Pagina inicial » Internet » 20 Maiores Invenções em Programação de Computadores

    20 Maiores Invenções em Programação de Computadores

    Em uma das conversas que tive com nosso editor sênior, me fizeram a pergunta, “Como o primeiro programador programador?” Isto levou a uma discussão sobre Babbage e Ada Lovelace, no final do qual, fui designado para pesquisa como isto tudo começou - sendo os muitos primeiros na história da computação.

    Eu procurei livros e sites e fui recebido com muitas revelações: Babbage não é tecnicamente o inventor do computador, o FORTRAN definitivamente não foi a primeira linguagem de programação de alto nível e costumávamos ter pontas para telas CRT (na verdade).

    Também fiquei surpreso ao descobrir como as guerras essenciais estavam impulsionando o rápido progresso do desenvolvimento de computadores, além da contribuição de muitas mulheres que nossos livros didáticos escolheram negligenciar. Assim, para preencher as lacunas na história de computadores e programas, eu juntei 20 primeiros no mundo da computação, desde bolas de boliche até WW2 e tudo o que há entre.

    1. Primeiro Computador: “Motor de diferença” (1821)

    o “Motor de Diferença” foi um computador mecânico proposto para ser usado na saída de tabelas matemáticas. Encomendado pelo governo britânico, Charles Babbage (também conhecido como Father of Computer) começou a trabalhar nele, mas devido ao seu alto custo de produção, o financiamento foi interrompido e a máquina nunca foi concluída.

    IMAGEM: Wikimedia

    2. Primeiro Computador de Uso Geral: “Motor analítico” (1834)

    o “Motor analítico” era também um computador mecânico proposto, cuja entrada deveria ser cartões perfurados, com programas e dados perfurados neles. Outra ideia de Charles Babbage, esta máquina também não foi concluída.

    IMAGENS: wikieducator.org

    3. Primeiro Programa de Computador: algoritmo para computar os números de Bernoulli (1841 - 1842)

    Ada Lovelace (a primeira programadora de computadores do mundo) começou a traduzir os registros do matemático italiano Luigi Menabrea no mecanismo analítico de Babbage em 1841. Durante a tradução, interessou-se pela máquina e deixou notas com sua tradução. Uma das notas - nota G, continha o algoritmo para calcular os números de Bernoulli pelo mecanismo analítico, considerado o primeiro programa de computador.

    IMAGEM: Wikimedia

    4. Primeiro Computador Programável de Trabalho: Z3 (1941)

    Konrad Zuse (o inventor dos computadores) já tinha um computador mecânico em funcionamento Z1, mas funcionava apenas alguns minutos de cada vez. O uso de uma tecnologia diferente - relés, levou a Z2 e, eventualmente, Z3. Z3 era um computador eletromagnético para o qual o programa e os dados eram armazenados em fitas externas perfuradas. Foi um projeto secreto do governo alemão e posto em uso pelo Instituto Alemão de Pesquisa de Aeronaves. A máquina original foi destruída no bombardeio de Berlim em 1943.

    IMAGENS: Wikispaces de Gerações de Computador

    5. Primeiro Computador Eletrônico: Atanasoff-Berry Computer (ABC) (1942)

    Criado por John Vincent Atanasoff e Clifford Berry, o então chamado Atanasoff-Berry Computer ou ABC foi usado para encontrar a solução para equações lineares simultâneas. Foi o primeiro computador que usou binário para representar dados e chaves eletrônicas em vez de mecânicas. O computador, no entanto, não era programável.

    IMAGEM: galileog

    6. Primeiro Computador Eletrônico Programável: Colossus (1943)

    O Colossus criado por Tommy Flowers, foi uma máquina criada para ajudar os britânicos a decodificar mensagens alemãs que foram criptografadas pela cifra de Lorenz, na Segunda Guerra Mundial. Foi programado por interruptores e tomadas eletrônicas. Colossus trouxe tempo para decifrar as mensagens criptografadas de semanas para meras horas.

    IMAGEM: Wikimedia

    7. Primeiro Computador Eletrônico Programável de Uso Geral: ENIAC (1946)

    Financiado pelo Exército dos EUA, ENIAC ou Integrador Numérico Eletrônico E Computador foi desenvolvido na Escola Moore de Engenharia Elétrica da Universidade da Pensilvânia por John Mauchly & J. Presper Eckert. O ENIAC tinha 150 pés de largura e poderia ser programado para realizar operações complexas como loops; a programação foi feita alterando seus comutadores e cabos eletrônicos. Usou leitores de cartões para entrada e punções de cartões para saída. Ajudou com cálculos para viabilidade da primeira bomba de hidrogênio do mundo.

    IMAGEM: hnf.de

    8. Primeiro Trackball: (1946/1952)

    Por que os dois anos para o primeiro trackball? Permita-me explicar.

    O primeiro ano foi o ano dado por um Ralph Benjamin, que afirmou ter criado o primeiro trackball do mundo quando estava trabalhando em um sistema de monitoramento para aeronaves de baixa altitude em 1946. A invenção descrita por ele usou uma bola para controlar as coordenadas XY. de um cursor na tela. O design foi patenteado em 1947, mas nunca foi lançado porque é considerado um “segredo militar”. Os militares optaram pelo joystick.

    O segundo competidor do primeiro trackball do mundo, usado no sistema DATAR da Marinha Canadense em 1952, foi inventado por Tom Cranston e col. Este projeto de trackball tinha um mock up que utilizava uma bola de boliche canadense “rolamentos de ar” (veja a imagem abaixo).

    IMAGEM: engadget

    9. Primeiro computador do programa armazenado: SSEM (1948)

    Para superar as deficiências da memória da linha de atraso, Frederic C. Williams e Tom Kilburn desenvolveram o primeiro dispositivo de armazenamento digital de acesso aleatório baseado no CRT padrão. O SSEM (Manchester Máquina Experimental de Pequena Escala) foi usado para implementar esse dispositivo de armazenamento para uso prático. Os programas foram inseridos em formato binário usando 32 switches e sua saída foi um CRT.

    IMAGEM: Computação da Universidade de Staffordshire

    10. Primeira Linguagem de Programação de Alto Nível: Plankalkül (1948)

    Embora Konrad Zuse tenha começado a trabalhar no Plankalkül desde 1943, foi somente em 1948, quando publicou um artigo sobre o assunto. Não atraiu muita atenção infelizmente. Levaria quase três décadas para que um compilador fosse implementado para ele, um criado por um Joachim Hohmann em uma dissertação.

    IMAGEM: Wikispaces de programação de xadrez

    11. Primeiro Montador: “Pedidos iniciais” para EDSAC (1949)

    Assembler é um programa que converte mnemônicos (baixo nível) em representação numérica (código de máquina). Os pedidos iniciais no EDSAC (Calculadora Automática de Armazenamento Eletrônico de Atraso) foi o primeiro de tal sistema. Ele foi usado para montar programas a partir da entrada da fita de papel na memória e executar a entrada. Os programas estavam em códigos mnemônicos ao invés de códigos de máquina, fazendo “código inicial” o primeiro montador já processando um código de programa simbólico de baixo nível em código de máquina.

    IMAGEM: Laboratório de Informática da Universidade de Cambridge

    12. Primeiro Computador Pessoal: “Simon” (1950)

    “Simon” por Edmund Berkeley foi o primeiro computador digital acessível que poderia realizar quatro operações: adição, negação, maior que, e seleção. A entrada foi papel perfurado e o programa foi gravado em fita de papel. A única saída foi através de cinco luzes.

    IMAGEM: PCMag

    13. Primeiro compilador: A-0 para UNIVAC 1 (1952)

    Um compilador é um programa que converte linguagem de alto nível em código de máquina. O sistema A-0 era um programa criado pelo lendário Grace Hopper para converter um programa especificado como uma seqüência de sub-rotinas e argumentos em código de máquina. O A-0 mais tarde evoluiu para A-2 e foi lançado para os clientes com seu código-fonte, tornando-o possivelmente o primeiro software de código aberto.

    IMAGEM: Wikimedia

    14. Primeiro Autocode: Autocode de Glennie (1952)

    Um Autocode é uma linguagem de programação de alto nível que usa um compilador. O primeiro autocódigo e seu compilador apareceram na Universidade de Manchester para tornar a programação da máquina Mark 1 mais inteligível. Foi criado por Alick Glennie, daí o nome Autocode de Glennie.

    IMAGEM: Wikipedia

    15. Primeiro computador de exibição gráfica em tempo real: AN / FSQ-7 pela IBM (1951)

    O AN / FSQ-7 foi baseado em um dos primeiros computadores que mostravam saída em tempo real, o Whirlwind. Tornou-se a tábua de salvação para o sistema de defesa aérea dos EUA conhecido como Semi-Automatic Ground Environment (SAGE). Os computadores mostravam pistas para os alvos e mostravam automaticamente quais defesas estavam dentro do alcance. AN / FSQ-7 tinha 100 consoles de sistema; aqui está uma (imagem abaixo), o OA-1008 Situation Display (SD), com uma arma leve usada para selecionar alvos na tela para mais informações.

    IMAGEM: Wikiwand

    16. Primeira Linguagem de Programação de Alto Nível Amplamente Utilizada: FORTRAN (1957)

    Se você verificar os livros, você encontrará o FORTRAN listado como a primeira linguagem de programação de alto nível. Pensado por John W. Backus, que não gostava de escrever programas e decidiu criar um sistema de programação para ajudar a tornar o processo muito mais fácil, o uso do FORTRAN reduziu bastante o número de instruções de programação necessárias para colocar uma máquina em funcionamento. Em 1963, mais de 40 compiladores FORTRAN já estavam disponíveis.

    IMAGEM: Wikipedia

    17. Primeiro Rato (1964)

    Foi durante uma sessão de conferência em computação gráfica que a idéia de um mouse chegou a Douglas Engelbart em 1964. Ele inventou um dispositivo com um par de pequenas rodas (uma gira na horizontal a outra verticalmente) que podem ser usadas para mover uma cursor em uma tela. Um protótipo (veja abaixo) foi criado pelo seu engenheiro chefe, Bill English, mas tanto o inglês quanto o Engelbart nunca receberam royalties pelo design, porque tecnicamente, ele pertencia ao SRI, o empregador de Engelbert..

    IMAGEM: Michael Hicks Michael Hicks. via flickr sob CC BY 2.0

    18. Primeiro Desktop Desktop Comercial: Programma 101 (1965)

    Também conhecido como Perottina, o Programma 101 foi o primeiro PC comercial do mundo. Poderia realizar adição, subtração, multiplicação, divisão, raiz quadrada, valor absoluto e fração. Por tudo o que podia fazer, custava US $ 3.200 (era um momento bem diferente) e conseguiu vender 44.000 unidades. Perottina foi inventada por Pier Giorgio Perotto e produzida pela Olivetti, uma fabricante italiana.

    IMAGEM: TEDxArezzo

    19. Primeira tela sensível ao toque (1965)

    Não parece muito, mas esta foi a primeira tela sensível ao toque que o mundo já conheceu. É um painel touchscreen capacitivo, sem sensibilidade de pressão (há contato ou nenhum contato) e registra apenas um único ponto de contato (em oposição a multitouch). O conceito foi adotado para uso pelos controladores de tráfego aéreo no Reino Unido até a década de 1990.

    IMAGEM: arstechnica

    20. Primeira Linguagem de Programação Orientada a Objetos: Simula (1967)

    Baseado no conceito de construção de classes de C. A. R. Hoare, Ole-Johan Dahl e Kristen Nygaard atualizaram “SIMULA I” linguagem de programação com objetos, classes e subclasses. Isso resultou na criação do SIMULA 67, que se tornou a primeira linguagem de programação orientada a objetos.

    IMAGEM: Wikipedia

    Pensamentos finais

    Por mais que este post tenha sido sobre o que poderíamos aprender sobre os muitos primeiros da história da computação, é difícil mergulhar na história em si. Como resultado, pelo menos para mim, nós tornar-se mais apreciativo sobre o trabalho feito por gerações antes do nosso, e podemos entender melhor o que impulsiona as muitas mudanças que moldam o mundo em que vivemos hoje.

    Espero que este post te inspire tanto quanto me inspirou. Compartilhe seus pensamentos sobre estes primeiros, e se eu perdi algum, o que tenho certeza que fiz, adicione-os nos comentários.

    Agora leia: 40 pessoas que mudaram a Internet