Talvez não seja sem tempo lembrar que eu não sou nenhum radical contrário a Web 2.0, mas tenho minhas dúvidas quanto aos seus conceitos e métodos, mas mais do que dúvidas quanto a Web 2.0, tenho dúvidas quanto ao louvor cego que vem sendo destinado a ela.
Talvez pareça realmente uma grande solução para quase todos os problemas da computação, mas realmente é interessante pensar melhor esses conceitos, até que ponto a Web 2.0 pode ou deve ser escolhida como uma solução e até onde ela pode representar um problema, quais seus pontos falhos e como eles podem ser trabalhados. Claro, não vai ser possível trabalhar todas essas questões neste curto artigo, mas talvez seja uma boa oportunidade para introduzir algumas questões.
A expansão da internet foi possível graças a adoção de padrões abertos, mas há algum tempo foram inseridas várias tecnologias proprietárias na Web, o que, como os usuários
Linux já estão cansados de saber, gera uma série de problemas de compatibilidade.
Embora boa parte dessas novas tecnologias estejam sendo portadas para outros sistemas, ou mesmo se tornando open source, o clima de inovação - propício para o surgimento de novas tecnologias - pode gerar uma série de problemas de compatibilidade na Web (princípio contrário aos propósitos originais dela).
Outro aspecto importante a se observar é em relação ao desempenho das aplicações que rodam sobre Web 2.0. Parece contraditório, mas ao mesmo tempo que a Web 2.0 pode proporcionar melhoras no desempenho, pois concentra o processamento no servidor, pode também prejudicar o desempenho de uma aplicação: já pensou em rodar Wolfestein 3D - Enemy Territory direto do browser? Já pensou em rodar o Corel Draw (ou similar) direto do browser?
São várias as dificuldades para implementar projetos como esses: o volume do tráfego de informações seria absurdo. Há também o problema do gargalo da transferência de arquivos: mesmo que um servidor seja muito rápido, se as informações não chegarem rapidamente a ele, o servidor será subutilizado. Os arquivos de desenhos vetoriais não raramente enormes, podendo chegar a dezenas ou mesmo centenas de megabytes muito facilmente; fazer upload de tanta informação, dada a velocidade da internet hoje (principalmente no Brasil), é inviável.
Talvez um dos aspectos mais preocupantes da Web 2.0 são os problemas da disponibilidade e da segurança dos dados. Vejamos: a questão da disponibilidade é uma velha conhecida de qualquer interface cliente/servidor. É preciso garantir que a interação entre o cliente e o servidor esteja sempre funcionando.
Normalmente a preocupação maior vai ser com o servidor: ele tem que funcionar durante dias ou meses seguidos, ele precisa fazer a maior parte do processamento, ele precisa armazenar dados importantes, ou seja, tudo o que é mais importante está nele; é essencial que ele então tenha métodos eficazes de proteção, para garantir que ninguém não autorizado tenha acesso as informações contidas nele, será ele que precisará de hardware e software de boa qualidade. Estão concentradas nele as maiores preocupações.
Esse contexto em uma empresa apresenta uma situação bastante confortável, pois normalmente há funcionários capacitados para realizar a manutenção e suporte tanto nas estações de trabalho, quanto nos servidores, proporcionando o correto funcionamento do ambiente tecnológico por longos períodos sem maiores problemas.
Mas, pensando no contexto da Web 2.0 essa situação não é a mesma: os responsáveis pelo servidor, não tem nenhum compromisso maior com as estações de trabalho, deixando esta o elo mais fraco da corrente. O que quero dizer com isso é que eu não transmitiria meus documentos realmente importantes pela internet. Claro que existem sistemas de segurança eficientes, mas é importante lembrar que nada em informática é 100% seguro. Não dá para apostar todas as fichas num mesmo lugar. Mesmo grandes servidores já foram invadidos ou derrubados, mesmo um pequeno bug no sistema ou a falha de um funcionário pode botar tudo a perder inesperadamente. Repito: os sistemas de segurança empregados hoje são muito eficientes, mas não aposte todas as fichas.
Em verdade, toda essa preocupação com a robustez do servidor, com a segurança da transmissão de informação e dinamicidade das aplicações são causas de outro problema: a Web se tornou briga de cachorro grande. Ultimamente várias idéias simples têm tomado lugar na Web. O Youtube, por exemplo, surgiu como uma forma de disponibilizar vídeos para outras pessoas, fugindo de formas pouco eficientes, como mandar por e-mail, mas não teria alcançado tamanho sucesso se não tivesse tido investimento pesado.
As idéias podem ou não ter surgido de pessoas comuns ou pequenas empresas, mas serão pouco profícuas se não tiverem apoio de grandes investidores. A exemplo disso podemos usar o Flogbrasil (
www.flogbrasil.terra.com.br). Quando surgiu, como uma alternativa brasileira ao Fotolog.net, antes de ser comprado pela Terra, ganhou grande notoriedade pela quantidade de adesões diárias e pela qualidade do serviço prestado; mas não recebeu investimentos suficientes em sua infra-estrutura e logo começou a apresentar problemas: o serviço ficou terrivelmente lerdo e não era incomum encontrá-lo fora do ar. Como o problema não foi rapidamente resolvido, muitos usuários preferiram mudar para outras empresas que prestassem o mesmo serviço. Nem a compra da empresa pela Terra devolveu credibilidade ao sistema, que continuou bastante ruim. Hoje, dois anos após essa novela, não sei como está o Flogbrasil, mas nenhum dos meus conhecidos que usavam o serviço se arriscou a voltar.
Me preocupo quando vejo anúncios e professores de cursos superiores inflando a bola da Web 2.0, como se ela fosse a solução para todo e qualquer problema em informática. Os alunos de sistemas de informação incentivados a apenas desenvolver aplicações para Web. Claro que é importante que haja esse incentivo, a Web realmente parece um mercado promissor, mas isso não substitui as vantagens da programação tradicional.
Li certa vez numa revista algo como: "no início dos anos 90 boa parte dos público que potencialmente faria um curso de engenharia correu para fazer cursos de informática, hoje engenheiros estão em falta no mercado". Me parece que algo parecido vai acontecer com os programadores, em alguns anos podem faltar programadores competentes em linguagens não-web, por conta do apelo demasiado para a área contrária. É importante que hajam programadores web hoje e no futuro, mas é inviável só ter programadores web.
A Web hoje é um terreno volátil, me parece pouco provável que ela permaneça como está por muito tempo, as linguagens estão evoluindo e a própria noção de browser está perdendo o sentido. É provável que no futuro surjam alternativas à própria Web, baseadas na Web 2.0. O futuro é incerto. Temos que pensar com cuidado o papel do Brasil nessa transformação, pois apesar de toda a deficiência estrutural, o Brasil possui uma gama muito grande de usuários dispostos a utilizar recursos como esses (podemos ver isso claramente pela taxa de usuários brasileiros no Orkut). Se depender do entusiasmo dos professores e empresas, não faltarão programadores capazes, mas a grande questão parece ser: o Brasil será capaz de lidar com as mudanças de paradigma? Cabe agora nos preparar para as novas fronteiras da informática.