History of computing

Por quê estudar a história da computação?

A ciência é uma área de avanços cumulativos baseada em pesquisas anteriores e está sempre criando novos paradgimas (conjunto de conceitos e padrões).
Podemos descobrir analogias, e determinar paralelismos com a computação moderna definindo padrões e reconhecendo tendências que nos permitem prever algum dado futuro.
O objetivo da computação é minimizar esforços e otimizar recursos para ajudar a resolver problemas.

Considerações sobre a área da Ciência da Computação

Problemas Históricos
Para minimizar esses problemas é necessário escrever códigos, programas mais eficientes, e para isso é necessário mais profissionais bem qualificados.
E disso surgiu um guia Projeto de Desenvolvimento de Software e a uma nova área Engenharia de Software.
Inclusão da Ciência da Computação no currículo do IEEE e ACM.

Berço da computação

A história da computação se mistura com a história da matemática.

Alan Turing (1940) - Pai da Computação

Considerado pai da computação, formulou o conceito de algoritmo, operacionalizando o pensamento humano, definindo um passo a passo para resolução de problemas. A Máquina de Turing através de operações simbolizadas matematicamente geravam ações que eram processadas por um computo e que modificam os estados da máquina (codificação de baixo nível, a nível de hardware).

Computadores Digitais

Combinação da eletrônica e álgebra booleana

Arquitetura de Von Newmann

Utilização do mesmo espaço de memória para armazenar tanto o programa e os dados usados pelo programa. As instruções e inserções dos dados ocorriam por cabeamento (Primeira tentativa de computador digital). E cada posição de 0 e 1 determinava o tipo de operação e o tipo de dado.

Inteligência Artificial com Alan Turing

Can machines thing?

Programação com Alan Turing

Pensou a codificação além de apenas operações com símbolos matemáticos.
Criou tabela de conversão decimal vs binário.

Instrumentos Computacionais

Blaise Pascal - Primeira Máquina

Executava duas operações aritméticas, adição e subtração.
Houve tentativa de fabricação para fins de comercialização, mas não emplacou porque não era confiável.

Charles Xavier Thomas

Executava as quatro operações aritméticas e era confiável.
Observaçoes até aqui
Tinham alguns elementos básicos que são atribuídos aos computadores, como inserção de dados, mecanismos de controle e de limpeza de dados, mas não tinham o principal, que é ser programável.

Charles babbage (1822-1837) - Surge o conceito de programação

Se uma máquina possui um conjunto mutável de instruções e pode executar diferentes funções, então é possível criar instruções para a máquina. E essa ideia é justamento o conceito de software. Como executar essas instruções? surge o conceito de programação.
Ele introduziu o conceito de máquina universal que depois foi retomado por Alan Turing em 1930.

Ada Augusta Lovelace (1815-1852) - Primeira programadora

Ada trabalhou no calculador analítico de Charles Babbage e criou diversas instruções complexas, como estruturas condicionais, de repetição (loops) e sequências de instruções.
Ada é considerada a patrona da computação enquanto Alan Turing é considerado o pai da conputação.

Herman Hollerith (1880) - Máquina de Tabular

Sua contribuição não é de carater fundamental teórico, não teve nenhum ganho na teoria de usar máquinas computáveis, mas teve um boom no mercado da época, acabou dominando o mercado de computadores criando uma empresa chamada Hollerith Tabuleting Machine.
Máquina que pudesse interpretar, classificar e realizar operações representadas pelas perfurações.
O grande avanço conquistado foi no tempo de apuração do senso.
A empresa foi incorporado a mais duas, e mais tarde ficou conhecida como IBM>

Primeiros Computadores

Computador no sentido de ser uma máquina computável e programável.
Konrad Zuse

1938 - Z1 - 1000 válvulas

Unidades básicas: Memória, controladora e dispositivo para cálculo aritmético.
Inacabado.

Z2 - Relés

Relé é um interruptor eletromecânico.

Z3 - Nova Tecnologia

Relés e núcleos de ferrete para executar de 3 a 4 operações por segundo.
Destruído por um bombardeio.

Z4

Foi concluído, depois Zuse criou uma empresa.

Mark I

Criado na IBM, com memórias separadas para instruções e dados.
Tinha algumas capacidades inovadoras: Realizar modificações de instruções de forma dinâmica e unidade de decisão (determinar qual era melhor algoritmo para determinada operação).

ENIAC - Eletronic Numeral Integrator and Computer

Traz o conceito de ser programável, por isso é conhecido como o primeiro computador Não existia o conceito de programa armazenável, então para executar o programa era necessário inserir os dados e depois criar o programa.

EDVAC - Eletronic Discrete Variable Automatic Computer (954)

Uma versão melhorada do ENIAC, sua principal vantagem era armazenar programas.
Por ser um avanço muito grande, o ENIAC foi descontinuado.

Computadores Pessoais

O surgimento dos sistemas de circuitos integrados permitiram computadores menores.

Altair 8800

Em 1975 foi criado o primeiro computador pessoal, o Altair 8800.
Apresentado pela revista Popular Eletronics.
Era capaz de receber instruções, não possuia interface gráfica.

Linguagem Basic

Criada por Bill Gates e Paul Allen e algum tempo depois fundaram a Microsoft

Apple

Em 1976 criou o Apple I.
Em 1977 criou o Apple II, foi um sucesso de vendas, 4000 unidades vendidas em três meses .
Apple III que vinha com uma impressora matricial não foi bem recebido.
LISA trouxe uma interface gráfica mais elaborada e amigável, com ícones na tela, porém isso aumentou demasiadamente custo (10 mil dolares por unidade) fazendo com que não emplacasse nas vendas.
Computador mais elaborado, interface mais amigável (monitor, teclado, disquete).
Arquitetura fechada.

IBM

Em 1981 foi lançado o IBM-PC. Trouxe como diferencial a ideia de arquitetura aberta, que foi inovador e trouxe consequências até os dias atuais.
Mais tarde IBM e Microsoft criaram um Sistema Operacional voltado para a IBM.

References