When it comes to web design, my expertise probably resides more with the code than with the design. In the past, I have generally found it harder to come up with a design in the first place, than I do when it comes to actually putting that design into code.
But recently I completed a design that I was really pleased with, from start to finish, and this is because I let the design develop in my mind before I fired up my HTML editor. It may not be the greatest design in the world, but it’s one where I let the design lead the whole process, rather than the code, and as a result it seems to fit together much better than some of my other designs.
I have discovered that trying to get a design to work from the code up is the wrong approach.
That approach leads to staring at a style sheet for hours, maybe adjusting the padding of a certain element, or fiddling with the font sizes or something, while the overall look of the page doesn’t really change or improve. But it’s actually quite difficult to suddenly switch to a design-oriented mindset. When you’re working with code, it’s a much more logical process: you know which XHTML elements and which CSS properties to use to get a certain thing, and then you tweak them until they work.
When you’re working with design, inspiration plays a big part. Unlike with code, where you can look up tutorials on the web, you can’t do anything to get inspiration, other than relax and wait for it, and that’s the difficulty: learning to be open to inspiration when you’re used to a logical approach.
So, for future designs that I produce, I will allow them to come to me and then let them brew in my imagination before I put fingers to keyboard. Actually, it’s more fun that way from a code perspective: quite often you have to find new ways of doing things to accomodate a certain feature of your design.
(I’ve also learnt that it pays well to develop your graphical editing skills, but I’m probably much less qualified to talk about that, so I’ll leave that for today.)