artigo

Mapas do Acaso - 45 variações sobre um mesmo tema, de Humberto Gessinger

Mapas do Acaso, capa do livro de Humberto Gessinger

Engenheiros do Hawaii é uma banda que dividia opiniões. Muitos os criticavam e outros tantos os adoravam. Quem gostava (e gosta) dos Engenheiros do Hawaii certamente curtia/curte a mente do seu líder Humberto Gessinger, sua forma de ver o mundo, de sintetizar conceitos, transformando elementos um tanto obscuros em cultura pop e "filosofia fast-food".

Engenheiros do Hawaii acabou, mas o trabalho de Humberto continua. Primeiro, no âmbito musical, com o duo Pouca Vogal, onde divide o palco com o também talentoso Duca Leindecker. Depois, no âmbito literário. O livro Pra Ser Sincero - 123 variações sobre um mesmo tema traz uma biografia sua e da banda (mais da banda do que sua), mostrando uma visão interessante de tudo isso, muito bom para os fãs.

Depois veio o livro Mapas do Acaso. Este já não é mais tão biográfico quanto o outro. Assim como o anterior, toma emprestado o título de uma de suas músicas mas honra bem ao título. Mapas do Acaso é como um blog. Um conjunto de artigos não tão extensos, feitos por um cara que entende do Pop dos anos 80, mas não se dobrou ao lugar comum. Um cara que preferiu se recriar depois do fim de uma banda que durou 23 anos. Quando poderia simplesmente parar ou continuar se sustentando por shows repetecos, financiados por seus fãs de todo o país, preferiu o caminho arriscado de um duo "acústico" onde os dois tocam vários instrumentos e cantam. E com músicas novas! Como o Duca vinha de uma outra banda gaúcha de rock, decidiram que 1/3 do repertório seria de músicas dos Engenheiros, 1/3 de músicas do Cidadão Quem e 1/3 de músicas inéditas, do Pouca Vogal mesmo.

Mapas do Acaso - 45 variaões sobre um mesmo tema traz várias "notas mentais para uma próxima vida", filosofando sobre o dia a dia (o que a meu ver ele sempre fez muito bem) e algumas republicações de artigos que saíram há muitos anos para públicos mais restritos geograficamente, como o artigo publicado em 1990 no Jornal do Brasil, onde ele falou sobre sua viagem para shows em Moscou no declínio da Guerra Fria.

Ah, tanto o Pra Ser Sincero quanto o Mapas do Acaso trazerm metade do livro composta de letras de Humberto, algumas com explicações e curiosidades interessantes. Mapas do Acaso chega a trazer algumas folhas escaneadas de um caderno, onde podemos ver músicas que nunca foram gravadas mas que renderam versos, que foram reaproveitados em músicas de sucesso.

Enfim, é um livro que eu recomendo. Sinceramente gostei bem mais do Mapas do Acaso do que do anterior e já estou ansioso pelo próximo: Nas Entrelinhas do Horizonte.

Special: 

Final Fantasy: 25 anos

Final Fantasy - chocobo rider

Havia uma empresa. Eles criavam jogos de videogame, mas até aquele momento nenhum tinha emplacado. Então o desenvolvedor Hironobu Sakaguchi decidiu: esta vai ser minha última tentativa. Se não der certo eu vou fazer outra coisa da vida. Assim nascia a última esperança daquela empresa, com um nome que refletia muito bem essa condição: Final Fantasy.

Mas Final Fantasy deu certo e teve sequência, depois outro jogo e outro... Hoje já são 14 jogos na contagem principal e vários spinoffs nesta bela "saideira de bêbo", que também é uma das maiores referências em RPG eletrônico até os dias de hoje.

Final Fantasy foi lançado para Square há exatos 25 anos para NES. No jogo você controlava os 4 guerreiros da luz, personagens profetizados que chegavam com a missão de salvar o mundo pela restauração de cristais, o que exige enfrentar vários inimigos, o que inclui os demônios do caos. Particularidade deste jogo é que os jogadores é que decidiam os nomes dos quatro personagens, bem como suas classes: guerreiro, monge, ladrão, mago branco, mago negro, mago vermelho.

Com o passar dos tempos e dos jogos, a série foi mudando e criando histórias cada vez mais elaboradas e com personagens próprios e bem definidos. Um revolução, em especial, aconteceu quando a Square deixou a Nintendo e se aliou à Sony. Com isso, veio Final Fantasy VII para Playstation, provavelmente o título mais marcante da franquia. Nele tínhamos o personagem Cloud e seus aliados tentando restaurar a paz no mundo, desta vez um mundo tridimensional. Aquelas imagens infelizmente envelheceram mal, mas isso não tira o mérito do jogo.

Com tanto sucesso, Final Fantasy terminou aparecendo no cinema também. Começando com o filme Final Fantasy: The Spirits Within. Um fracasso total. O filme tinha grande qualidade gráfica e uma história boazinha (nada que chamasse muita atenção). O problema é que não era um Final Fantasy, era só uma animação 3D genérica. Não vimos no filme nenhum elemento dos jogos da franquia e isso com certeza decepcionou muitos fãs.

O filme seguine veio para corrigir isso. Em Final Fantasy VII: Advent Children, vemos uma continuação dos eventos do jogo Final Fantasy VII, trazendo os personagens marcantes em cenas de ação altamente dinâmicas. O filme está disponível (como já falei no blog outro dia) para ser assistido gratuitamente no Crackle.

Temos ainda outros jogos marcantes. Em especial, o Final Fantasy XII (PS2) e o Final Fantasy XIII-2 (PS3) conseguiram nota máxima na revista japonesa Famitsu. E mais recentemente, a franquia entrou nos jogos de ritmo com Theatrhythm Final Fantasy, lançado para 3DS e agora também no iOS.

Existem algumas características interessantes de se notar na franquia Final Fantasy. Primeiro que as histórias são meio que fechadas, com personagens próprios, exclusivos de cada uma. Nada de continuar a história de personagens carismáticos (ao menos atualmente, ao menos na numeração padrão, o que não impede que eles fujam a essa regra em jogos como Final Fantasy X-2). Outro elemento é o mundo onde as histórias se passam. Depois de amadurecido (lá pelo quarto jogo em diante), Final Fantasy passou a apresentar um mundo de fantasia misturando elementos tecnológicos diferenciados, cuja base energética é vapor e a própria magia, como um mundo fantapunk. Somando-se a isso o cuidado que a Square tem com os gráficos, frequentemente explorando ao máximo as capacidades dos consoles para os quais os jogos são feitos, costumamos ter cenários muito agradáveis de se ver.

E claro que não podemos esquecer dois dos elementos mais marcantes da franquia, capazes de identificar a franquia para qualquer gamer: chocobos (montarias que parecem galinhas gigantes) e phoenix down (o item capaz de ressuscitar um personagem morto em combate).

Final Fantasy é uma franquia incrível e não está aí à toa, indo para seu 15º título numerado. Rendeu frutos como o Kingdom Hearts. Infelizmente seu criador não está mais na Square Enix (nome que a empresa ganhou após assimilar sua principal concorrente, a Enix, criadora do Dragon Quest). Após problemas lá na empresa, ele saiu e criou a Mistwalker. Inclusive, em 2011 ele lançou um outro jogo e dizem que é o último do qual participará ativamente de todos os estágios. O nome: The Last Story, para Wii. Será que o título dessa vez se concretiza?

Special: 

wxPython: Como criar um assistente genérico

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 wxPython: How to Create a Generic Wizard 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 a ele!


Outro dia eu vi no StackOverflow alguém brigando com o widget Wizard, do wxPython. O wizard não permite muita personalização quando se trata dos seus botões, assim eu decidi ver quão difícil seria escrever meu próprio assistente. Este código é bastante limitado, mas aqui está minha primeira versão beta:

# coding: utf-8
import wx
 
########################################################################
class WizardPage(wx.Panel):
    """"""
 
    #----------------------------------------------------------------------
    def __init__(self, parent, title=None):
        """Construtor"""
        wx.Panel.__init__(self, parent)
 
        sizer = wx.BoxSizer(wx.VERTICAL)
        self.SetSizer(sizer)
 
        if title:
            title = wx.StaticText(self, -1, title)
            title.SetFont(wx.Font(18, wx.SWISS, wx.NORMAL, wx.BOLD))
            sizer.Add(title, 0, wx.ALIGN_CENTRE|wx.ALL, 5)
            sizer.Add(wx.StaticLine(self, -1), 0, wx.EXPAND|wx.ALL, 5)
 
 
########################################################################
class WizardPanel(wx.Panel):
    """"""
 
    #----------------------------------------------------------------------
    def __init__(self, parent):
        """Construtor"""
        wx.Panel.__init__(self, parent=parent)
        self.pages = []
        self.page_num = 0
 
        self.mainSizer = wx.BoxSizer(wx.VERTICAL)
        self.panelSizer = wx.BoxSizer(wx.VERTICAL)
        btnSizer = wx.BoxSizer(wx.HORIZONTAL)
 
        # adiciona os botões de voltar/avançar
        self.prevBtn = wx.Button(self, label="Voltar")
        self.prevBtn.Bind(wx.EVT_BUTTON, self.onPrev)
        btnSizer.Add(self.prevBtn, 0, wx.ALL|wx.ALIGN_RIGHT, 5)
 
        self.nextBtn = wx.Button(self, label="Avançar")
        self.nextBtn.Bind(wx.EVT_BUTTON, self.onNext)
        btnSizer.Add(self.nextBtn, 0, wx.ALL|wx.ALIGN_RIGHT, 5)
 
        # conclui o leiaute
        self.mainSizer.Add(self.panelSizer, 1, wx.EXPAND)
        self.mainSizer.Add(btnSizer, 0, wx.ALIGN_RIGHT)
        self.SetSizer(self.mainSizer)
 
 
    #----------------------------------------------------------------------
    def addPage(self, title=None):
        """"""
        panel = WizardPage(self, title)
        self.panelSizer.Add(panel, 2, wx.EXPAND)
        self.pages.append(panel)
        if len(self.pages) > 1:
            # esconde todos os painéis depois do primeiro
            panel.Hide()
            self.Layout()
 
    #----------------------------------------------------------------------
    def onNext(self, event):
        """"""
        pageCount = len(self.pages)
        if pageCount-1 != self.page_num:
            self.pages[self.page_num].Hide()
            self.page_num += 1
            self.pages[self.page_num].Show()
            self.panelSizer.Layout()
        else:
            print "Fim das páginas!"
 
        if self.nextBtn.GetLabel() == "Concluir":
            # fecha o aplicativo
            self.GetParent().Close()
 
        if pageCount == self.page_num+1:
            # muda a etiqueta
            self.nextBtn.SetLabel("Concluir")
 
    #----------------------------------------------------------------------
    def onPrev(self, event):
        """"""
        pageCount = len(self.pages)
        if self.page_num-1 != -1:
            self.pages[self.page_num].Hide()
            self.page_num -= 1
            self.pages[self.page_num].Show()
            self.panelSizer.Layout()
        else:
            print "Você já está na primeira página!"
 
 
########################################################################
class MainFrame(wx.Frame):
    """"""
 
    #----------------------------------------------------------------------
    def __init__(self):
        """Construtor"""
        wx.Frame.__init__(self, None, title="Assistente Genérico", size=(800,600))
 
        self.panel = WizardPanel(self)
        self.panel.addPage("Página 1")
        self.panel.addPage("Página 2")
        self.panel.addPage("Página 3")
 
        self.Show()
 
if __name__ == "__main__":
    app = wx.App(False)
    frame = MainFrame()
    app.MainLoop()

O frame principal instancia nosso painel principal (WizardPanel). Aqui é onde entra a maior parte do nosso código. Ele controla a paginação para a frente e para trás pelas páginas do assistente. Você pode definir as páginas do assistente da maneira que desejar. De fato, o que posso fazer numa segunda versão é fazer com que trabalhe com uma classe Panel de minha própria autoria, já que usar páginas simples como eu fiz o torna bastante limitado. De qualquer maneira, adicionei 3 páginas e testei as iterações entre elas. Espero que outros achem isso interessante também. Divirtam-se!

Torrentflux: baixando/propagando torrents e arquivos

Torrentflux: seus torrents na web

Esta dica é dividida em duas partes: uma mais simples, para uso pessoal apenas; outra mais avançaca, para quem quer compartilhar os arquivos baixados.

Tudo isso tem a ver com torrents, pequenos arquivos-índices que permitem compartilhamento de arquivos (esses sim, grandes) pela Internet. Se você não conhece a tecnologia, ela é usada para compartilhar músicas, filmes, albuns, imagens de CD e DVD, livros digitais e, o que me motivou a configurar o Torrentflux, distribuições GNU/Linux!

Clientes torrents existem vários. Desde o básico bittorrent, em linha de comando, até outros mais sofisticados como o Deluge e o qBittorrent (este inclusive vem no CyanPack e tem versão para Windows e Linux). Torrentflux é um cliente também, mas que oferece uma interface web, funcionando independente de você fazer ou não login na máquina. Isso é ótimo para máquinas de uso compartilhado ou servidores!

A primeira parte falará sobre a instalação do Torrentflux no Trisquel (ou Ubuntu, ou Mint ou outro similar), enquanto a segunda entra no Apache.

Primeira parte: Instalando o Torrentflux

Vá no menu do Trisquel e escolha Configuração do Sistema. Na janela que aparece, procure o aplicativo Gerenciador de Pacotes Synaptic e clique nele. No Synaptic, clique em Procurar e digite torrentflux. Clique com o botão direito e escolha Marcar para Instalação. Agora basta Aplicar.

Método alternativo: digite em um terminal apt-get install torrentflux.

Agora é deixar sua distribuição trabalhar e instalar o tal programa.

Detalhe importante aqui: o Torrentflux utiliza o MySQL, ou seja, se ele já estiver instalado você precisará da senha de administrador dele. Se não, você cria uma durante a instalação agora.

Vai ser pedida uma senha para a configuração de banco do Torrentflux. Não é tão importante termos contato com essa senha, afinal, na situação ideal, você não precisará conhecê-la. Por isso, pode deixar em branco que o instalador cria uma senha aleatória.

Pronto! Já está instalado! Aqui, pelo menos, o Apache não reiniciou automaticamente e tive que fazer isso por minha conta. Basta rodar o comando /etc/init.d/apache2 restart e pronto!

Agora abra o navegador e digite http://localhost/torrentflux. Aparecerá uma tela de login. Embora a tela não diga, não há usuário criado ainda. Você deve digitar um login e uma senha que deseje (com cuidado, já que não há opção para digitar a senha duas vezes, previnindo erros de digitação) e o primeiro usuário será criado. Usuários adicionais são criados em Admin: New user.

Intervalo: como funciona o Torrentflux

Na tela principal (home) você tem três opções particularmente úteis: envio de um torrent via upload; envio de torrent via URL (será baixado diretamente do site); busca. A busca, em especial, permite escolher entre PirateBay, Google, Mininova e outros.

Mais embaixo, estatísticas, incluindo a lista dos torrents que estão aí, baixados, baixando ou para baixar.

Quando os arquivos são baixados, você pode pegá-los do Torrentflux indo na opção directory.

Bem, isso é o básico. Quando você adiciona um torrent, ele não começa a baixar automaticamente, você tem que ativá-lo. Cada vez que a máquina for reiniciada, você terá que reativar os torrents (não vi uma forma de autoativação, mas seria uma boa e talvez até já tenha um jeito...) Você vai querer dar uma fuçada na opção admin. Também dá pra mudar tema (skin) e idioma padrão.

Parte 2: compartilhando o conteúdo baixado.

A instalação do Torrentflux via Trisquel (ou Ubuntu, ou...) tem a peculiaridade de "esconder" os arquivos: eles não ficam em /var/www. Isso não é ruim, é que o pacote distribui arquivos e diretórios pelo sistema de arquivos da forma que se considera mais organizada e adequada. Os arquivos PHP ficam /usr/share/torrentflux/web, enquanto os baixados ficarão em /var/cache/torrentflux.

Tudo muito legal, bonito e organizado, mas... E se eu quiser compartilhar esses arquivos de forma mais fácil pela web? Bom, você pode simplesmente alterar a configuração do Torrentflux, mudando o diretório dos arquivos baixados para dentro do /var/www ou pode alterar o apache!

Criei dois diretórios virtuais para compartilhamento: /downloads e /torrents. Cada um exige suas próprias regras dentro da tag <VirtualHost *:80> no arquivo /etc/apache2/sites-available/default (ou em outro canto, se sua configuração do Apache for mais sofisticada. Claro que se for esse o caso e você precisou/conseguiu configurar o apache de um jeito mais exótico, você saberá qual o lugar certo ;-)

Abra o arquivo /etc/apache2/sites-available/default e acrescente, lá no final, imediatamente antes da linha que tem </VirtualHost> o seguinte:

Alias /download/ /var/cache/torrentflux/bardo/
    <Directory "/var/cache/torrentflux/bardo">
        Options +Indexes +MultiViews
        HeaderName /download_header.html
        ReadmeName /download_footer.html       
        Order allow,deny
        Allow from all
    </Directory>

    Alias /torrents/ /var/cache/torrentflux/.torrents/
    <Directory "/var/cache/torrentflux/.torrents">
        Options +Indexes +MultiViews
        HeaderName /download_torrents.html
        ReadmeName /download_footer.html
        IndexIgnore queue *.stat *.pid
        Order allow,deny
        Allow from all
    </Directory>

Substitua "bardo" pelo login de usuário que você criou. O primeiro bloco cria a lista dos arquivos baixados, enquanto o segundo cria a dos torrents. Como existem dentro da pasta .torrents do Torrentflux outros arquivos, criados e usados por ele próprio, é preciso colocar a regra de ignorar todos os *.pid e *.stat, além da pasta queue.

As linhas HeaderName e ReadmeName eu criei para adicionar um estilo mais agradável à listagem. Você pode simplesmente dispensá-las ou então criar os três arquivos:

  • download_header.html: coloque o cabeçalho HTML, o cabeçalho do corpo da página, até quando estiver prestes a mostrar o conteúdo central. Aí o arquivo tem que ser truncado.
  • download_torrents.html: basicamente um variante do download_header. Fiz os dois porque coloquei na parte de cima da página um link de um para o outro.
  • download_footer.html: depois do conteúdo, você vai precisar fechar as tags que ficaram abertas. Talvez colocar um rodapé na página. Faça isso neste arquivo.

Bom, é isso. O que eu fiz está na Leeloo, da UFAL. Se quiserem ver como ficou, podem ver o resultado em leeloo.arapiraca.ufal.br/downloads/.

Special: 

Como seriam poemas para Twitter?

Pássaros

Já se foi o tempo dos poemas longos, narrando aventuras épicas em centenas de estrofes. O mundo mudou muito. Pessoas persistentes sempre aparecem, aqui e ali, mas hoje quem quer perder horas e horas lendo uma só poesia.

Acho que o sentimento é de que há muita coisa lá fora esperando por nós. Um sentimento que nos faz acompanhar vários feeds RSS (que a maioria já abandonou) e nos faz seguir mais pessoas nas redes sociais do que podemos acompanhar. Também tenho a impressão de que esse sentimento casa muito bem com o Capitalismo, nos fazendo ficar de olho nos lançamentos. Sejam filmes, livros, jogos ou a tecnologia da próxima TV. Ou o próximo iPhone. Vivemos em estado de alerta, como bombeiros esperando um alerta de incêndio a qualquer momento. Com a diferença que esse incêndio em particular é nas nossas carteiras...

Mas estávamos falando de poesia, não é? Qual seu papel na nossa nova sociedade? No mundo 2.0? Ou seria já o mundo "pós 2.0"?

A poesia tem muitas formas. As poesias épicas se tornaram cordéis com o tempo. Soneto se estabilizou como forma prática. Há ainda o Haikai e seus três versos. A poesia deve se curvar ao Twitter? Qual seria a metrificação pós 2.0? Ao invés de publicar uma poesia e usarmos tags "soneto" e "decassílabo" vamos escrever palavras em um só verso-tweet resumido com hashtags tipo #poem #3/4?

Nesses novos tempos parece que tudo precisa ser resumido. Fico me perguntando às vezes se é uma necessidade real ou inventada em nossas cabeças, reforçadas pelo frenético efeito manada, pelo clima de urgência em que vivemos. Resumir, resumir...

Pra que escrever ensaios complexos se "tudo já foi escrito"? Não precisamos falar sobre os temas, basta passarmos um link e está tudo bem. No Twitter tem até quem se limite a postar o link, sem título ou assunto...

Ei, sabe que essa ideia de poesia-tweet pode ser interessante? Saca só:

  • Ela anda todo dia pela casa. Quase morre quando vê uma barata. E nem sonha que a recíproca acontece

O que seria isso? Uma poesia de 3 versos em métrica 4/4! É! Você lê (até porque ninguém tem tempo pra declamar hoje em dia) ta-ta-TA-ta ta-ta-TA-ta ta-ta-TA-ta. Ela anda todo dia pela casa. Parece meio maluco, né? É, poesia é assim mesmo.

Hmmm... Vou pensar melhor no assunto. Talvez termine levando a sério essa ideia. Ou será que a moda do Twitter tá com os dias contados e eu deveria pensar em um video-poema?

Imagem do post: birds, de Sharon Drummond.

Special: 

7-zip: compressão de alta qualidade e livre

7-zip para Windows

Usuários Windows são acostumados a usar um programa para compressão e descompressão de arquivos, com janela própria. O WinZip já foi muito popular nesse nicho, sendo superado (foi?) pelo WinRar. Hoje não sei qual é o mais usado, mas sei que existe uma excelente alternativa publicada como software livre: 7-zip.

Traduzindo do site do projeto, aqui está uma lista das principais qualidades do 7-zip:

  • Alta taxa de compressãon o formato 7z, com compressão LZMA e LZMA2;
  • Formatos suportados:
    • Compressão/descompressão: 7z, XZ, BZIP2, GZIP, TAR, ZIP e WIM
    • Apena descompressão: ARJ, CAB, CHM, CPIO, CramFS, DEB, DMG, FAT, HFS, ISO, LZH, LZMA, MBR, MSI, NSIS, NTFS, RAR, RPM, SquashFS, UDF, VHD, WIM, XAR e Z.
  • Para os formatos ZIP e GZIP, 7-zip fornece taxa de compressão de 2 a 10% maior que a fornecida pelo PKZip e pelo WinZip
  • Criptografia forte AES-256 nos formatos 7z e ZIP
  • Auto-extração para o formato 7z
  • Integração com Windows Shell
  • Gerenciador de arquivos poderoso
  • Versão poderosa para linha de comando
  • Plugin para FAR Manager
  • Tradução para 79 idiomas (incluindo português brasileiro)

Além de ser uma excelente alternativa no Windows a programas como WinZip e WinRar, o 7-Zip existe em ambientes GNU/Linux como um aplicativo de linha de comando (que é acionado por ferramentas gráficas como o File-Roller, do GNOME). Esse aplicativo serve para tratar do formato 7z, que é outra maravilha do projeto. Veja os recursos do formato:

  • Arquitetura aberta
  • Alta taxa de compressão
  • Criptografia forte AES-256
  • Possibilidade de uso de qualquer método de compressão, conversão e criptografia
  • Suporte a arquivos de até 16.000.000.000 GB (16 exabytes)
  • Nomes de arquivo em Unicode
  • Compressão sólida
  • Compressão dos cabeçalhos dos arquivos

Mais um ponto para o Software Livre! Você pode instalá-lo pelo gerenciador de pacotes da sua distribuição GNU/Linux favorita ou baixá-lo (também a versão Windows) no site do projeto 7-zip. E o 7-zip está sempre presente no CyanPack!

Special: 

A morte olha o relógio (Doomsday Clock)

A morte tem seu próprio relógio

Durante a Guerra Fria as pessoas dormiam e acordavam sob tensão. A qualquer momento poderia acabar o mundo, bastava uma das potências mundiais sair do blefe para o ataque de fato, com suas armas nucleares (e a resposta vindo em seguida). Assim, nesse clima de tensão, nasceu o Relógio do Juízo Final (ou Doomsday Clock). Mantido desde 1947 até hoje, o Relógio do Juízo Final marca simbolicamente o quão perto estamos do "fim da humanidade", o que é representado pela meia-noite (12:00). De início, de olho nas ameaças nucleares, hoje também leva em conta ameças climáticas.

O mais perto que tivemos da meia-noite foi entre os anos de 1953, e 1959, quando marcou 2 minutos para a meia-noite. Entre 1991 e 1994 foi o período em que estivemos mais seguros: 17 minutos para a meia-noite. Hoje o relógio marca 11:55, o que é relativamente preocupante.

O fim do mundo já foi explorado exaustivamente nas obras de ficção (e nas religiões). De quantas formas poderia terminar?

  • Ameaças nucleares
  • Catástrofe ambiental
  • Ameaça astral
  • Paradoxo da viagem no tempo
  • Apocalipse Zumbi
  • Despertar de Cthulhu
  • Ameaça tecnológica-bélica
  • Monstros marinhos
  • Ameaça alienígena
  • Experiências científicas falhas
  • Emburrecimento global

Este último é muito bem retratado no filme Idiocracy, que recomendo bastante. Infelizmente, muitas vezes parece mesmo que estamos caminhando nessa direção. Fico me perguntando que hora o relógio marcaria se levasse em conta todas essas (e outras) possibilidades (algumas bem irreais, vamos dizer...)

Special: 

Hoje é Black Friday, também no Brasil

Black Friday 2012

Black Friday e a nova data comercial do calendário estadunidense. Nascido em 2005 e ocorrendo sempre na quarta sexta-feira do mês de novembro, consiste em uma queima de estoque para preparar as lojas para os produtos do Natal. Nela se encontra descontos de até 70% nos produtos, fazendo com que o dia seja aguardado com ansiedade ano a ano pelos consumidores.

O Brasil também entrou nessa desde 2010. Hoje não é diferente. Mas cuidado! Há lojas que usam de má fé, apenas fingindo preços promocionais. Caso se interesse por algum produto, não se esqueça de conferir o preço de mercado daquele item em sites como Bondfaro e Jacotei.

Não espere nada muito impressionante no geral aqui no Brasil, pois o evento ainda está bem modesto por aqui. Eu achava um exagero esses comentários de que as lojas brasileiras aumentam o preço poucos dias antes para baixar no Black Friday (como a história do "tira os porcos"), mas basta navegar por aí para ter essa sensação quanto a alguns produtos. Lamentável... De qualquer forma, veja uma lista de algumas das lojas que estão participando do Black Friday:

  • Americanas - Pouquíssimos produtos com desconto especial, mas todo o site dá 12% de desconto no boleto + bônus de R$ 120 (para usar depois) nas compras acima de R$ 1.000,00.
  • CTIS Digital - Descontos muito modestos. Não vi nada demaise
  • Dell - Eles também tão dando desconto em alguns produtos
  • Starland - Não é bem Black Friday, mas eles estão dando descontos muito bons a seleções diárias de jogos até segunda-feria.
  • Fastshop - Não conheço essa loja, mas eles tem seus descontos também
  • Leader - Seleção de produtos
  • Magazine Luiza - Seleção com diversos produtos
  • Saraiva - Diversos produtos com descontos modestos (exceto na revelação digital, que tá dando até 50%)
  • Shoptime - Um tanto obscuro. Parece que as promoções vão aparecer melhor no canal de TVSte
  • Stereophonica - Muitos produtos pouca vogal. Ótimo livro Abilolado Mundo Novo, de Carlos Maltz, por R$ 25,00.
  • Submarino - Lista de produtos com desconto
  • Walmart - Seleção de produtos com descontos aparentemente muito bons

Veja algumas dicas de como lidar com Black Friday no Tech Tudo. Lembrando: essas promoções só valem hoje!

Special: 

Assassin's Creed: Aventuras, Exploração e História

Assassin's Creed

Às vezes se ouve a reclamação de que o mundo dos games não tem novidades, limitando-se a perpetuar indefinidamente as franquias antigas. Isso é especialmente irritante nas outras mídias, especialmente quando zeram a história, algo comum no mundo dos super-heróis. No caso dos games não vejo nisso um problema em especial. Tem muitos jogos que atingem alta qualidade e valor, mesmo sendo erguidos sobre franquias antigonas. Veja o Super Mario Galaxy e The Legend of Zelda: Skyward Sword como exemplos.

Mas se por um lado franquias antigas podem ser reaproveitadas em grande estilo, franquias novas são muito bem-vindas (desde que tenham um valor em si e não venham só por vir). E uma das novas franquias que cresce cada vez mais em importância e qualidade é Assassin's Creed, da Ubisoft.

Na história, você é um descendente de assassinos, um grupo organizado que se opõe aos templários no decorrer da História Mundial. Usando um equipamento moderno, você entra em transe e tem que reviver a vida de seus ancestrais, cumprindo missões diversas para que possa localizar artefatos importantes.

O primeiro jogo da série foi lançado há exatos 5 anos e de lá pra cá a franquia já teve vários jogos, indo estes dias para o terceiro título principal. Tem jogos para Playstation 3, Xbox 360 e PC (a linha principal), além de spinoffs para PSP, Nintendo DS e celular (incluindo Android e iOS), PSVita e até para Facebook! (ou devia dizer até pra PS Vita? :-P)

O terceiro título da série principal - que é o primeiro a ser lançado também para um console de mesa da Nintendo (no caso, o Wii U) - quebra o padrão de focar a Europa para focar os Estados Unidos na época de sua independência.

Com todo esse vínculo histórico, fico pensando: depois de Capitão América cair no ENEM será que vai demorar pra ter questão sobre Assassin's Creed?

Você pode encontrar jogos dessa franquia à venda em vários lugares, inclusive no eStarland.

Special: 

Páginas

Subscribe to RSS - artigo

Warning: PHP Startup: Unable to load dynamic library '/opt/php56/lib/php/extensions/no-debug-non-zts-20131226/pdo.so' - /opt/php56/lib/php/extensions/no-debug-non-zts-20131226/pdo.so: cannot open shared object file: No such file or directory in Unknown on line 0

Warning: PHP Startup: Unable to load dynamic library '/opt/php56/lib/php/extensions/no-debug-non-zts-20131226/pdo_mysql.so' - /opt/php56/lib/php/extensions/no-debug-non-zts-20131226/pdo_mysql.so: cannot open shared object file: No such file or directory in Unknown on line 0

Warning: PHP Startup: Unable to load dynamic library '/opt/php56/lib/php/extensions/no-debug-non-zts-20131226/php_pdo_odbc.dll' - /opt/php56/lib/php/extensions/no-debug-non-zts-20131226/php_pdo_odbc.dll: cannot open shared object file: No such file or directory in Unknown on line 0