Só a usabilidade salvará o software livre

Pergunte para um usuário como ele se sente ao usar muitos dos sistemas criados por comunidades open source. Os feedbacks serão normalmente negativos. As interfaces são desconexas e ruins, a frustração é grande. Existem inúmeras funcionalidades que os usuários nunca vão usar, falta padronização nas telas (devido a ausência de guidelines, ou da leitura dos mesmos) e ainda existe a coisa do programador achar que todo mundo é programador. Não, não é… essa visão do usuário expert é antiquada e fez muito mal para a computação, não existe usuário avançado (existe usuário, se você quer fazer um sistema para usuários que tem requisitos avançados então você faça um sistema focado para eles, ou uma versão para eles, mas não coloque no prato do seu usuário "comum" coisas que ele não vai comer.

Poucas funcionalidades. Mas funcionalidades boas e focadas no usuário.

O Firefox é um sistema open source. É o navegador que uso. Semana passada eles lançaram uma versão exclusiva para programadores , ou seja, colocando comida no prato certo. Para melhorar, deveriam tirar todas as funções de desenvolvedor (ferramentas, debug, etc) do navegador padrão. Talvez focar em melhorar o histórico, por exemplo, que é coisa que um usuário-não-programador realmente usa. Ou reduzir drasticamente o consumo voraz por memória RAM, fazendo as coisas mais ágeis.

A única forma do software livre brigar de igual para igual com os softwares feitos por grandes corporações é sair desse buraco que ele se meteu. É incluir muitos usuários reais (voluntários, ué!) no processo de desenvolvimento, e permitir a que pessoas de usabilidade, análise de negócio e designers de sistemas (voluntários, ué!), façam sua parte do trabalho. Caso contrário, estaremos sempre produzindo software para poucos… e software é a coisa mais cara de se fazer no mundo. E desperdício é coisa feia demais.

Menos código para desenvolver significa mais paz na Terra.

A primeira coisa que me enlouquece nessa questão toda é o desperdício de tempo e esforço da comunidade open source: Os caras simplesmente não entendem que se eles fizerem um esforço grande antes de escrever a primeira linha de código, o esforço geral do sistema será menor. É como proteger o piso antes de pintar parede: Você gasta duas horas protegendo o piso bem, com plásticos e fitas. Mas se você fosse limpar a cagada que você fez ao não usar essa proteção ia levar umas oito horas, mais produtos químicos que poderiam arruinar o piso inteiro, etc. Ou seja: "Proteja o piso", desenvolva software focado no usuário final, foque em "user goals" (objetivos simples mesmo, coisas como "pedir uma pizza rapidamente", "efetuar uma ligação para os números que ele sempre liga") e não em necessidades que um ou dois programadores acham que todos tem ("listar em ordem alfabética todos as pizzarias", "abrir uma lista hierárquica dos contatos do usuário").

Guidelines fazem bem pra saúde do sistema.

Guidelines provém uma experiência fluída para o usuário, algo homogêneo (mesmas palavras, mesmas cores, mesmos labels, mesmos tudo!). Os usuários podem não saber o que é um guideline, mas nós precisamos. Existem inúmeros guidelines que servem de exemplo: O da Apple é muito completo, vale a pena navegar por ele. O do Android também é muito legal. Já o do Java, assim como quase tudo desse mundo, é um labirinto. A comunidade Open Source tem o seu também, mas compare com o da Apple e tente entender porque as interfaces são tão pobres, ou com o Android (se isso faz mais sua cabeça

Luz no fim do túnel

Nem tudo está perdido. Existe a rapaziada do Elementary OS. Eles criaram um sistema operacional Linux e prometem uma boa usabilidade para o usuário final. Enfim, a comunidade parece acordar para esse que é o maior ponto de abandono de sistemas open source que existe: É ruim e difícil de usar, como eu disse antes… é frustrante.

http://elementaryos.org/docs/human-interface-guidelines/buttons

Dias melhores virão!

One clap, two clap, three clap, forty?

By clapping more or less, you can signal to us which stories really stand out.