chester's blog

technology, travel, comics, books, math, web, software and random thoughts

HOWTO: Python 2.6.5 + Django (via Passenger WSGI) at DreamHost

08 Apr 2010

djangoDreamhost is a pretty decent provider for people with lots of small websites. I didn’t expect them to have, say, Python 3 (although I’d love to), but I was surprised to find their official support is just for 2.4!

There are instructions for custom builds, but they are not much supportive (“If you are positive that you need to install Python, reconsider”), and a few unofficial ones. Here are the steps I used – try them at your own risk, since I can’t give any guarantees other than the fact that they worked for me (hint: create a new subdomain with its own user and try that there first.)

(These instructions might also work for Python 3.0 – just replace the version numbers accordingly. I did not test that (yet), but if you do, please let me know.)

Yahoo! Open Hack Day Brazil 2010

25 Mar 2010

Essa mochila foi um dos prêmios dos vencedores. Clique para outras fotos do evento.Conforme prometido no post anterior, eis minhas impressões sobre o Yahoo! Open Hack Day Brazil 2010. O evento já foi tão comentado que corro o sério risco de chover no molhado, mas eu não poderia deixar passar em branco.

A organização foi irrepreensível – tínhamos tudo o que era preciso para um fim-de-semana fantástico: espaço, alimentação, transporte, conectividade e o apoio constante de yahoos daqui e de fora para aproveitar muito bem e pirar na criação dos hacks.

Os participantes também se ajudavam bastante: o IRC ajudava a trocar informações técnicas (através do canal #brhackday do freenode), e era muito comum um ir narigar a bancada do outro, fosse para pedir ou oferecer ajuda, dar palpites ou mesmo para mostrar o que tinha feito.

Eu e a Bani tivemos uma alegria extra: o nosso hack (SlideMeme) foi premiado na categoria “Melhor Hack com o Meme” – um prêmio realmente inesperado, dado que a categoria contava com concorrentes de peso – eu fiquei particularmente impressionado com o Meme On Facebook, que, a exemplo do Twitter Meme, integra duas redes de forma 100% transparente.

O grande (e merecido) premiado do júri e do público foi o F1 Results, que mistura dados de corridas de Fórmula 1 com uma evolução (devidamente mencionada) do layout do Wii Love Mario Kart, no melhor espírito hacker. Também é importante destacar a quantidade e qualidade de hacks que ajudam a tornar mais acessíveis as informações públicas/governamentais, nos quais o aspecto lúdico dá lugar ao social. O Pedro Valente fez um bom apanhado desses brinquedos sérios.

A única coisa que me entristeceu um pouco (e que eu não podia deixar de comentar) foi o formato de apresentação do japeguei.com.br. O que poderia ter sido uma maneira bem-humorada de mostrar uma ferramenta bastante interessante de obtenção de dados em redes pessoais foi mote de uma infeliz associação entre nerds e stalkers.

Tenho certeza que a intenção do grupo foi das melhores, mas assumir que a timidez característica dos nerds justifica essa forma de sociopatia (mais ainda: de contravenção penal) cruzou a fronteira. Posto isso, a aplicação ilustra bem as possibilidades de cruzamento que o back-end do Yahoo! oferece, e a idéia de classificar as “pegadas” é, de fato, engraçada (dando margem a agregar conceitos como ranking, reputação e tantos outros que permeiam as redes sociais.)

Outro ponto enriquecedor foram as palestras – independente do seu nível de conhecimento das plataformas, sempre tinha algo relevante para a criação do hack. E não era aquela coisa ultra-comercial característica desse tipo de evento. Parafraseando Kennedy, a pergunta não era “o que o Yahoo! pode fazer por você?”, e sim “o que você pode fazer pelo mundo, usando as ferramentas do Yahoo?”.

Enfim, me junto ao coro dos que consideraram o evento sensacional, muito acima de qualquer expectativa. Aguardo os próximos ansiosamente!

Coisas que irritam um motorista

06 Mar 2010

Andar de ônibus em São Paulo não é nenhuma maravilha. Mas os piores perrengues não se comparam à soma das pequenas irritações causadas por este esporte coletivo espartano que é possuir/dirigir um carro particular, tais como:

Clássica foto da Faria Lima x JK. Autor: Magno

  • Ficar parado no trânsito (sem poder ler, jogar ou navegar);
  • Morrer em uma grana no seguro e não usar;
  • Morrer em uma grana no seguro, usar uma única vez e ver que no ano seguinte ele aumentou em 50% por causa disso;
  • Pagar IPVA, seguro obrigatório e nem lembro mais quais taxas;
  • Fazer inspeção veicular (mais tempo e dinheiro no ralo);
  • Preço da gasolina (que sobe automaticamente em qualquer crise, mas raramente cai quando está tudo bem);
  • Pagar a mensalidade do estacionamento no trabalho (ou ter que negociar um benefício útil no emprego no lugar disso);
  • Comparar o rendimento do valor do carro num investimento com a depreciação ano a ano dele;
  • Lavar ou mandar lavar (ainda que o fizesse trimestralmente, confesso);
  • Trocar o óleo a cada x km;
  • Trocar pastilhas/filtros/repimbocas/etc a cada y/z/k/m km ou meses (e gerenciar esse calendário todo);
  • Fazer revisão obrigatória (que nunca é na hora, nem perto de casa ou do trabalho);
  • O “barulhinho” que surge do nada e que anuncia que uma hora ele vai te deixar na mão (a pior possível);
  • As vinte opiniões amadoras sobre o barulhinho;
  • As cinco opiniões diferentes dos cinco mecânicos consultados sobre o barulhinho;
  • O custo e o tempo para consertar o barulinho;
  • O retorno do barulhinho (não antes de 4h ou 50KM de distância da oficina);
  • O tempo perdido tentando aprender mecânica de automóveis ao invés de algo mais relevante para a sua vida, na (vã) esperança de ser menos enrolado pelos mecânicos;
  • Fazer rodízio dos pneus;
  • Procurar lugar pra estacionar;
  • Ficar pensando “será que ele ainda está onde eu estacionei?”
  • Pagar estacionamento avulso, ou…
  • …decidir se deixa uma grana para o cara que vai “cuidar” (se pagar, você perpetua a extorsão, se não pagar fica pensando no que vai acontecer com o carro);
  • Encontrar o vidro quebrado, gastando uns R$ 200 por causa de um item de R$ 20 que estava no banco traseiro;
  • Queimar uma grana num CD/MP3 player caro (que pode motivar o item anterior) ou escolher entre música pasteurizada de FM e as mesmas notícias repetidas a cada 15 minutos;
  • Tentar lembrar em que andar/vaga do shopping center você deixou o carro;
  • Andar (ou não) com os documentos;
  • “Efeito estufa” nos dias quentes;
  • Pequenos acidentes – esse item vale por muitos:
    • Discussão loser com o outro Sr. Volante (independente de quem tem culpa);
    • Fazer o Boletim de Ocorrência;
    • Acionar o seguro;
    • Fazer orçamento de conserto;
    • Saber que aquela parte nunca vai ficar exatamente do jeito que era;
  • Vidro elétrico que emperra no pior lugar possível (ex.: não fecha quando você está na rua ou na chuva);
  • Carteira de motorista que vence quando você está totalmente sem tempo para ir atrás (e cuja renovação sempre envolve um novo exame ou burocracia em um lugar totalmente distante);
  • Ser o chato que não deixa o carona fumar ou aturar a aura de nicotina durante o resto da semana;
  • Acordar cedo (ou voltar tarde) uma vez por semana por causa do rodízio – e ainda tentar se enganar com consolos do tipo “ah, hoje eu pego menos trânsito”;
  • Pequenos defeitos que “não vale a pena” terceirzar e você tem que resolver. Ex.: lâmpada do pisca queimada;
  • Ser multado porque não percebeu um desses pequenos defeitos (ou ainda, causar um acidente por conta dele);
  • Pegar uma lombada/buraco e quase sentir na pele a “dor” no carro – além de passar os próximos minutos tenso com a possível falha mecânica decorrente;
  • Pagar pedágio como se fosse um viciado: quantidades cada vez maiores, em intervalos cada vez menores;
  • Ficar “na mão” com uma falha mecânica e não poder simplesmente abandonar o veículo e pegar o próximo (como faria com um coletivo);
  • Se você mora numa rua com feira livre (como os meus pais), acordar de madrugada uma vez por semana para tirar o carro, ou ficar com ele preso até o meio da tarde;
  • Abastecer um mísero dia com gasolina de baixa qualidade e aturar o carro engasgando durante o resto da semana (isso se não tiver que trocar algum filtro ou rolar um defeito ainda mais $ério);
  • Medos: furto, colisão grave, atropelamento, assalto no farol, sequestro-relâmpago, falso bloqueio policial, ficar preso em enchente, respirar poluição sem ter para onde fugir… enfim, medo de viver. Estou fora.

Chester no Oriente Médio (Qatar)

02 Mar 2010

Está cada vez mais difícil convencer as pessoas de que eu não escolho meus trabalhos baseado no surrealismo das viagens decorrentes. Dessa vez foi um projeto em uma empresa canadense que me levou a passar uma semana em Doha, a capital do Qatar. Quem quiser pode ir direto para as fotos – ou então senta que lá vem história:

Mesquita em frente ao prédio moderno

Embora o Qatar seja um emirado (i.e., administrado por um emir, de forma semelhante a uma monarquia), não faz parte dos Emirados Árabes. Era um protetorado britânico que ia vivendo remediado de pérolas e pesca, até que os japoneses os tiraram do negócio. Mas Alá foi generoso: eles vivem sobre uma reserva de petróleo e gás natural, e focaram a economia nisso. Nos anos 90 o então herdeiro do emir deu um golpe branco, tomando o poder durante uma viagem do pai.

O principal dividendo foi a aceleração do processo de democratização e desenvolvimento social: eleições municipais e parlamentares – incluindo o voto feminino – foram instituídas, e a lei islâmica, embora mantida, foi abrindo espaço para um estado mais liberal. A burca ainda é comum, mas as estrangeiras, por exemplo, já não usam. Eles ainda têm muito o que caminhar, mas é bastante progresso para pouco tempo. A presença massiva de estrangeiros (notadamente indianos) e os negócios com o ocidente seguramente influenciaram este movimento. Ah, e foi esse novo emir quem bancou (mas manteve independente) a Al Jazeera, a “CNN do mundo árabe“.

Assim como Dubai, eles têm infra para acomodar executivos estrangeiros com o mínimo de contato com o “mundo lá fora”. Mas é claro que eu quis pular isso: na minha primeira noite eu comi um arroz frito com falafel e suco de três sabores num lugar meio tosqueirinha – comida com fartura a um preço muito bom (~R$ 11) – provavelmente influenciado pelo câmbio deles, que é atrelado ao dólar – e este último não está no melhor dos seus momentos.

É muito sossegado andar por lá, de dia ou de noite – todo mundo arranha um pouco de inglês, e as ruas são muito seguras (imagino que a lei seja um tanto severa nesse sentido). Só é preciso prestar atenção ao fato de que ainda se trata de um estado islâmico: não é educado ficar tirando fotos das pessoas nas ruas, se dirigir às mulheres sem necessidade (o que eu acho meio triste, sem maldade, mas é o jeito deles) ou se vestir de forma extravagante.

Não deu pra fazer muito turismo: o pessoal lá começa a trabalhar cedo, por volta das 7 horas da manhã, e acaba indo até as 3 da tarde. A gente acabava ficando um pouco mais, e ao voltar para o hotel tinha mais trabalho. Mas consegui fazer três passeios: um ao Museu de Arte Islâmica (um prédio maravilhoso, mas cujo acervo parece um pouco reduzido – talvez os conflitos, cruzadas e tudo o mais tenham destruído muito dessa herança cultural), uma volta no Doha Corniche (a parte “Dubai-esca” do lugar, perto do qual comi aquele pão estilo sírio coletivo com temperos locais, muito bom) e uma visita ao Villaggio (shopping center que conta com parque de diversões, quadra de hóquei e até – pasmem – passeio de gôndola indoors).

Não sei se faria como viagem turística – são 13 a 15 horas de vôo entre São Paulo e Dubai, e 1h de conexão que não é exatamente ponte aérea (esperei 4h na ida e 9h na volta), mas pra quem tem coragem e grana é um jeito fantástico de conhecer o mundo árabe.

u.nu URL shortener bookmarklet

05 Feb 2010

Unfortunately, u.nu ceased to exist as an URL shortener,
but I decided to keep the article as a curiosity.

A URL shortener like TinyURL or bit.ly is a handy tool on these Twitter times. But even shortened URLs from those services can get a bit too long when you are on tight spots.

Enter u.nu, arguably the shortest URL shortener in town – which, unfortunately, does not come with a one-click shortening option like bit.ly’s bookmarklet. It does, however, offer an API, with which I quickly hacked a minimalistic bookmarklet.

Just drag and drop the link below to your browser and turn anything in your browser into a short URL with a single click:

<a href="javascript:location.href="'http://u.nu/unu-api-simple?url='+escape(location.href);"" id="a_unu">u.nu</a> <- drag that to your browser’s toolbar.

UPDATE: Real stupid mistake – forgot to escape the URL (but hey, I told it was a quick hack :-P ) – fixed now (Feb 9, 2010).

Plataforma Vivo: um canal comercial para desenvolvedores JME independentes.

29 Jan 2010

Continuando o assunto do último post: fui ao workshop que a Vivo deu sobre a plataforma no Campus Party, no qual os palestrantes Sena e Lecy foram muito gentis em responder ao caminhão de perguntas que eu tinha sobre o assunto.

Antes de mais nada: ao contrário do que a apresentação da API SMS multi-linguagem dava a entender, a idéia inicial da plataforma não é disponibilizar aplicações server-side baseadas em SMS. Isso é tecnicamente possível, mas a idéia é realmente algo nos moldes da App Store da Apple, isto é, um marketplace para que as pessoas comprem e baixem aplicativos sem as complicações de download e pagamento tradicionalmente envolvidas nesse tipo de operação.

O público consiste em assinantes Vivo cujos celulares rodem aplicações Java (JME). Pode parecer restritivo, mas fazendo as contas, estamos falando de algumas dezenas de milhões de clientes potenciais nessas características (segundo a própria Vivo). Com um detalhe: tudo em português, direto no celular, e debitando na conta – ou seja, nada de cartão de crédito ou de exigir um celular de elite – as maiores barreiras entre o “jeito Apple” e o público brasileiro.

O outro aspecto comercial interessante é que, de fato, o desenvolvedor interage diretamente com a Vivo, com um processo bem definido para colocar sua aplicação no ar. Isso é, talvez, a parte mais revolucionária da proposta. Hoje em dia, um desenvolvedor que queira colocar suas aplicações à venda numa operadora precisa, necessariamente, passar por um intermediário.

Comparando com iPhone OS/Objective C (a única outra plataforma viável para desenvolvedores independentes), os aparelhos não têm todas as plumas e paetês (alguns até tem, mas se você quer um público amplo tem que abrir mão), mas a curva de aprendizado e o tempo/complexidade de desenvolvimento são maiores – em particular se você for cuidadoso com detalhes como gerenciamento de memória. Além disso, você desenvolve usando qualquer computador/sistema operacional, o que é outra vantagem em termos de custo.

Com essa perspectiva fica bem mais fácil entender as informações no site. No geral, o processo é:

  1. Desenvolver a aplicação usando JME/Java. Se sua aplicação gerar envio de SMS, use as APIs – fora isso é uma aplicação JME absolutamente normal;
  2. Submeter a aplicação à certificação como “beta”. A aprovação nesse processo já vai permitir colocar a aplicação à venda por R$ 0,99 ou R$ 1,99 (à sua escolha). Disso, 70% é seu. E do tráfego de SMS que a aplicação gerar, 10% também vai para o seu bolso;
  3. Uma vez que a aplicação tenha sua viabilidade comprovada, ela pode ser submetida para o processo completo de certificação, no qual estará lado a lado com as aplicações dos grandes vendedores (a preços equivalentes).

Assim como o sistema, o processo ainda está sendo desenhado e implementado – o passo 2 só rola a partir de Março. Mas não é nada viajante como roubar cuecas para obter lucro, e os caras estão realmente abertos a feedback.

Se vai dar certo, só o tempo dirá – mas é a chance que eu queria ter tido em 2005, quando comecei a desenvolver o miniTruco. Na época nenhuma integradora com que conversei se interessou: eles consideravam os gráficos minimalistas como “defeito” – sendo que isso foi feito propositalmente para garantir a universalidade e evitar telas de loading que tanto me irritam nos jogos tradicionais. Hoje, isto é, 300 mil downloads depois, eu suspeito que estava com a razão…

Plataforma Vivo para desenvolvimento e comercialização de aplicativos baseados em SMS – será a App Store tupiniquim?

27 Jan 2010

Show me the money!Parece que ontem a operadora de telefonia móvel Vivo apresentou no Campus Party sua plataforma de desenvolvimento de aplicativos para celulares – apresentação que infelizmente eu perdi por causa de trabalho e tchuva.

A notícia (TI Inside) me deixou salivando: potencialmente a coisa permitiria publicar apps sem o envolvimento de terceiros (como na App Store), mas cobrando direto na conta telefônica – só isso já merece alguma consideração.

O processo começa com a abertura de um cadastro e leitura da documentação das APIs – que são chamadas externamente (ou seja, seu aplicativo não roda no celular, e sim no seu próprio servidor), e consistem no envio de SMS, MMS e WAP Push (que é, grosso modo, o envio de um link para um conteúdo WAP) através de uma API REST (que cheira a SOAP com uma capinha REST por cima, apesar de contar com conversão implícita de JSON), com bibliotecas prontas para PHP, Java e .Net – mas, claro sendo REST, qualquer linguagem vale.

Pode parecer pobre em comparação, digamos, com apps iPhone, mas aplicações baseadas em SMS rodam até mesmo nos celulares mais modestos – eu lembro que, quando vi um pager pela primeira vez, minha primeira reação foi “cara, eu muito faria um adventure de texto rolando nessa parada”. De repente um miniTruco baseado em SMS… idéias mil.

Dei uma olhada na biblioteca Java. Ela é empacotada de maneira, digamos, pouco carinhosa (ex.: inclui o Jakarta Commons HttpClient como código-fonte, misturado com o código da API – provavelmente foi gerada por alguma ferramenta) e abre com um caminhão de issues no Eclipse. O mérito é que vem com uns exemplos (bem básicos) de uso, e os issues devem ser coisa fácil de resolver (depois eu vejo com calma).

Juntando o fato de as APIs só rolarem atualmente num sandbox com a quantidade de “em breve” no site, a primeira leitura é que o produto ainda está bem em construção – o link “modelo de negócio” ser um Flash com quatro slides explica muito sobre o estágio embrionário da empreitada enquanto produto. Dá pra encarar como risco (i.e., será que a plataforma vai pro ar?) ou como oportunidade (dá tempo de desenvolver algo e sair na frente).

E ficam no ar duas grandes dúvidas:

  • As APIs só falam (numa leitura superficial que fiz até agora) em envio de mensagens. E o recebimento? A coisa só pode ser considerada uma aplicação autônoma se o usuário puder enviar SMS de volta, e não achei nenhuma API para que a app consiga receber respostas. Será que a idéia é fazer WAP Push, mandar o cara para o meu site e lá ele interagir para receber o próximo SMS?

  • Quanto isso custa pro usuário? O artigo fala em porcentagens sobre o tráfego gerado, mas não diz quanto o usuário do aplicativo vai pagar por esse tráfego (se for preço normal de SMS, esquece – sai mais barato comprar um netbook pra jogar o adventure de texto :-P). E ainda fala em venda dos aplicativos, o que também é complicado: se o cara tiver que pagar pra baixar e pagar pra usar, só vai dar certo em um país onde as pessoas sejam conformistas a ponto de pagar imposto várias vezes sobre o mesmo produto… ah, tá, entendi.

Espero que as pessoas que foram à apresentação tenhma perguntado essas coisas e postem em algum lugar em breve. Também devo perguntar no fórum e ver no que dá. Eu sou sempre reticente com qualquer associação com operadoras de celular, mas numa primeira análise essa plataforma (quando e se ficar pronta) parece menos evil do que de costume. Vamos ver.

Galeria Central – minha primeira… err… “home page”

18 Jan 2010

Depois que o Yahoo tirou o Geocities da tomada, todo aquele passado de <blink> e <marquee> que a galera das antigas escondia no fundo do armário digital passou a ser retrô-cool.

Isso sem contar que olhar sites antigos das pessoas é tão ou mais divertido do que olhar álbuns de fotos – experimente fuçar a vida online dos seus amigos (em particular a velha guarda) e vai entender o que eu estou falando.

Posto isso, ajuste o DeLorean rumo a 1997/98 (eu tinha uma versão anterior, mas essa foi a que eu achei), ignore links quebrados e acesse a…

Galeria Central
a home page do Chester

(sim, a gente falava desse jeito.)

Bônus: quem precisa de Google Maps? (não, eu não moro mais lá)

Google x Governo Chinês

13 Jan 2010

Protesto na Praça da Paz Celestial, típica cena censurada pelo Google.cn

Minha primeira reação ao saber do imbróglio foi de espanto: o Google China foi vítima de uma invasão que procurava dados de contas de ativistas pró-direitos humanos – e é bem razoável acreditar que o responsável tenha sido o próprio governo. A empresa ameaça fechar sua página local (que pré-censura há anos seus resultados, de forma a agradar ao governo chinês) e até fechar as portas no país.

Ainda não tenho uma leitura definitiva disso – eu quero muito acreditar que é possível manter princípios éticos numa corporação desse tamanho, mas a ida deles à China me jogou um balde de água fria nessa idéia já há alguns anos.

Também não dá pra descartar que a majestade deles é diminuída pela sombra do Baidu, e há quem enxergue nisso uma jogada de transformar um prejuízo em ação de marketing/downsizing disfarçado (eu, pessoalmente, não compro muito essa idéia – não ao menos enquanto não tiver números confiáveis sobre o mercado de busca lá.)

Por ora, tudo o que se tem é um blog post. Vamos ver o que vai acontecer.