We're implementing an CMS based on ASP.NET MVC. Now, any designer should be able to provide themes for this CMS. But to write a theme, they need to be able to modify the generated HTML, thus the concept of View. In other words, they should be capable to either modify current views, or create new views from scratch, to fit their requirements. However, now we're not sure that we're taking the right path.

Should a web designer (HTML, CSS, JavaScript + Photoshop) really know about server-side platforms like Razor or PHP, or classic ASP, or anything else?

  • 2
    Are they EXPECTED to modify server side code?
    – user1249
    Jul 26, 2011 at 8:05
  • No, he shouldn't, but the more You know, the better You are and the more You earn.
    – bogatyrjov
    Jul 26, 2011 at 8:08

5 Answers 5


Yes, A web designer (a good one) knows about templating engines and can learn new ones.

You cannot expect him to understand your bloated "smart" templates. As long as your templates are dumb and driven by simple data you can expect him to learn your particular templating engine.

Of course he'll bill you an extra day for learning it, but that seems fair to me.

We're also talking about simple templating engines like HAML that are one-to-one mappings. Expecting your web developer to understand your HTML helpers, your custom HTML helpers or your web controls is a different game. You should also not expect him to go read some code behind that renders html directly as a string.

As long as your templates are isolated from code, logic and are thin abstractions on HTML, it's fair.


If you implement your views so that the design is handled through css then it is not needed. In this manner they do not need to modify any server side code to tweak the layout. Most designers I have worked with give me the specs and I implement them. Few ever really understood css beyond simple formatting. They know the effect that can be generated but do not really know how to make them work on the page. That is my job as the developer.


It depends in practical view. Web designers just like web developers vary from a designer who can only provide Photoshop designs, to some designers who create Photoshop design, the convert it into HTML (based on templating engine, or view engines knowledge), then apply style via CSS, and even create some cool effects in UX layer via JavaScript. Thus even besides the theory, you should see what your designer is capable of. If they can do the whole operation, then you're just fine. You can do your development and let them care about the rest. But if they can't, simply ask a developer to peer program with them. Don't forget that even if a designer can't code, still (s)he can talk. Thus another developer can create the view, apply CSS, or even JavaScript.

There is a golden rule that I can mention here:

While graphical design is an art, HTML, CSS, and JavaScript are skills.

Maybe a developer is not really good at selecting the overall layout, color, typography, and images for a web site. But once given the deign, he can convert it to a web page.


They don't need the skill of server-side coding, but they should have a good idea of what goes on in there. Just as gfx designer doesn't need to know CSS and HTML but should know what is impossible, undesired or way too hard for the value provided, and the web developer should have a clue about gfx programs and what they can do in basic scope. Specialist in one domain, dabbling in the others.


I would expect a web designer to be able to modify generated HTML, and should have some idea of the capabilities (and limitations) of popular technologies. I wouldn't expect them to use some home-grown tool to select a bunch of elements and create a view/page; rather I'd expect them to specify (to someone else) what elements need to be on a page and where they should go, then take the resulting HTML or other markup and make it look "right".

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.