Recentemente reli A Beleza das Máquinas de David Gelernter: um livro cujo tema dentro da ciência da computação é raríssimo: estética, que sempre foi um dos meus assuntos preferidos (tente definir o que é de fato o “belo em si” e provávelmente você também se apaixonará pelo assunto).
A primeira vez que li este livro foi em 2002 (publicado no Brasil em 2000) e esta releitura foi fascinante pelo fato de que tanto o mundo como eu mudamos radicalmente de lá pra cá. É nítido um certo deslumbramento com os “computadores de mesa” presente no texto, o que chega a ser engraçado para nós, que vivemos em uma sociedade na qual os mesmos começam a sair de cena ao serem substituídos por telefones celulares com os quais sequer sonhávamos em 2000. Por outro lado, as asserções estéticas do autor continuam válidas: e como!
A tese consiste no fato de que sim: o problema estético também se aplica à ciência da computação. Porém, ao contrário da estética geral com a qual já estava acostumado, e que nunca conseguiu definir o belo com exatidão, no contexto do software esta é cirurgica. É belo no software o conciso e simples, ou seja, quanto mais bem definida for a função do mesmo, e mais simples for o seu uso, melhor será a nossa experiência estética. Parece óbvio, não é mesmo?
Como ameaça à beleza de um produto, o autor aponta um mal que aflinge a nós desenvolvedores: a nossa tendência quase irracional de incluir novos recursos em nossos produtos, aumentando assim significativamente o seu escopo de utilização e, como consequência, sua complexidade. O exemplo apontado é o Word que inicialmente era um processador de textos simples e fácil de usar mas que, com o passar do tempo, e a inclusão de novos recursos, foi se tornando cada vez mais complexo e distante do seu objetivo original: editar textos.
Trazendo esta releitura para os dias atuais, não pude deixar de fazer algumas comparações com softwares/sites/serviços que utilizamos atualmente e me perguntar: belo ou feio? O software/serviço é portanto considerado belo se for respondido “sim” a duas perguntas: o seu objetivo é simples e bem definido? é fácil de usar?. A segunda pergunta parece ser subjetiva demais: sendo assim, imagino minha mãe usando os produtos abaixo.
Dropbox (www.dropbox.com):
Objetivo: compartilhar e sincronizar arquivos entre diferentes computadores. Mais simples impossível.
Fácil de usar? Demais: tudo o que preciso fazer consiste em armazenar os arquivos a serem compartilhados em um diretório específico.
Veredito: lindo
Google:
Objetivo: encontrar conteúdo na web. Simples.
Fácil de usar? Sim, é só digitar o que se deseja encontrar.
Veredito: lindo.
Twitter:
Objetivo: possibilitar às pessoas publicarem suas idéias em apenas 140 caracteres e acompanhar outros usuários do serviço. Simples.
Fácil de usar? Nem tanto: todas as pessoas que conheço que ficaram viciadas no serviço utilizam algum cliente para acessar o serviço ao invés do próprio site.
Veredito: bonitinho (quase feio. os clientes são até belos, mas o pai deles nem tanto)
Firefox:
Objetivo: navegador web. Simples.
Fácil de usar? Sim, não há grandes complicadores no navegador. No entanto, com a inclusão de plugins o bichinho acaba se tornando um monstrinho cheio de coisas piscando pra você o tempo inteiro.
Veredito: belo com tendência a Michael Jackson.
Planilha eletrônica:
Objetivo: criar tabelas com células interligadas ou não entrei si visando calcular valores e prever resultados ou simplesmente organizar informações no formato tabular. Posteriormente, acabaram em inúmeros casos sendo usadas como aplicações ou bancos de dados. Simples? Nem um pouco!
Fácil de usar? Conheço poucas pessoas que dominem de fato o uso do Excel.
Veredito: horrívelmente deformado pelo mal uso
Um ponto interessante no texto é a dificuldade que a beleza do software possui de ser aceita. Segundo o autor, esta dificuldade seria resultante do fato de softwares estéticamente agradáveis serem considerados “brinquedos” pela maioria (“afeminados” é a palavra usada pelo autor) e, portanto, não serem levados a sério. E é ai que as coisas melhoraram.
Observando todo este buzz sobre Web 2.0, o que podemos observar é que sim: as aplicações estão mais simples e também mais fáceis de serem usadas. Logo, o software atualmente é mais belo E, a resistência citada pelo autor foi vencida, o que beneficia muito a nós, usuários, e também a mim, que não vou precisar gastar horas explicando minha mãe a como usar estes serviços. :)
PS: vale a pena comprar o livro hoje? Só se for pra ver como era o mundo antes do ano 2000. Ele se resume em apenas dois fatos: software belo é conciso e simples E há dificuldade em se aceitar esta beleza (esta segunda tese nem sequer vale mais tanto assim)
Coisas que para mim tornam qualquer software feio:
Menus popup, aqueles menus superiores que muitos gostam de usar, detesto esse tipo de aberração, para mim esse tipo de coisa deve ser muito bem validada para ver se de fato isso será necessário, caso contrário é melhor um conjunto de poucos botões na toolbar que esses menus que obrigam dois cliques.
Excesso de recursos, muitas vezes a maioria dos softwares nem precisam de tantos recursos, sendo apenas necessário resolver aquele determinado problema em questão da forma mais simples possível, certo é que em determinados casos um determinado software precisa ser complexo pela necessidade de recursos e para a grande possibilidade de necessitar de um dado recurso, mas para quê um sistema de gestão vai ter tantos conjuntos de gráficos se o cara só vai se enrolar já que o mesmo só quer saber de números (isso foi quando conversei com um camarada dono de uma empresa sobre se era necessário gráficos tipo pizza ou barra para estatísticas, no final das contas só disse que precisava apenas dos valores já que normalmente ninguém consulta gráficos).