A web designer is responsible for the look of a web site. She designs how the information is displayed on the pages, what illustrations are used and how the parts look together. Working with Visual Studio the collaboration between developer and designer can be streamlined. What usually works quite well is the designer creating an html page and style sheet with the look of the site. The places with dynamic content are marked as plain div’s, in the first draft usually filled with some dummy content to get a first impression. As a developer I turn this page into the master page substituting the content div’s with content placeholders. The classes in the style sheet are used in all the views and pages and I am freed from worries about the look. A clear separation of concerns.
Over time some adaptations might be necessary, due to content not fitting or specifications changing. This is usually no problem, I get a new css or updated html. Many a good designer does understand asp.net markup, making round tripping even easier. In the process both visual designers are used (by the designer) and mark up is edited (by me). This is no problem as good tools used are two way designers: when you change the look visually the markup changes and when you change the markup the visual appearance changes.
All of this is of course pretty obvious. But recently I had an experience where it did not work. Describing the scenario our designer assured us it was no problem. She (actually he) would make a good design and his tool would provide us with plain html and a decent css stylesheet. The visual appearance, in the browser, was nice and the design was approved. But alas the markup behind was not that nice. The html was over complicated with things like div’s whose only purpose was to wrap up yet another div. The css did contain a lot of classes. Most of them were quite verbose and defined many many style attributes. A later analysis of their usage showed they were not cascading style sheets, many an attribute was repeated, usually with exactly the same value. Trying to change the appearance of the site was hard. We had to wrestle our way through the trees of markup. And trying to change the font of a particular part was a quest through styles. Changing which one(s) would do the trick ?
Going back to the designer did not solve that much, his knowledge of the mark up side of web design was not sufficient for an effective communication. The lessons learned were several. First of all make sure that your designer does not only have good esthetical judgment but can communicate his ideas in a shared language, that of html and css. And when she has a tool which generates that make sure it is a two way tool, so proposals for change can be dealt with.
All reminded me very much of the RAD discussions. With again the same conclusion. RAD on itself smells but a good 2-way visual designer can still be nice. Coming from Delphi I used to believe that kind of tool existed. Having seen the haystacks of code Visual Studio produces led to serious doubt. And having seen what a visual design tool can do has shattered my last hope.