Arquivo do mês de novembro 2009

 
 

Integrando o Zapt.In com o Twitter

Uma das funcionalidades mais desejadas para o Zapt.In é uma integração maior com o Twitter. Claro que isto pode significar muitas coisas, mas para nós, estamos pensando em três categorias de integrações: a) integração com clientes do Twitter para que pessoas usando aplicativos como Twitterrifc, Tweetie, Echofon e outros possam utilizar o Zapt.In diretamente destes aplicativos; b) integração do site do Zapt.In com o Twitter para que seja mais simples compartilhar links do Zapt.In através do Twitter (como faz o Bit.Ly); e c) integração com o Twitter para monitorar quais os links mais tuitados e re-tuitados pelos usuários (como faz o Migre.Me).

Estou correndo para garantir que estas três categorias de integrações aconteçam, mas infelizmente, não tenho como fazê-las ao mesmo tempo e, no caso da integração com aplicativos, não tenho poder para fazê-la sozinho (preciso da colaboração dos seus respectivos desenvolvedores).

Mas o legal é que a integração do site do Zapt.In com o Twitter já foi concluída e está disponível para você. Ela utiliza a tecnologia OAuth (veja também a FAQ do Twitter sobre OAuth) e permite que você associe sua conta do Twitter a sua conta do Zapt.In, sem ter que fornecer seu login e senha do Twitter. OAuth é uma das maneiras mais seguras de integração de serviços na rede.

Bom, mas chega de “bla-bla-bla” e vamos ao que interessa: integrar sua conta do Zapt.In com o seu Twitter:

1. Encurte um LINK através do Zapt.In

Basta digitar uma URL ou usar nosso Bookmarklet.

Zapt.In integrado com o Twitter

2. Clique no botão “Compartilhar”

Para compartilhar um link pelo Twitter, basta clicar no botão “Compartilhar” de qualquer link que você vir no Zapt.in.

Se você ainda não tiver associado sua conta do Zapt.In à sua conta do Twitter, você verá a seguinte mensagem:

Zapt.In integrado com o Twitter

Clicando no link indicado, você será redirecionado para uma página do Twitter, onde poderá autorizar o Zapt.In a usá-lo em seu nome, de maneira segura.

3. Autorizando o Zapt.In a se conectar ao seu Twitter

Ao clicar no link, você será redirecionado para uma página do Twitter, onde você será questionado se deseja autorizar a associação da sua conta ao Zapt.In ou não. Clique no botão “Allow” (Permitir).

Zapt.In integrado com o Twitter

Verifique se a conta que você está associando ao Zapt.In é realmente a conta que você deseja autorizar. Se não for, clique na opção “Sign out” (Sair) e siga as instruções.

4. Pronto, agora é só compartilhar seus links

Quando você autorizar o Zapt.In a utilizar sua conta do Twitter, você será redirecionado de volta ao Zapt.In e estará pronto para compartilhar seus links diretamente, a partir do site do Zapt.In.

Quando sua conta estiver autorizada, ao clicar no botão “Compartilhar“, surgirá um pequeno formulário para escrever sua mensagem (tweet) e enviá-la através do Twitter.

Zapt.In integrado com o Twitter

Para sua comodidade, o link curto já estará dentro do campo da mensagem, mas você poderá customizá-la como quiser. Observe que existe um contador de quantos caracteres  ainda restam (lembrando que o máximo permitido pelo Twitter são 140 caracteres).

Zapt.In integrado com o Twitter

Com sua mensagem devidamente preparada, basta clicar no botão “Enviar Tweet“, que o tweet será enviado em seu nome. Veja um exemplo de como ficará a mensagem enviada através do Zapt.In:

Zapt.In integrado com o Twitter

É isto, boas tuitadas!!!

Configurando o Zapt.In no Tweetie para iPhone

Olá, no último post falei de um novo projeto que coloquei no ar, o Zapt.In, um encurtador de URLs brazuca (sim, mais um, hehe). E nos últimos dias liberei algumas novas funcionalidades no Zapt.In. A mais interessante delas é a versão inicial da API de Desenvolvimento do Zapt.In. Mas o tema deste post não é a API, mas sim como colocar o Zapt.In para funcionar no Tweetie, um dos melhores clientes do Twitter para iPhone.

Bom, mas chega de bla bla bla e vamos ao que interessa…

1. Conseguindo sua Chave da API do Zapt.In

Para utilizar a API do Zapt.In, você precisa pegar sua chave da API. Para isto faça seu login no Zapt.In e clique na opção “Perfil” do menu de usuário. Na página com informações de seu perfil você verá sua Chave da API.

Zapt.In : Menu do Usuário

Zapt.In : Chave da API

2. Agora abra o Tweetie em seu iPhone

Teta, basta clicar no ícone do Tweetie em seu springboard:

Zapt.In no Tweetie do iPhone

3. Configure o Tweetie para usar o Zapt.In

Na tela inicial do Tweetie (para escolhar qual conta você vai usar), clique no botão “Settings” (configurações):

Zapt.In no Tweetie do iPhone

Depois clique na opção “URL Shortening” (encurtamento de URLs):

Zapt.In no Tweetie do iPhone

Depois escolha a opção “Custom” (Customizado) para configurar o Zapt.In:

Zapt.In no Tweetie do iPhone

Agora é colocar a URL da API do Zapt.In no campo de customização. A URL deve ficar da seguinte forma:


http://zapt.in/api/links/shorten?version=1.0&login=SEU_LOGIN&key=SUA_CHAVE&longUrl=%@

Não se esqueça de substituir os valores SEU_LOGIN e SUA_CHAVE pelos valores de sua conta no Zapt.In!!

Zapt.In no Tweetie do iPhone

Depois de colocar a URL clique no botão “save” (salvar) e você estará pronto para usar o Tweetie com o Zapt.In.

3. Agora é só usar…

Digite sua mensagem com uma URL longa que você deseja encurtar. Depois clique no botãozinho que fica no campo da mensagem com a contagem de caracteres:

Zapt.In no Tweetie do iPhone

Agora é só clicar no botão “Shrink URLs” (Comprimir URLs) e as URLs longas de sua mensagem serão magicamente encurtadas pelo Zapt.In:

Zapt.In no Tweetie do iPhone

Eeeeba… agora só faltam dois zilhões de outras aplicações suportarem o Zapt.in!!! ;-)

Zapt.In : Entendendo e brincando com os encurtadores de URL

Death Star Trash Compactor

Quase todo mundo já deve ter esbarrado (e se perguntado sobre o que são) umas URLs estranhas com domínios mais estranhos ainda, como por exemplo: bit.ly/7XC3Lo, migre.me/ck3k, tinyurl.com/yge8jzg, j.mp/7XC3Lo e zapt.in/k. A maior parte do mistério é esclarecida quando clicamos num link destes e somos redirecionados para um outro site. Tratam-se de URLs encurtadas através de algum serviço de encurtamento de URLs (Wikipedia: URL shortening).

Bom, mas pra que precisamos disto. Afinal os browsers evoluíram para aceitar URLs de tamanhos gigantescos (não existe um consenso quanto ao tamanho máximo de uma URL, mas elas podem passar dos milhares de caracteres na maioria dos browsers e web servers). Na realidade existem várias utilidades para estes encurtadores de URL como facilitar a digitação e a verbalização de URLs (é melhor usar/ditar/digitar uma dezena de caracteres do que milhares de caracteres), permitir que URLs grandes fossem compartilhadas em mensagens SMS (imagine passar a URL toda deste post numa mensagem de texto) ou até mesmo fazer o tracking de clicks/visualizações de um determinado link. Mas a coisa decolou mesmo foi com a popularização do Twitter, que permite apenas mensagem com no máximo 140 caracteres. Ou seja, qualquer caractere é valioso ao se compartilhar um link em um tweet. Fica claro que na hora de compartilhar aquele link do torrent do Ubuntu 9.10 no Twitter é melhor usar a URL encurtada http://zapt.in/m com apenas 16 caracteres do que a original http://releases.ubuntu.com/9.10/ubuntu-9.10-alternate-i386.iso.torrent com 70 (e olha que esta é relativamente curta).

Mas como funcionam os encurtadores (ou compressores) de URLs?

Bom, na prática (pelo que vi até o momento), nenhum “encurtador” de URL faz realmente a compressão da URL. Entendendo como compressão de dados a utilização de algoritmos como o Lempel-Ziv (LZW – utilizado no winzip, gzip, etc) ou o Run Length Encoding (RLE – utilizado em máquinas de fax).

O que eles fazem, em geral, é construir uma função bijetora que leva cada URL longa para uma URL ou chave menor (e vice-versa), tentando minimizar ao máximo o espaço necessário para esta nova URL ou chave. Existem variações quanto aos modelos de funções de mapeamento utilizadas (algumas não sendo de fato bijetoras) e também em como as URLs menores ou chaves são geradas.

Para a geração das chaves, muitas vezes se utiliza um hash único calculado aleatoriamente (para evitar que se possa prever as sequências) ou mesmo uma chave calculada através da transformação de um número sequêncial (cada URL encurtada incrementa a sequência) utilizando uma base de representação maior do que a decimal. A idéia é utilizar menos posições (caracteres) para representar o mesmo número (índice). Por exemplo:

Número 70015 (setenta mil e quinze) representado em diferentes bases numéricas:

  • Base 2 (binária) : 10001000101111111 : 17 caracteres
  • Base 8 (octal) : 210577 : 6 caracteres
  • Base 10 (decimal) : 70000 : 5 caracteres
  • Base 16 (hexa-decimal) : 1117f : 5 caracteres
  • Base 32 : 24bv : 4 caracteres
  • Base 62 : IDH : 3 caracteres

Observe que para representar o mesmo número, podemos entre 17 e 3 caracteres (somente com os exemplos de representações utilizados no exemplo).

Me parece que o Migre.Me utiliza Base 62 e um índice sequencial de URLs, já o Bit.Ly parece usar Base 62, mas com algum esquema de sequenciamento estranho (talvez ele use algum particionamento do espaço a partir da URL original).

Bom, depois de mapear a URL original para uma encurtada, e armazenar isto num banco de dados, o que o “encurtador de URLs” faz é redirecionar um visitante que segue a URL encurtada para a URL original. De preferência os serviços utilizam o redirecionamento do tipo permanente (HTTP 301 – Permanent Redirect), já que este tipo de redirecionamento preserva as características da página destino para fins de web crawling, SEO, rankings, etc. Digamos que ele é o tipo de redirecionamento mais amigável com os motores de busca.

O interessante é que entre receber a requisição na URL encurtada e redirecionar o visitante para a URL original, o encurtador pode capturar vários tipos de estatísticas para aquele link. Ele pode contar quantas vezes o link foi clicado, qual o tipo de browser que foi utilizado, etc. Isto torna os serviços ainda mais úteis, podendo ser utilizados para medir taxas de conversão de clicks, eficiência de campanhas online, concursos e outros.

Joia, mas agora vamos falar do Zapt.In…

Bom, a idéia do Zapt.In nasceu há alguns meses quando este tipo de serviço começou a explodir pela rede: o Brasil ainda não tinha um encurtador de URL decentes – Leia-se: o Jonny Ken ainda não havia criado o Migre.Me ;-), eu trocava várias ideias sobre as possibilidades de um serviço destes associado ao BlogBlogs e o LiveStream com Manoel Netto e eu acabei me esbarrado em alguns domínios interessantes (bem curtos) como foi o caso do ZAPT.IN. Acontece que o tempo passou, muita coisa aconteceu e nunca rolou de fazermos o tal encurtado.

Mas como para tudo chega a sua hora, neste feriado (última semana) aconteceu o alinhamento planetário perfeito: a Isabella passou a semana em Uberaba, as coisas estavam mais tranquilas no trabalho e, no final de semana prolongado, minha mãe e irmã vieram para Sampa e passaram grande parte dos dias caminhando pelos shoppings e ruas do centro (com a Isa que já havia retornado), deixando o viciado em codar (eu mesmo) livre para criar, hehe. Amo muito tudo isto!!!

Bom, ai foi a hora de arregaçar as mangas, abrir o TextMate e começar a codar. Com algumas boas horas de coding e pesquisa consegui colocar a primeira versão (bem tabajara, mas lembrando que ‘shipping is a feature‘) para rodar na plataforma de Cloud Computing da Heroku. Na realidade passei mais tempo estudando algumas coisas (algoritmos, Heroku, Git, etc) do que codando, mas na hora de mandar brasa no “POG” e escrever o Zapt.In a coisa andou bem rapidamente.

É isto, agora o Zapt.In está no ar em versão nem-alpha-ainda. Claro, cheio de bugs, sem logo, sem layout, com poucas funcionalidades e sem a menor preocupação, ainda, com escalabilidade. Mas um dia ele chegará lá, para isto preciso da ajuda de vocês (para usarem, testarem e enviarem suas ideias).

Tá, mas por que fazer MAIS UM encurtador de URLs?

Esta é uma boa pergunta. O Brasil já tem o Migre.Me e existe mais de uma centena de serviços parecidos por ai. Então por que?

Ué, porque é divertido! ;-) Porque serviços como o BlogBlogs e vários outros nasceram assim. Porque não?

É isto, depois escreverei alguns posts sobre os desafios, os perrengues e as aventuras de colocar mais uma aplicação no ar. HeyHo!!!!


Últimos Leitores

Ver todos no BlogBlogs | Controlar visibilidade

Destaques