Designer deve saber programar?

Essa é uma questão que volta e meia aparece nas discussões entre os designers de interação: será que o designer que trabalha com tecnologia precisa saber programar? Eu respeito a opinião de quem acredita que não, mas fico com pena. O designer de interação que não programa está fadado a depender de outros para fazer acontecer.

Isso é um problema principalmente quando há divergências e o designer não consegue convencer o programador ou seu chefe de que é preciso gastar algumas linhas de código a mais para tornar a vida do usuário mais fácil. Se o designer programa, ele pode fazer um protótipo simples e mostrar que o que está pedindo não é um bicho de sete cabeças. Isso economiza também a produção de documentos explicativos detalhados.

Outra vantagem de saber programar é evitar o cala-boca do "não dá pra fazer", que os programadores costumam usar quando acham que não vale à pena o esforço. Pode ser que não valha à pena mesmo, mas o designer precisa compreender o porque disso para não ficar criando outras ideias mirabolantes. Se o designer não souber programar, não conseguirá sustentar tal conversa.

Em tempos de florescimento de startups no Brasil, programar virou sinônimo de empreender. Se o designer tem uma ideia para um novo produto ou serviço, ele não precisa esperar seu amigo programador ser demitido para começar o negócio. O designer pode criar um protótipo inicial, mesmo que seja feito com código macarrônico, para vender a ideia a investidores. Ver funcionando é muito mais persuasivo do que ver um plano de como vai funcionar.

Tirinha1401

Não é necessário, entretanto, saber programar bem. Apenas o básico de lógica de programação e a capacidade de leitura e modificação de códigos existentes. Saber escrever um programa do zero, sem utilizar snippets ou frameworks, não é necessário para criar protótipos e serviços simples. A maioria dos projetos podem ser criados à partir da modificação de softwares livres.

Minha experiência pessoal com programação sempre foi e continua sendo frustrante. Eu não gosto de programar. Demora um tempo danado, pois minha mente tem extrema dificuldade de trabalhar com a lógica cartesiana do computador. É muito melhor que um programador faça esse serviço por mim, porém, nem sempre tenho um colega disponível.

Se não soubesse programar, nunca poderia ter desenvolvido a Plataforma Corais, uma ideia que tive junto com Rodrigo Gonzatto quando trabalhava no Instituto Faber-Ludens. Conheço poucos programadores que se dedicariam a trabalhar num projeto voltado para ONGs e empreendedores sociais sem expectativa de retorno financeiro. Graças à generosidade desses poucos que disponibilizam códigos fonte e snippets no framework Drupal, consegui desenvolver a plataforma inteira escrevendo apenas algumas linhas extra de código. Consegui fazer sozinho uma suíte de aplicativos de colaboração que compete com as do Google.

Como aprendi a programar

Desde que criança eu queria fazer meus próprios jogos no computador, mas não conheci nenhum adulto que me orientasse nisso. Meu pai me deu um livro para programar em Pascal, mas eu não consegui entender muita coisa. Depois eu fiz alguns experimentos em Basic à partir da leitura dos arquivos de ajuda, mas achei muito chato. O Delphi foi a primeira plataforma que eu consegui de fato programar, devido à interface visual e orientação por eventos, que é mais fácil de compreender. Depois li um livro sobre Frontpage e outro sobre HTML, o que me permitiu fazer diversos websites.

Programando em turbo pascal mcgrawhill david w carrol 20852 MLB20199609933 112014 O

Quando comecei a trabalhar como webdesigner, percebi que o salário dos programadores era melhor, então comprei uma bíblia de PHP e me pus a estudar. Consegui desenvolver alguns aplicativos, mas o código era muito ruim e dava bug toda hora. Só melhorou depois que li uma apostila sobre lógica de programação, o que deveria ter feito muito antes mas os malditos livros de linguagem não me deram essa dica. No próximo projeto, decidi que iria adaptar um gestor de conteúdo existente e comecei pelo Plone. Foi aí que eu descobri o Python, a linguagem mais elegante e divertida com que já trabalhei.

A essa altura do campeonato, eu decidi que não iria investir mais em estudar programação para poder me dedicar ao estudo da usabilidade. Porém, quando comecei estudar design de interação, a programação voltou a se tornar interessante pela ênfase dada à prototipação. Fiz experimentos com Processing, Arduino e Lego Mindstorms. Até agora, destas três plataformas de prototipação, só usei em projetos reais o Processing para fazer a capa do livro Coralizando, mas me sinto preparado para utilizar as outras quando precisar.

Conclusão

Minha dica para os designers de interação é estudar o mínimo de programação e experimentar o máximo. Ao invés de programar do zero, comece à partir da modificação de um código existente. É essencial desenvolver gosto pelo design orientado a gambiarras, o irmão da programação orientada à gambiarras. Enquanto que na Computação, a gambiarra é mal vista por se tratar de um trabalho mal feito, no Design a gambiarra é celebrada como tática de criatividade.

Dicas para aprender a programar

Fred van Amstel (fred@usabilidoido.com.br), 28.01.2016

Veja os coment?rios neste endere?o:
http://www.usabilidoido.com.br/designer_deve_saber_programar.html