Image by LGR Photos
How much does a web designer need to know in order to serve the ever growing needs of the internet community? Is it enough to know how to make things look pretty, or does he/she need to have some knowledge of HTML and CSS?
The internet is an ever-growing, ever-morphing phenomenon. It’s the ancestor of The Matrix and eventually interfaces will evolve to a point where everyone gets hooked up and turned into batteries that power Google’s space elevator.
Well okay, maybe I am exaggerating. But online interaction is growing and it will only get bigger. Web design plays a huge role in this, not only to make web sites look pretty but also to make them usable.
I spotted a debate around web design and web programming which originated on Twitter and then spawned a number of articles by the designers involved. That discussion is a couple of years old but the subject is as relevant today as it was then.
Why Designers Should Learn to Code
The Tweet that started the debate was by Elliot Jay Stocks and it said, “Honestly, I’m shocked that in 2010 I’m still coming across ‘web designers’ who can’t code their own designs. No excuse.”
It generated a discussion that lasted a few hours, with most people agreeing with his point, although some were against it.
The problem with not knowing how to code comes in the execution of the design. If you provide a developer with a layout made in Illustrator with no regard for the design grid or the restrictions and capabilities of the online experience, coding will be nigh on impossible.
This is where things can fall apart. The expectations of the designer (and possibly the client if you already sent them a mock up) clash with the frustrated web developer who has been asked to do the impossible, to try and realise the design. And because the designer doesn’t know code, he may not understand why something can’t be done.
Not Knowing How to Code VS Not Wanting to Code
There is also another difference between designers who don’t know how to code and those who don’t want to, or don’t need to.
Someone who knows how things on a web page function will make the design work within those parameters even if they are not the ones who do the actual coding.
Such a person is likely to work a lot better alongside developers than someone who doesn’t know the first thing about HTML and CSS, and who will produce designs that cannot be realised.
Why Coding Isn’t Necessary
On the other side of the argument, Mark Boulton disagrees that designers the need to know code. HTML and CSS constitute the practicalities of production of a design, but they are not the most important thing to know and they do not help the designer understand the medium (the online website in this case).
Understanding the medium is all about engagement; how to get a message across and how to design interfaces that allow easy interaction between user and site.
“The medium of the web, as far as I see it, is only partly defined by technology (HTML being a small part of that). It’s defined by people, by stories, by products. There’s just so much in there that by saying you have to be able write HTML to design for the medium is really undervaluing the other areas of the craft. A designer who is a fantastic writer, with a flair for typography – and an understanding of concepts such as semantics and document structure – is no less of a designer just because they can’t write HTML.”
So Does Coding Matter or Not?
My answer to this question is, it depends on the situation. I tend to agree with Mark on this one.
Certainly, the knowledge of HTML and CSS can help in many ways and broadening your skills to include coding knowledge at least for HTML and CSS is useful and makes you versatile.
If you are working on your own, well, you pretty much have no choice. You have to know how to code or you won’t be able to put together a web site that is both attractive and usable by people and search engines.
But if you are working in a team then communication between designer and developer is key; keep having conversations so that you know what can be done and what can’t (and why). Surely if you know code you can answer a lot of those questions on your own, but knowing how to code is not a necessity.
However, any coding knowledge will count for nothing if you don’t create a design that engages the readers and enables easy interaction with the site – I have seen perfectly coded websites that were dull and uninspiring.
Anyway, specialisation is a good thing – it allows people to focus on specific areas and excel in them. Knowing everything might make you a jack of all trades and master of none, which will only lead to mediocre results. You don’t visit a dentist and expect them to fix a broken bone, do you?
There are some things that a web site needs to do:
- It needs to be usable by people first and foremost, it needs to engage them and create interaction; yep I am repeating myself here, but it’s because this aspect is very important
- It needs to follow web standards that allow web sites to be readable by most web and mobile browsers
- It needs to be flexible so that the different devices can render it at different resolutions; how you go about this is an entirely different debate about responsive design, which we covered in an earlier post
- It needs to be search engine friendly, allowing the engines to crawl it correctly and ‘understand’ what it is about so that it can be properly shown in search results
Points 1 and 2 are dependent on one another, because if the code breaks the users can’t experience the web site as it should be; at the same time proper coding solutions need to be found for those design elements that will create engagement. These two have to meet in the middle somewhere but whether it’s the same person doing both or two different people it doesn’t matter.
While I personally feel that knowing HTML and CSS is a good thing, saying that a designer is not a designer because they don’t know it is unfair, because there are so many things that have to do with the presentation and interaction that a coder might not know, while a visual designer does.