Arquivo do Autor: andreba

Your files, TRON and text adventures

English version below.
Gruta de Maquiné - MSX
Já jogou adventures de texto? Foram alguns dos primeiros jogos a surgirem nos computadores, e mesmo com a evolução das capacidades gráficas dos computadores, os adventures continuaram a ser jogados, ora mistos de texto e gráficos ora apenas gráficos.
Para quem não sabe o que é: adventures de texto eram jogos aonde você, o jogador, interagia com o jogo digitando comandos. Algo mais ou menos assim: imagine que seu personagem no jogo estava em uma sala, o jogo te daria uma mensagem do tipo:

Você está em uma sala verde. Tem uma mesa no centro da sala com um vaso em cima. Há uma porta para o norte e um corredor para o leste.

Deste ponto em diante, você poderia digitar o comando leste, que faria seu personagem andar pelo corredor, entrar em um novo ambiente e novamente o jogo iria imprimir a descrição desse ambiente na tela. Também seria possível interagir com os objetos dos ambientes, com comandos como pegue faca, abra porta, ou coloque vaso no pedestal. E assim podia-se viver aventuras que iam desde mundos de fantasia ou ficção científica até estórias de terror e ação.
Com o avançar da tecnologia, estes jogos ganharam imagens, e aos poucos foram se tornando cada vez mais gráficos, até o ponto em que não era mais preciso nem digitar os comandos: bastava ir apontando os objetos na tela e escolhendo as ações, clicando em menus com verbos ou em ícones. Os jogos desta categoria mais conhecidos na década de 90 eram os da LucasArts, que fez história com seu primeiro adventure totalmente gráfico, o Maniac Mansion, depois seguido de pérolas como a série Ilha dos Macacos (quem tiver interesse em jogar essas pérolas hoje em dia, conheça o projeto ScummVM).
Ilha dos Macacos 2
E o que tem TRON a ver com isso? TRON foi um filme de ficção dos estúdios Disney lançado em 1982, o primeiro filme a usar extensivamente imagens criadas por computador. Claro que elas não se comparam nem de longe e com a luz apagada com os efeitos de hoje em dia, mas o mais interessante em TRON era a história: o protagonista era digitalizado e inserido dentro do sistema de um grande computador, entrando em um mundo ficcional onde os programas apareciam como pessoas, com pensamentos e emoções, e que era regido por mão de ferro pelo sistema operacional tirano, o MCP (qualquer semelhança com o mais moderno Matrix não deve ser mera coincidência…) Ainda hoje é um dos meus filmes preferidos, por mostrar parte do “mundo” com o qual convivo, como programador, como um mundo visível, fantástico e intrigante. Me chamem de nostálgico, mas eu prefiro a caracterização dos programas como entidades vivas em TRON às de Matrix…
Cena de TRON
Enfim, e daí com jogos adventures e TRON? Bem, eu estava lembrando de um e de outro, e daí lembrei de uma cena em TRON onde o personagem principal chega em uma cidade dentro do sistema, e vê um monte de “pessoas” vestidas de forma diferente que os outros programas, com roupas esquisitas, cheios de adereços… daí ele pergunta quem são aqueles caras esquisitos, e o outro programa responde “são bases de dados”. Quer dizer, no mundo de TRON até os arquivos seriam como entidades, só que com propriedades diferentes dos programas, e pelo visto menos ativos. E de repente pensei numa idéia… e que tal um jogo adventure (não precisa nem ser de texto, pode ser gráfico e em 3D mesmo), ambientado num mundo parecido com o de TRON, o interior de um sistema de computador, mas onde este jogo seria dinâmico, criado de acordo com o sistema que você está usando no seu computador, e até mesmo com os seus arquivos? Imagina só… você começa num grande salão que é na verdade o seu diretório de arquivos, o sistema te mostra uma grande sala chamada “salão principal” ou algo assim. O jogo escaneia os arquivos no seu diretório, alguns arquivos seriam selecionados para aparecerem como entidades vivas dentro do jogo… arquivos de texto e documentos seriam escaneados, e suas palavras seriam usados como diálogo pelas entidades respectivas. Arquivos de imagem seriam usados como elementos de decoração do ambiente, e de música como músicas e sons de fundo. Os subdiretórios seriam outras salas, seguindo as portas do salão principal se entraria nessas salas, que teriam portas para outros subdiretórios e por aí vai; para ganhar acesso a essas salas não bastaria simplesmente andar por elas, digamos que o acesso estaria barrado e você teria que interagir com as tais entidades para conseguir informações, ferramentas ou permissões para avançar no jogo. Agora, quanto ao que estas entidades desejam que você faça ou quais dificuldades elas impõem… isso seria baseado no tipo de arquivo, no conteúdo desse arquivo (seria mais fácil fazer isso com documentos de texto), de forma dinâmica e inteligente. A cada partida o jogo seria diferente, e completamente diferente de um usuário e de um computador para outro. Quanto ao objetivo do jogo eu não sei, mas certamente seria mais explorativo do que um jogo normal, quem sabe filosófico…
(em tempo: há alguns anos atrás um bom jogo em 3D foi feito baseado no filme TRON, chama-se TRON 2.0)


Gruta de Maquiné - MSX
Have you ever played an adventure game (also called interactive fiction)? They were among the first computer games, and even today there are some people who find these games fun. No need to say that they evolved together with the computer hardware, so there came to be adventure games with text and images, and even with only images.
To those that don’t know what I’m talking about: adventure games were played through typed commands. Think this: you’re playing a game where your character was in a room, so the game would print a message like this:

You are in a green room. There are a table in the center of this room and a jar on the table. There are a door to north and a corridor that goes east.

From here onwards, you could type the command east, moving your character through the corridor, so he would enter a new room and the game would print that new room’s description. You could also interact with the objects in the current room, with commands like get knife, open door, or put jar on altar. And this way one could play adventures that ranged from fantasy worlds to sci-fi to horror stories and action.
As the technology advanced, these games were upgraded with graphical capabilities, and become more and more graphical, until the point that one didn’t need even to type commands: just pointing and clicking the objects in the screen, and selecting actions in menus with verbs or icons. The most famous adventure games in the 90s were from LucasArts, which first totally graphical adventure game, Maniac Mansion, made it instantly world-famous. Maniac Mansion was followed by other fine games such the Monkey Island series. (if you want to play those old games in your computer today, please see the project ScummVM).
Monkey Island 2
…translate the rest later…
E o que tem TRON a ver com isso? TRON foi um filme de ficção dos estúdios Disney lançado em 1982, o primeiro filme a usar extensivamente imagens criadas por computador. Claro que elas não se comparam nem de longe e com a luz apagada com os efeitos de hoje em dia, mas o mais interessante em TRON era a história: o protagonista era digitalizado e inserido dentro do sistema de um grande computador, entrando em um mundo ficcional onde os programas apareciam como pessoas, com pensamentos e emoções, e que era regido por mão de ferro pelo sistema operacional tirano, o MCP (qualquer semelhança com o mais moderno Matrix não deve ser mera coincidência…) Ainda hoje é um dos meus filmes preferidos, por mostrar parte do “mundo” com o qual convivo, como programador, como um mundo visível, fantástico e intrigante. Me chamem de nostálgico, mas eu prefiro a caracterização dos programas como entidades vivas em TRON às de Matrix…
Cena de TRON
Enfim, e daí com jogos adventures e TRON? Bem, eu estava lembrando de um e de outro, e daí lembrei de uma cena em TRON onde o personagem principal chega em uma cidade dentro do sistema, e vê um monte de “pessoas” vestidas de forma diferente que os outros programas, com roupas esquisitas, cheios de adereços… daí ele pergunta quem são aqueles caras esquisitos, e o outro programa responde “são bases de dados”. Quer dizer, no mundo de TRON até os arquivos seriam como entidades, só que com propriedades diferentes dos programas, e pelo visto menos ativos. E de repente pensei numa idéia… e que tal um jogo adventure (não precisa nem ser de texto, pode ser gráfico e em 3D mesmo), ambientado num mundo parecido com o de TRON, o interior de um sistema de computador, mas onde este jogo seria dinâmico, criado de acordo com o sistema que você está usando no seu computador, e até mesmo com os seus arquivos? Imagina só… você começa num grande salão que é na verdade o seu diretório de arquivos, o sistema te mostra uma grande sala chamada “salão principal” ou algo assim. O jogo escaneia os arquivos no seu diretório, alguns arquivos seriam selecionados para aparecerem como entidades vivas dentro do jogo… arquivos de texto e documentos seriam escaneados, e suas palavras seriam usados como diálogo pelas entidades respectivas. Arquivos de imagem seriam usados como elementos de decoração do ambiente, e de música como músicas e sons de fundo. Os subdiretórios seriam outras salas, seguindo as portas do salão principal se entraria nessas salas, que teriam portas para outros subdiretórios e por aí vai; para ganhar acesso a essas salas não bastaria simplesmente andar por elas, digamos que o acesso estaria barrado e você teria que interagir com as tais entidades para conseguir informações, ferramentas ou permissões para avançar no jogo. Agora, quanto ao que estas entidades desejam que você faça ou quais dificuldades elas impõem… isso seria baseado no tipo de arquivo, no conteúdo desse arquivo (seria mais fácil fazer isso com documentos de texto), de forma dinâmica e inteligente. A cada partida o jogo seria diferente, e completamente diferente de um usuário e de um computador para outro. Quanto ao objetivo do jogo eu não sei, mas certamente seria mais explorativo do que um jogo normal, quem sabe filosófico…
(em tempo: há alguns anos atrás um bom jogo em 3D foi feito baseado no filme TRON, chama-se TRON 2.0)

2008, o ano em que faremos contato?

Pode ser coisa da minha cabeça, mas vejam só: primeiro, sai o Asus eee no mercado, atraindo as atenções de todo mundo (inclusive a minha… quero um 🙂 ). Daí saem um monte de análises sobre ele… uma belíssima máquina, vai preencher bem um nicho de mercado que estava sendo pouco explorado, coisa e tal. Beleza. Daí que um dos itens comentados sobre o equipamento é o bom uso que ele faz do Linux; um Linux bem adaptado, configurado, que roda rápido e de forma bem responsiva (link para análise do ArsTechnica). Nota para o detalhe de que a máquina aceita Windows XP, sim, mas pelos comentários da ArsTechnica, os consumidores devem continuar usando o Linux mesmo no aparelho, porque está rodando muito bem, obrigado. E então comentam da ausência da Microsoft no mercado de dispositivos móveis recentemente, como a Intel têm investido em Linux para dispositivos móveis, como a ARM também tem feito o mesmo, e como no ano que vem vários produtos com Linux embarcado estarão chegando no mercado. Resumindo, a indústria de hardware está se movendo com muita força na direção do mercado de dispositivos móveis (nenhuma novidade até aqui; esta tem sido a tendência dos últimos anos), e como todo hardware precisa de software para torná-lo útil, a escolha da indústria para SO tem sido, realmente o Linux (também, sem grandes novidades aqui).
Hmmm… no fim, a indústria de hardware, pelo menos de dispositivos móveis, está extremamente interessada em usar Linux.
Daí eu vejo esta outra notícia, sem relação como a primeira: tecnologia de fast-boot na BIOS para máquinas Windows. Cansado de esperar por vários minutos pelo boot do seu Windows? A Phoenix promete, através do uso de sua plataforma Hyperspace, que você vai poder rodar os aplicativos mais comuns rapidamente logo após ligar seu computador, sem precisar esperar pelo boot do SO inteiro. E o que isto tem a ver? Até onde consegui ler, este Hyperspace não tem nada a ver com Linux ou software livre. O que me chamou atenção foi esta parte da matéria:

Those problems don’t just entail slow boot times. At a basic level, they also have to do with Microsoft dictating user experience as a whole, regardless of what machine you’re using. In that vein, Phoenix says its HyperSpace platform could very well usher in a new era of ultrapersonalized PCs and laptops, even upending the way the industry does business.
“Historically, Windows has defined the machine,” Hobbs says, “and (manufacturers) can’t really do anything about that. Now, we’re giving them the ability to develop the machine in the way they want.”

Dá pra perceber o tom deste comentários: a indústria de hardware comentando que até então, o Windows definia a máquina, e o que os fabricantes podiam fazer com elas. E que eles, os fabricantes, querem sair de baixo desta influência.
Bom, dá para interpretar este último artigo de várias formas; novos rumos para a indústria de hardware para PCs, novos usos para BIOS de máquinas, o fato da Phoenix não estar (ou estar?) aproveitando o software livre para esta sua nova plataforma Hyperspace, e daí por diante. O que me chamou atenção nestas duas notícias aparentemente sem correlação – as análises do Asus eee e esta do sistema Hyperwave para BIOS – é o fato da indústria de dispositivos móveis estar pendendo com força para o lado do software livre, a ausência aparente de novas estratégias da Microsoft para este mercado, e este último comentário de fabricantes de PC querendo sair de baixo da influência dominadora da Microsoft (tá, o “dominadora” fui eu quem disse, mas o resto foi a Phoenix). As idéias combinam umas com as outras, ou é coisa da minha cabeça?
Bom, mesmo que seja: o fato é que pelo visto o Linux está entrando com os dois pés neste mercado de dispositivos pequenos e móveis, e por vantagens técnicas. O mesmo não tem ocorrido tanto com o mercado de desktops, mas será que um mercado pode influenciar o outro? Me lembro de 2004, quando todo mundo falava que “2005 será o ano do Linux no desktop”, e no fim das contas esta previsão não se concretizou – o Linux realmente continuou avançando no desktop, mas não no ritmo esperado/desejado pela indústria ligada ao mesmo ou pela comunidade. Enfim… como se fosse um dèja-vu, começo a ver notícias dizendo que “2008 será o ano do Linux no desktop”. Bom, se desta vez vai ou não vai, não sei dizer – pode ser que o ritmo de adoção continue lento, ou pode ser que eu me surpreenda. Espero. Mas, certamente, será o ano em que o Linux irá se tornar sim muito mais presente do que antes, mesmo para os usuários mais comuns, se não for através de seus desktops, será por uma invasão silenciosa em dispositivos que os usuários pouco costumam associar ao pingüim.

ODF ainda vivo

Retirado daqui e visto originalmente no Br-Linux: nos últimos dias têm circulado algumas notícias sobre o abandono por parte da OpenDocument Foundation ao formato ODF (formato aberto, usado pelo OpenOffice.org e BrOffice.org), sobre o formato “aberto” OOXML do Microsoft Office aparentemente estar ganhando terreno, entre outras coisas.
Pra começar, o artigo aponta logo de cara para o fato de que a tal OpenDocument Foundation não é a criadora do formato ODF, apesar do nome sugerir isso. O padrão é mantido pelo Consórcio OASIS. A tal OpenDocument Foundation não tem importância alguma no formato ODF.
Confesso que eu fui um dos que ficaram preocupados com as últimas notícias, mas depois desse artigo dá pra descansar sossegado. As notícias sobre a morte do ODF foram altamente exageradas.

Emacs

Emacs
Retirado da Wikipédia, com adaptações:

O Emacs é um conceituado editor de texto, usado notadamente por programadores e usuários que necessitam desenvolver documentos técnicos, em diversos sistemas operacionais.
A primeira versão do Emacs foi escrita em 1976 por Richard Stallman. Sua versão atual é 22.1 de 2 de junho de 2007.
O Emacs é considerado por muitos o editor de texto mais poderoso que existe. Sua base em Lisp, especificamente num dialeto de Lisp chamado Emacs Lisp, permite que ele se torne configurável ao ponto de se transformar em uma ferramenta de trabalho completa, uma espécie de “canivete suíço” para escritores, analistas e programadores.
Alguns recursos disponíveis no Emacs:

  • Edição colorida e destacada para programação (seja em Lisp, Assembly, HTML, PHP, Python, ShellScript, C, C++ etc. e etc. e etc.)
  • Aceita configurações para comandos de shell (a EShell)
  • Programável em Emacs Lisp
  • Sua flexibilidade faz com que possa rodar dentro dele até mesmo jogos, navegadores web, clientes de e-mail e news e outros programas
  • Tem embutido um programa de inteligência artificial, que simula uma consulta entre o usuário e um psicanalista (sim, é sério).

Para alguém que tente buscar bons editores de texto que sirvam para um programador, o Emacs sempre aparece como um dos indicados, principalmente se você programar para Linux ou em Lisp. Falam que é um editor extremamente poderoso, configurável, customizável, e que pode servidr como uma boa IDE (Integrated Development Environment – Ambiente de Desenvolvimento Integrado) para qualquer linguagem. Contanto, claro, que o usuário se disponha a aprender a operar o editor, cujos comandos chegam a ser quase crípticos. Por exemplo, da primeira vez que você executar o programa e quiser abrir um arquivo, o que você vai fazer? Em um editor “normal” você esperaria encontrar uma barra de menu com um menu “Arquivo”, e dentro dele um item “Abrir”. Bem, não que o Emacs não tenha um menu – ele tem um que pode ser usado no ambiente gráfico, e até no modo caractere, mas o que se espera do usuário é que ele aprenda a combinação de teclas Ctrl+x Ctrl+f para abrir um arquivo.
Emacs em Windows, com o menuUsando Gnus para ler news
Complicação desnecessária? Pode ser, mas o principal argumento a favor disto é que, aprendendo estas combinações de teclas, com o hábito você será mais produtivo, pois o tempo que é gasto pressionando estas teclas é mais rápido que tirar a mão do teclado, pegar o mouse, mover o mouse até o menu, clicar, mover o mouse novamente até o item “Abrir”, e assim por diante. Ainda assim, se você preferir, você pode usar o menu gráfico e até uma pequena barra de botões. Mas tudo no editor é pensado e direcionado ao uso intensivo do teclado.
Falando assim o Emacs soa mais como um vestibular para nerds, só passa quem decorar um milhão de atalhos enigmáticos de teclado. Ou como uma sala de tortura especializada em punir os usuários de mouse, esses hereges que insistem em prestar culto à setinha do mouse ao invés de se render ao mundo dos atalhos de teclado, o único caminho verdadeiro. Mas tudo tem o seu motivo: a seqüência Ctrl+x Ctrl+f fica facilmente ao alcance da mão esquerda, assim como outras seqüências começando com Ctrl+x (são muitas). E depois, mesmo que pareça difícil demais a princípio, há coisas que facilitam muito a vida – tenha em mente que o Emacs não é um editor de texto customizável, ele é um verdadeiro ambiente operacional programável. E as suas capacidades de ser programado para executar tarefas especializadas vão muito além da mera gravação de macros, coisa que outros bons editores têm. Por exemplo, em que outro editor de texto você conseguiria editar seus arquivos, seus códigos-fonte na sua linguagem preferida, compilá-los e debugá-los, e, dentro do mesmo editor, acessar seus e-mails, participar de discussões em um grupo de news, e até mesmo jogar Tetris? (e com essa última descoberta eu cheguei à conclusão de que não sobrou nenhuma fronteira no espaço para o Tetris: se bobear é capaz dele ter sido gravado até no disco dourado do satélite Voyager e estar chegando agora aos confins do universo.)
Tudo isso, claro, se você se dispuser a entender e domesticar o bicho.

Eles Vivem

OBEY
Filme dos anos 80, feito com baixo orçamento, logo espere um filme não tão bem feito e com efeitos especiais sofríveis. E o filme tem disso, mesmo. Mas quer saber? ADOREI este filme. A execução da idéia pode deixar um pouco a desejar, mas a idéia central do filme é tão boa que chega quase a ser coisa de gênio.
Resumidamente, porque eu não gosto de estragar a surpresa de quem assiste um filme: o filme se passa nos anos 80 nos Estados Unidos, em meio à crise econômica americana, onde os ricos ficavam mais ricos e os pobres corriam atrás de emprego, cada vez mais raro. Um cidadão comum desempregado vai de cidade em cidade em busca de emprego. Um belo dia, ele encontra uns óculos escuros que o fazem ver o mundo como ele realmente é… a humanidade está subjugada por uma raça alienígena, que está entre nós, disfarçados de humanos normais. Todo o nosso trabalho é para manter o conforto e o crescimento econômico deles. Há um pequeno grupo de resistência, que fabricou os óculos e está tentando conscientizar as pessoas, mas quase não conseguem – ninguém mais questiona os acontecimentos, as atitudes do governo, os problemas com a sociedade… ninguém mais questiona a realidade, estão todos conformados. E a realidade é que o mundo está cheio das mensagens subliminares dos alienígenas, que podem ser vistas com os óculos, e que mantêm as pessoas nessa atitude submissa e conformista. Eles vivem, nós dormimos.
Um filmaço. Poderiam ter explorado ainda um pouco mais a estória, eu acho, mas vale a pena mesmo assim.
Site oficial do filme, na página do diretor John Carpenter.

WordPress theme: I Miss the Pixels 0.3

English version below.
Para os saudosistas dos gráficos de jogos do Atari 2600 e do Odyssey2. Com este update ele parece estável o suficiente para ser usado no meu blog, e tem suporte a widgets, com três barras – duas laterais e uma no cabeçalho.


For the ones who still miss the graphics of the old consoles Atari 2600 and Odyssey2. With this update it now seems stable enough to be used in my blog, and it now has support to widgets, and three sidebars – two at both sides and one last that isn’t really a ‘side’bar, more like a headerbar.


I Miss the Pixels
Download (47KB)