18 fev 2013

Despertar

Submitted by bardo

Sabe aqueles dias
Que você acorda
O que era não é
Nem deve satisfação

O céu que sua mão
Tocou não é azul
E sob o seu pé
E por onde é que anda o chão?

Verdade e mentira
Não são absolutas
Nesse dia sem razão

Afinal viver
Um sonho qualquer
Vale a pena ou é em vão?

-- Cárlisson Galdino

15 fev 2013

Ovos de cobra

Se você não tem nada a ver com programação, nem tem interesse no assunto, simplesmente ignore este artigo.


Mike Driscoll tem um blog dedicado a Python chamado The Mouse vs. the Python e eventualmente há excelentes artigos por lá.
Esta é uma tradução livre do artigo Python 101: esay_install or how to create eggs e modifiquei sutilmente algumas coisas, incluindo os exemplos. Agradeço ao Mike pelos excelentes artigos e me desculpo pelas liberdades que tomei na tradução (incluindo a mudança no nome do artigo). Vamos lá então!


Hoje daremos uma olhada no controverso método easy_install de instalar módulos e pacotes Python. Também aprenderemos como criar nossos próprios arquivos *.egg. Você precisará do pacote Setup Tools para fazer isso tudo. Esse pacote não suporta Python 3.x, assim se você precisar dessa versão do Python, veja pip. Haverá artigos desses projetos no futuro. Por ora, começaremos com o SetupTools e o easy_install.

Por que é controverso? Não estou de todo certo, mas as pessoas não parecem felizes com a forma como se pacotes instalam pela metade quando elas não esperam o download terminar. Pra completar, o autor não parece lá muito interessado em atualizar o pacote ou permitir que alguém o faça. Veja o artigo de Ziade no fim deste post.

SetupTools é o método principal e original de baixar e instalar pacotes Python pelo PyPI e outras fontes via linha de comando, tipo um apt-get para Python. Quando você instala o SetupTools, ele instala um script ou executável chamado easy_install, que você invocará na linha de comando para instalar ou atualizar pacotes. Ele também fornece uma forma de criar ovos de Python. Vamos gastar mais um tempinho para entender melhor essa funcionalidade.

Usando easy_install para instalar Pacotes

Uma vez que você tenha SetupTools instalado, você deve tê-lo no seu caminho. Isso quer dizer que você tem que estar pronto para abrir um terminal (Linux) ou linha de comando (Windows) e simplesmente executar easy_install. Um exemplo de invocação:

easy_install sqlalchemy

Isso pedirá ao PyPI que tente baixar o SQLAlchemy mais recente do repositório dele ou de qualquer outro para o qual o pacote PyPI aponte. O easy_install o instalará. Um

Um problema comumente criticado do easy_install é que ele pode tentar instalar o pacote antes mesmo de concluir seu download, o que leva a problemas e instalações defeituosas. O legla é que se você configurar corretamente o seu setup.py, o easy_install vai baixar também todas as dependências necessárias, instalando-as também. Assim, se você instalar algo complexo, como o TurboGears, você verá o easy_install instalar um bocado de pacotes. Essa é uma razão pela qual você pode querer usar virtualenv para ter certeza de que gosta de todos esses pacotes e de que eles funcionam a contento. Se não funcionarem, você simplesmente apaga a pasta virtualenv. De outro modo, você terá que ir na sua própria pasta do Python e cavar por ali para tentar "desinstalar" (ou seja, deletar pastas) por sua conta. A outra coisa legal que o easy_install faz quando instala os ovos é que ele adiciona o ovo a um arquivo easy_install.pth em site-packages, de modo que quando você o desinstalar, precise editar esse arquivo também. Felizmente, você pode usar pip para desinstalá-lo se você não tiver criado as pastas sozinho. Há um comando -uninstall (-u), mas eu já ouvi relatos contraditórios sobre seu funcionamento.

Você pode instalar um pacote passando uma url diretamente ao easy_install. Outro recurso maneiro é que você pode dizer ao easy_install qual versão você quer e ele tentará instalá-la. Finalmente, easy_install pode instalar tanto a partir de arquivos de código-fonte quanto de ovos (arquivos .egg). Para uma lista completa dos comandos, você deve ler a documentação.

Criando um ovo

Um arquivo egg é um formato de distribuição para pacotes Python. É uma alternativa à distribuição de fontes ou executáveis do Windows, mas perceba que módulos em Python puro são multiplatafroma! Daremos uma olhada em como criar nosso próprio ovo usando o pacote que criamos no tutorial sobre criação de módulos (que ainda não traduzi :-( ). Crie uma nova pasta e coloque a pasta mymath dentro dela. Crie um arquivo setup.py no diretório pai do mymath com o seguinte conteúdo:

from setuptools import setup, find_packages
 
setup(
    name = "mymath",
    version = "0.1",
    packages = find_packages()
    )

Perceba que ao invés de usar a função setup do distutils, usamos o setup do setuptools. Também usamos a função find_packages do setuptoos, que procurará automaticamente por pacotes no diretório corrente e os adicionará ao ovo. Para criar o tal do ovo, você só precisa digitar essa linha de comando:

python setup.py bdist_egg

Isso gera um monte de saída, mas quando tudo estiver ok você vai ver três novas pastas: build, dist e mymath.egg-info. A única que nos interessa é a pasta dist, onde você achará o ovo, mymath-0.1-py2.6.egg. Note que na minha máquina, ele faz referência ao meu Python padrão, que era o 2.6, e cria o ovo para essa versão do Python. O ovo em si é basicamente um arquivo zip. Se você mudar sua extensão para "zip", poderá fuçar por dentro dele e ver que ele tem duas pastas: mymath e EGG-INFO. A partir daqui, você já pode apontar com o easy_install para o seu ovo no sistema de arquivos e assim instalar seu pacote.

Se quiser, vocêm pode usar o easy_install para enviar seu ovo ou fonte diretamente para o Python Package Index (PyPI), usando o seguinte comando (copiado da documentação):

setup.py bdist_egg upload # cria um ovo e o envia
setup.py sdist upload # cria uma distribuição de fonte e a envia
setup.py sdist bdist_egg upload # cria ambos e os envia

Conclusão

Agora você está apto a usar o easy_install ou sabe o suficiente para tentar uma das alternativas. Pessoalmente, tive alguns problemas com ele e não pretendo usá-lo. Porém, daremos uma olhada no pip e sobre distribuição em breve, em artigo futuro. Por enquanto, dê uma chance ao easy_install e veja o que conclusão você tira, ou me conte suas histórias de terror nos comentários!

Leia também (em Inglês)

P. S.: Foto usada no post: 1st Batch Corn Hatching, de Viper76

14 fev 2013

Academy of Champions (Wii)

Submitted by bardo

Academy of Champions

Não gosto de jogos de futebol. Pode parecer estranho, mas não gosto de jogos de futebol nem no sentido esportivo nem no sentido eletrônico. Não quero dizer que eu não entendo das regras, só que não gosto. Não quero também fazer crítica nem ao esporte, tão popular no Brasil, nem aos jogos eletrônicos, que tem seu público fiel.

Bem, mas terminei comprando dois jogos de futebol para Wii (estavam a preço bastante convidativo). Um deles foi o Pro Evolution Soccer 2009 (que comecei o tutorial e abandonei, fazer o quê?) e o Academy of Champions. Este sim, pra mim, valeu a compra.

O jogo tem um estilo cartunesco e tem um quê de fantasia em tudo. Você é uma criança que sonha em se tornar grande no Futebol. Vai para uma academia especial, dirigida por Pelé e Mia Hamm (essa eu não conheço, mas dizem que é famosa :-P). Lá tem que cumprir etapas de treinamento, desafios, procurar jogadores para montar um bom time, comprar equipamentos... E vencer jogos importantes! A evolução dos personagens é um ponto bacana. Outro ainda mais legal são os especiais.

Eu lembro que havia um jogo de futebol para Super Nintendo onde se jogava com a turma do Megaman. Eles tinham chutes especiais, com poder. É tipo o robô de gelo ter um chute que congela em quem a bola bate. Pois bem, o Academy of Champions tem também esse lance de especial. E é bem divertido.

Os times são formados por cinco jogadores, incluindo o goleiro. Não há juiz, nem lateral ou escanteio: a bola está em campo o tempo todo. Os personagens são bem diferenciados, e há mistura de sexo. Você vai encontrar a meio-campista baixinha e gasguita, o goleiro brutamontes, o defensor magrela e altão... E há acessórios. Dá pra jogar com bandana, chapéu mexicano e até um chapéu do Rayman.

Bem, mas vamos voltar às atividades. O roteiro é dividido em trimestres. Cada trimestre é composto por quatro semanas (?), de cinco dias cada (??). Cada dia pode ter de uma a três atividades que precisam ser executadas. Boa parte das vezes podemos esconher entre duas ou três opções de atividade. A cada cinco dias nos deparamos com um jogo que não podemos perder. Se perdermos, a semana é zerada e voltamos ao seu começo. Por exemplo, se perder o desafio do 15º dia, você volta para o 11º.

Pra finalizar, achei o jogo muito criativo e divertido, apesar dos altos tempos de loading. Nem disse, mas a Ubisoft ainda preparou uma surpresa, colocando alguns personagens de jogos consagrados dela dentro desse jogo de futebol (por exemplo, o Altair, de Assassin's Creed).

Special: 
13 fev 2013

Blogópolis #41

Submitted by bardo

Bento XVI dá adeus

Após sete anos de cargo, o papa Bento XVI pediu pra sair. Apesar de a prática não ser novidade na história dos Papas, é novidade se considerarmos a história mais recente. Papa pede pra sair alegando idade (como se alguém esperasse que houvesse um papa jovem). Não sei como vocês veem isso, mas pra mim isso abre margem pra muita teoria conspiratória...

Há 6 anos eu publicava o soneto Iara (que é mais antigo do que isso)

Direto do @carlisson no Identica:

  • RT @fernandodivac FGR* Blog CyanPack 13.0 – 8track: http://t.co/5EmaeN9a Novo estilo HTML e novo visual. Tem...
  • O link do posto no blog FGR* é outro: http://t.co/r2SWXR1n RT @fernandodivac FGR* Blog CyanPack 13.0 – 8track: Novo estilo HTML e novo...
  • Fora Renan! Vamos dizer ao Congresso para escutar a voz do povo e afastar #RenanCalheiros agora! http://ur1.ca/cpvk3
  • Pra Xbox 360: Dead Space 2 e X-Men: Destiny em promoção ($17 e $15.5) hoje no eStarland http://ur1.ca/cpwgo
  • RT @ufa Faltam 16 horas para o lançamento do filme do #Piratebay, TPB AFK: http://watch.tpbafk.tv/
  • RT @wille Duas horas após o lançamento, já há mais de 3300 seeders do filme sobre o The Pirate Bay. Torrent é fantástico! http://ur1.ca/ ...
  • Uia! MEGA vai entrar mesmo na briga com Dropbox, G.Drive e etc? http://ur1.ca/crjh3
  • Top 10: razões para acreditar no sucesso do Wii U http://ur1.ca/crmv8
  • Portal 2 (PS3) no eStarland por $17.75? Quem tem PS3 aproveite! http://ur1.ca/cpwgo

Tirinhas, posts e podcasts dos últimos dias

Pé na Jaca - Mentirinhas 394
http://mentirinhas.com.br/mentirinhas-394/

http://www.talcoeshow.com/2013/02/acordei-grilado.html

http://www.pensadorlouco.com/2013/02/a-pior-maldicao-worst-curse.html

http://vidadeprogramador.com.br/2013/02/06/o-impacto-socio-economico-do-...

http://esbocais.com.br/aventuras-de-eu-mesmo/aprendi-na-irlanda-que/

Foto original do post: Pope calls Catholics from around the World to fight in CATHOLIC RESISTANCE in the Easter-2012, de MATEUS_27:24&25.

Special: 
12 fev 2013

HTML Unifier

Submitted by bardo

HTML Unifier

Hoje eu passarei para vocês um conhecimento proibido. Um conhecimento milenar e obscuro dos programadores web,  Uma técnica capaz de reverter o que na maioria dos casos são consideradas boas práticas no desenvolvimento web. Estou falando de Data URI.

Se você já criou alguma página web em HTML você sabe como imagens são adicionadas. Não só imagens, mas muitos arquivos são necessários para ajudar o HTML a compor a página que vemos. Folhas de estilo, javascript, videos... O Data URI Scheme foi criado para permitir embutir diretamente no código HTML um conteúdo que deveria estar separado em seu próprio arquivo.

Como assim? No normal, voocê tem uma imagem praia.jpg. Com Data URI nessa imagem, o arquivo não é mais necessário. A imagem é convertida para ASCII e incluida dentro do HTML, na tag que faz a imagem.

Andei vasculhando os editores de HTML livres e não achei nenhum que permitisse incluir uma imagem nesse modo. Nem Nvu/Kompozer/BlueGriphon, nem LibreOffice, nem os editores de código... Como disse no começo, a técnica é "proibida". Se você adiciona imagens diretamente no arquivo da página, toda aquela modularidade vai pro saco. O cache não poderá ser feito de maneira adequada, por exemplo.

Bom, então por que você quis fazer isso? Simples: precisei preparar email em HTML com imagens, de uma maneira legal, através de um serviço que não aceita anexos. E imagens hospedadas geralmente não são lidas por alguns clientes de email, que temem que haja fraudes ou sei lá o quê. Solução? Data URI.

Pesquisei e não encontrei uma solução para isso. Terminei tendo que criar uma. Assim, apresento o HTMLunifier, que escrevi em PHP CLI, usando DOM e DataURI. Claro que você sabia que o PHP pode ser usado pra fazer script que rode no shell, não é?

O que o HTMLunifier faz basicamente é abrir um arquivo HTML e substituir todas as imagens por Data URI. Por segurança, ele não substitui o arquivo, mas cria um novo com terminação -u.html.

Convertendo a imagem para Data URI

Este código eu peguei na página do criador da biblioteca DataURI para PHP, que utilizei. Claro, com algumas melhorias.

function image_to_html($imagefile) {
	if (preg_match("/.jp(e?)g$/i", $imagefile)) {
		$filetype = "image/jpg";
	} elseif (preg_match("/.png$/i", $imagefile)) {
		$filetype = "image/png";
	} else {
		return $imagefile;
	}
	$fileContents = file_get_contents($imagefile);

	if($fileContents != false) {
		$dataUri = new DataUri(
			$filetype,
			$fileContents,
			DataUri::ENCODING_BASE64
	);

	return $dataUri->toString();
}

O processo unificador

Já temos o método que converte imagem em Data URI. Agora precisamos varrer o HTML procurando pelas tags img. Isso é feito com o seguinte código:

function unify($f) {
	$fpath = dirname(realpath($f));
	$dom = new DomDocument();
	$dom->loadHTML(file_get_contents($f));
	$dom->preserveWhiteSpace = false; 
	$images = $dom->getElementsByTagName('img'); 
	foreach ($images as $img) {    
		$imgfile = $img->getAttribute('src');
		if (preg_match("/^http(s?):/i", $imgfile)) {
			$img->setAttribute('src', image_to_html($imgfile));
		} elseif (preg_match("/^file:/", $imgfile)) {
			$rimgfile = preg_replace('/^file:(\/+)/', '/', $imgfile);
			$img->setAttribute('src', image_to_html($rimgfile));
		} else {
			$rimgfile = "$fpath/$imgfile";
			$img->setAttribute('src', image_to_html($rimgfile));
		}
    } 
    $f2 = $fpath . "/" . basename($f, ".html") . "-u.html";
    $dom->save($f2);
}

Se o arquivo está com protocolor http, https ou file, o tratamento é diferente do endereçamento relativo. No fim, o novo arquivo é gerado.

O programa em si

Claro, temos as funções, agora é hora de escrever o programa que as use. Isso é simples e curto:

for ($i = 1; $i < sizeof($argv); $i++) {
	$f = $argv[$i];
	if (file_exists($f)) {
		print "I will transform $f.\n";
		unify($f);
	} else {
		print "File $f don't exists.\n";
	}
}

Corrigindo o Doctype

Isso por si já deve funcionar, mas "vai que"... Então também fiz um método-gambiarra que corrige o Doctype do arquivo novo:

function fix_doctype($f) {
	$af = file($f);
	print "fix\n";
	$sf = "<?xml version=\"1.0\" encoding=\"UTF-8\" ?>\n" .
		"<!DOCTYPE html PUBLIC \"-//W3C//DTD XHTML 1.0 Transitional//EN\" \"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd\">";
	foreach ($af as $s) {
		if (preg_match("/^\<\?xml/i", $s)) {
			print "achei xml\n";
		} elseif (preg_match("/^\<\!DOCTYPE/i", $s)) {
			print "achei doctype\n";
		} else {
			$sf .= "\n$s";
		}
	}
	file_put_contents($f, $sf);
}

Concluindo

Enfim, é isso. Espero que isso seja útil para você. Estou anexando neste artigo o código. Como não posso enviar PHP, estou enviando o código em TXT. Basta salvar renomeando o arquivo para tirar o ".txt" ou selecionar, copiar e colar num editor de textos. O arquivo precisa ser marcado como executável.

E lembre-se: você precisará do php5-cli (ou talvez não), do php-xml-algumacoisa (na dúvida dei apt-get install php-xml-*) e do DataURI.php (coloquei na mesma pasta do HTMLunifier). Muita sabedoria para usá-lo e bom proveito!

Special: 
11 fev 2013

Intervenção (1.1)

Submitted by bardo

No espaço vazio disperso
Nas trevas largada esquecida
Mais uma estrela do universo
Mais um astro que espalha vida

Por trás de uma massa de terra
Surge uma imensa serpente
A pobre estrela então berra
À água que vem da sua frente

A chuva cada vez mais perto
Parece que será o fim
A estrela já teme o fim certo

Mas um brilho belo se fez
- Um nascer do Sol no deserto -
E a chuva não vence essa vez

-- Cárlisson Galdino

Special: 
10 fev 2013

Sub10 (-1)

Submitted by bardo

Só uma nota rápida. Não sei se sobrou muito estoque de Natal, se os preços estão naturalmente 11% acima do que deveriam, mas tem alguns sites brasileiros que estão há um bom tempo oferecendo 10% de desconto.

Claro, isso é ótimo! Descontos são sempre bem-vindos! O curioso que achei foi a apelação recente do Submarino, que recebi por email, tentando convencer seus clientes de que 10% são um bom desconto. Deem uma olhada na imagem e digam se não parece que querem fazer as pessoas de besta.

Esses 10% não são novidade, são os mesmos das outras semanas. A novidade é o truque de notação, apelando até para o velho "$Preço-1". Lembra? Aquilo de diminuir o preço em R$ 1,00, pra termos um número cheio de noves, mas com o primeiro número uma unidade menor. Bem, aposto como alguém deve ter ido na onda e comprado por puro impulso. Fico curioso com o resultado prático dessa artimanha. Pena que não tenho como ter acesso a essa informação. Que povo malandro, hein!

9 fev 2013

Warning Zone #41 - No Hospital

No episódio anterior, foi apresentado um resumo de tudo o que aconteceu até hoje em Warning Zone. Nele, o Grupo Satã planejava sequestrar o prefeito de Stringtown.

No quarto de um hospital, Darrel aguarda que Pandora desperte. A televisão ligada na novela.

A bala que atingiu a Stormdancer felizmente não causou muito estrago, mas o médico pediu sua internação por cautela.

Pandora: Oi?

Darrel: Oi, amor. Acordou! Como se sente?

Pandora: Ah... Normal, eu acho. Só tou cansadinha.

Darrel: Que bom. Vamos ter que melhorar nosso equipamento. Desse jeito não dá certo.

Pandora: Ai, queria ir pra casa... Queria que esse pesadelo todo terminasse...

Darrel: Não chore... Você sabe que poderíamos ir pra casa e esquecer isso tudo a qualquer momento, não sabe?

Pandora: Sei, mas com grande poderes vem grandes responsabilidades, não é isso que você vai dizer? Do filme do Homem-Aranha?

Darrel sorri para ela, já perto da cama.

Darrel: Fiquei muito preocupado com você. Pensei em muita coisa esse tempo todo.

Pandora: Pensou em desistir e deixar o Oliver dominar o mundo?

Darrel: Pensei. Mas não temos pra onde fugir. Nós estamos presos nisso tudo. Se a gente fugir, a destruição que o Oliver tá causando vai acabar chegando até nós.

Pandora: Mas e o Exército?

Darrel: Não sei. Não passou nada na TV ainda, e eu não ia querer deixar você sozinha, não é?

Pandora: Ô... Ei, e o Júnior?

Darrel: Foi pra casa.

Pandora: Tem que estudar, não é? Sorte a dele. Queria ir pra casa também. Pra nossa casinha.

Os dois se assustam com a vinheta do Plantão Urgente, que aparece na Televisão.

Apresentador: Após conseguir escapar do cerco organizado pelo Exército, o Quarteto Fantástico de Stringtown conseguiu sequestrar o prefeito Steve Silva. Não se sabe ainda quais as reinvindicações do grupo. Vejam mais detalhes logo mais no Jornal da Noite. Mais notícias a qualquer momento.

Darrel: Eles derrotaram o Exército...

Pandora: Como a gente vai parar esse bando, bem?

Darrel: Ainda não sei, mas temos que descobrir.

Darrel olha para Pandora preocupado.

Pandora: Eu queria estar bem pra gente dar um jeito nisso, mas não é pra eu sair daqui agora.

Darrel: É, o médico ainda não deu alta.

Pandora: Olha, se quiser ir ver como está o prefeito, pode ir. Só não vá enfrentar Oliver sozinho, pelo amor de Deus!

Darrel: Não vou deixar você aqui sozinha.

Pandora: Ah, meu dengo... Na verdade eu ia deixar você ir, mas meio sem querer, sabe? Queria não mesmo ficar sozinha.

Darrel a beija e acaricia seus cabelos por um momento, então volta a se sentar.

Comercial: Hoje, no Talk & Show da TV, temos uma entrevista com o ufólogo Cirius Spinaphry, para nos explicar de onde vem esses monstros que aterrorizam Stringtown. Não percam!.

Darrel: Amanhã você recebe alta.

Pandora: Então amanhã a gente vai atrás desses cabras.

Darrel: Pandora, é muito importante o que a gente está fazendo. Agora eles derrotaram o Exército! Mas não sei se quero correr de novo o risco de te perder,

Pandora: Ah, seu besta! Pior foi comigo, quando você sumiu lá no porto pra cochilar dentro da caixona! É só a gente ter cuidado. Nunca mais vamos entrar em tiroteio, e vamos evitar ao máximo ter que lutar com eles.

Darrel: Você tem razão.

Pandora: Podemos fazer uma luta indireta, com estratégias pra eles serem derrotados aos poucos.

Darrel: Tudo bem então. Amanhã a gente vai lá.

Pandora: O que será que eles querem com o Prefeito? Eles não são doidos de matar o pobre, né? Aí a casa ia cair mesmo pra eles.

Darrel: Sinceramente, nem sei. Não acho que eles queiram matá-lo, senão teriam matado ao invés de sequestrar. Sobre a casa cair, não por isso. A casa caiu pra eles foi hoje, e eles sobreviveram.

Pandora: Verdade...

A novela termina e os dois assistem ao Jornal da Noite.

Apresentador: Um grupo de super-vilões dos quadrinhos vem aterrorizando nossa cidade já há semanas. O grupo está sendo chamado na imprensa de Quarteto Fantástico de Stringtown. Hoje pela manhã o Exército entrou em operação para prendê-los.

Repórter: Boa parte do pólo tecnológico de Stringtown ficou interditada durante todo o dia. Policiais garantiam isolamento enquanto soldados do exército organizavam suas operações cercando o local onde acreditavam se encontrar os super-criminosos.

Apresentador: Mesmo com todo o esforço e com o uso de armamentos pesados, o Exército não conseguiu prender nenhum dos supercriminosos. O número exato das baixas sofridas pelas Forças Armadas ainda não foi divulgado. Após esse incrível e assustador incidente, o Quarteto Fantástico de Stringtown decidiu agir novamente e sequestrou o prefeito da cidade, Steve Silva.

Repórter: Aqui no gabinete as pessoas ainda estão em pânico. Ao que todos dizem, a ação foi rápida. Eles invadiram por aquela parede e levaram o prefeito sem qualquer cerimônia. Alguns dos seguranças tentaram reagir atirando, mas não conseguiram impedir o sequestro.

Apresentador: Se nem o Exército conseguiu pará-los, os seguranças que fugiram da cena não estão de todo errados. Até o momento o grupo não apresentou suas reivindicações. O pesquisador teólogo Lúcio Camp está aqui conosco para comentar os estranhos acontecimentos. Boa noite, Lúcio.

Lúcio: Boa noite. De fato, tudo isso que temos visto nas últimas semanas é um sinal do fim dos tempos. E é apenas o começo.

Apresentador: Você acredita que essas aberrações violentas são uma temdência?

Lúcio: Claro. Veja bem, com todo o desrespeito que o ser humano vem demonstrando para com Deus, e toda essa manipulação genética nos nossos alimentos, era inevitável que isso acontecesse.

Apresentador: Então você acredita que eles sofreram mutações alimentares?

Lúcio: Sim, é o que acredito e pra mim isso está muito óbvio. E os alimentos continuam sendo manipulados. Dessa forma o que vamos ter...

P. S.: Publicado inicialmente na Revista Espírito Livre #41.

8 fev 2013

O novo jogo de RPG estratégico Fire Emblem: Awakening ilustra a capa da edição 40 da Revista Nintendo Blast. Uma viagem no tempo inicia a apresentação da Intelligent Systems e de outros jodos não só da franquia Fire Emblem, como de outros jogos de estratégia (Nintendo Wars, por exemplo). Uma boa seleção de "melhores jogos" do Wiiware fecha a edição da revista com chave de ouro.

Também já estão no ar outras revistas:

  • Revista PlayStation Blast #8 - Tema de capa é Metal Gear Solid Revengeance. Destaque para o Top 10 dos jogos mais esperados para 2013 na plataforma da Sony.
  • Revista Espírito Livre #41 - Este mês o Blender é quem manda. Vários artigos girando em torno desse excelente software livre para modelagem 3D (na verdade, para bem mais que isso).  Nesta edição, Warning Zone #41 - No Hospital (apesar de o índice dizer que é o episódio 40).
  • FOSSGIS Brasil #6 - Matéria de capa: Desenvolvimento SIG - Um novo mundo sendo descoberto.

As quatro também já estão lá na Banca do Bardo.

Special: 

Páginas

Subscribe to Cordeis.com RSS