Despite the fact that it’s a skill I’ve always had, for most of my career I’ve been against designers needing to know how to code. My stance on that has changed recently though.
It wasn’t so long ago that websites didn’t actually do that much. They worked in the sense that they delivered the information, but they were ultimately pretty boring (I’m not talking flash sites here). Pages changed when you clicked a button, there was maybe a rollover here and there and there were contact forms but the reality is there wasn’t that much going on. For all intents and purposes you could have been looking at a glorified PDF document, or a series of JPGs (which isn’t that far off what websites actually were in the early 2000s). The only real argument for designers knowing how to code was to make the developers job a little bit easier. It stopped them from creating headaches. To me that was the very reason that a designer knowing how to code was actually a bad thing. It gave them mental restrictions. It made them design within confinement and cut their freedom.
The whole experience
The websites I see these days, the ones that are really pushing the boundaries are incredibly interactive experiences. There’s so much more that’s been designed than just the layout. The animations have been designed, the way the elements load, the transitions, the hidden functionality, the whole experience has been designed from start to finish. You can see that the designer has been involved throughout.
The techniques available to use now are no longer limiting, the only limits now are either your imagination or the deadline and budget and for that reason I think a designer needs to have that understanding now. The interaction is where the magic happens, why wouldn’t you want to be involved in that?
The new breed
I think web designers that can’t code are a dying breed and are not long for the job, certainly not at the cutting edge anyway. The best web designers, the ones at the very top, they know code. They may not be using it all the time, but they understand it. There will always be agencies that operate at a level behind everyone else and those that can’t code just may find themselves fighting for those jobs in the years to come. My advice to you is learn to code. Learn to code or die.