Como os programadores podem melhorar suas habilidades de experiência do usuário? [fechadas]

17

Como programadores, podemos resolver problemas muito complexos, mas, quando precisamos projetar uma interface de usuário, tendemos a falhar ao torná-los fáceis de usar.

Em pequenas empresas, eles não podem se dar ao luxo de ter designers e especialistas em UX, os programadores precisam fazer quase tudo no software. Mas essas interfaces raramente são intuitivas ( o exemplo clássico ).

Qual é o problema? Como os desenvolvedores podem melhorar suas habilidades em criar boas experiências de usuário?

jmservera
fonte
7
Nós? Você tem um mouse no seu bolso? Por favor, não agrupe todos os desenvolvedores nisso, porque, francamente, não só não é verdade, mas os desenvolvedores certamente são melhores na criação de GUIs do que o seu não-desenvolvedor típico que entra na rua.
GrandmasterB
1
Acho que você descobrirá que esse quadrinho falha na comparação com muitos de seus outros produtos que não são a pesquisa no google.com.br ou o iDevice. Tanto o primeiro como o segundo quadro dos quadrinhos representam uma comunicação unidirecional. O terceiro não é. Todos os 3 são exagerados.
Steven Evers
2
@GrandmasterB, não leve tão a sério. Editei o título de qualquer maneira para evitar generalização excessiva.
Jservera #
@SnOrfus, por exemplo, a interface do Google AdWords é absolutamente dolorosa.
GrandmasterB
FYI: Encontrei uma pergunta semelhante no site da interface do usuário: ui.stackexchange.com/questions/1863/…
jmservera

Respostas:

9

Eu encontrei esse problema muitas vezes na minha carreira - o truque é primeiro estar ciente de que é um problema e reconhecê-lo. Depois de fazer isso, é mais fácil parar de criar interfaces excessivamente complexas.

A interface do usuário também faz parte da engenharia de software, mas talvez para muitos engenheiros de software não seja tão interessante. No entanto, existem muitos desafios interessantes relacionados a isso, e eles provavelmente podem ser tão interessantes quanto mais desafios técnicos, na minha experiência.

Usabilidade, design de experiência do usuário (UX), interação homem-computador (HCI) - não é mágico e faz parte do processo de desenvolvimento de software.

Minha dica é:

  • reconheça suas limitações
  • pergunte e ouça pessoas que afirmam conhecer essas coisas
  • quando não tiver certeza, pesquise no Google e procure respostas autorizadas

Seguindo esses princípios simples ao longo dos anos, acumulei informações úteis sobre como criar interfaces de usuário, como as pessoas interagem com o software e como elas pensam quando o usam. Eu não sou de modo algum um especialista, mas provavelmente conheço um pouco mais do que um programador comum.

Tl; dr: KISS

Vetle
fonte
Algumas pessoas naturalmente se preocupam com a interface do usuário simples; outros podem se importar menos e não querem perder tempo.
Job
6

É biológico.

  • A interface do usuário e todas as outras tarefas relacionadas ao design envolvem o cérebro direito .
  • A tarefa de programação envolve o cérebro esquerdo .

Eles têm propósitos diferentes.

É muito raro ser bom em ambos. Pelo menos ao mesmo tempo.

cérebro

ATUALIZAÇÃO: Eu aprendi recentemente que existem outros fatores, como a experiência. Além de alguns fatores herdados, você desenvolve capacidades mentais, dependendo de como é desencadeado na infância. Por exemplo, crianças vítimas de abuso são, em média, mais criativas que o grupo de controle, porque aprendem a se desconectar de sua terrível realidade nos sonhos.

Stephen C
fonte
1
Você pode apoiar "É muito raro ser bom em ambos. Pelo menos ao mesmo tempo". com estudos / artigos que dizem isso?
c_maker
6
"Geralmente são feitas generalizações amplas na psicologia popular, com um lado ou outro com rótulos característicos como" lógico "ou" criativo ". Esses rótulos precisam ser tratados com cuidado; embora uma dominância lateral seja mensurável, essas características são de fato existentes em ambos os lados, e as evidências experimentais fornecem pouco suporte para correlacionar as diferenças estruturais entre os lados e as diferenças funcionais ". Do artigo da wikipedia en.wikipedia.org/wiki/Lateralization_of_brain_function
c_maker 7/07
Além disso, isso não responde à pergunta, a menos que responda 'Qual é o problema?'. Esta resposta sugere que você não pode ser bom em ambos, o que não é verdade. Pode ser um ER difícil, porque as pessoas não têm prática suficiente, mas não é difícil.
c_maker
@c_maker: infelizmente, todos os meus cursos de psicologia são em francês. Mas posso mencionar os estudos mencionados neles: Gazzaniga 1976, Sperry 1968, Zaidel 1975.
Embora eu respeite o seu argumento, devo dizer que essas datas foram há muito tempo. Muito mudou desde entao. Ainda sabemos muito pouco sobre o nosso cérebro, mas sabíamos muito menos naquela época.
c_maker
4

Suponho que você possa discutir sobre como programadores e designers têm mentalidades ou personalidades diferentes, ou discutir sobre o lado esquerdo do cérebro versus o lado direito e o criativo versus o lógico, mas, na verdade, existem três questões fundamentais:

  1. O trabalho dos programadores é o software deles. Eles se preocupam com isso; eles dedicam sua atenção a isso; eles podem ficar animados com isso. O trabalho dos usuários é outra coisa ; o software é apenas uma ferramenta para facilitar a fazer outra coisa, e eles querem gastar o mínimo de tempo possível prestar atenção a ela, para que possam se concentrar sobre o que fazer se preocupam. Enquanto os programadores não entenderem isso, eles farão as trocas incorretas no design da interface do usuário. (Para saber mais sobre esse assunto, consulte "Controlar seu ambiente faz você feliz" , de Joel Spolsky, ou "Leis fundamentais", de David S. Platt .)
  2. Programadores conhecem seu software intimamente. Eles estão confortáveis ​​com seus detalhes e sua complexidade; eles entendem o porquê de agir dessa maneira, porque possuem um modelo mental completo. Os usuários não têm a ocasião (ou o interesse; veja o ponto 1) para aprender todos os detalhes, e é impossível que eles tenham um modelo mental completo porque não têm acesso ou não entendem o código-fonte. (Para saber mais sobre a importância dos modelos mentais, talvez você possa ler O design das coisas cotidianas, de Donand Norman ; embora não seja específico para computadores, é um bom livro sobre design de interface.)
  3. Os compromissos dos programadores são diferentes dos usuários. Um programador pode facilmente decidir deixar um recurso excessivamente complexo ou apenas semi-automatizado ou menos do que utilizável, porque para o programador é mais fácil lidar com a falta de usabilidade do que codificá-lo corretamente. O usuário não se importa (quanto) quanto esforço é necessário para o programador codificá-lo corretamente e prefere que seja totalmente utilizável.

O terceiro problema pode ser resolvido com disciplina suficiente para não seguir o caminho mais fácil. Não tenho certeza de que os dois primeiros problemas sejam solucionáveis; quanto mais próximo você estiver do seu trabalho, mais difícil será vê-lo da maneira que um estranho vê. É por isso que os testes de usabilidade - mesmo coisas simples e informais, como pegar alguém no corredor e sentá-lo na frente do seu aplicativo - são tão importantes.

Josh Kelley
fonte