Designers precisam mesmo saber programar?

Aerochimps
Apr 16, 2015 · 6 min read

Procura-se: UX/UI Designer experiente que saiba programar, domine a língua portuguesa, tenha fluência em pelo menos três idiomas, pinte paredes, produza posts para mídias sociais, digite com os pés, escreva em árabe e atenda ao telefone enquanto tira dúvidas do usuário no suporte online.

Você, num dia normal de trabalho

Parece piada, mas não é muito difícil encontrar anúncios de vagas que peçam, pelo menos, três dessas habilidades. E nem é tão raro esbarrar por aí com profissionais que fazem tudo isso e ainda consertam os computadores da família nas horas vagas.

O mito do profissional multitarefa parece já ter nascido com a profissão de UI Designer — afinal, eles costumam unir o interesse em organização visual e tecnologia ao fascínio pelo comportamento do usuário. Se você é a pessoa que, além de projetar as telas, faz o frontend, sabe bem do que estamos falando.

Mas… a necessidade de saber programar faz parte desse mito ou é a mais pura realidade? Todo designer deve saber escrever código de marcação (HTLM e CSS)?

Decidimos contribuir para essa discussão com o nosso ponto de vista sobre o assunto. Aproveitamos o embalo para responder algumas das dúvidas que levantamos acima, sanar outros questionamentos e plantar novas pulguinhas atrás da sua orelha.

Apenas para facilitar a compreensão (e desviar da discussão sobre “escrever código de marcação é ou não é programar”), chamaremos esse processo de implementação. Então, quando falarmos em “implementar” ou “implementação”, estaremos nos referindo em passar a tela para o código.

Designers devem saber programar?

Sugiro começarmos dando leveza ao assunto e tirando o peso da nossas costas. Afinal, “dever” é uma palavra muito forte, que fica melhor associada a tarefas vitais, como comer, beber água e ir ao banheiro.

Mas, voltando ao tema do dia: apesar de não ser obrigatório implementar, principalmente se você trabalha com uma equipe multidisciplinar que contempla todas as camadas de desenvolvimento, conhecer os códigos de implementação ainda é essencial.

Ninguém está propondo que você seja o melhor desenvolvedor do mundo, até porque os desenvolvedores frontend ficariam #xatidados se você roubasse o emprego deles. Mas ter esse conhecimento te dá as noções necessárias do código para que você consiga construir uma interface simples de manter, que seja consistente e escalável.

Se você precisa resolver um bug urgente, por exemplo, projetar uma interação que vai demandar um esforço do time de 30 dias e mudar boa parte do sistema não vai adiantar de nada. Será um atraso desnecessário e custoso para o projeto. Mas a coisa muda de figura se você participou da construção do código ou consegue entender como ele está escrito. Percebe a relevância do conhecimento?

Tudo bem. Muitas vezes, as coisas precisam ser refeitas. Até porque o código não é uma esfinge e nem uma construção milenar tombada: ele é mutável e pode ser alterado quando for necessário. Mas ter uma noção do todo te permite tomar decisões muito mais acertadas para o projeto, além de facilitar a comunicação entre o time e evitar que os desenvolvedores precisem tomar remédio para dor de cabeça toda vez que você concluir uma interação.

Qual o limite do conhecimento?

Bom mesmo é o conhecimento sem fronteiras. Quanto mais você sabe, mais você se empodera, se melhora e se supera — tanto pessoalmente como profissionalmente. Conhecimento nunca é demais.

Porém, por mais conhecimento que se tenha sobre códigos e programação, não se pode nunca esquecer de “puxar a sardinha” para o lado do usuário. Se o esforço do time é grande e o benefício ao usuário reflete esse empenho, possivelmente a solução mais engenhosa seja a melhor escolha. É importante saber balancear essas situações e utilizar o domínio sobre o código como um aliado.

Às vezes, os UI Designers são também os desenvolvedores frontend do projeto. O problema dessa dupla função é quando o profissional tem um conhecimento de código limitado e tenta adaptar o design de acordo com seus limites. Não demora muito para que ele se encontre em um dilema mais ou menos assim: eu acredito que a solução X é melhor do que a Y, mas só sei implementar a Y. Logo, escolho a solução que mais conheço.

Parênteses: Lembra do nosso combinado de não usar a palavra “deve” para atividades que não são fundamentais para a nossa vida? Com licença poética, vamos encher a boca para dizer que esse tipo de situação deve ser evitada a qualquer custo. Sim, porque fazer esse tipo de coisa é colocar em risco o seu trabalho e a qualidade do projeto. Ponto, parágrafo.

Ter um time completo formado por especialistas de cada área e organizado de maneira que todos se conversem e se participem é, sem dúvidas, a melhor forma de trabalhar.

"E se eu não conheço linguagens de programação, já posso desistir de ser UI Designer e ir vender bala no semáforo?"

Nada de medidas drásticas. Aprender é sempre possível e recomendável. A internet democratizou todo tipo de ensino e facilitou o aprendizado de todas as áreas do conhecimento. Se você quer entender código, existem iniciativas mão-na-roda, como a Codeacademy e várias outras para te ajudar.

Mas, se a sua atuação é mais focada na área de pesquisas, testes de usabilidade e A/B, não conhecer linguagens de programação não vai afetar tanto assim o seu trabalho. No entanto, atuar com projetos de interfaces e não ter nenhum conhecimento sobre códigos de marcação reduz sua eficiência e autonomia.

É verdade que existem muitos times que segmentam a parte de design do código. A gente não gosta de trabalhar assim. O mais legal de fazer parte de um time de desenvolvimento é participar ativamente dele e ter conhecimento para argumentar, conversar e crescer junto.

Do que adianta ficar viajando na interação mais inovadora dos planetas se ela nem é possível de ser implementada nas condições do projeto? O design é tão responsável pelo sucesso do projeto quanto o desenvolvimento. Por isso, ter uma noção do que acontece além dos pixels é um diferencial e tanto.

Afinal, o time ganha ou perde sempre junto.

Dicas de leitura

Como falamos no início do texto, essa é a nossa opinião sobre o assunto. E você, o que acha? Concorda, discorda ou muito pelo contrário?

Para engrossar ainda mais esse caldo, separamos alguns conteúdos interessantes para você mergulhar de cabeça no assunto:

  • Este texto, em inglês, que defende que os designers não devem codificar. Para servir como um contraponto da nossa opinião e dar mais suplemento de informação;
  • O texto “Designers Code Differently”, também inglês, que defende que designers só devem saber programar o que for necessário para o design e;
  • Este artigo sobre as 3 razões para aprender programação desde criança.

Gostou do texto? Que tal recomendá-lo? Você também pode seguir a gente no Facebook e no Twitter e ficar por dentro das nossas atualizações semanais. (:

    Aerochimps

    Written by

    Desenvolvemos aplicativos web e mobile. Conversamos sobre aplicativos bacanas, novidades no mundo da tecnologia e ux. http://aerochimps.com/

    Welcome to a place where words matter. On Medium, smart voices and original ideas take center stage - with no ads in sight. Watch
    Follow all the topics you care about, and we’ll deliver the best stories for you to your homepage and inbox. Explore
    Get unlimited access to the best stories on Medium — and support writers while you’re at it. Just $5/month. Upgrade