Afinal, designers devem saber programar?

Jon Vieira
Aela
Published in
5 min readOct 6, 2015

Designers precisam saber programar? Criatividade e lógica se misturam? Com certeza, estas não são perguntas novas. Se você é designer (e principalmente se não programa), já deve ter parado para se perguntar se isto influenciaria positivamente em sua carreira.

Eu vou falar de minha experiência, pois comecei como programador. Lá pelos meus 10 anos de idade, me fascinava a possibilidade de criar um arquivo .exe, então eu criava editores de texto criptografados, processadores de imagem a la Microsoft Paint e já fiz até mesmo um vírus tosco que rodava o comando calc.exe infinitamente, travando o computador com milhares de calculadoras abertas (imagine isto na era dos megahertz em computadores com 128 MB de RAM).

Não sei se eu gostava por ter uma mente lógica ou vice-versa, mas o fato é que quando comecei a trabalhar com web (início dos anos 2000), as funções não eram ainda muito distintas, ao menos no Brasil, e saber programar era crucial. Comecei na era da transição entre sites feitos com tabelas e webstandards, em que tableless era a palavra do momento, e conhecer isto deu à minha recém fundada empresa-fundo-de-quintal certa notoriedade na comunidade e em alguns sites especializados no assunto. E eu fazia de tudo: criava layouts, fazia front-end, fazia back-end. Na época do Flash então, você nem tinha a opção de fazer uma coisa só: fazia motion, fazia design, programava ActionScript, integrava com XML, as atribuições iam longe.

Acabei focando mais na área de criação, e com o passar do tempo assumi exclusivamente a função de designer, principalmente quando minha empresa ganhou corpo e eu já lidava com uma equipe. Eventualmente, eu precisava programar, mas meu papel era de Diretor de Criação, e o design passou a ocupar 90% da minha rotina.

Bem, muitos erros, muitos acertos e muitos anos depois, hoje tenho algumas opiniões baseadas nestas experiências, e gostaria de explorar alguns pontos.

Front-end não é, necessariamente, programação

Calma, deixe-me explicar!

Front-end é código? Sim!
Mas é programação? Somente a partir de certo ponto.

HTML / CSS não envolve lógica de programação, tanto que o M de HTML significa Markup, que quer dizer Demarcação. Nada mais é do que uma estrutura, em código, dos elementos da página, como em um quebra cabeça, mas não envolve a necessidade de um profundo pensamento matemático. É um processo, de certa forma, próximo ao processo de diagramação, mas feito com código.

De uma forma simplória, costumo comparar um projeto a um esqueleto humano, em que o HTML é o esqueleto, CSS é a pele, Javascript são os músculos e Backend é o cérebro. Tudo interligado, formando um corpo perfeito, mas atuando de formas distintas, sendo desenvolvidos, cada qual, por seus processos químicos e biológicos específicos.

Mas por que falei que só se trata de programar a partir de certo ponto?

Porque temos nosso querido Javascript, que também está dentro do escopo de front-end, e quando falamos nele, já começamos a lidar com lógica de programação. Se sua intenção é poder dizer que é um desenvolvedor front-end, minha opinião é que saber Javascript não é opcional (mas isto é assunto para outro artigo).

Ainda em relação a programar em front-end, existem os pré-processadores de HTML (Haml, Jade, etc.) e de CSS (SCSS, LESS, etc.), que são linguagens que visam facilitar e agilizar o desenvolvimento do código utilizando utilizando conceitos de programação (como lógica, modulação, entre outros). O código, como o nome diz, é então pré-processado, gerando o HTML e CSS puro (também chamados de vanilla).

Mas falando de designers, conhecer o vanilla HTML e CSS é o suficiente para trazer grandes diferenciais à sua carreira (assim como ter, ao menos, noções de back-end), e por não envolver aspectos mais complexos do desenvolvimento, é algo fácil de se aprender.

Para entender os exemplos, navegue entre as abas “HTML”, “CSS” e “Result”.

Exemplo de vanilla HTML / CSS:

http://codepen.io/hellomarcoliver/pen/antxL/

Exemplo usando pré-processadores de CSS:

http://codepen.io/giana/pen/zvZEBd/

Exemplo usando Javascript:

http://codepen.io/tvweinstock/pen/avJXpV/

Front-end não é difícil

Sou da opinião de que difícil é tocar violão com as duas mãos, fazer percussão e cantar ao mesmo tempo — difícil e magnífico. A propósito, veja:

Mas, partindo do princípio de que HTML não é uma linguagem de programação, você pode esquecer esta premissa de que é algo difícil e começar a estudar agora mesmo.

Programar abre portas

Um dos motivos para encerrar as atividades de minha agência (que Deus a tenha!), foi o fato de eu ter iniciado relações internacionais que se mostravam mais atrativas que os negócios locais. Por causa destes contatos, hoje trabalho quase que exclusivamente com clientes estrangeiros (trabalho para uma agência estrangeira e 99% do meu network é de fora do Brasil).

A oportunidade que surgiu, na época, era de um faz tudo, principalmente front-end. E eu sabia fazer de tudo, inclusive back-end. Nesse tempo acabei me envolvendo mais ainda com o “lado negro da força”, passando até mesmo a configurar servidores Linux.

Enfim, eu fiquei de 2011 a 2015 nesta empresa e hoje estou de volta, 100% focado em design como Diretor de Arte Digital, e saber programar foi um grande diferencial no processo de seleção da empresa em que trabalho atualmente. Inclusive, criar protótipos funcionais é parte da minha rotina.

Muito bem, então preciso saber programar?

Eu diria que não. Realmente, você não precisa saber. Mas posso afirmar que cada vez mais as oportunidades de trabalho na área de design colocam o desenvolvimento, ou no mínimo, noções de front-end, como requisito ou diferencial.

E este, na minha opinião, seria ainda o motivo mais medíocre para se aprender, pois são inúmeras as vantagens de poder tomar suas decisões sabendo as limitações de seus dispositivos, saber como as coisas vão se formar na hora do desenvolvimento, ver o sentido de ser detalhista pixel a pixel quando se sabe que é assim que o desenvolvedor vai precisar escrever o código, criar protótipos, etc.

Concluindo, longe de mim dizer que é mandatório saber programar. Conheço muitos designers, dos bons, que não o sabem.

Porém, em alguns deles vejo pontos que, como desenvolvedor, considero deficientes, em detalhes que podem até mesmo influenciar na produtividade do projeto — o dev que nunca pegou um layout terrível e praticamente impossível de ser reproduzido, que atire a primeira pedra … os as mãos para o céu.

Você não precisa ser um designer expert em desenvolvimento front-end para ter este diferencial em seu currículo e na qualidade de seus projetos, e a Internet está repleta de recursos para você começar a trilhar este caminho, que pode ser mais tranquilo do que você imagina.

Pense nisto!

Ah, lembrei de uma coisa! Meu amigo Filipe Fernandes há um tempo escreveu um artigo falando sobre os benefícios de crianças aprenderem a programar, aqui no Choco mesmo. Fica a dica de leitura: http://chocoladesign.com/crianca-deve-aprender-a-programar

</fim>

--

--

Jon Vieira
Aela
Writer for

Product Designer, currently @ Facebook VR/AR