Avançar para o conteúdo principal

Programação para todos - ascensão e queda

O principio desta história aconteceu nos anos 80 do século passado. Os primeiros computadores pessoais que utilizei, foram o ZX81 e o ZX Spectrum, ambos da Sinclair. O ZX81 foi lançado em 1981, quando eu tinha 18 anos. Lembro-me de na altura ficar muito entusiasmado com o seu aparecimento, principalmente devido à sua capacidade de receber e executar instruções em BASIC. Era uma máquina programável! magnifico! podia fazer os meus programas para calcular aquelas fórmulas mais bicudas que se usavam em electrónica, e obter os resultados de imediato no écran da TV, e sem enganos!  achei sensacional. O sucesso do ZX81 foi em grande parte devido ao seu baixo custo, que se bem me lembro andaria à volta dos 16 000 escudos?. As suas capacidades eram no entanto muito limitadas, pois vinha de origem com apenas 1KB de RAM. Mesmo com essa quantidade reduzida de memória RAM conseguiam-se fazer correr alguns programas simples e criar ou incentivar o gosto pela programação, algo completamente novo para mim na altura. Quem pretendesse usar programas mais complexos poderia aumentar a RAM, comprando módulos de 16KB ou 32KB, que se encaixavam no porto de expansão, na traseira do ZX81. Estes módulos no entanto eram caros e muito temperamentais. Bastava um abanão mais forte, para um dos pinos da ficha fazer um contacto menos perfeito e puff lá se ia o programa.

Fig.1 ZX81
Mas pouco tempo depois, em 1982, foi lançado aquele que viria a ser o maior êxito da Sinclair: O ZX Spectrum. Com mais memória (16K e 48K de origem), melhores capacidades gráficas incluindo imagem a cores, abriu espaço para a criação de programas mais extensos, mais elaborados e mais agradáveis à vista. A melhoria da interface com o utilizador e da memória disponível para programas e dados, aumentou o interesse pelo ZX Spectrum e levou as vendas a atingirem números record para a época. 

Fig. 2 ZX Spectrum
O preço andaria por volta dos 28 mil escudos, se a memória não me atraiçoa. Com a base de utilizadores a crescer, criaram-se grupos, uns mais interessados nos jogos, outros mais interessados na exploração das capacidades da máquina, criando e partilhando programas em BASIC, em Assembly e em linguagem máquina, que "resolviam" um sem número de situações matemáticas, de gestão doméstica, gestão de clubes de video, de bibliotecas e muitos outros problemas. O Spectrum não era um computador para uso profissional, mas alimentou nos utilizadores a percepção de que esta máquina (o computador) podia facilitar muito a vida das pessoas, em muitas áreas de actividade. As pessoas estavam habituadas a máquinas desenhadas para executar uma tarefa, mas não tanto a máquinas que pudessem ser programadas para desempenhar várias tarefas. A chave para toda essa flexibilidade é a programação. O programa é um conjunto de instruções sequenciais que a máquina entende e executa sequencialmente o que permite executar uma determinada tarefa. O Spectrum era programável em BASIC, que era uma linguagem muito usada na altura e relativamente fácil de aprender. Dizem os entendidos que não é a melhor linguagem para iniciação à programação e até há quem defenda que quem aprendeu BASIC como 1ª linguagem de programação, nunca mais poderá ser um bom programador na vida :) Isto porque o BASIC é uma linguagem não estruturada, permitindo a chamada programação "Spaghetti" difícil de seguir, muito por culpa da instrução GOTO. O manual do Spectrum explicava com detalhe o que fazia cada uma das instruções, o que facilitava a iniciação na arte de programar e chegava a ser viciante o desafio de conseguir fazer novos programas cada vez mais complexos. Existiam alguns programas comerciais, vendidos em cassetes, mas o verdadeiro interesse, para mim, estava na elaboração dos nossos próprios programas. Lembro-me de ir a casa de amigos para partilhar algoritmos, debater ideias e construir programas completos naquelas tardes  chuvosas de inverno. Havia revistas que traziam um sem número de programas, que os leitores introduziam nos seus Spectrum's até ás tantas da manhã e depois guardavam numa cassete de audio, que era o meio de armazenamento magnético que se utilizava.
Com o passar do tempo e com a comercialização de computadores mais potentes, com micro-processadores de 16 bits e mais memória RAM, (640KB no caso do IBM PC) o Spectrum foi ficando obsoleto, o IBM PC e compatíveis foram ganhando terreno em utilizações profissionais, graças aos melhores teclados, monitores e drives de disquetes que permitiam guardar informação de forma mais fiável e prática que as cassetes usadas pelo Spectrum. Uma das aplicações que impulsionou o uso dos PCs nas empresas, foi o processamento de texto, que substituiu muitas máquinas de escrever por esse mundo. Lembram-se do Wordstar? foi um verdadeiro sucesso na altura.
Os PCs e seus clones começaram a chegar às casas particulares, com preços elevados, cerca de 200 a 400 mil escudos, o que frequentemente obrigava a contrair empréstimos, mas era um investimento no futuro, pelo menos era a ideia que se queria fazer passar. As pessoas aprendiam a trabalhar com o sistema operativo, o DOS, através de revistas da especialidade, ou através de formações profissionais que abundavam na época. Os PCs não tinham grandes capacidades gráficas nem existia muita informação sobre a programação de PCs, pelo que o hábito de programar foi morrendo. Hoje em dia quando se compra um PC, raramente se pensa em construir os próprios programas. Essa cultura da democratização da programação morreu com o desaparecimento do Spectrum. É pena, porque programar é um exercício que disciplina a mente e organiza o pensamento de forma lógica. A programação de PCs está hoje praticamente reservada a profissionais.




Comentários

Mensagens populares deste blogue

Apresentação da Placa Freedom FRDM-KL25Z

Olá a todos! O artigo de hoje é dedicado aos adeptos dos micro-controladores e suas plataformas de avaliação e desenvolvimento. Estas placas são úteis para prototipagem rápida de aplicações baseadas em micro-controladores.  Vamos hoje falar da placa Freedom FRDM-KL25Z. Com um custo na ordem dos 20€, esta placa usa um micro-controlador Kinetics da série L, de 32 bits, mais propriamente o KL25Z128VLK, baseado no ARM® Cortex™-M0+. Com uma frequência de relógio que chega aos 48MHz, 128K de flash e muitos portos analógicos, digitais, e PWM. é sem duvida promissora a nível de possibilidades e desempenho.     Fig. 1 - ARM® Cortex®-M0+ MCU 32-Bit Embedded Evaluation Board A forma da placa e do seu pinout, permite usar placas de expansão desenhadas para o Arduino R3, tendo no entanto em atenção que esta placa FRDM-KL25Z trabalha com 3.3V. Devemo-nos portanto assegurar da compatibilidade dos "shields" Arduino com os 3.3V. ...

Assistentes Virtuais

Olá a todos, Hoje vamos falar sobre as assistentes virtuais e a sua real utilidade. Um(a) assistente  virtual é um dispositivo composto por software e hardware, capaz de realizar tarefas para si, ou para qualquer individuo, baseado num comando dado pelo utilizador. Esse comando pode ser dado por texto ou por voz, dependendo do assistente, sendo que alguns aceitam ambos. Os assistentes virtuais têm ganho espaço na vida das pessoas, em vários campos, nomeadamente no auxílio doméstico. Agilizam a obtenção de informações, como a informação meteorológica, aprendem com as interações com o utilizador, melhorando gradualmente a sua performance. Se tiver o equipamento adequado em casa, podem mesmo ligar a TV, controlar a iluminação, subir os estores etc… Os mais interessantes são os/as assistentes virtuais que aceitam comandos de voz e respondem da mesma forma, pois representa uma maior aproximação da máquina ao ser humano, minimizando a necessidade de o homem aprender a li...

Apresentação do Arduino nano

Olá a todos, Hoje vou apresentar-vos o Arduino nano. O Arduino é uma plataforma muito conhecida e uma forma muito interessante de entrar no mundo dos micro-controladores.  Como a sua base de utilizadores é muito grande, existe muito código disponível que é partilhado em sites temáticos como o  https://create.arduino.cc/ Existem também muitas bibliotecas disponíveis o que facilita muito a utilização dos mais variados tipos de sensores, displays, RTC, cartões de memoria etc...  Os fabricantes de hardware fornecem normalmente as bibliotecas que tornam a utilização do seu hardware fácil e acessível ao principiante.  Existem várias placas arduino disponíveis, com preços muito acessíveis, cada uma virada para um tipo de utilização especifica. Para iniciação, o arduino Uno é normalmente a escolha da maioria, pelo que talvez seja o mais conhecido.  Pessoalmente também usei o Uno da primeira vez que contactei com o universo do arduino...