Desenhando a experiência do Desenvolvedor

Developer Experience

Jeremiah Lee criou este logo para seu workshop no SXSW. Desenvolvedor, UX e designer, né?

Muito do sucesso do iPhone, Twitter e Facebook está no fato de serem mais do que produtos: são plataformas que permitem outras pessoas criarem negócios baseados em seus serviços (pense na indústria de apps e games entorno do iPhone). Outras empresas começaram a perceber as vantagens nesta abordagem, como a Nike está fazendo com o Fuelband. Assim, não é de se espantar que o seu cliente/empresa decida também seguir este caminho de abrir as portas do produto (seu código) para que outros criem novos produtos a partir dele (se já não o fez).

Contudo, ao abrir suas funcionalidades para que outros utilizem, você está criando também um novo público para o seu produto: os desenvolvedores, afinal eles serão os responsáveis em utilizar o seu código para criar algo novo em cima.  E a necessidade deste público é totalmente diferente da necessidade do usuário final: eles vão querer conhecer as regras do negócio, entender as funcionalidades disponíveis e precisarão de um meio de comunicação dedicado à ele. A decisão por usar um serviço ou o outro pode depender disso.

Da criação desta interface com o desenvolvedor vem a necessidade de pensarmos na experiência do desenvolvedor, termo que conheci assistindo uma palestra do Jeremiah Lee, um desenvolvedor que descobriu a imporância do UX também nesse contexto. A partir desta palestra (e também deste artigo),  fiz essa pequena lista com o papel do UX para a criação desta interface com desenvolvedores:

#1 APIs

A maneira mais comum de disponibilizar seus serviços para desenvolvedores terceiros é por meio de uma API (sigla em inglês para Interface de Programação de Aplicativos). Assim como você se preocupa com a navegação, fluxo e coerência da interface visual do usuário final, as APIs precisam ser pensadas com o mesmo carinho. Isso vai desde escolher a terminologia e o padrão mais adequado (“Nome completo” ou “nome” e “sobrenome”?) até pensar todos os cenários de erros que podem acontecer e a mensagem para cada um. Interessado no assunto? Recomendo a leitura do livro Web API Design (gratuito e em inglês) e também do blog API UX (em inglês).

Continuar lendo