Moçada, às vezes vocês me assustam. O nível de participação deste blog é tão alto que me obriga a fazer algumas correções de rumo para não haver mal-entendidos. No post anterior, quando eu falei de interfaces elegantes e prestativas, eu me referia à interpretação literal das interfaces e seu comportamento, e não nelas como uma metáfora da civilidade no trato humano. Como vi nos comentários que essa interpretação pode ter ficado meio nebulosa, vou detalhar um pouco mais os tópicos.
- Dar importância para a pessoa com quem conversam e se interessar pelo que dizem / fazem – uma interface só deve solicitar os dados que vai usar efetivamente. Qualquer dado que não seja uma senha deve ser armazenado e só pedido uma vez. Se for possível, certos hábitos de uso e navegação devem ser armazenados e replicados para que a experiência seja o mais personalizada e conveniente possível. Não há problemas em se ter uma interface genérica em um primeiro contato. Ela é, inclusive, muito melhor aceita que outras que, convencidamente, “assumem” que sabem o que o usuário quer. Mas à medida que a convivência cresce, é maravilhoso ver a interface assumir, como um sapato, a forma de quem o usa.
- Ser prestativas e solícitas - seres humanos são excelentes reconhecedores de padrões e resolvedores de problemas. Mas não são exatamente rápidos para lembrar de 17 senhas ou fazer movimentos delicados do mouse. A interface deve se prontificar para fazer o que é fácil para um computador e ajudar seu usuário no que for possível. Acima de tudo não deve sacrificá-lo em nome de sua “segurança”.
- Usar o bom senso e não fazer perguntas estúpidas – se o usuário operou um aplicativo durante um bom tempo e fez mudanças significativas, será que ele quer gravar as alterações que fez? Provavelmente sim. De preferência em várias versões. Gravar versões automáticas temporariamente – e dar a cada uma delas um nome diferente até que o usuário se dê por satisfeito é algo tão fácil que deveria ser obrigatório. Outro exemplo típico é para aplicações web que perguntam para o indivíduo em que país está ou como pretende formatar seus dados. Não seria melhor partir do formato padrão da localidade revelada pelo número IP e permitir uma alteração se necessário?
- Se antecipar às necessidades e desejos daqueles com quem convivem – aqui é onde entram os alertas por e-mail, os assistentes da Amazon, a arquitetura de informação de produtos da Nokia e todas aquelas coisinhas maravilhosas que parecem “adivinhar” o que você vai fazer a seguir.
- Ter uma ampla perspectiva – pelo menos uma que seja maior do que sua tarefa braçal e imediata – praticamente nenhum aplicativo funciona sozinho. Uma planilha será usada em uma apresentação, uma imagem escaneada deverá ser aplicada em algum lugar. O usuário está em um ambiente social, tem suas demandas de performance e usará o conjunto de ferramentas que tiver à mão para resolver seus problemas da forma mais rápida e eficiente possível. Quem ignorar o próximo tenderá a ser ignorado por ele.
- Não aporrinhar as pessoas com seus problemas pessoais – faltou memória? A aplicação deu pau? Me diga o que o usuário tem a ver com isso, por que ele deve ser notificado em termos técnicos do que aconteceu e por que o trabalho dele deve ser perdido se foi a sua interface que não se comportou direito? Se um funcionário falta porque teve um problema, isso já é um baita incômodo. Comentar a respeito não vai atrair a empatia do usuário, só aumentará sua irritação com o problema.
- Manter seus colegas informados de suas ações – levando em consideração a relação que um aplicativo faz com seus usuários (falo mais sobre isso no post sobre tempos de latência), uma interface elegante e prestativa usa bem as margens e rodapé para dar uma série de informações que podem ser do interesse do usuário mas que ele ab-so-lu-ta-mente não vai parar o que está fazendo para procurar. Talvez até porque nem saiba onde ficam ou se estão disponíveis.
- Ser sensíveis, compreender os motivos dos outros, não insistir no que “faz sentido” pra você – a informação a ser dada é importante a ponto de precisar interromper a concentração do usuário? Ele pode fazer algo com ela? Ele precisa se esforçar para lembrá-la? Pra que contar que uma aplicação cometeu uma “operação ilegal”? Pra que colocar caixas de diálogo que fazem um monólogo e só permitem ao usuário clicar em OK? Ou pior, que ainda dão detalhes em vez de armazená-los em um arquivo de log?
- Não fazer muitas perguntas – essa aqui é meio óbvia, não? Você não acha magnífica a habilidade dos browsers em guardar um monte de dados repetitivos, como e-mail ou endereço? Pois então.
- Saber quando é preciso quebrar regras. Ser autoconfiante e assumir a responsabilidade por seus atos – O usuário quer fazer algo que não faz sentido para a aplicação? Algumas informações não cabem no grid? Certas cores desafiam a paleta estabelecida? Certas organizações da base de dados parecem imbecis? Quem é você para obrigar o cara a fazer as coisas do jeito que você acha certas? Pode ser que para ele faça sentido associar uma música do iTunes para cada endereço web que visita, ou qualquer coisa estranha do gênero. Deixe-o em paz, ele já tem chefes demais.
Ficou mais claro? Se o bom comportamento é considerado default em humanos, ele é um adicional muito bem-vindo em interfaces.
Popularity: 21% [?]

É Luli, acho estes pontos muito importantes ainda mais pelo fato das interfaces terem que comunicar ao mesmo tempo e serem usadas por
diversos tipos e níveis de usuários. É o que gera a necessidade da interface ser muito bem trabalhada e é o que dá a motivação para fazer interface cada vez mais adequadas aos usuários. : )
Opa Luli, vou arriscar um comentário!
Um dos sites que mais visito acabou de lançar uma nova versão e tenho mandado alguns e-mails com idéias para o pessoal, no caso como o conhecimento da aplicação esta relacionado com o número de acessos de um determinado usuário, haja visto as infinitas possíbilidades em uma aplicação, as aspirações do visitante tendem a aumentar exigindo muitas vezes outras funcionalidades que ao viajante de primeira viajem só iria poluir e complicar.
Uma saída não seria criar fases, nas quais as funcionalidades mais elaboradas seriam automaticamente liberada de acordo com regras pré estabelecidas.
Um usuário aciduo está mas aceptivo a interfaces prestativas que outros uma vez que já sabe o quão útil pode ser as informações prestadas.
Primeira vez que visito o blog e gostei mesmo, parabéns… Vou voltar mais vezes por aqui.
A idéia é mais ou menos essa, Zebrinha. Por aí dá pra ver como o pessoal que se apressa em usar cookies em websites para métricas e publicidade poderia gastar parte do esforço para tornar o esforço menor cada vez que o usuário volta ao site. Não é nada difícil.