I'm really enthusiastic about the current state of web design and web development. Interfaces are becoming more user centered, more polished and implement more advanced solutions — yet they're simpler to use and more user engaging. But sometimes these nifty and beautifully crafted interfaces get raped by front-end developers. Why?
I'm writing this text as both interface designer and front-end developer, so don't take this article as an personal attack on front-end developers. It's just something I've noticed and feels like needs to be spoken (written, to be exact).
So what's the problem here?
Designer created great project. Everything is well discussed and defined. Now it's time for front-end developer to get down to action and:
- the deadline is very tight,
- the budget is limited,
- front-end developer is not experienced enough,
- front-end developer is lazy,
- front-end developer doesn't want to understand how the interface works,
- front-end developer has no aesthetic sense at all.
The catastrophe is ready. It breaks into three cases.
just poorly implemented. Elements are out of flow. Everything is flying around like crazy. Grid is just an abstract concept.
Elements don't work the way they should. More advanced solutions are simplified down to the bone. User experience is just an abstract concept.
Feels like something is missing. The designer's touch, attention to detail and flawless aesthetic — they're all gone.
And who is blamed here? Unfortunately, it's the designer regardless of his great talent. People tend to judge the designer by the actual implemented product not his/her mock-ups or layouts. It's a sad true.
But hey, ...
… designers are also guilty.
It's not only the developer.
It happens, pretty often actually, that designers create projects impossible to implement. At least partially. Weird, unusable or twisted solutions made just for the sake of meeting the requirements are not the way to go. Designers tend to break common usability rules due to lack of knowledge.
It is also very common that designers don't know anything about the platform they are creating for. Guys, it's not that hard to read design guidelines and principles and most importantly know the limits of technologies. And please don't say:
You just don't like my creativity.
We do, stay creative, but be open for criticism.
What can we do?
Some issues are unavoidable (budget, deadline), but for the rest the solution is pretty simple.
Do not be lazy! Practice, learn, keep in touch with current solutions, read what's going on, try new things, develop your workflow, know good practices. It needs time to become good front-end developer even if it's very easy to start with web development in the first place.
Every front-end developer should have some design knowledge and aesthetic sense. I'm not saying you must start designing interfaces but you should at least understand how element interacts and why, know that beauty comes from detail. Yes, it's hard to learn such thing, but still possible.
Every web designer should know the basics of technologies he's designing for. Just that, simple. Know the limits, know common implementation techniques, know the standards.
And finally, these two professions are very strongly connected. For me there is no possibility that web designer and web developer don't cooperate. Work together and make user experience better. Cheers!