TL; DR: They’re more similar than many realize, and I think it matters.
I get it why designers and devs feel they belong in different camps though. I just think they’re mistaken, and I suspect the myth began because of one obvious difference:
Anyone can look at a design and offer an opinion, but it takes a dev to critique the quality of someone’s code.
And while designers and devs use different words, their sentiment is nearly identical. I’ll show you. Below you’ll see the typical things I hear from devs, and beside it is the same sentiment expressed from designers.
|Dev Says...||Designer Says...|
|If I don’t think through how the whole system fits together, I’ll just have to keep reworking my code.||I can’t just create a piece of the design. I need to appreciate the entire context to get it right.|
|Showing my work incrementally takes a lot more time. Why don’t I come find you when I have this whole thing implemented?||It’ll be a lot faster if I just deliver the entire design to the dev team so I don’t slow them down. There’s a ton of people asking for my time so I have to move quickly.|
|I know it sounds like a simple change to make, but we made some assumptions early on and that tweak you want will take weeks.||Thanks for the feedback, but if you want that changed, I’ll have to change these four other elements as well.|
|Last time we said we’d release an MVP and keep making it better, we didn’t. It was one and done. I’ll pad my estimates to ensure I don’t put crap out there a second time around.||There’s so much feedback from our customers that I’d like to address, but how can I when I’m buried in this new project? I'll spend more time with this next design to ensure it’s not crap.|
|Of course it’ll all work when we’re done. Connecting the system end to end will be easy. Let’s put off connecting the back and middle tier until later to save us some time.||What do you mean implementing that design element is impossible? I don’t have time to redo the whole design so how are we going to make this work?|
|This code is so trivial. Why would I want to show it off? Anyway, the only way I can do so is through the command line. No one would want to see that.||If I show my work early, people will simply obsess about red versus blue, and they won’t be able to appreciate the bigger picture. Let’s wait.|
Even John Culter emphasizes the tension between agility and designers in Is Agile the Enemy (Of Good Design)?. But is it about designers or is it about anyone skeptical that a new approach can outperform their tried and true model? I think it’s the latter. After all, I see devs that struggle with all the same things John writes about. However, his meta-point is right on target and worth emphasizing:
‘Good’ waterfall beats abused Agile any day.
I couldn’t agree more, but I do wish we’d stop highlighting the differences between disciplines and start bridging the divide so we can find more effective ways of collaborating.