domingo, 11 de julho de 2010

O grande desafio da web

É inegável que a internet revolucionou a que nós vivemos. Compartilhar fotos, vídeos, músicas, conversar com amigos e parentes distantes em tempo real, fazer novas amizades - e, por que não, amores (sou um exemplo vivo disso) - dividir conhecimento, agilizar processos, integrar negócios... Tudo isto é possível por causa da internet.

Ainda que haja muito lixo virtual, o potencial criativo e benéfico da internet como plataforma e meio de comunicação é expressivo, comparável talvez somente aos adventos da prensa de Johannes Gutenberg e à radiodifusão.

Mas ao contrário de suas revoluções predecessoras, a internet é muito mais complexa. Tanto por ser mais flexível e apresentar uma grande diversidade de tecnologias, quanto por exigir que estas tencologias respeitem padrões que interessam a diversos ambitos. Em outras palavras, criar algo realmente com qualidade, aceitável em todos os aspectos é uma tarefa para titã.

Digo isso porque até hoje não vi nenhum, absolutamente NENHUM framework que respeite isso. Se é fácil de mapear banco de dados para a aplicação, pode ser que seja falho na segurança. Se implementa recursos modernos, como tecnologias assíncronas (Ajax, E4X) ou RIA [Rich Internet Application, onde tem no flash dinâmico seu ilustre exemplo], é quase certo que vai pecar na acessibilidade. Se é bonito ou rápido de desenvolver, provavelmente vai mandar por água abaixo padrões para findability, essenciais ao SEO (Otimização para buscadores).

Talvez por isso até hoje eu não tenha terminado meu próprio framework. Devido ao meu lado perfeccionista. Não me arrependo, mas estou muito motivado a criar algo de qualidade.

Só para ilustrar, eu gostaria que meu framework pudesse:
1. Se conectar ao BD, mapear os metadados e relações, e com base nisso criar os objetos e formulários.
2. Ao efetuar operações, manter a segurança, tanto evitando os tipos básicos de ataque, quanto verificando se os dados respeitam o modelo definido no banco.
3. Permitir que regras de negócio fiquem numa camada separada, facilmente editável.
4. A mesma flexibilidade para as views
5. Que trabalhe nessa construção de operações e estruturas da forma Progressive Enhancement, ou seja, funcional mesmo se não houver javascript ou flash disponíveis.
6. Que tenha em vista o SEO como uma medida - quiçá como uma característica - promovendo URL realmente amigáveis, e não os padrões talhados e engessados, muitas vezes que só disfarçam o verdadeiro sentido da composição das URLs para programadores que gostam de padrões convenientes.
7. Que seja aberto a novas tecnologias (HTML 5, CSS 3), e use as existentes de forma eficiente e inteligente (recursos dentro dos bancos de dados, XSLT...)

Agora, se você é um empresário, ou tenha interesse em manter um site, fica aqui a justificativa de porque alguns profissionais cobrarem muito mais do que outros. A explicação é essa: a importância que verdadeiros profissionais dão aos produtos e serviços que vendem e prestam.

Fazer algo com qualidade passa longe de ser simples. O resultado é bem diferente, e faz diferença se seu negócio vai pra frente ou não no mundo virtual. E é claro, qualidade tem preço.

Imagine um profissional que dê conta de fazer um site com todas as características acima, e ainda por cima um designer que empregue identidade visual, acessibilidade através de contraste adequado, composição, semantica no código (que ajuda no SEO), tipografia e convenções que façam a diferença para quem lê e usa o site...

Não, não é fácil mesmo fazer um simples site. Há muito mais trabalho e técnica do que o sobrinho que aceita fazer por $300 sonha em existir.

Bom, é isso, fica aqui o registro, meio desabafo, meio mirando no futuro.

Keep reading, fellas.
---------- keepReading

Nenhum comentário:

Postar um comentário