my favorite

Jan 29, 2016 10:48

Reading a critique on AngularJS and came across this gem:

Designers Are Not Developers

One argument I have seen often in favor of more advanced HTML templating systems is, that when no programming is involved in specifying the template, then designers can implement the HTML templates independently from the developers. If a designer knows HTML, then he or she will also be able to use the HTML templating system.

I encountered this argument the first time related to JSP and its tag libraries. If a designer learned the tag libraries he or she could implement functionality without having to bother a developer. Adobe Dreamweaver - a popular HTML design tool - even has built-in support for JSP tag libraries. I have seen the same argument on blogs used in favor of the AngularJS HTML template system.

I haven't actually worked in a place where this actually worked. Designers did not implement functionality, even with HTML-like tag libraries or directives. If this works where you are employed, I'd be happy to hear about your experiences.

In my opinion the argument is based on a false premise. The premise that if a designer knows the HTML syntax then they can all of a sudden perform programming tasks, given an HTML-like templating system. While this is theoretically true, the premise mistakes syntax for semantics.

A designer is primarily concerned with looks while a developer is primarily concerned with behaviour. If you give a designer an HTML-like syntax and asking her to add behaviour to the web page, there is a pretty good chance that she will think "but what does that have to do with design?". It is not what her mind is trained to do, regardless of the syntax.

The same is true the other way around. A developer does not all of a sudden become a designer just because they get a cool graphical API at their disposal. Looks and behaviour are different semantic areas of an application. These semantics are what separates the designer's work from the developer's - not syntax or tools.

There is a significant difference between specifying the looks and behaviour of an application, even if the syntax used for the two tasks is the same.

This is my new favorite thing ever. Cause it's something I've been saying for, what, the last five years? This very reason is exactly why someone who is not a developer or has exposure to development in any way, shape or form, has any business ever ever designing websites (let alone being in control of the designers who do so). Because you, as the leader, just don't know - and you don't know what you don't know. Then there's me, the awesomeness that has a foot in both worlds and am able to toggle back and forth.

look at me do stuff

Previous post Next post
Up