Entendendo a idéia do Google Wave

6

Perceber o que o Google Wave tem de especial não é fácil. Tenho visto muitas definições e comparações na internet dizendo que este novo serviço é:

  • Mais um editor de texto coletivo.
  • Um Basecamp melhorado
  • A evolução das mensagens instantâneas.
  • Um novo serviço de email.

Nenhuma das idéias acima conseguem definir o Google Wave, apesar de todas elas se encaixarem em suas possibilidades. O Google Wave é uma plataforma para colaboração online em tempo real.

Historia

Há milhares de anos, nossa civilização utiliza cartas, mensagens e bilhetes para solucionar o problema da comunicação à distância. Essa abordagem está tão enraizada em nossa cultura, que não é de espantar que uma das primeiras coisas que fizemos quando nos deparamos com a nova mídia da internet, foi mimetizar os correios.

De repente tornou-se possível trocar cartas com o mundo inteiro com poucos cliques. Foi ótimo! Mas rapidamente nos pegamos precisando de algo mais. Precisávamos tornar a comunicação mais fluida, reduzindo o tempo de resposta. Algo mais próximo de uma conversa. Assim, reduzimos o tamanho das mensagens e aprimoramos os mecanismos de envio. Em pouco tempo, chat, mensagens instantâneas e similares tornaram-se ferramentas fundamentais.

Com a popularização da web, serviços online como blogs e wikis se espalharam. Neste momento deixamos de apenas nos comunicar à distância para cooperarmos via internet. Vejam o sucesso cooperativo do Wikipedia, por exemplo.

O funcionamento é engenhoso. Cada vez que um documento é salvo, cria-se uma nova versão. Desta forma é possível compararmos as diferenças entre os documentos, e verificar seus históricos à qualquer momento. Sensacional! Mas ainda assim, alguma coisa parecia faltar nestas ferramentas. A interação entre os usuários não é boa o bastante.

Acontece que nosso foco histórico em mensagens, fez dos documentos o objeto da internet. E quando permitimos que várias pessoas manipulem um mesmo documento, nos deparamos com problemas de concorrência.

Epistemologia

Como podemos ver, super-valorizamos as mensagens, os conteúdos. Acabamos assumindo a idéia de que o conhecimento está completamente codificado nestes objetos. Mas não é bem assim.

A epistemologia é o estudo do conhecimento. Nesta área, Jean Piaget é considerado a grande referência pela concepção da sua Teoria Cognitiva, que é base para o Construtivismo.

Basicamente, a teoria piagetiana diz que:

“O conhecimento ocorre pela interação entre sujeito e objeto.”

Isto quer dizer que o conhecimento não existe previamente. Ele não está escondido na cabeça do sujeito, nem tão pouco puramente codificado no objeto. Apenas quando ambos interagem, surge o conhecimento. A forma simples de compreender esta frase é lembrando que as crianças só aprendem que tomada dá choque (e o que é choque), depois de interagirem com ela.

E como isso se relaciona com a web? Bem, até então, as ferramentas online nos permitiram cooperar. Possibilitaram que compartilhássemos objetos construídos individualmente (cartas, mensagens, patches, etc) para alcançarmos fins comuns.

Já a idéia por trás do Google Wave almeja um passo além. Quer possibilitar que sujeitos colaborem, compartilhando interações para a criação de objetos comuns. Ou seja, bem mais próximo do que acontece com Pair Programming onde pela colaboração dois programadores interagem criando um código comum. Neste processo, ambos compartilham a criação do conhecimento e aprendem juntos.

Como é possível?

Agora você pode dizer: Sério? Mas o Google Wave parece um cliente de email turbinado!

É verdade que o cliente web do Google Wave tem chamado bastante atenção. Mas o grande diferencial do sistema está no funcionamento interno da sua plataforma.

O Google Wave não foca em armazenar os textos, mensagens e conteúdos. Foca nas interações! Ao invés de armazenar as diferenças entre as versões das waves, ele armazena cada operação que a transforma.

Quando um usuário edita uma wave e digita “Ok“, o sistema não armazena o novo texto. Armazena algo como:

  • Agora, na insira o caracter “O” na posição X da wave.
  • Agora, na insira o caracter “k” na posição Y da wave.

Isso torna o funcionamento do sistema bastante diferente. Desta forma, é possível tratar com maior granularidade as diferenças entre os estados de um documento, e a técnica Operation Transformation que é a base para este sistema, prevê uma série de algoritmos para reajustar inconsistências.

Mas o resultado final é que esta estratégia lock free eleva a experiência do usuário e a interação entre usuários à novos patamares, abrindo uma gama de novas possibilidades. Um exemplo simples é o “playback”. Como a wave é uma série de operações executadas no tempo, é possível navegar nela como se fosse um filme e assistir o resultado de cada operação.

Massificação

O Google Wave é composto por Cliente, Servidor e Protocolo. Desde o primeiro momento, o Google havia anunciado que a plataforma do projeto será disponibilizada como open source.

Essa estratégia faz muito sentido. Primeiro por que parte do projeto foi implementado como uma extensão do protocolo XMPP. Sendo assim, o projeto e seus complementos poderão ser desenvolvidos pela comunidade já existente.

Além disso, o negócio do Google é busca. Ter a Plataforma Wave difundida como ocorreu com o XMPP, possibilitará que qualquer um instale seus próprios Wave Servers. Neles poderão existir waves privadas e outras públicas, que poderão ser compartilhadas com Wave Servers espalhados na internet através do Google Wave Federation Protocol. E é claro, estas waves públicas poderão ser devidamente indexadas.

Conclusão

No mínimo, este é um “começo interessante”. Aplicações que visam atender a demanda por uma web mais colaborativa ao invés de puramente cooperativa estão ganhando espaço. O Google Wave é um bom exemplo, mas ele não está sozinho nessa onda. Projetos como o Etherpad e Gobby, são exemplos de aplicações que focam na interação entre usuários para construção de objetos comuns.

Ao longo do tempo, utilizamos a computação para diversas finalidades. Calculamos mais rápido, executamos tarefas repetitivas com maior eficiência, cooperamos remotamente. Agora, está na hora de colaborarmos. Abrir a mente para as novas formas de pensarmos sistemas e soluções é sempre um grande desafio. Um bom começo é estudar os conceitos por trás da web semântica, Web em Tempo Real, além de compreender tecnologias como XMPP, Webhooks, SUP e PubSubHubbub.

[]’s!

você pode gostar também
6 comentários
  1. Leonardo Antonioli Diz

    Esta é a melhor análise que li do Google Wave.

  2. Fernando Kosh Diz

    Parece mesmo interessante. Só me falta conseguir um convite.
    Se alguém ai puder me enviar, serei muito grato.

  3. Henrique Bastos Diz

    Mariana,

    Acredito que essa divergência seja consequência do foco diferente nas análises do Vigotsky e do Piaget.

    Piaget foca no indivíduo e faz uma análise mais psicológica, já o Vigotsky tem uma visão mais sociológica onde o foco são as relações entre indivíduos.

    Na minha opinião, se aplicarmos a definição de que “o conhecimento surge da interação entre sujeito e objeto”, na interação entre dois sujeitos, da perspectiva de um, o outro estará no papel de objeto.

    Um objeto de interação não precisa necessariamente ser inanimado. De fato a interação entre sujeito e sujeito é ainda mais dinâmica.

  4. Mariana Bedran Diz

    Então.. Num dá pra ler “Epistemologia” e não me meter…
    Tem um camarada chamado Vigotsky que falou que esse tal do Piaget é muito foda e tudo mais, mas que o que ele não entendeu é que o sujeito do conhecimento não é um indivíduo isolado que se relaciona sozinho com um objeto. Se o Piaget diz que o conhecimento dá-se na interação sujeito-objeto, o Vigotsky, um camarada que tava lá por perto na Revolução Russa, diz que o conhecimento dá-se na interação de sujeitos através de objetos.
    Eu falo isso tudo meio de orelhada, ainda mais quando se trata de internet, mas acho que o Vigosky é bem mais interessante pra pensar essas coisas que você coloca no texto.
    Enfim, é isso…
    Gostei do texto.
    Quem diria que eu discutiria epistemologia a partir do google wave? Só o Flávio pra me arrumar essas coisas…

  5. Marcus Vinicius Diz

    Excelente texto sobre o Google Wave. Parabéns!

  6. Rui Andrada Diz

    Ótima postagem, muito esclarecedor.

    Vlw!

Deixe uma resposta

Seu endereço de email não será publicado.