Não limite sua base de usuários
Se você está projetando um aplicativo para ser utilizado por engenheiros, ou por crianças, ou por administradores de sistemas, certifique-se de um aplicativo que possa ser utilizado por todos os engenheiros, crianças ou administradores de sistemas, incluindo aqueles com deficiências ou aqueles que são falantes nativos de uma língua diferente da sua. Esteja ciente das questões de acessibilidade, internacionalização e localização, muitos dos quais são endereçados pelas diretrizes neste documento.
- 1.2.1. Acessibilidade
- 1.2.2. Internacionalização e localização
1.2.1. Acessibilidade
Acessibilidade (às vezes chamado a11y) significa possibilitar pessoas com deficiências de algum tipo a participar de atividades da vida: neste caso, especificamente, usar seu software. Por exemplo:
- Usuários daltônicos podem não ser capazes de utilizar seu aplicativo se você depender apenas de cores para distinguir diferentes tipos de informação
- Usuários com deficiências auditivas podem não ser capazes de utilizar seu aplicativo se você depender de sons para indicar informações críticas
- Usuários com movimentos limitados podem não ser capazes de utilizar seu aplicativo se você não fornecer equivalentes do teclado para comandos
Seu aplicativo também deve ser utilizável com interfaces de voz, leitores de tela como Orca, dispositivos de entrada alternativos, e outras tecnologias assistivas. As bibliotecas padrão do GNOME fazem a maior parte do trabalho para você, mas com um pequeno esforço adicional você pode fazer seu aplicativo tão útil para os usuários que dependem destas tecnologias como para aqueles que não dependem.
O GNOME possui um excelente suporte embutido para acessibilidade por meio das bibliotecas ATK e GAIL, as quais em vários casos podem fazer a maior parte do trabalho para você. Mais informações sobre acessibilidade no GNOME podem ser encontradas em Projeto de acessibilidade GNOME.
1.2.2. Internacionalização e localização
Internacionalização significa projetar software de modo que possa funcionar em ambientes de linguagem diferentes. Localização é o processo de traduzir as mensagens, etiquetas e outros elementos de interface de um aplicativo em outra língua.
O GNOME possui um suporte excelente tanto para internacionalização (também referido como i18n) e localização (também referido como l10n). Na maioria das vezes, simplesmente usar as APIs padrão do GNOME para exibir texto e mensagens permitirá que você ou outros localizem seu aplicativo para outras localidades. Para mais informações sobre como fazer seu aplicativo localizável, veja a página inicial do projeto Pango (Pango é a biblioteca do GNOME para renderizar texto internacionalizado), a página de traduções do GNOME e a página do projeto de tradução de GNOME.
Sensibilidade para questões culturais e políticas também uma consideração importante. Projetar ícones e sons, e até mesmo escolher cores requer algum entendimento das conotações que podem tem para um usuário de uma parte diferente do mundo.
Exemplos de elementos que é melhor evitar por essas razões incluem:
- Figuras de bandeiras ou dinheiro
- Mapas mostrando limites políticos ou nomes controversos de locais
- Listas de países ou cidades em ordem não-alfabética (a menos que seja especificamente solicitado ou requerido pelo contexto)
- Ícones representando animais
- Ícones representando apenas mãos ou pés