.: Fim de Semana Preguiçoso :.

Esse fim de semana foi bom para dar uma relaxada. Sábado eu acordei cedo para fazer compras no supermercado com a minha irmã. Quando ela ia atravessar a rua ela tomba no chão! Eu queria ligar pra minha tia para levar ela dali, mas ela não quis e resolveu continuar andando. Em casa, quando ela viu o tornozelo, ele estava todo inchado. E, mesmo assim, foi mancando para o salão fazer hidratação, :P. À tarde ela foi para o hospital tirar radiografia e voltou com uma bota de imobilização.


Pela tarde eu continuei a transferência do Zenith Garden para o AppSpot e mais à noite eu saí com o João e a Dani. Aproveitei para levar o bakugan trap que eu comprei pra ela no Animecon. Levei o bakugan deka que eu tinha achado interessante e comprado também. No caminho ela mostrou os cubos mágicos que o Ander comprou no DealExtreme e pelo jeito vai comprar mais. Tem outras formas geométricas além do cubo, como o tetraedro (pois é, ela tinha uma pirâmide também), o dodecaedro e cubos com mais que 3 divisores. O Cubo de Rubik tem só 3.


À noite jantamos no restaurante/bar Seu Pimenta onde o Zé estava tocando junto com a banda. Eles tocam classic rock aos sábados, uma semana sim, outra não. Eu já tinha ido almoçar ali, mas jantar ainda não. O pessoal do restaurante tira os pratos da parte central para que a banda se apresente, assim o som deles chega no interior, na parte central e fora da casa. Gostei da comida; Barão tem ótimos lugares para sair.


Como depois de chegar em casa eu ainda fui fazer os últimos ajustes da migração do site, eu acabei dormindo bem tarde e no domingo acordei tarde também. Depois que acordei passei o resto do dia na casa da minha tia. Comi tanta coisa... Foi um dia bem preguiçoso e só voltei à noite. Minha irmã ficou por lá com o pé imobilizado.


Fins de semana preguiçosos são tão bons. Essa segunda eu acordei quase sem sono nenhum. Essa semana devo voltar a dormir mais cedo também...

.: Google App Engine :.

Finalmente consegui um servidor dedicado para hospedar o meu site. Agora sim eu posso chamar de site, já que ele ganhou um salto enorme de escalabilidade. E o servidor é de ninguém menos que do Google! Quase todo internauta deve ter uma conta no Google. Abrir um perfil no AppSpot/App Engine é rapidinho e para quem não conseguiu receber SMS como eu, basta enviar uma mensagem que eles liberam. É incrível como eu estava fazendo tudo só com frameworks JavaScript. Não que o Blogger seja ruim. Ele é ótimo e perfeito pra mim, vou continuar usando, mas não para apresentar as telas, somente para armazenar os meus posts. Ou seja, a ideia de ter serviços espalhados por aí, centralizados no Zenith Garden, continua a mesma.


Uma explicaçãozinha básica de como tudo funciona: é incrivelmente simples. Desenvolvimento web 2.0 é simples, pois já existem frameworks e padrões que fazem tudo por você. Mas... As pessoas gostam de complicar, fazer o quê? Escolher o ambiente certo é a primeira coisa a se fazer, mas quando isso não é possível a gente se vira com o que tem.


Primeiro um overview do AppSpot. Ele é um serviço de hospedagens do Google que pode receber aplicações tanto em Java quanto em Python. A Microsoft tem um serviço similar chamado Azure para aplicações em .NET. Python tem uma vantagem enorme sobre Java e .NET por ser interpretado. Ele é compilado em tempo de execução e além disso não precisa de uma máquina virtual, portanto, em temos de performance, não faz feio. Além disso é simples. Pode-se desenvolver tranquilamente fora do ambiente web pelo shell. E toda linguagem tem um framework de desenvolvimento por trás e, para Python, temos o Django. A filosofia é a KISS (Keep It Simple Stupid), o princípio DRY (Don't Repeat Yourself) e o padrão MVC (Model View Controller). Quem desenvolve/desenvolveu para várias linguagens vai entender. A interface é toda orientada a templates, o equivalente aos master pages/server tags do asp e ao velocity ou jtl do jsp, com a grande vantagem do espírito DRY e KISS.


Os efeitos visuais continuam sob os frameworks JavaScript. A única diferença é que eu troquei o par prototype/script.aculo.us pelo mootools, mas continuo usando o dojo. Como agora todo o processamento de dados é feito no lado do servidor e não do cliente, tirei todo o código relacionado ao Google Ajax API. Além de mais flexível, ficou muito mais rápido e robusto. Aproveitei para acrescentar alguns efeitos novos também.


O restante da lógica não muda em nada, tudo continua na nuvem, onde sempre esteve. Continuo escrevendo meus posts no Google Docs, publicando no Blogger, compartilhando feeds no Google Reader, atualizando minhas fotos no Picasa, criando playlists no YouTube, mandando mensagens rápidas no Twitter e atualizando as músicas no Last.fm (pois é, nem tudo é Google :D). No AppSpot só mexo se eu quiser adicionar alguma feature ou alterar alguma coisa. Conteúdo coletivo fica todo no Gmail, Google Sites e Calendar, mas esses são privados. Friends Only.


Já o layout novo da página eu estou devendo a séculos. O atual existe desde a época do falecido Google Pages. Não acho feio, mas, por enquanto, eu estou me preocupando muito mais com o conteúdo. Embora eu goste de escrever, confesso que às vezes dá preguiça de postar. Não gosto muito de deixar pensamentos morrerem na minha cabeça, fico com dó. Quantas coisas poderiam virar posts e não viraram por preguiça...


Creio que essa mudança para o AppSpot vai aquietar minha sede por melhorias no Zenith Garden. Ter ele todo em ajax foi um projeto audacioso e nada convencional, mas foi mais pela falta de um servidor que agora eu tenho! Para quem me visita, espero que aprove as mudanças. Este é um site extremamente pessoal, pensando em quem me conhece, mas visitantes novos são sempre bemvindos!

.: Animecon, Cinemark e Aleatoriedades XP :.

Neste feriado prolongado aproveitei para viajar para vários lugares. No sábado eu saí de Campinas para São Paulo, no domingo fui de São Paulo para Praia Grande e na segunda voltei de Praia Grande para Campinas. Ou seja, saí viajando por aí para ver meus amigos e família.


Bom, quando cheguei em São Paulo eu me encontrei com o Jeff, que foi o primeiro a chegar no metrô. Ele estava com o sorriso e a simpatia de sempre. Ele comprou um bilhete único pra mim e agora posso andar de transporte público em Sampa sem precisar comprar bilhetes ou ficar caçando moedas na carteira. Depois chegou o GaC. O Ander e Paty vieram logo em seguida. O Ander também saiu de Campinas, ele pegou o ônibus das 11:10 e eu o das 11:00. Por dez minutos a gente não pega o mesmo ônibus. Enfim, o Ander deixou as malas no malex do Tietê porque ele estava indo passear e fazer compras com a namorada no bairro da Liberdade. Devia ser mais ou menos 12:50 e eu estava faminto. Despedimos do Ander e compramos um lanche no Bobs. Eu fui de guloso e pedi o Double Grill Bacon. Eu não sei... mas tenho a impressão que os lanches do Bobs têm todos o mesmo gosto, só mudam de tamanho e preço. Enfim. Depois de comer aquele sanduichão acabei desistindo de comer as batatas...

Terminamos o almoço e seguimos direto para o Animecon 2009. O caminho da estação Bresser até lá era meio deserto. Por sorte, o Jeff fez projeção astral alguns anos antes e sabia todo o caminho a ser feito. Achou a tal rua Ipiranga e toda a rota para a Universidade Anhembi-Morumbi. É estranho ir numa convenção e não ver aquelas pessoas esquisitas nas ruas. A gente estava acostumado ir no AnimeFriends e ver o metrô cheio de seres bizarros marchando para o evento e ver ao redor seres ainda mais bizarros em filas quilométricas. Bom, mas o Animecon não tem aquela muvuca toda mesmo. O local era tranquilo, com espaço suficiente para andar livremente, inclusive para o Jeff ir voltar de Hogwarts através de um portal que ficava no centro da Universidade.

O Jeff pegou o mapinha (eu nunca olhei esses mapinhas, só me deixam confuso) com a programação e demos uma olhada geral nos estandes de mangás. Na saída o GaC comprou um monte deles, na verdade a coleção de Death Note. Ele me explicou sobre o traço do Takeshi Obata desenhista desse mangá e Hikaru no Go também. Eu nem sabia que ele era o desenhista de Death Note, mas olhando a capa não deu para não reconhecer que o traço era o mesmo. Também estávamos com sede e chegar em uma convenção sem beber Mupy não tem graça. Então, obviamente, compramos alguns, mas não estavam tão baratos assim...

O evento em si tinha de tudo um pouco. Várias salas com coisas aleatórias, jogos ao livre, máquinas de jogos rítmicos, divulgação de cursos, etc., mas sem nenhuma grande novidade. O Jeff comprou lembrancinhas, ficou olhando um tempão para uma estande com bonequinhos em miniatura. Lá tinha personagens de Final Fantasy, Super Mario, One Peace... Quando eu vi uma estande com bakugans eu lembrei  da Dani, imediatamente. Tinha alguns bakugan traps que ela não tinha. Eu vi também um bakugan gigante que não sei pra que serve e comprei um pra mim, de curioso. A bateria do cell dela estava descarregada, mas falei com ela por IM e email e comprei um daqueles bakugan traps, o Baliton Black.

Depois de explorar tudo, seguimos para o palco para ver as apresentações dos cosplayers. Bom, não tinha lá muitos deles, mas a maioria era simpática. E  como eles sujavam o palco, as apresentadoras precisavam limpar toda sujeirada vigorosamente para entreter toda a plateia que aguardava o próximo cosplayer. Bom, teve a apresentação engraçada do Luigi fugindo de bullet bills, pegando uma bob-omb que explodiu soltando um monte de serpentinas de carnaval na lateral do palco e gritando pelo nome do Mário. Teve também uma apresentação bizarra de RG Veda: o cara do som demorou para iniciar o áudio e deixou o cosplay numa posição super esquisita que nem uma estátua. Tinha coisas aleatórias, como um menininho vestido de Sasuke de Naruto que veio pro meio do palco e foi embora deixando todo mundo com cara de WTF e coisas emo, como uma menina que começou a enfiar uma faca na cabeça. Também teve concurso de Lolitas, que eu nunca tinha visto antes em cons e apresentações bacanas de JPop com o pessoal fazendo cover. Ah, e claro, teve bate-papo com dubladores (Élcio Sodré/Shiryu e Letícia Quinto/Saori) e por fim Marcelo Del Greco. O Marcelo fez uma quiz para distribuir os mangás do Ranma ½ que serão relançados pela JBC. Incrível como ninguém soube responder os nomes dos sete homuluncus de Full Metal Alchemist que são simplesmente os nomes dos sete pecados capitais... Do palco eu mandei umas fotos pelo Twitter também. Prático esse mundo moderno, não?

Ih, saindo do Animecon ainda seguimos para o shopping do Tatuapé assistir Up, da Pixar. Nem comento sobre o filme, melhor deixar para um outro post... Bom, mas no shopping encontramos novamente com o Ander que estava comendo um lanche com a Paty. O Ander já tinha comprado todos os ingressos e só deu tempo de ir para as salas de cinema mesmo. Enquanto nós comprávamos bebidas e pipoca o Ander ficou na fila de entrada. Ele sentou na lateral, mas acabamos mudando para um lugar central mais para frente, já que a tela da sala nem era tão grande assim. Era uma TV perto do IMAX. Mas como IMAX de Sampa anda uma porcaria em termo de catálogo, temos que buscar alternativas. Não é uma sala ruim, só era pequena mesmo.

No fim do dia a gente seguiu para a casa do Jeff. O Jack estava em algum casamento, então a gente acabou nem se vendo. Ficamos altas horas assistindo Yu Yu. Eu achei que o pessoal capotou cedo, nem estava sonado ainda. Geralmente eu sou o primeiro a ter sono... Será que foi a pizza do Niccolucio que a gente comeu? Enfim. Quando eu acordei, o GaC e o Jeff estavam jogando Puyo. Eu fiquei testando o Final Fantasy Crystal Defenders. Eu tinha instalado mas não tinha jogado ainda. Lembrei da Dani de novo porque era no mesmo esquema de Tower Defender. E não é que o trequinho é viciante? Não consegui passar nem do primeiro mapa. Bom, depois acordaram a Paty e depois o Ander.

Quando a gente estava saindo para almoçar a Sula me mandou uma mensagem procurando pelo GaC. Eu nunca sei quando o meu Gtalk está online, teoricamente era pra estar sempre, mas como uso o Gtalk em tudo quanto é lugar sabe-se lá onde é o último lugar que eu loguei :P. A gente almoçou no Shopping D que fica pertinho da estação do Tietê, o ponto de encontro e de despedidas. Na entrada do shopping tinha umas bolhas de plástico sobre uma piscina com crianças dentro que me lembrou da fazenda de Campos do Jordão que também tinha bolhas parecidas, mas sobre a grama mesmo. Quase todo mundo pegou um prato no Jin Jin, só o Jeff que não. E depois nós andamos um pouco e nos separamos. Eu e o GaC voltamos para o metrô, ele desceu na Sé e eu no Jabaquara. De lá eu fui para Praia Grande descansar no feriado. O Igor me mandou umas mensagens sobre o Open Beta Key de Aion no meio da viagem que, cá entre nós, fazer monte de nego baixar 6 GB pra ficar sem o key do open beta é mesmo lastimável. Era pra eu estar jogando aqui, mas... GaC disse para esperar algum trial, mas veremos. Para o Igor, esse jogo entrou pro blacklist dele.

Em casa eu me viciei foi em Crystal Defenders. Consegui defender 2 mapas. São 3 estágios, cada uma com 2 mapas normais e 2 avançados. Eu passei os 2 mapas normais do primeiro estágio. É preciso ficar pensando um pouco na estratégia de onde colocar suas unidades, etc. Pensei que fosse fácil, mas não era. E bater o recorde é difícil também, é preciso otimizar todos os recursos pra conseguir defender os cristais gastando o mínimo possível nas suas unidades. E é divertido. No fim da segunda-feira eu voltei pra Campinas e cá estou eu escrevendo no blog depois de tempos sem escrever! Logo, logo vou mudar do Blogger para o Appspot que vai ser bem mais leve, rápido e flexível. Mas ainda preciso fazer alguns ajustes...

Poxa, esse feriadão trouxe de volta o clima que vivíamos em Sanca. Sem muitos compromissos, sem pensar muito, só seguindo para os lugares onde são divertidos. Pois é, não é impossível termos encontros assim, basta ter uma brecha nas janelas e disposição para nos encontrar. Preciso entregar o bakugan da Dani também, esqueci que eu podia pedir pro Ander entregar pra ela :P. Bom, pelo menos fica uma desculpa pra ir na casa do Boi :).