I’ve been in the developer and startup environments for the past years, and one pattern kept coming up: Programmers evolve to the latest technologies and frameworks, but designers are still doing the same thing they did in the year 2000.
It seems to be accepted that, while programmers learn new languages constantly, designers should only worry about aesthetics. And so we all accept that we should stop using the best tools available so that their work can fit into the team.
Let’s look at a couple situations that might sound familiar:
Case 1: The designer that doesn’t know HTML
I’ve seen companies with “usability experts”, which design sites in photoshop or illustrator and then send them to the programmer team to build a layout. Seriously, why can’t this person learn HTML? It’s their job to produce results, after all.
Case 2: The designer that only does HTML
This is by far the worst case. In the typical case, you’re looking at your site thinking “it’s nice, but it could SO use a better design”. So you hire a designer.
The thing is that now somebody is making a completely independent design, that doesn’t take into account your existing stylesheets, and uses completely different conventions. By accepting her new layout, you’re now increasing your code debt. You are now dealing with legacy parts of the design, the new one and there’s a coding-style clash.
But you buy into it, and you decide to use that design. You invest a whole day merging the design into your application (time is money, wasn’t this the designer’s job?), and translate the static html into your favorite %w(ruby python php node java) template system, and it’s done! Your designer doesn’t have a clue of how it works. Not to mention the version-control system…
The day for changes in the design comes, and now you’re screwed. You can’t do styles yourself, and your designer can’t understand your code. What now? Options:
- She edits the original static files.
- She fires up the inspector and tells you exactly what to change.
Both options sound like a waste of non-designers time. In the first case, you spend big time merging in changes from obscure css files. In the second case, you both need to spend time into the re-design together.
But there’s another option:
- Hire a designer that understands developer workflows and can save you time while building the product with you.
Because we need to understand that…
Web design is industrial design
And a design that can’t be used in the factory won’t make us millions. Your resources are limited, and you need to streamline the work to keep the wheel turning. Anybody who’s not aligned with it is costing you time and money. Designers are no exception.
- Git makes your programming workflow so much easier, why not teach your designer?
- SCSS or SASS makes css more fun, why settle for something worse?
- Most changes can only be seen in the real application, why not set up a development environment for your designer?
Tomorrow we setup a little trial for a designer candidate. We will be building a site in some hours, taking full advantage of Git, HAML and SASS with her. That sounds like a great real-world use case. (We’ll be posting the results!)
Conclusion
Design and code and so closely related that it’s hard to be doing only one of them anymore. It’s time to learn new things.
Build a self-improvement culture in your company –if you’re reading this, you’re probably doing it right! Let everybody grow into that. Try to learn from designers, and be more user-oriented. Try to teach designers to be more development-oriented. Advance together.
But if all this doesn’t work, fire your designer.
Stay in touch
read ourblog contact us follow us
on Twitter