Estes são alguns dos projetos de software/mídia que eu criei ou ajudei a desenvolver, sempre sob licenças livres (GPL, MIT, Creative Commons e outras, conforme o caso):
Publicado por
chester – 20/06/2010
Eu fiquei vidrado no layout de "ladrinhos" do logotipo do site do RHoK, que lembra os micros de 8 bits sem deixar de ser moderno, e pensei "taí, vou roubar me inspirar criar um trabalho artístico derivativo para o próximo update visual do meu blog".
O chato é que não apenas sou um zero à esquerda em GIMP/PhotoShop, mas também queria algo que pesasse menos no carregamento. Solução: programar.
O canvas do HTML5 viria a calhar, mas o suporte dos browsers ainda está longe do ideal. Resolvi, então, criar uma biblioteca minimalista para fazer desenhos nesse estilo usando elementos de HTML. Mais…
Publicado por
chester – 07/06/2010
O Random Hacks of Kindness (RHoK) reuniu programadores em vários locais do mundo simultaneamente ao longo do último fim-de-semana, com o objetivo de desenvolver ferramentas que possam ajudar a lidar com os desafios gerados pelo risco de desastres naturais.
O esforço foi patrocinado e liderado por gente do Google, Yahoo!, Microsoft, NASA e do Banco Mundial, e eu não só tive a oportunidade de participar da primeira edição de São Paulo, que aconteceu aqui na Fundação Getúlio Vargas (FGV), mas também tive a alegria de ter o projeto do meu grupo, o Urban Fact, premiado com o segundo lugar.
Mais…
Publicado por
chester – 04/06/2010
O site da SPTrans oferece várias informações sobre as linhas de ônibus, trem e metrô que operam na cidade de São Paulo. A navegação, entretanto, deixa um pouco a desejar – razão que leva as pessoas a alternativas como o Tô a Pé e o eficiente sistema de rotas do Google Maps.
Este último resolve bem a minha vida, mas às vezes tudo o que eu quero é saber quais ônibus passam por um determinado local. Ou ainda: quais, dentre eles, passam por um segundo local, e quais passam entre este e um terceiro, i.e., quais minhas opções para ir do ponto A ao ponto B, e dele ao ponto C, e por aí em diante.
Misturando essa demanda com um desejo de colocar as informações de itinerário do transporte público de São Paulo nas mãos da população, desenvolvi o cruzalinhas. A aplicação ainda precisa de muitas melhorias (eu diria que é “beta”, mas o que não é?) mas já permite responder às perguntas acima.
Como de costume, o código-fonte é livre (licença MIT), e esse post vai falar um pouco sobre o funcionamento do mesmo.

Mais…
Publicado por
chester – 24/03/2010
O SlideMeme foi hack que eu e a Bani apresentamos no Yahoo! Open Hack Day Brasil 2010. O objetivo dele é oferecer uma forma visualmente agradável e conveniente para postar apresentações do SlideShare no Yahoo! Meme, e claro que ficamos muito contentes por ele ter sido premiado como melhor hack na categoria Meme!
Mais…
Publicado por
chester – 05/02/2010
Uma nova reportagem do Terra reacendeu o interesse geral no BitchMaps – um mashup que cruzava posts de um fórum sobre casas de tolerância com sistemas de geotagging e exibia o resultado no Google Maps, chamando a atenção da mídia (vide abaixo) pela aplicação original (e, diriam alguns, surreal) da tecnologia.
Para quem se interessa pela parte operacional da coisa, escrevi na época uma série de posts detalhando as técnicas utilizadas no mashup – vale lembrar que isso foi feito em 2008, e hoje devem existir outras bibliotecas e plugins mais avançados para fazer a mesma coisa no Ruby on Rails.
Mais…
Publicado por
chester – 05/10/2009
O último ano viu o surgimento de uma quantidade enorme de sites inspirados no Twitter. Alguns tentam traduzir e/ou adaptar para culturas locais, outros tentam expandir o conceito (incluindo fotos, voz, etc.) – isso sem falar em sites já estabelecidos que abraçaram a idéia. Uns foram comprados por gente grande – e vários fecharam, mesmo com alguém bancando.
Era de se esperar que o Yahoo! entrasse nessa arena de alguma forma, mas o Yahoo! Meme superou as minhas expectativas, trabalhando muito bem três aspectos desse tipo de site: o encaminhamento de posts alheios (o “retweet” ou RT do Twitter); a multimídia (turbinada por uma interface que facilita o compartilhamento de fotos, vídeos e músicas sem as ginásticas que o passarinho exige) e a extensibilidade, que permite que terceiros conectem seus sites e aplicativos na plataforma.
A idéia é ótima (ainda mais como alternativa ao famigerado email com PowerPoint anexado e copiado para meio mundo), mas eu e a Bani nos incomodávamos com um lance: a burocracia. Você tinha que copiar o endereço do conteúdo, abrir o Meme, se autenticar, selecionar a mídia, colar o conteúdo e escrever algo sobre ele (do zero). Na nossa cabeça, a coisa só ia rolar se tivesse um botão no navegador que “olhasse” para o conteúdo e cuidasse desse processo todo.
Esse incômodo se juntou com a coceira de brincar com o ecossistema de tecnologias de compartilhamento de dados que o Yahoo! disponbiliza (tais como YQL e oAuth) e fez a gente criar o MemeThis: um site que em poucos segundos gera o tão sonhado botão (bookmarklet, tecnicamente falando) personalizado para a sua conta no Meme.
O código-fonte é escrito em Java, e é livre. A parte dos bastidores (que faz toda a mágica acontecer) roda no Google App Engine – como bem observou um amigo nosso, usamos uma linguagem da Sun para ampliar um serviço do Yahoo! usando um outro serviço do Google. Web 2.0 é isso! :-P
Apesar de ainda ser uma versão beta, já tem bastante gente usando. E agora não é preciso mais mendigar convites: o Yahoo! Meme está aberto para todos, é só ir lá!
Publicado por
chester – 26/09/2009
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.
Publicado por
chester – 08/08/2008
O EDGE Switch é um programa que desenvolvi para o iPhone com o objetivo de bloquear/liberar a conexão de dados da operadora (EDGE). Isso é necessário porque o sistema operacional da Apple assume que o seu plano de dados é generoso e usa esta conexão sem perguntar quando não encontra uma rede sem fio.
UPDATE: Este programa foi criado no início dos tempos do iPhone, quando mal existia SDK oficial. Ele não foi testado com o OS 2.x/3.x, e com certeza existem alternativas melhores (como o SBSettings) para fazer isso hoje. Mas o código-fonte permanece online para fins de curiosidade e para ilustrar o mínimo do mínimo que a parte não-visual de uma aplicação iPhone tem que ter.
Mais…
Publicado por
chester – 24/02/2007

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…
Publicado por
chester – 08/09/2006
Com uma eleição tão parada como esta (a menos de pérolas como o Super Moura e o Deputado das Raves), só nos restou pegar carona no insanamente bem sacado Super Trunfo de Santos Católicos e lançar o Golpe – um jogo na mesma pegada, só que baseado no caricato panteão dos políticos brasileiros.
O melhor de tudo: é grátis (através da licença Creative Commons). Você baixa o PDF e pode imprimir em casa, mandar na gráfica, enfim, fazer o que bem entender (menos comercializar e reutilizar sem citar a fonte original). Além disso, as mídias, a planilha de dados e o programinha que gera o PDF também estão disponíveis para quem quiser atualizar as cartas ou até criar seu próprio baralho nesse estilo. Divirtam-se.
(Welcome, BoingBoing readers – this site is mostly written in Portuguese, but you can either try the Google translation link above, or ask me anything. Enjoy.)
Publicado por
chester – 20/06/2006
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…
Publicado por
chester – 11/01/2006
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.
Mais…
Publicado por
chester – 07/03/2002
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?