Se você é um programador que não possui habilidades de design visual, o que funcionou melhor para você - emparelhar-se com um designer gráfico ou fazer toda a programação e depois elaborar um trabalho específico?
Eu trabalhei como indy dev por um longo tempo antes do trabalho da empresa e recomendo o último se você tiver um orçamento e cronograma apertados e precisar enviar.
O problema é que trabalhar com um designer antecipado é ideal, mas a sobrecarga da colaboração pode ser enorme , especialmente se eles são ótimos designers. Os grandes designers ficam obcecados com todos os detalhes, exceto que seus designs geralmente não comunicam todos os detalhes até a última função. Você pode ter que ler nas entrelinhas todas as maquetes, e começa a ficar claro quem é o designer real quando se trata dessas decisões sutis, mas muito importantes, sobre o fluxo de trabalho.
Trabalhando com designers antecipadamente
Uma coisa complicada que pode ocorrer é que você pode contratar um designer que faça essa linda maquete com aparência de produto final renderizada meticulosamente no Photoshop, por exemplo, é bom evitar esses tipos ou pelo menos treiná-los antecipadamente.
O problema nesses casos é que você pode gastar todo o tempo tentando fazer uma sombra projetada ou um chanfro / arredondamento de botão ou suavização de fonte correspondente à aparência do Photoshop, por exemplo,
Idealmente, tanto o design do software quanto o design gráfico do designer evoluem juntos, por isso é ótimo se você começar com um designer antecipadamente para que ele mantenha seus designs muito frouxos, incompletos, como "rabiscado em um guardanapo". Precisa ser altamente colaborativo, e cada vez mais no começo. Você e o designer precisam estar dispostos a evoluir seus projetos e desviar-se um pouco do início do "esboço", e é preciso haver uma ênfase muito forte no "esboço solto".
Também é bom estabelecer algumas restrições antecipadamente, para que você não esteja tentando corresponder aos recursos de renderização do Photoshop ou Illustrator, por exemplo, para qualquer kit de ferramentas da GUI que estiver usando, preste atenção aos recursos práticos de renderização, à aparência, e treine o designer para que seus projetos correspondam à capacidade (e até mesmo ao uso / layouts incentivados) do seu kit de GUI.
Se você está enfrentando o kit da GUI para tentar fazer com que seus projetos correspondam, você precisa treinar o projetista das restrições do sistema mais rapidamente ou abandonar o kit da GUI e, possivelmente, até criar o seu próprio, se realmente deseja obter uma combinação perfeita. . Idealmente, o designer esboça seu design dentro do kit da GUI, mas isso pode ou não ser prático, dependendo de suas ferramentas.
Trabalhando tarde com designers
Acho que isso acontece, pois tenho que ser explícito no que quero com os contratados, e eles são limitados em criatividade pela arquitetura que criei.
Isto não é necessariamente uma coisa ruim. Um grande designer pode fazer coisas fantásticas com restrições rígidas. Às vezes, eles se saem melhor com restrições apertadas, como os criadores de sprites da Super Nintendo, Ridley Scott quando ele fez Alien, etc. sua impressão no design.
Terceira opção: desenvolva suas habilidades de design
Sou um designer de interface do usuário horrível, mas não sou um programador muito rico e nunca tive dinheiro para comprar um designer de interface do usuário.
Além disso, a experiência da minha empresa não me deu uma boa impressão sobre o custo (tempo e dinheiro) de trabalhar com um dedicado (mesmo depois de passar por vários designers ao longo de uma década), embora a milhagem de todos possa variar. Parece que algumas pessoas aqui tiveram ótimas experiências trabalhando com designers, por isso pode ter sido apenas o cenário da empresa (todos os programadores odiavam trabalhar com os designers de lá e viam isso em grande parte como gastar quantidades estranhas de tempo em detalhes exigentes).
Então, eu sempre tentei desenvolver minhas habilidades de design um pouco. Um exemplo de um dos meus pequenos aplicativos:
Ele obteve algumas respostas legais quanto ao design, embora possam ser usuários que me lisonjeiam, e também porque esse aplicativo é um pouco técnico (programação visual com áudio, imagens e vídeo). Espero que eu não tenha me envergonhado muito por lá (acho razoável, mas pode ser apenas "arte de programador").
Se isso não parecer muito horrível, acho que a chave é trabalhar com minhas habilidades limitadas de design. Como sou péssimo nisso, uso paletas mínimas, como um cinza escuro com não mais de duas ou três cores principais para os destaques da seleção e coisas assim, relaxe os gradientes, uso menus e outras coisas em vez de muitas diálogos sofisticados, mas não os faça rolar quando possível. Basicamente, estou fazendo tudo o que posso para esconder o fato de que não sei o que diabos estou fazendo.
Geralmente, quando vejo projetos de desenvolvedores que parecem realmente nojentos (não apenas para os meus olhos, mas para praticamente todo mundo), os programadores provavelmente não são piores que eu no design e, possivelmente, muito melhores, mas ambiciosos demais. Eles estão colocando gradientes sofisticados em todo o lugar, tentando criar um design muito colorido - e isso exige muita habilidade para se acertar. É mais fácil criar um design suave com uma seleção cuidadosa de um punhado de cores para que as coisas saiam, e isso requer pouca habilidade de design.
É toda organização como eu a vejo. Meus projetos podem não parecer bons, mas estão ligados à funcionalidade, e eu me concentro nas coisas em que posso facilmente me concentrar como programador, como manter tudo responsivo, rápido, com pouca memória e sem gaguejar. Parece ter uma resposta positiva, mas não sei.
Outra coisa é que, se você trabalha em um aplicativo em que há uma área de foco principal, como uma tela ou janela de visualização ou algo assim, as pessoas são surpreendentemente generosas com um design incrivelmente minimalista aqui. Abaixo, eu apenas o mantive em menus e diálogos por todo o caminho, e os usuários pelo menos não pareciam odiá-lo, embora não haja muito "design" aqui (apenas um menu no estilo "iniciar" e um nível superior) menus e algumas caixas de diálogo pop-up básicas que podem ser acopladas):
Aqui, eu realmente escondi o fato de que não sei o que estou fazendo apenas decorando a janela de exibição com menus básicos e outras coisas, mas a arte no centro faz com que pareça meio interessante sem a minha "intervenção de design". Assim, você pode realmente dominar o design nesses casos e deixar a beleza do trabalho do usuário aparecer.
... Não é tão difícil projetar um software que possa pelo menos se sair razoavelmente bem com um público independente. Normalmente não concordo com grandes empresas quando estou solo, então talvez as pessoas estejam me dando muita margem de manobra nos meus projetos. No entanto, acho que vale a pena desenvolver um pouco as suas habilidades de design, apenas para comunicar melhor suas intenções com o designer. Talvez eu tenha me irritado com essas imagens acima, mas se não, e elas não são muito ruins, descobri que não é preciso treinamento ou tempo formal para fazer esses tipos de projetos básicos. Tudo o que precisamos é de contenção.