software


O simpleyql é uma biblioteca que facilita bastante o desenvolvimento de aplicações em Java que manipulem dados de usuários do Yahoo! Meme (ou de quaisquer sites do Yahoo! que estejam expostos via YQL e oAuth).

Na teoria, é possível usar uma biblioteca de oAuth pré-existente para isso (o próprio simpleyql se baseia em classes disponíveis no oauth.net), mas quando eu e a Bani começamos o MemeThis (falo dele em outro post) vimos que as particularidades do Y! tornariam o código demasiadamente complexo.

Além disso, essas classes exigem um grau de entendimento de oAuth maior do que o puramente conceitual. E o fato de o Yahoo! disponibilizar bibliotecas para outras linguagens – mas não para Java – foi a gota d’água que motivou a criação da biblioteca.

Com ela, basta uma quantidade mínima de código para iniciar o processo de autorização do usuário – um passo necessário quando ele acessa sua aplicação pela primeira vez. Dali em diante basta manter a chave de acesso atualizada no banco de dados ou equivalente, e você poderá usá-la em uma chamada simples sempre que quiser interagir com o Y! em nome da pessoa.

Parece simples? Ótimo, essa era a idéia: encapsular os detalhes do vai-e-vem de tokens e permitir ao desenvolvedor focar apenas na aplicação. A biblioteca é compatível com o Google App Engine (o MemeThis roda nele), então não tem mais desculpa: se a sua praia é Java, a hora de desenvolver pro Yahoo! Meme é agora.

Ano passado escrevi um texto sobre o problema do Java com o horário de verão, explicando as causas, apontando soluções comuns e sugerindo uma nova – cuja principal vantagem é dispensar alterações no código-fonte da aplicação afetada.

Sua maior desvantagem é que o arquivo com o código de correção tem que ser recompilado a cada mudança de regra do horário de verão (i.e., uma vez por ano, pelo menos) e re-copiado em cada servidor – o que fica complicado quando se cuida de dezenas ou centenas deles.

Em vista disso (e com a ajuda da classe ZoneInfo, de autoria de Stuart D. Gathman), criei o timefix – uma biblioteca que lê automaticamente o arquivo /etc/localtime do servidor, ajusta o timezone default e chama a aplicação final. Desta forma, basta reiniciá-la quando o arquivo for atualizado parq que as novas datas de início e fim do horário de verão entrem em vigor.

(mais…)

tela do jogo 'A Busca de Epaminondas Jr.'Este jogo, criado no início dos anos 90, foi uma das primeiras coisas que disponibilizei na web, não sem um certo constrangimento: minha definição de “humor” mudou um pouco ao longo dos últimos quinze anos.

Embora o jogo não use (nem de longe) os recursos dos PCs modernos, os e-mails que recebo mostram que ainda hoje há quem se divirta um pouco com ele. Este fenômeno curioso me levou a falar um pouco mais a respeito – incluindo algumas curiosidades e dicas para ajudar quem ficou travado em algum quebra-cabeças.

(mais…)

O miniTruco é um jogo de cartas gratuito para telefones celulares e outros dispositivos móveis que suportem Java (J2ME), que pode ser jogado individualmente, ou em grupos de até 4 pessoas (via Bluetooth ou Internet/GPRS).

Você também pode jogar direto nesta pagina, usando o gadget à direita. Também é possível adicioná-lo à sua página pessoal no Google (e, em breve, no Orkut). O código original é de minha autoria, mas está disponível como código livre (GPL), o que permitiu a diversos desenvolvedores adicionar estratégias e novas características.

O endereço oficial do jogo é http://chester.blog.br/minitruco. Este post foi atualizado em 10/11/2007.

(mais…)

Há alguns anos eu comecei a desenvolver um jogo de Truco para Windows. O projeto caminhou bastante, mas nunca tive tempo de acabar.

Como falta pouca coisa, resolvi disponbilizar o código-fonte para que algum programador Delphi ou Kylix que se interesse complete o jogo. Alguém se habilita?

Quando a empresa onde eu trabalhava foi infestada pelo Sockets De Troie (um software frances que mistura virus e cavalo-de-troia) criei este programa para remover o dito-cujo dos computadores.

As versoes mais recentes do Norton Antivirus e do ViruScan fazem este trabalho, mas deixei o programa online caso alguem venha a precisar. Ele so roda em Windows 95/98/Me (mas isso nao atrapalha, porque o Sockets de Troie tambem so invade estas versoes).