Authored by Primate

A rather awesome, informative
and witty blog about all things web

To code or not to code

Ascii art skull

Behold: the floating skull of ASCII

It seems every single web designer out there has already written about this subject, so why bother with this article? Well, there’s just too many interesting opinions out there and it’s simply much easier to write my response here than comment on a gazillon blogs. Who knows, maybe I’ll even share some viewpoints you haven’t already read.

Before we begin, and for the record: whenever I use the word code in this article I’m referring to HTML and markup.

For the sake of brevity, I’ll keep the focus to a recent post by fellow web designer Andy Rutledge, a man not afraid to voice his point of view. Unlike some of his peers who are reluctant to damn non-coding web designers to htm-hell (sorry, that’s a really bad pun – it’s late), Andy is not afraid of hurting anyones feelings and comes right out with it: a web designer must (emphasis added) craft markup and CSS. Why? Because whilst graphic design is important in web design, it’s only one component – if you stop at the .psd you’ve stopped too soon. Hmm, ok, that kind of makes sense, right? Let’s explore it a bit further – in fact, go read his article (it’s short) and come back here when you’re done.

Web design is product design

Andy’s hypothesis is that web design is product design, and if you don’t actually create the product (ie build the website) all you’re doing is drawing pretty pictures. To support this, he makes a series of bold statements – intentionally bold, no doubt – about web design, graphic design and the relevance of code to the web design process, and I think the best way to analyse his point of view is to look at some of them, one at a time.

A designer who does not write markup and CSS is not designing for the web, but drawing pictures.

Wrong. A (web) designer who does not write markup and CSS will invariably produce a graphic representation of his design (call it a picture if you like), but in doing so he will have made a plethora of considerations, including (but no limited to) the business goals of the site, the target audience, the navigation structure, the brand, the user journeys, browser compatibility, accessibility – the list is as long as you make it. The actual design thinking happens before the visuals are created. Obviously then, “drawing a picture” is only one aspect of the design process, a means to communicate the concept to clients and a visual guide for whomever is putting the site together.

Web design is product design. Drawing a picture of the product is not designing the product

It’s easy to agree with this statement, at least if I’m not being pedantic. But, alas, I am. What is implied here is that the product is not designed until it’s created and, moreover, that a product designer must create his own products. Now, that’s simply not true. I’ve never practiced as one, but I’m fairly confident that most product designers will create a computer model of their product – probably based on paper sketches – long before the design ever gets shipped to the factory for prototyping. Is this not designing?

Arguably, the design process doesn’t end with a computer model, it may not end until the factory has shipped a perfect product, but that’s besides the point: the product (be it a prototype or finished article) is created by someone other than the designer. In the world of product design, there’s a clear divide between designers and producers – I mean Jonathan Ive didn’t actually build the iPod, did he?

Graphic design is often important in web design, but only as one component of web design’s requirements.

This is the last, and perhaps the most important, of Andy’s statements I’ll include in this little analysis (ok, rant). Again, on the surface it may seem quite reasonable. After all, we all know visuals are only a small part of the process of creating a web site. But is that what graphic design is – creating visuals? I know a lot of print designers who would resent that suggestion. It seems Andy, along with a lot of other web designers out there, makes the mistake of equalling “graphic design” with “creating graphics”.

Let me be clear: design (be it product, web or graphic) is not sitting in front of a computer creating visuals, no matter how interactive they may be. Design is making decisions and solving problems. Ideas – creative solutions to the problem at hand – emerge independently of Photoshop or markup, the latter are merely tools we need to realise our visions.

So, should I learn code or not?

Having established that design is a concept much broader than the tools we use, the question remains: Should (web) designers know code? Well, I guess the short answer is “yes, to some extent”. Despite my disagreements with Andy’s attempt to reduce designers to pixel pushers I think it’s a good idea that web designers learn a little about what makes their creations come to life. I’m learning CSS and markup as we speak and I find it really interesting, exciting and really helpful to my practice. Just like a talented product designer will have a good grasp of the properties of the materials and production processes needed to create a given product, web designers will absolutely benefit from knowing a bit of code.

However, for most mortals basic knowledge is enough – any more means you have to sacrifice time spent mastering your conceptual and creative skills. At the end of the day design is different to coding, and becoming a front-end wizard can take years. If I didn’t have talented developers to show me the ropes and introduce me to revolutionary ideas like Slim and Sass I would’ve had to start at the beginning, and even though their knowledge allows me to learn one major leap at a time, I’ll probably forever rely on them for the real magic. As Davide Casali put it in his great article on the subject:

Coding and Designing tap into two very different kinds of intelligence

In my mind it’s about choosing which mountain to climb; if you choose more than one you may never reach the top of any.


If you haven’t already read the accumulated debate on this subject, here’s a selection of articles to inspire and annoy you:

The “designers should code bullshit” and a not so new idea by Davide Casali

It’s actually pretty simple by Yaron Schoen

Should web designers code? by Dmitry Fadeyev

Designers vs Coding by Frank Chimero

Web designers who can’t code by Elliot Jay Stocks

5 Good reasons why designers should code by Mike Kus

If you liked this article then why not subscribe to our RSS feed.

Author: Espen Brunborg

Espen can easily ruin conversations with questions about chimneys.


, , , , ,


Showing 10 Comments

Leave a comment
  1. Nol Franklin September 8, 2011 at 9:26 pm

    Great article, Espen.

    It definitely helps to work with a UI/UX Designer that has a basic understanding of HTML and CSS, but I don’t believe every Web Designer should also be a Front-End Developer.

    “In my mind it’s about choosing which mountain to climb; if you choose more than one you may never reach the top of any.”

    - I couldn’t agree with you more. Pick a skill and be really, really, ridiculously good at it. ;)

    • Espen September 8, 2011 at 10:58 pm

      Appreciate it Nol, even more so with it not coming from a designer but a developer :)

  2. Ian Mackay September 9, 2011 at 1:01 pm

    The best product designers make their own prototypes.

    Jony Ive may not have built the original iPod (I think Tony Fadell gets the credit there) but Apple’s design team are the ones who actually make the prototype devices as they develop products – so in a sense, yes, Ive did actually build it.

    They’re a particularly good example because they work closely with their suppliers to develop new methods of mass-production in the design process – e.g. the “unibody” construction of Apple’s current laptops. IMO this would be analogous to a web designer having the idea for something like SASS and then working with a coder to implement it.

    IMO, if you care about your designs, you should care enough to know how to implement them properly in code. You may have thought through the entire user journey, but why stop at just giving them directions when you could be guiding them the whole way?

    • Espen Brunborg September 10, 2011 at 1:12 pm

      Interesting link Ian, thanks. In principle I think you’re right – wouldn’t it just be great if the designer could just create the whole thing? However the problem as I see it, is not whether the designer cares enough, but whether he has enough time to master the skill (some do, of course).

      That said, I really like your analogy to SASS. It’s a great example of how design thought and code thought can really work together.

  3. Adam September 15, 2011 at 9:27 pm

    All really well put. I’m surprised you even had to branch out in Product Design to get that point across. We humble Graphic Designers for years have relied on a completely different industry to finish off our work for us… printers.

    Without a pre-press department (or one hell of an automated system) most jobs would never make it past the proof stage. I’m interested in the print process, and you know as well as I do its much more complicated that just sending a file to print, there are tons of considerations that come with years of learning (the hard way).

    Yeah it’d be handy if we could all code, but its just one stage in the process that greater than one man most of the time.

    Should Web Developers but able to design stuff?

    • Reuben September 17, 2011 at 2:16 pm

      That’s the question playing in my mind often, these days.

      “Should Web Developers be able to design stuff?”

      My current job is developing web stuff, but creating a web site that actually looks good is not in my skill set. Matching colours, creating original graphics, using Photoshop (or GIMP) effectively and just doing templates that don’t look like they were created in the early 90s.

      Since I am a developer, looking at HTML and CSS, I can say “at least it’s plain text”. And since I’m always searching for HTML and CSS related stuff, finding tutorials or examples of how to do stuff in HTML and CSS is fairly easy (like Holy Grail type layouts). Where does a developer go to find out more about the arty side of web design? All those colours, all that screen real estate and all that information that you want to convey, even if the colours and real estate wasn’t there.

      • Gordon September 17, 2011 at 10:35 pm

        Weird that you should ask that question today Reuben as I was in the midst of just writing an article about it! I actually think designers can far too hard a time about knowing/not knowing how to code or write markup. No one ever seems to care if a dev can’t design for crap.

  4. [...] either. People endless debate the merits of certain approaches, certain styles of developments, whether or not designers should be able to code and, of course that time old classic, which development language or framework is best. I guess it [...]

  5. WMI April 17, 2012 at 6:50 pm


    First, great post. It’s refreshing to see someone making a declarative statement on whether a designer should know code or not.

    In my experience, coding and designing can go separately and often times won’t ever need to be intermingled. Typically, this allows the artist (i.e. designer) to move forward and create the template as he sees fit and then simply allowing the coder to work up to the standard.

    In fact, most of the designers that I’ve encountered are just that: designers. But then again, most of my work involves designing wordpress themes and CMS in general, so the perception may be very skewed.

  6. Mike Edward Moras (e-sushi™) April 21, 2012 at 12:39 am

    “…if you choose more than one you may never reach the top of any.”

    Not exactly.

    How to you want to design for a medium if you don’t know about the technical details and limits? You’ll have to admit that even a print designer needs to know what “can be done” and what not.

    My 2 cents: as soon as you’ve reached the top of a mountain, there’s nothing stopping you from climbing an even higher mountain. Why stop after reaching the top of the first one?

    There is no reason to stop… that is, unless you aren’t interested in evolving. And as design constantly evolves, it would be plain stupid not to look at and learn about new media… after all, those media will be the ones we will be designing for tomorrow.

    Remember the days you didn’t have a website? What made you create one? See, that in itself practically shows even you are subject to progress of technology.

    Welcome to the club! ;)

Leave a Reply