Web 2.0 pé no chão

A edição de janeiro da Revista Webdesign traz uma extensa e interessante reportagem sobre a Web 2.0 (na mesma revista, o primeiro de uma série de tutoriais meus sobre Ajax.) Ao mesmo tempo, Richard MacManus anuncia a morte da Web 2.0, que, na verdade, nunca existiu.

Ao mesmo tempo, falando de Ajax, surgiram o Ajah, o Ahah, o Ajat e uma série de outros “novos métodos”, todos “mais simples”, “mais eficientes” e “mais rápidos” que o Ajax.

Isso é pra confundir qualquer um, não? Calma, vou tentar explicar. Meu conselho é: esqueça o nome, entenda o que se pode fazer. Principalmente, o que pode ser feito para seu usuário.

Comecemos com o caso do Ajax. Ele permite que você carregue apenas parte de sua página usando Javascript[bb], sem precisar fazer o refresh de toda a página. Isso é fantástico, e é isso o que realmente importa, para você e para o seu usuário. O nome que você vai dar a isso realmente importa muito pouco.

Assim, se você quer usar XMLHttpRequest para requisitar trechos de XML que serão interpretados pelo Javascript, ou trechos do seu HTML, ou simples arquivos de texto, faça o que for melhor para o seu projeto. Como você vai chamar isso, realmente, importa muito pouco. Eu, por exemplo, tenho usado muito duas técnicas: requisitar trechos de HTML do servidor (que eles chamam por aí de Ajah ou Ajat) e requisitar Json (o que poderia ser considerado uma forma de Ahah.) Mas, para simplificar, chamo tudo de Ajax.

O nome realmente não importa, o que importa é que, para meus usuários, a aplicação está muito mais rápida. Então, se os nomes parecem complicados, relaxe. Se gostar da idéia, aceite minha sugestão e chame tudo de Ajax. Senão, tudo bem, não faz a menor diferença mesmo.

Numa esfera muito maior, a mesma coisa acontece com a Web 2.0. A diferença é que o Ajax é um conceito e a Web 2.0 é o nome para uma série de conceitos que representam um novo nível de maturidade no desenvolvimento de aplicações web. Diferente de algumas das muitas idéias que vimos explodir junto com a bolha, esses são conceitos maduros, comprovados pelo mercado, testados e aprovados pelo mundo real. Por isso, não importa se você vai chamar isso tudo de Web 2.0 ou não, o que importa é:

  • A web é a melhor plataforma de desenvolvimento de software existente hoje: de novo, pense no usuário. Veja, por exemplo, este PDF publicado pelo Estado de São Paulo.
    • Distribuir software pela web é o melhor dos mundos: Nada de CDs com atualizações de software. Atualização instantânea para toda a base de usuários. Software sempre atualizado, sem que você tenha o trabalho de esperar por um CD, colocá-lo no drive e seguir as instruções.
    • Experimente o desenvolvimento orientado a serviços: é um jeito de se desenvolver. Ao invés de desenvolver componentes ou bibliotecas que serão usados por seus programas, você desenvolve APIs de serviços web. Dá praticamente o mesmo trabalho desenvolver um webservice e uma DLL. A diferença é a vastidão de situações em que o webservice pode ser útil. Tenho, por exemplo, um webservice desenvolvido em PHP para um sistema de pagamento que eu reaproveitei. Estou usando o mesmo webservice de outro servidor, a partir do Python[bb]. Faça isso com DLLs ou coisa parecida, quero ver! As vantagens para o seu usuário são o fato de suas aplicações ficarem prontas logo e suas migrações serem menos traumáticas, ou seja, seu sistema funcionará melhor, e o fato de que outras pessoas poderão desenvolver sistemas que usem seus serviços. Esse tipo de integração é fabuloso!
    • Você precisa de um bom framework[bb]: Algo como Rails, que o faça produtivo. Estou usando Django e estou satisfeitíssimo. Se você não trabalha com um bom framework, não sabe o que está perdendo. Um bom framework permitirá a você desenvolver em poucos dias softwares que antes levavam semanas. E a web permitirá disponibilizá-los imediatamente. É um salto de um ciclo de meses para um ciclo de dias.
  • O conteúdo é o rei: não importa quão bonita seja sua aplicação, ou quão bem ela funcione, o valor dela está relacionado com o conteúdo que ela armazena, classifica e distribui, e, numa segunda análise, em quão bem ela é capaz de fazer isso. Assim:
    • O projeto de sua aplicação deve ser voltado ao conteúdo: Toda a sua equipe deve ter na ponta da língua o que seu site faz exatamente, ou seja, que conteúdo ele entrega para quem, e trabalhar em prol disso.
    • Nada deve impedir seu usuário de chegar ao conteúdo: Sua idéia genial de navegação não deve impedí-los. A versão do navgador deles ou sua banda estreita também não.
    • O próprio valor do negócio está relacionado com o conteúdo: Não importa quão bonitos sejam os gráficos com os trovões e a chuva, as pessoas entram em sites de previsão do tempo para ver a previsão do tempo. Por isso, se você puder investir em apenas uma coisa, invista no seu conteúdo. Tenha a melhor previsão do tempo, que abrange o maior número de cidades, que é mais fácil de se entender, que acerta mais. Já percebeu como é feia a home do Google? Há uma série de mecanismos de busca mais bonitos por aí, mas sem o que o Google tem: conteúdo relevante[bb].
  • Dar poder à pessoas: já leu aquele papo sobre o valor exponencial dos aparelhos de telefone em seu início? Pois então, é a mesma coisa com o del.icio.us, por exemplo. Dar poder às pessoas significa:
    • Folksonomia: como você organiza o conteúdo em seu site? Quem define se o link no menu vai se chamar “contato” ou “fale conosco”? Esse trabalho é o que o pessoal da arquitetura de informação chama de taxonomia. É o trabalho de dar nome e classificar as coisas. Alguém teve a interessante idéia de colocara taxonomia na mão de seus usuários, daí surgiu o termo folksonomia (folk=povo, gente.) Um exemplo? Veja como se usava taxonomia antigamente: Cadê? Internet. Essa página é um exemplo de taxonomia convencional. Embora as categorias e os sites cadastrados tenham sido sugeridos por usuários, foi alguém dentro do Cadê que resolveu o que ia aonde. Percebe que não há uma categoria Web 2.0 lá? Agora veja esse: Del.Icio.Us Internet. Veja que há, na direita, um “related tags”, com links para Web 2.0 e Ajax, por exemplo. Ao colocar a classificação na mão de seus usuários o del.icio.us pode ser atual como nenhum outro serviço. Veja, por exemplo, o que a Amazon está fazendo ao deixar que as pessoas classifiquem seus produtos: internet tag na amazon
    • Deixá-las publicar: Conhece o Slashdot? É um site de notícias de ciência e tecnologia, principalmente tecnologia. Todo o conteúdo é criado pelos próprios usuários. Recebe diariamente centenas de milhares de leitores e tem um volume absurdo de informações interessantes. E a Wikipedia? O mesmo formato, só que é uma enciclopédia. A original, em inglês, tem quase um milhão de artigos escritos. Em português há quase cem mil. E se falarmos de sites que vendem conteúdo. Que tal, por exemplo, um que vende livros? Não faz sentido deixar as pessoas escreverem, não é mesmo? Afinal, você entra num site de livros porque quer ler alguma coisa escrita por um profissional. Bem, veja este exemplo: Firefox Hacks na Amazon. Primeiro veja, junto à imagem da capa do produto, duas miniaturas de imagens enviadas por usuários. Interessante, não? Agora role até o meio da página, até a seção “Spotlight Reviews.” Olha só que coisa interessante, comentários de gente que comprou o livro. O que você acha mais interessante ler antes de comprar um livro? Comentários de um profissional cujo trabalho é lhe vender livros ou de gente comum que comprou o livro e leu de verdade?
    • Deixá-las reutilizar seu conteúdo: estamos falando de RSS, de Web Services, de código simples e outros subterfúgios para que as pessoas consigam usar o conteúdo que você distribui fora do seu site. Veja, por exemplo, o Varal, uma interessante experiência do René. Ali aparece tudo o que ele publica, em todos os seus blogs, fotologs, flickrs e etc. Já exite um serviço que faz algo parecido, veja: SuprGlu. Você pode acessar assim, via programação, suas fotos no Flickr, seus favoritos no del.icio.us, seus posts no Blogger (ou no WordPress), os livros da Amazon, as buscas do Google, os mapas do Google Maps e uma série de outras coisas interessantes. Pode criar, por exemplo, uma sidebar para seu blog que mostra livros sobre o assunto do post que está sendo lido, resultados no Google sobre o assunto, seus favoritos no del.icio.us sobre o assunto, e etc. Pode exibir, usando GeoURL, a que distânia estão do seu site as pessoas que fizeram comentários nele. Seu site não pode ser um buraco negro de informações estanques, há toda uma web com a qual interagir.
    • Ouví-las: quer saber? Esta sempre foi a questão principal. E hoje é muito mais fácil saber o que as pessoas tem a dizer. Digamos que você trabalhe para a Telefonica e precisa saber o que as pessoas andam dizendo de você por aí: você pode tentar aqui, aqui ou aqui, por exemplo. E o mais interessante é que a maioria dos resultados vem acompanhada de uma caixinha de comentários ou outra maneira de responder ao autor.
  • Acessibilidade: Nesse contexto, a acessibilidade ganha um novo aspecto. Primeiro, ela é importante porque permite a qualquer pessoa acessar seu conteúdo e isso vai incluir os excluídos. Os excluídos são aqueles que não vêem como você, não ouvem como você, ou não tem um computador, um sistema operacional e um navegador como os seus. Como essas pessoas são publishers, incluí-las vai aumentar o valor do seu conteúdo. Mas, num segundo aspecto, a acessibilidade é relevante porque vai incluir também as máquinas. Sabe, o bot do Google, o usuário mais importante que visita seu site, é cego e surdo, não entende javascript nem CSS. E, além dele, com a web 2.0 há a possibilidade de uma porção de outros usuários “automáticos” começarem a freqüentar seu site.
  • Semântica e Reuso: Você sabe, semântica, h1, h2 e h3 para títulos, ul, ol e li para listas e etc. Pois bem, alguém inventou um jeito interessantíssimo de se reaproveitar código semântico sem muita complicação, os microformatos. Dê uma olhada, é bastante interessante, e tão fácil de implementar que não vale a pena deixar de experimentar. Por exemplo, esta lista de tópicos está implementada em XOXO e isso não me deu absolutamente nenhum trabalho extra. O fato é que desde que começamos a falar em semântica um dos nossos objetivos era construir código reutilizável.

Deixe-me levá-lo agora a dois textos interessantes: o primeiro: Lenda viva, muito viva. No meio do texto, antes de falar sobre RSS, René pergunta: “Mas afinal… do que esse nosso papel é capaz?”
Para ajudar a responder, leia esse outro: Mundo de Pontas.

Como você pode notar, as coisas que realmente dão valor à tal Web 2.0 já são valiosas há algum tempo. Já há algum tempo que isso tudo vem dando certo também. Se alguém resolveu dar um nome a isso tudo, e se outra pessoa resolveu dizer que ela morreu, não faz a menor diferença. Esses pontos são verdade há bastante tempo, independente de serem chamados de Web 2.0 ou qualquer outro nome. Assim, se disserem que a Web 2.0 é o que há, ou se disserem que ela morreu, relaxe e concentre-se no que realmente importa para seus clientes e usuários.

Vou aproveitar para recomendar o ótimo texto do Henrique: Designing for web 2.0: “Se você está preocupado com Web2, esqueça o termo completamente e estude web standards, acessibilidade e Microformats…”

Technorati Tags: , , , , , , , , , , , , , , , ,

56 comments on “Web 2.0 pé no chão

  1. Algo interessante é que o conceito de Web 2.0 força a educação contemporânea a se repensar: nesse sentido se faz necessário a conceituação de Educação 2.0, que seria o uso das novas tecnologias (Web 2.0) dentro dos próprios conceitos que a embasam, como colaboração, participação, compartilhamento e publicação na rede e em rede.
    Já no cotidiano escolar do laboratório de informática da educação escolar contemporânea, surge então o conceito de currículo agenciado, que seria os processos de subjetivação que ocorrem no uso das novas tecnologias aplicadas nos processos de ensino-aprendizagem.

  2. Pingback: Techbits
  3. Tem um novo serviço rodando na web que é inovador, podedria chama-lo de web 3.0.Abaixo tem uma descrição que achei sobre o projeto:

    Colaboraty
    Desktop similar ao Windows XP rodando na Web, atuando como bookmark online, além de fornecer outros serviços;
    O Colaboraty, diferencia-se dos demais serviços da Web, pelo fato de permitir integrar todos os outros, além de implementar muitos dos conceitos de Web 2.0 vistos até então.

    Colaboraty

  4. Pingback: Ensaios Noturnos
  5. Ai está o que chamam de web 2. Eu penso o mesmo, é um conjunto de técnicas que tentam ultrapassar erros e falhas que surgiram com a massificação da internet.

    Acabou, morreu ?! Naaa, ainda agora estamos a começar e quando acabar é quando os nossos netos falarem da web3 a (R)EVOLUÇÃO CONTRATACA…

    Com teu artigo tudo fica mais simples, Parabens

  6. Não existe “Web 2.0”.
    Não há mudança de protocolos, as redes ainda vão funcionar da mesma forma, ainda se falará por anos a fio em www.
    Só porque o sistema atual vai ser utilizado de outra maneira não quer dizer que ele será “outro sistema”.
    Dar um novo nome a algo que já existe não passa de uma estratégia de marketing criada por oportunistas capitalistas (como quase tudo no mundo contemporâneo); e pior, as pessoas aceitam.
    É lamentável ver os desenvolvedores internacionais sucumbindo a pressões de 2 ou 3 empresas específicas e deixando de ter um julgamento crítico coerente e factual.

    Por mais paradoxal que seja, a lógica, que é tão necessária para as pessoas que trabalham com Hardware, Software e Redes, não é nem um pouco respeitada em situações como essa.

  7. Cara, estava procurando artigos para ‘entender’ Web 2.0 e dei de cara com o seu texto em português.
    Foi como se acende-se aquela “lampadinha de idéia” na cabeça. Agora sim dá para começar a trabalhar com estes conceitos. Parabéns, tá óóóótimo.

  8. Pingback: Subsistir
  9. Tem muita gente boa falando coisas interessantes a respeito da WEB 2.0. Principalmente nos Estados Unidos, Europa e Brasil.
    E também tem gente boa desenvolvendo produtos, serviços e aplicações para WEB 2.0.

    Aceitam um desafio?

    Acesse o site http://www.webviolin.com e comente se o Brasil está ou não na vanguarda mundial da WEB 2.0. (garanto que não irão se decepcionar!)

    Abr,
    Brazil 2.0

  10. Em falar em um bom frameword, Acessibilidade, visual, e interação com usuário, que tal o Macromedia Flex Builder recém lançado pela Macromedia, ops… pela Adobe… Show! Show! Show! Um novo paradigma de programção foi lançado! uhhh rowwwwwww

  11. Gostei do artigo também. Aproveito esse fragmento do artigo:

    Experimente o desenvolvimento orientado a serviços: é um jeito de se desenvolver. Ao invés de desenvolver componentes ou bibliotecas que serão usados por seus programas, você desenvolve APIs de serviços web. Dá praticamente o mesmo trabalho desenvolver um webservice e uma DLL. A diferença é a vastidão de situações em que o webservice pode ser útil. Tenho, por exemplo, um webservice desenvolvido em PHP para um sistema de pagamento que eu reaproveitei. Estou usando o mesmo webservice de outro servidor, a partir do Python. Faça isso com DLLs ou coisa parecida, quero ver!

    A menos de dois anos atrás, nós utilizávamos amplamente uma arquitetura como a descrita acima. Basta dizer, que foi nessa arquitetura que comecei a programar em PHP. Tive a oportunidade de trabalhar com um cara que criou um HTC chamado compXmlHttp, onde nós criávamos um objeto que instanciava a classe compXmlHttp, chamávamos o método execute, se não me engano, ele requeria a página PHP a ser chamada, o nome da função a ser executada no servidor, e os parâmetros dessa função, todos eles em strings. Depois, setávamos a propriedade onreturn, que definia o código javascript que deveria ser executado quando retornasse a resposta do servidor. Poderíamos pegar a resposta do servidor com o método getResponseText. O componente possuía ainda muitas outras propriedades e métodos, mas para fazer um web service baseado no que hoje se chama AJAX, bastava apenas os supramencionados. Este componente permitiu que um desenvolvedor inexperiente (na época, eu) fizesse aplicações que hojem são a coqueluche.

    Gostei da comparação que o autor do artigo fez com DLLs. E era exatamente isso que nós utilizávamos. Nossa página PHP era como uma DLL, onde chámavamos seus métodos no cliente. DLLs prezam também pela facilidade com que são requisitadas, podendo ser chamadas por VB, C++, C#… A arquitetura AJAX se comporta do mesmo jeito, uma vez que o cliente só entende strings, tanto para enviar como para receber, não fará a menor diferença se o servidor está rodando PHP, ASP, JSP, ou é um CGI da vida. Ainda contamos com a vantagem da separação da parte funcional da parte gráfica da página.

    Excelente artigo.

    []s

  12. Elcio, cara, já faz uma data que eu to tentando entender como você faz um EventListener, do tipo que você fez no “Ajax só pra quem ouvio falar”.

    Onde você diz que a função menuclick(e) ou init() é chamada quando clica num link ?????

    EventListener == evento de escuta

    Então, onde ele fica escutando, onde ele as funções dele são chamadas???

    Me da essa luz, abraço cara.

  13. Oi Élcio,

    Eu to estudando Python desde o ano passado, muito crú ainda, mais gostaria de saber se seu servidor já tem suporte a Python, e se foi você que instalou?

    Estou tentado rodar num servidor de testes mas não estou conseguindo!

    Se puder me ajudar, agradeço!

    Feliz 2006!!!

  14. Muito bom. É bom também pro pessoal deixar de lado essas nomeações, essas coisas todas. A tecnologia já exite há tempos, agora que está sendo mostrada à todos.

    Já não é mais futuro, eh presente, só depende dos estudos de cada desenvolvedor e blogs como esse aqui ajudam bastante nesses estudos 😉

    Bela abordagem da Folksonomia, faz parte dessa “onda web 2.0”

    E realço também que usar webstandards é parte dessa “febre web 2.0”. Código semântico, acessibilidade e usabilidade, boa estruturação, microformatos, tudo isso faz parte, naum eh somente ajax, ajah, ajat, etc…

    Parabéns e feliz ano novo rapaz… Aquele abraço

  15. Olá, paz e bem!

    Feliz 2006… E começando com o pé direito com mais este excelente artigo de sua lavra!

    Abraços e comente um pouco mais sobre esse tema em um próximo podcast, de preferência, com toda aquela super galera!

    Até,

    Leo
    Guarujá, SP

  16. Bom dia Élcio.

    Ótimo Artigo!

    Também quero entrar nessa do Ajax ou como queiram chamar, pois o nome não importa, hehehe.

    Seguinte fera, quero aprender muito a trabalhar com Ajax, mas não sei por onde começar. O que aprendo primeiro?
    CSS, Java Script, Html, Xhtml, XML, PHP, sei lá. Por onde Começo?

    Seria interessante se você pudesse disponibilizar para a galera um roteiro para aprender a programar em AJAX e se possível referências de onde encontrar tutoriais didáticos para cada passo ou para cada Linguagem.

    Um Feliz Ano Novo!

  17. Caro Élcio, estava aqui lendo a PC Magazine de Dezembro onde há uma matéria sobre Ajax e seu site está lá como referência. Acessei e não parei mais de ler: muito legais suas opiniões. Sou analista desenvolvedor .net e agora, no serviço público, PHP com Flash. Estou aprendendo ambos. Sou uma negação em design, semprei usei o velho HTML, e achei o flash legal para evitar refreshs, mas o Ajax é muito interessante. O que quero te perguntar é o seguinte: porque seria o Flash inferior ao método Ajax na construção de sites e sistemas? Parabéns e obrigado. Alessandro.

  18. Caramba, que texto bom! Bem abrangente e específico ao mesmo tempo! hehehe

    Você já viu um treco lá no Wiki do Microformats chamado AHAH? É tanta coisa pipocando por aí que é preciso ficar esperto pra não passar Ruby on Rails no cabelo pela manhã!

    Gostaria de dar uma sugestão pra ti que está completamente fora das minhas capacidades. É sobre a obstrução do AJAX. Eu sei que ele obstrui o conteúdo propriamente dito, e obviamente, não visível por nenhum spider. A sugestão é mais um conselho “moral” sobre como (e quando) utilizar AJAX sem perverter os padrões. Como designer eu nunca vou aplicar isso, mas nem por isso me interesso em step by step.

    ABraço…

  19. Tá ai! Ótimo artigo!

    Fazia tempo que estava atrás de um artigo sobre o assunto, que fosse simples e bem explicativo.

    Agora deu pra entender coisas como folksonomia e microformatos 🙂

    []’s!

Deixe uma resposta

O seu endereço de e-mail não será publicado. Campos obrigatórios são marcados com *