Should Web Designers Have Coding Skills?

Tweet

I last asked this question in 2010: should all web designers have coding skills?

The SitePoint poll results surprised me:

  • 70% of respondents said designers should have good coding skills
  • 25% stated that basic knowledge is adequate
  • 5% thought a good designer could create a great design without coding experience.

The term “web designer” is subjective and means different things to different people. To some, it equates to “designer” or “graphic artist”. To others, it’s someone possessing good front-end coding skills who can create an HTML and CSS layout with JavaScript interactions. There is an infinite variety between those two extremes.

The arguments which support having coding skills:

  • a basic knowledge of web technologies can be obtained quickly and the resources are free
  • coding knowledge helps designers talk the same language as the developers building the site
  • it helps designers avoid elementary mistakes
  • all artists should understand the medium they are working with
  • a designer with coding knowledge is more valuable than a similarly talented designer without.

The arguments against coding skills:

  • a talented designer will do great things without coding knowledge
  • time is precious: it’s difficult to learn coding and keep up with the rapid pace of development
  • an architect does not need to understand plumbing or electricity supply; that can be handled by an expert in those fields
  • if you don’t understand code, you aren’t constrained by limitations and can push the boundaries of the web.

I summarized my opinion at the time: designers should understand the basics to avoid mistakes. Advanced coding abilities should not be necessary but an appreciation of web page construction is essential.

What’s Different in 2013?

Web development has become increasingly specialized. A decade ago we didn’t have roles such as digital strategists, social media specialists or SEO copywriters. The jack-of-all-trades term “webmaster” is no longer used or relevant.

Web jobs have been siloed; even freelancers can make a good living from ‘just’ graphic design, JavaScript coding or database creation.

However, there has been one major change which affects everything: Responsive Web Design. It’s no longer practical to provide a single Photoshop mock-up since it cannot illustrate all layout and animation possibilities (arguably, it never could). Ideally, designers should produce interactive browser-based prototypes. There are tools to help, but solid coding skills are beneficial — if not vital.

That said, you need to start somewhere. Photoshop images or hand drawings are a reasonable first step. But can you make a living from it?

Curiosity is Key

I have worked with great designers who had little coding knowledge. Similarly, I have worked with mediocre designers who had good coding abilities. However, the web has moved beyond the fixed-width designs which were prevalent a few years ago. A designer who does not appreciate the subtle complexities will struggle to create a usable mock-up.

In my opinion, a good web designer is interested in the web. I wouldn’t necessarily expect them to hand-code a grid layout, but they should at least understand what a grid layout is and how it can be adapted for different screen sizes.

Embrace the web as a medium. A little time spent analyzing the primary building blocks will make you a more valuable asset and improve your output.

Or do you disagree? Can a web designer still do great things with little more than a passing interest in web technologies?

Free book: Jump Start HTML5 Basics

Grab a free copy of one our latest ebooks! Packed with hints and tips on HTML5's most powerful new features.

  • Anonymous

    I don’t know why any designer would handicap themselves by not learning to code. It’s integral to the process, in my opinion, and I deliberately spend time learning and expanding my skill set in both. I couldn’t imagine only doing one or the other. I love em both, and they’ve become all one and the same to me.

  • Rob

    A Designer who doesn’t have coding knowledge is not a web designer, they’re just a designer.

  • Fred

    Good question, I develop for a graphic designer who brings the clients in at times it can be a headache to do the designs for this person due to lack of understanding of some of the constraints are and I also have to say sometimes that’s not doable! But it does stretch my ability as a front end coder to work with her! Agreed the responsive design has become an issue because this designer has no time to spend on what it entails to do a responsive site… I find it hard to do it all and am myself wondering whether I should just branch into email newsletter design which I also do at present…

  • Anonymous

    “an architect does not need to understand plumbing or electricity supply”

    That belittles the work that the coder does. I can probably draw amazing-looking buildings, but they are probably impossible to build, because I do not have an understanding of what works and what doesn’t in the actual construction process. An architect does have that knowledge, so an architect is much more in line with designers who can code vs. those who cannot.

    Expanding on that idea, would you consider it OK if someone were to create a painting in Photoshop, but expect someone else to actually put brush to canvas to bring it to life? Or sketch amazing dresses, but have no idea how to sew?

    The knowledge of how something should be executed is as important as all the other parts of web design. It should not serve as a limitation any more than all the other things that feed in to how a site should be designed.

  • Nick Young

    Ok this is interesting. But now my question is, should Web Developers have design skills?

    • Anonymous

      I think a lot of programmers go into web development because they enjoy the visual aspects. They may not claim to be competent artists, but many would state they have an eye for design. Finally, a web developer can create a web site using their own design (no matter how poor that may be). The same cannot be said for a designer without coding experience.

  • Varun Nath

    If an architect doesn’t understand the basics of electricity and plumbing he/she will end up making a unusable property which the specialist will be unable to fix as the very basics of design are wrong.

    • Londonosophy

      @Varun Nath – Well said!

  • Dídac

    Totally agree with the post.

    I also think, nowadays, designers who wannabe web designers need to start thiking in “mobile first” concept.

  • Peter

    I’m a web designer and I’ve recently started learning html/css/js/php. (although it has been quite an easy journey so far as I do have a computer science background) It has had a dramatic effect on the way I approach my designs. Understanding the DOM model as well as the capabilities of CSS and JS has completely changed my workflow – I now spend minimal time doing basic mock-ups to establish the visual language of a site while jumping into front-end prototyping as soon as possible. I think coding is an extremely valuable skill for a designer to have. However some of the best designers I know have no interest in learning to code. So it’s quite subjective – but I agree that in the age of responsive web the designers who can code have an edge over those who can’t.

  • Anonymous

    My job title is ‘Web Designer’, but my role barely involves touching Photoshop and related graphics programs; my role entails front-end development, creating designs (responsive by default) with HTML and CSS. So I think the term ‘Designer’ is outdated, but it still lingers because it’s easier for non-web-savvy folk to understand what one does as a job.

  • Daniel

    Come good points there Craig. One thing though…as much as I love Photoshop, designers should be using Adobe Fireworks for websites. The only people who will argue Photoshop’s corner are those who are too lazy to learn Fireworks :) The pages feature in Fireworks allows for desktop and mobile versions of the site too.

    • Anders Bakfeldt

      Fireworks is dead and won’t be developed on anymore ..

    • Anders Bakfeldt

      I’m a “Web designer” currently working on a big RWD project. I purposely don’t code at all, and I shouldn’t, as I would never deliver anything that was on level with what a real developer would be able to. All I think I have to do on an ongoing basis, is to keep up on a high level with the current online development concepts, like what’s up and down i RWD, the coding frameworks available, UX issues and some basic HTML/general coding understanding etc. As to how to go about it I did actually do basic layouts for Desktop/tablet/phone in Photoshop which the developer and I are now building on in a working prototype. Best of both worlds if you ask me really..

    • Kerstin

      Finally someone else who thinks that way. I love fireworks too and find it way more useful for designing a website or email than Photoshop ever will be. Too bad they will not be releasing anymore future versions of it.

    • Kerstin

      I also think it should be a mid term. I don’t believe that a designer that has absolutely no idea about web technologies is actually capable of coming up with a good mock-up because they don’t consider all options and possibilities. I don’t think in depth knowledge is required and probably not even the usage of it should be required but for sure the need to understand and how it is changing.

  • Pino

    I’m a developer. And I still have to come accross the first designer that knows how to write good code. I always end up rewriting the templates (to twig for custom apps and phptemplate for Drupal7). This creates double work.

    But this is not the problem. A designer shouldn’t be designing pages; websites change. A designer should create a set of styles and rules for the lay-out of a page. Keep it abstract, choose the colours, define the typo, … To put in other words, create a Charter.

    This way you get real consistency accross the website instead of looking at each page as is. When you are showing a news item, it should always look the same. When showing a date, this should always have the same format/Styling. The primary call to action button should always have the same colour, forms, …

    So no, I don’t want my designer to know html/css/js , and the argument ‘a designer needs to now what the restrictions are’ is a non-argument. Everything is possible, what happened to the goold ol’ first program then hack untill it works mentality?

    Now all designers end up using is jQuery. If the answer aint jQuery, then we change the design. Let us programmers do our work. I don’t walk over to a designer and say him how the typo should look like, what colour he should be using. Simply because it is not what I am good at. I can hardly keep up with web-standards, so why should a designer do?

    • Anonymous

      I agree. I’m user experience person with a design background and have a specific set of skills that I bring to a project. I understand code to a degree but can’t build a site on my own. I used to feel bad about that but after working with great coders who were happy to let me do what I do and for me to let them do what they do I saw the value of specialization. What helped me is learning the limitations of my developers and the platform they’re working on so I’m not suggesting things that won’t work time and time again.

  • Barbara

    In my experience, the thinking process for a graphic designer and a coder/programmer usually don’t exist in the same person. Fortunately, there are those of us that can bridge that gap. In the past I had students work under me who were fantastic graphic artists, and others who were wonderful programmers. So I knew what to request of each and I’d put it all together into a cohesive design. Because I span both areas, I can do both. However, I’m not a fantastic graphic artist and I’m not a wonderful programmer. But I can call on those that do and I can speak their language and tweak their work if needed.

  • sandy pittendrigh

    Should coders have design skills?

  • Tim

    Totally agree Pino – the web has moved on from the days when designers came from a print background, would design a page and get a developer to code it, and then complain when it didnt work in Netscape. Now anything is possible and web designers are fully immersed in an online world. The old argument that a designer should know the limitations of the medium doesn’t apply anymore.

  • Anonymous

    I am a ‘Designer’ at heart – whether it’s for the print or for web. Also, I teach ‘web design’ to Graphic Design majors at the university level. My inclination is to move toward the term Web Architect. While, as pointed out in the article, “an architect does not need to understand plumbing or electricity supply”. That architect better damn-well know how to design a building that will get the right amount of water pressure up to the 44th floor. So, while the web designer may not have know how to semantically write code, he should understand code enough to make his designs functional.

  • Kurt

    In my case I started out of college as an artist/designer. Then when I got a job as a web designer I found out that I needed to learn how to effectively code html and css out of necessity to do the things I was designing. Before this I was quite ineffective at writing code. Now as I have progressed over five years I would have to say that knowing CSS is vital to an effective designers tool box. And for me, knowing the limits of Javascript and other programming languages like PHP will only help me me a better “designer”. Do I have to code? If I want to do it all for a client, yes. Do I need to code? Probably not if you are an effective “web designer” but it helps to know what is possible.

  • Chris Price

    Web development has not become increasingly specialized, at least not when it comes to design and coding. If anything, with the standardization of code being realized including RWD web development has become much less specialized since 1998 when I created my first website.

    Web designers should have coding skills. The argument the RWD has made coding more complicated is utterly false. If anything, the fact that we now have the ability to create one site that serves all purposes, and that designers don’t have to code for IE 6 makes the web infinitely easier to code than in the past. When HTML5 and CSS3 become standard coding will become even easier! Not to mention the countless software applications that code for you. I know all so-called front-end web developers hate web design applications, however, there’s no escaping the fact that they are being used by businesses and independents alike. Eventually the combination of the advancement of design programs and the advancement and standardization of web code will lead to the extinction of pure front-end web developers.

    Most good designers have talent, a craft. Most people are not good designers and never will be. Developers deal with technology. Anyone can learn technology. So what you have are some talented designers out there who illustrate, design, and create while learning the technology side so they have control over the final outcome of their finished designs.

    Web developers don’t always know what’s in the designers head when looking at a layout. A layout only shows one part of the whole design. It’s like looking at a cube drawn from the front on a piece of paper—you have no idea what the backside of the cube looks like.

    Under arguments against designers coding he states: if you don’t understand code, you aren’t constrained by limitations and can push the boundaries of the web.

    Firstly, all great design flourishes under constraints. Secondly good designers always push the boundaries of everything. Countless times throughout my career I’ve been told by IT or a so-called web developer that something won’t work, only to code it for them so they can see my vision for themselves and help me implement it.

  • ckdesign

    I think Web designers should know at least the basics of HTML and CSS so they understand what a developer is talking about when the developer tells the designer that a grid system is being used and they should think about creating consistent spacing between visual elements because making a design pixel perfect complicates the grid and takes twice as much time to do then sticking to the grid.

    Graphic Designers are expected to know and be familiar with the printing process so they can make designs that will print the way they expect. They need to know what the colors will look like on cretin types of paper, they need to know what bleeds and margins to use with different types of printers, they need to know how to indicate die-cuts and perforations in their designs. They need to know what paper weight means when picking papers and printers for their jobs. These are necessary skills for talking to advertisers about ad spaces in magazines and news papers etc.

    To say a web designer doesn’t need to know html is like saying a graphic designer does not need to know anything about the printing process, just toss a design at the printer and wait for them to say ‘this won’t work’ then redesign it is a bad process and it wastes everyone’s time.

    I would like to think if web designers stopped thinking ‘anything is possible’ for the client who has a small budget, I would stop seeing a billion different margins and other odd little designs that take time to replicate. Just because this is the web doesn’t mean we should let go time honored print rules like the ‘rules of three’, three colors (for fonts and design elements) three type faces, per page and consistent spacing and sizing of design elements. Knowing how CSS works is more important (in my opinion) then HTML, if a web designer can plan for a few elements to share the same styles and leverage cascading in their designs I have no doubt that the development process would go faster.

  • Miguel Azevedo e Castro

    I’ve started back in 1999 as a “self-made” web designer, designing webpages in photoshop and then giving them life trough front-page. (argh)

    Somewhere in the mid 2000’s I’ve abandoned tables for design purposes and started using CSS to style the contents, at that time I’ve started hand-coding my HTML/CSS, since there was no wysiwyg editor that would fit my needs.

    Javascript and PHP followed, and around 1996 I’ve committed myself to learn PHP and MySQl. In 2007 I was exposed to Joomla followed by WordPress, and from that day I’ve been almost exclusively developing over WordPress (custom Themes, Widgets and Plugins) for corporative websites.

    I still do my own designs and then code them, both the front and the back-end.
    I really loved “Photoshoping” but then I’ve fell in love with code…

    I still introduce myself to people as a web designer, although currently i’m much more a developer then a designer

  • Paul

    Designers can no longer use print tools like Photoshop to design layout for the web. That’s more important to know than whether they can write a media query. Create a psd comp as the design directive, and you can guarantee you’re going to make the developer have to make the real design decisions.

    We’ve been arguing about designers who can’t code since table-based layouts. There’s a difference between designers who don’t know what they’re doing and designers who can’t code. In all the web’s evolution, neither has been eliminated yet.

    A more important discussion might be can or should the designer who codes keep up with the modern trend of the ‘back-ending’ of front-end work? It’s no longer enough to be an expert in CSS, you better know how to SASS, LESS, HML, MVC, Bootstrap, moderniz, angularize, node and manifest the whole package.

  • Susan

    To have accessible designs, you need to understand semantics and the available structures and what’s required to support them. Like knowing that tables need captions and the the Definition List is your best friend. Think a designer can choose to learn about coding concepts and structures without knowing how to code, but it’s best if they can.

  • Creativity

    A “web” designer who doesn’t code is really a graphic designer. There are so many other things that go into a great user interface other than a pretty picture.

  • Vinicius Lima

    I am a web design instructor in a Graphic Design Program in an Art School. I am also an architect and got a bit surprised with the text argument that an architect does not need to know plumbing. Anyway, I always tell my students exactly what the text says. You need to understand the basics to avoid mistakes. Coding is becoming more and more a necessity in the field of design. Learning to code will later be the way one approaches design and we cannot turn our minds away from it. Not knowing how to code or staying away from web technologies can only take your web work so far. Will you become a developer? Who knows? You might. But if you do not, you at least can discuss a project with a developer and make educated decisions and be in control of your work.

  • JohnnyF

    I’m a Front End Developer for a large enterprise site. I work with both “traditional” designers and what I will call UX prototypists. The main difference I’ve found is that the traditional designers tend to deliver flatter photoshop mock ups and still expect pixel-perfect end products for the desktop experience, and both mobile/RWD and Accessibility are afterthoughts that end up blocking work until thoroughly hashed out. However, the UX protoypists have already mocked up or prototyped basic responsive treatments and given a lot of thought to what is achievable and makes the most sense – what is practical usually wins over what is possible, and we work closely together modifying requirements as we go along.

    As a developer who must then code to these requirements, I’ll take the UX prototypist every time. As someone else mentioned in a previous comment, they end up creating design patterns and style guides, and may create partially functioning micro sites of the end product used for discussion purposes. Little if any of that code is actually reused in the actual product because it does not adhere to the stringent coding standards and architecture we actually employ on our domains, but it is not wasted work because while a picture may be worth a thousand words, a functioning prototype (or at least a well thought out collection of responsive comps) is worth a thousand pictures.

    I feel that modern “web designers”, or in my case User Experience designers, need to have a really good understanding of Responsive Web Development, CSS/HTML, Accessibility requirements, and even some actual device testing experience. Without that, I don’t think they will last very long in the modern web world. Web Design/Development has changed vastly since I started in the field in the mid ’90s, and I’ve had to adapt to many things just like everyone else who came on the scene then. It will continue to change in ways we cannot yet fully grasp and will eventually evolve into something completely different ten years from now I’m sure, just like it always has done. We must all keep up with the times, or eventually find something else to do.

  • K E M

    Interesting, all the angles… – as a designer, for me, its makes sense to understand about the code, even if not being able to write it from scratch, so innovation can take place where the creative mindset of the visual mind can work with the technical mind of the programmer/coder (and vice versa) to push towards fresh exciting ideas. A web designer could end up being a bit stunted if only kept to the minimal design ranges as he has to incorporate the coding. I agree with Pino – give the programmers ideas and let them sort it out and let the designers be original, yet within the understanding of coding. Too many templates around really ..

  • M K Zeppa

    This is a very interesting post. I would approach the answer this way…what is a website made of…visual appearance, functionality and “literary” (I am using this word very loosely) content. Not terribly unlike a film. If the film maker is a solo kinda guy…then the film maker needs to be visual designer, planner, camera man and script writer plus editor, director and producer…so if a “webmaster” or lets just say web site creator is a solo kind of guy (or gal) then they need design skills, coding skills, editorial skills, etc. etc. If the film maker is part of a big studio, then he or she probably has the luxury of focusing on being one of the many hats…the camera person, the set designer, the script writer, etc. If a web professional is part of a web site creation team then they can specialize…visual design/appearance, functionality/coding, content creator (ok clients usually grab that job) It is always helpful to know the limitations imposed by the structure of whatever medium you choose to create with …then perhaps you can see a way beyond those limitations. So, yes designers are best served by knowing at least how coding works if not how to pull it all off themselves…unless said web professional is a solo shop…then they better be able to code or to adapt any code they use from the wide world of templates.

  • Dorsey

    Engineering and design are two separate skills; left brain vs. right brain. The most prominent field that combines both skills is architecture. In other fields, especially web design, that is rarely achieved.

    I know that many graphic designers consider “back end”/server coding to be something they can easily master, but in my experience what they master is the language syntax but not the engineering part that underlies good software design. Sure, their web site combines PHP and MySQL to produce results, but the code is usually difficult to comprehend, overburdened with unnecessary (and often incorrect) language constructions, and the DB is very poorly designed with respect to 3rd normal form.

    Frankly, I’ve never met an engineering specialist who considers him/herself an artist or graphic designer, while the reverse occurs all the time. Maybe the difference is that it’s understood that art must come from innate ability while engineering can be learned from a book.

    • Judit Kovacs

      I so agree with both Dorsey and Brian1 – I cannot imagine one without the other – I normally do the “5 jobs” and the separation of the jobs came from (my view) people who may not be able to do all but see monetary rewards in pushing one element like marketing – the big thing today or the SEO of yesterday.

      It would drive me crazy if I had to battle with a developer who technically rigid and tells me what the design should look to make the dev job easier – the two goes hand in hand: for me design comes first and then coding, and I call it partly problem solving – to find the way for getting exactly what I want. And I do not argue with myself and not adverse to asking for help with specific coding issues.

      And marketing? One cannot market a badly designed site which probably lacks quality content, no matter how smoothly it might work. So back to the holistic approach – good design, quality content, do your SEO in the process, and do not restrict yourself to on-line marketing.

  • Brian

    If you don’t have basic to intermediate coding skills, you’re out in the cold. Unless you’re looking for low-level work on Craigslist, eLance or oDesk, you’re not going to get much attention as “just” a designer. People want to hire one person to do 5 jobs now, so you must know how to code. It’s no longer optional.

    I agree with Daniel, Fireworks has amazing wireframing and mobile tools! It’s worth learning just for the efficiency you’ll gain in early prototyping.

    Developers don’t want to be told how to code. Then go on to state: “Let us programmers do our work.”, but want to tells us what a designer should create for this and how to design that? See the hypocracy? I didn’t learn to code out of want, I did it out of need. I need to have marketable skills in a tough economy, so I learned it. Yes, I doubt it will ever be up to a Dev’s standards, but having known many Devs, I’m really OK with that, because they don’t know design to my standards either. Though, don’t get me wrong, I do appreciate the big knowledge that they have shared here!

  • Ben Hayes

    I agree with Pino. I am a Web Designer who designs websites for Drupal 6 & 7 and have been getting by well with knowing HTML / CSS / and jQuery. I let the developers stick to the back end stuff or stuff that I am uncomfortable writing if I know I am not correct.

    • Anonymous

      You claim you’re a designer but many would call you a developer (who happens to have design skills).

  • Alejandro

    We all know this industry is very competitive. That web designer who knows little or no coding had better have ground-breaking design skills! Otherwise, there are plenty of web designers who design & code good to fill his place.

  • Thomas Unthank

    I am an individual who spend the first twenty-five years of my professional career as “print” based designers. When I left my last fulll-time job I know I needed to learn html and csss (in 1999) and keep that knowledge up and current as I build presentation elements for a couple of non-profit corporate websites. Understanding and being able to dig into the code allowed my to create better websites that address the organizational and audience needs. My biggest problem at one point was not knowing enought about CGI to further the implementation of an element of design responsibilites on the project.

  • Rob

    Worst comment system ever. Why am I getting spammed with all the replies in my email? I didn’t ask to be notified of follow up emails. Reporting you to the AMCA.

  • Arthas30

    Should people who know to design and code be paid more than people who just code?

  • Scott C.

    I think people have made this “learning to code” thing sound way more difficult than it really is. HTML and CSS isn’t that difficult to learn. You should give it a try and get it over with instead of dismissing it and wasting your time arguing why you don’t need to learn it.

  • Ulas

    Designers should know how basic css layout works so they will not constrain their designs with uncodeble visions. More, this would increase the productivity of the lifecycle and decrease project times. So I think designers most certainly should know basic html and css to help developers and understand each other.

  • Pino

    Reading all the post and I fot shocked by some comments. Designing is an art, and not everyone has it. We all aggree on that. But programming being an art, no no no. Everyone can learn to program. This makes me sad.

    Programming is an art. And one of the most missunderstood ones. Writing code is more then just bashing the keyboard and including jQuery/bootstrap/… untill it kind of works.
    Programming is about writing SOLID code. Programming is about automation, solving problems, the love to do things that haven’t been done before.

    I advice everyone who thinks programming is not an art to have a look on github. Browse some random repositories and look at the code. Or have a look at symfony, drupal, … and then look at your own code. Open your eyes ;)

    I also noticed the comment. ‘When an architect has to design a 44 stories building he has to know about plumbing because of the water pressuer.’ True, but a 44 story building will never be designed by a solo guy. And it won’t be designed by the architect around the corner. Stop thinking everyone has to be able to design the biggest greatest and best thing. Teaching your students they should AND master programming AND design is wrong. I for instance will never be a top programmer, neither will I ever be able to deliver stunning and boundary pushing designs. Neither will 99% of us. Time to accept that!

    Another non-argument is the fact that a designer should know the limitations. What limitations? the only limitation is the programmer, not the language. That is the beauty of programming. A real programmer is able to implement whatever he is told to implement. Just like a real designer is able to make every lay-out picture perfect. Simply look at all the stunning web-apps out there. They even ported the unreal engine to the browser. They created an entire os that only uses web-languages. Now say again that not everything is possible and that a designer has to know the limitations of the web.

    And that brings me to some comments who, in my opinion, touch the truth. Everyone can be a ‘webdesigner’, ‘webdeveloper’, ‘guru’,… All you have to do is add that little piece of text to your twitter account and randomly tweet some fancy programming words like ‘My html is compiling to javascript and SASS’ and ‘ I so hate html4, html5 is so much better’. Most people will be stunned by your knowledge and praise you for it (endorse on linkedin). But this doesn’t make you a programmer. Neither does a MacBook and a regular visit to starbucks make me a good designer.

    dixit!

  • JDW

    Maybe to a graphic designer html and css are ‘coding’. To anyone who actually ‘codes’ for a living, they most certainly are not.

  • Tshwarelo

    @Ulas you don’t make sense in your comment. “designers most certainly should know basic html and css to help developers” in fact designers should master CSS and HTML (these are tools for design) but have basics on back-end languages such as PHP, ASP, MySQL etc.

  • Londonosophy

    I think resource is key to this question, which does make the question you’ve asked relative to the website at hand. When a firm has the luxury of a team for designers, front-end and back-end developers then arguably only basic knowledge is needed. But for smaller firms that are aiming to be more nimble and responsive to the ebbs and flows of the internet, then I would suggest 360 degree knowledge of coding is essential. I’m probably a bit of an anomaly in 2013 trying to cover the old webmaster role, but for me web design was as much a learning exercise as a profession.

  • Anonymous

    I think that graphic designers that call them self web designers, should learn to code enough to do their job. When you rely on programs and plug-ins to do what you do – you always come to roadblocks – when you do not know how to program, That is when they call someone with coding skills to help them and they undervalue the value of learning to code. They take the easiest way out – to get the job done. Give a hungry man a fish and he will feed his hunger, teach a man to fish and he learns a trade and can provide food for himself.

  • Anonymous

    Never met a great designer and coder. You’re either one or the other or neither.

  • J

    HTML and CSS are trade tools; PHP, T-SQL, .NET, classic ASP, ColdFusion, etc….that’s code

  • Artur

    I have worked with designers who are also coders and designers who can’t code at all. I see two main points: The first one is basically the cost. If the project has budget to afford someone to deal only with design, still you need to consider there are impacts in communication, documentation, and obviously implementation. Not necessarily having a person exclusively focused on design will increase usability and make your product more responsive, adequate to different devices or even beautiful. But if you can’t afford or there is no cost/benefit in the approach, a front-end developer (let’s assume this is the term for a designer who codes) is a more adequate choice, and in most projects I would go with this one. Forget about HTML and CSS, as well, the other point is that a designer (specially one that doesn’t code) must know about Interaction Design, and for this, he needs to know something about what goes under the hood of a web application’s architecture. Design is also about intuition and aesthetics, but is far from being Art.

  • C

    @J – You must be a programmer and not a web designer who understands how complex front end technologies can be. I have worked for Government, small private business and large corporations. At every place there has always been a programmer somewhere saying front end technologies (HTML, CSS, Javascript) are not code… Both sides need to respect the front end and the back end. Btw, I code for the back end as well and both can be equally complex. At any rate, if “designers cannot code” they are limiting themselves.

  • Barbara

    I agree with you Pino! That’s why I go to our graphic artist for design and to our programmer for code, then I put it all together. They each excel in their own profession. (So not sure what my title should be!)

  • John VR

    If you are a web master or trying to make a living out of building websites for customers, the more you know the better. Clients want to have a one stop shop not a desgner for this a graphic artist for this a database specialist for something else, they want a guru. I agree with the above statement obout fish, do it for them and they will nevwer learn, give him the tools and he will be able to make a living, everything has a learning curve, in today instant gratification mind set, we will get a society of specialist who can not do anything outside their scope, how many people can still calculate a square root without a computer or calculator ?

  • MSHYYC

    It depends on what you define as “coding”. Some people (mistakenly) don’t consider (x)HTML, CSS and JS as “code”. Web designers should understand, at a basic level, all of those. A good web designer will also spend a certain amount of effort to have a basic understanding of templating markup and libraries/frameworks like jquery as well. No need to be an expert, but enogh that they do not freak out if they see it. The most important thing is to know the tools of the trade, not to become a programmer.

    A web designer should not concern themselves much with server-side coding in C/C++, PHP, Perl, Python, SQL and what not–if web designers find themselves in a situation where their work is being heavily interwoven into the latter kind of code, then the programmers/software architects should be fired because they’ve failed miserably with separation of concerns and management of the project.

    The article points out the main arguments well. Graphic designers are NOT web designers. I dismiss people who call themselves “web designers” if they send me PSD files ot other bitmap mock-ups of websites. Websites are NOT brochures–do NOT send me something ready to send to a printer! Kill your photoshop–kill it with FIRE!

    The WWW was NEVER supposed to be “electronic brochure”. HTML from the start was supposed to be “responsive” and deliberately did not include fixed layout options for a reason. Much of what CSS and HTML allow you to do for fixed layout was due to the demands of print-biased graphic artists who didn’t “get it” about the web demanding that ability. JPEG-Jigsaw-puzzle tabless were always loved as much as the BLINK tag and nobody has any business pulling that sort of crap in the past dozen years or so.

    For that reason web designers must be comfortable with web CODE, not just graphics. They need not be responsible for generating all that code, but they MUST appreciate the dynamic nature of a website, especially as they evolve into “applications” that run on a variety of devices. Without that appreciation, the graphic design can hobble functionality–they inevitably create background elements with non-repeating gradiants that only work at a fixed resolution or aspect ratio and layouts that ignore accessibiltiy requirements and user preferences (nothing aggravates a user more than a site that breaks when you change the font size or overrides user’s font size preferences for example).

    The one thing I would say is that I disagree with most of the reasons given for web designers to NOT have coding knowledge. Lack of code knowledge as I have argued above does not enable the designer to “push boundaries”–instead it imposes boundaries on programmers and others on the project, restricting them to the “print media” paradigm when they should not face such restrictions. Also, the fact that architects do not know enough about engineering is actually a serious problem at times. For example, in the “City Center” development in Las Vegas a building was designed with curved, mirrored walls that inadvertently reflected and magnified the sun onto a swimming pool deck so intensely that people could be seriously burned in seconds. All over Canada conominiums and office buildings designed by architects from southern Europe suffered serious damage due to flawed designs that did not account for local climate–roofs that collected too much snow, sometimes causing huge, dangerous ice dams and icicles that could fall on pedestrians at street level and cause fatal accidents, or leak into the interior and develop into toxic mold.

    Just as with architecture, web designers need not have deep technical knowledge, but they MUST have a basic understanding and appreciation and MUST work with engineers/technologists to provide the most effective design.

  • Jameos

    What’s more amazing is you bothered posting this question…kind of an obvious answer isn’t it? And those that argue that designers DO NOT need coding skills is either in marketing, or just a shitty designer themselves.

  • Ted

    The question should rather be “Should Web Designers Have Advanced Coding Skills?”. The majority agrees that if your title reads “Web Designer”, then yes, you should have some coding experience (otherwise you’re just a Graphic.Designer). To me this implies basic understanding of HTML, CSS and perhaps some JavaScript. Any deeper than that and your Web Designer becomes a Web Programmer.

  • Ted

    Furthermore I’d like to say I love this topic. It brings to light the importance regarding ‘Separation of Concerns’ that many modern design patterns such as MVC try to address. Also, with today’s frameworks, it makes sense to let the Web Designers (abstract thinkers) apply their skills to an HTML5 front-end while application developers (analytic thinkers) apply their skills to a web service back-end.

  • Eric Malcolm

    I think that a Designer should focus on design, but be able to code out the HTML/CSS if needed. The same would be true for a Developer, they should be able to do a simple mockup of what they want then develop it (front-end and back-end). Since the skills sets are reliant on each there definitely needs to be some crossover.

    For example, I am mainly a designer. I am pretty good at it I feel and it is what I focus on, but I can also do HTML/CSS and basic javascript/jquery stuff (as well as basic WordPress development), which I would say I am pretty good at as well (I can’t get too advanced with stuff, but I can get it done). So I can go from one end of the spectrum to the other almost completely, but my full-time job only requires me to design, because we have dedicated developers (I am at a decent sized company). If I were on my own, on a smaller team, or at a smaller place I would likely have to utilize my design and coding skills.

  • Karl Mikkelsen

    An architect needs to know a small bit about plumbing and electrial supply, like how water fall, collection of water on the roof and leaving enough space for plumbing to take the water away! He doesn’t need to know about what glue to use to join the pipes though

  • Neth_OG

    I agree with Pino… that is exactly the problem we have here, in enterprise development groups, we need designers to focus on flow, layout strategy and the functional pieces of the UI as they should focus on the ‘UX’, let us developers, front and back end worry about cross browser compatibility and instituting the right frameworks and controls, rather then letting designers piece meal a site using all kinds of plugins that are not necessary.

  • Anonymous

    Wow. Lots of discussions going on. It shows the topic still causes much debate (so, yes Jameos — it was worth posting!)

    I’d like to make some further points…

    HTML/CSS are not coding in the strictest sense. But — if anything — they’re harder. Writing PHP/C#/Java/etc algorithms are straight-forward compared to making a complex layout work in all browsers on desktop and mobile. It is an art, requires experience and lots of trial and error to do it well (if it didn’t, systems such as Bootstrap wouldn’t be so popular). I can understand why a graphic designer would be hesitant about learning those skills.

    I agree with Pino about limitations. However, designers often start their education/career in print design which does have limitations of paper size, texture, colors etc. The rules do not apply to the web but, at first glance, you’d be forgiven for thinking they did. After all, people still use the ludicrous term “above the fold”.

    Finally, don’t get too hung up on the architect/plumber comparison! An architect needs some knowledge of plumbing to leave room for pipes and ensure they’re not doing something impractical. However, they do not need detailed knowledge. It helps if they do have such skills, but other team members can provide those specialisms. The same could be said for web designers.

  • Anonymous

    My short answer; “Yes. Designers need coding skills”. But my main reason for this is not mentioned in your article; performance. Performance should be part of the design-process from the start; it’s literally the first thing users experience (any UX designers here?).

    Having a basic understanding of how code works, how browsers work and how the web in general works is a massive plus for any designer, because he or she can craft better user experiences.

  • adonis

    a good coder who doesn,t have good design skills will never be able to push the envelope of the future using advanced css techniques like multiple backgrounds, the more advanced they will become they wont nearly reach their potential unless coders can be artists too

  • mcstean

    What about someone wiling to acquire those skills ???
    Starting with LINUX ???

  • Scott

    I believe there are two sides to this coin and it is very simple. I am a Front-End Developer with a degree in graphic design. As a designer I felt it was imperative that I know code and even be able to build websites. This allows me to do both. If something in the design needs to be tweaked I can do it without needing to bother a designer. As a designer I can create designs and understand how everything is related within the ux.
    This also applies to developers knowing design. Quite often developers do not understand design principals. They are only concerned with the function of what they need to code and how pretty their code is.
    In this day in age of web development I believe it is necessary for everyone in the team to understand the others job.

    • Judit Kovacs

      I so agree with Scott1: you need all graphic design (print) + web design (front-end developer) + code (back end); you can be better at one or the other, so get help with the “weaker” of the skill/knowledge, the strength and advantage is knowing when help needed and how they fit together.

  • Anonymous

    I think everyone is too fixated on a ‘designer’ being a ‘graphic designer’. The design of a useful, engaging and delightful web experience requires so many more skills than visual design. It requires a wide diverse set of skill from communication design to human behaviour and cultural insight. If you believe that all a designer does is style the interface and that the ability to code is the only other skill they should require then you are missing so much.

    • Judit Kovacs

      Hi Anita! Finally a simple but comprehensive summary! Thank you!

  • Anonymous

    Every design needs to be implemented. Certain decisions in the design process effect how the site has to be made. I majored in graphic design and learned to code to create entertainment software. Designers of software need to be aware of what it takes to create their vision. Little last minute changes in appearance can mean a total rebuild from the start. Lets face it, in this day and age the perception of what it takes to create a quality website or web application has been affected by the availability of CMS systems. People want things done yesterday and for nothing. This is not the industry that existed in the 1990’s.

  • Judit Kovacs

    I agree. And what makes it even worse the proliferation of offers “have your own professional site in 5 minutes, no skills or knowledge required”. There is nothing wrong with a CMS system that is used for designing and creating a site from bottom up not just using somebody else’s template – but that requires, at the minimum, HTML/CSS

  • Mykal Jones

    A graphic artist is not a website designer unless he is skilled in Html and CSS. You are not designing anything if you are using ready-made webpage templates or CMS. A Webmaster is a designer skilled in HTML and CSS, you don’t have to know how to write javascript to use it. Furthermore, If you are using a CMS, you are just rearranging things to your liking, you are not designing anything. If you lack html and css skills, forget about responsive web design.

  • Richard Peirce

    As with most web designers, we start out in graphics but the roles have evolved, even after completing college over 10 years ago, the following year web design was introduced to the course I’d just completed.
    It’s difficult to apply for new jobs now too, without the correct skillset, as well as being a designer, you have to be a developer to evolve. So I’d agree web designers do need coding skills, if only to understand the way sites can be developed. But one term I like to consider above all is being a web architect: needing to know what can be built, pushing the boundaries, but leaving the wiring and plumbing to a professional.

  • Rachel Gillevet

    Hey Craig- We loved your article and wanted to let you know it was featured in our Monthly Resource Roundup http://www.wiredtree.com/blog/the-monthly-round-up-octobers-best-web-designdevelopment-cms-and-security-content/.

  • Wynne Hunkler

    I was surprised to see the title Webmaster used as a “jack of all trades,” as I always understood the Webmaster to be associated with infrastructure and Web server technologies, E.g., Windows IIS, Apache HTTP Server. During the past several years, it appears Web Professionals have been regrouped into several categories and/or titles. Not to stray to far from topic, my understanding of these are the following:

    1) Webmaster: As noted above, having networking or server administrative skills to define DNS records, Web hosting infrastructure with Web Server technologies;

    2) Web Developer: Possessing application coding skills applicable to development of middleware and/or server-based programming languages to provide interaction with the customer interface and the storing and fetching of data from back-end database systems;

    3) Front-end Developer: With skills in the latest markup languages (HTML5, CSS3, JavaScript/jQuery), builds interactive prototypes and/or sites from visual concepts and/or sliced images from designs in Adobe Photoshop, Illustrator or other visual design applications;

    4) Web Designer: Possesses an aptitude for creativity and visual design, who may begin with illustrations or conceptual designs in a sketch book and transferring designs in the applications mentioned above (Adobe Creative Suite). Beneficial to possess coding skills in HTML5, CSS3 and JavaScript, although designs may be passed along to Front-end Developer for coding;

    5) UI/UX Designer: May possess education in Human Factors and/or Human Computer Interaction, experience with Usability testing and application, and/or building Personas to create Information Architectural diagrams and process flows describing the navigation and flow of information through Web sites.

    Although the most valuable Web Professional would be a hybrid of two or more of the aforementioned skill sets, as visual design is considered a right-brained creative talent while the left-brain, logical skill sets are more likely to fall in an application developer category. Fortunate is the person who is able to apply multiple skills across visual and technical areas of the Web Site/App creation process.

  • cindy

    There’s also another distinction here: “an architect does not need to understand plumbing or electricity supply; that can be handled by an expert in those fields”…. a ‘designer’ is not necessarily an architect, either. There are people who do IA, strategy, IxD who also do not design or code. Should they know enough about it to be effective and collaborative? yes. Should they be able to organize, code and design large* sites and applications… no. *smaller brochure sites don’t necessarily require separate skillsets. Larger, more complicated data-driven sites do.

    • Anonymous

      I agree

  • Anonymous

    There are many, new firms coming out and they do not use Graphic Designers, They do not use Web Designers, Developers or Programmers on staff. They are just taking Content Management Systems and Clip Art and calling themselves Web Designers or Developers. It does not make you feel very good does it? They call a Graphic Designer and haggle with them to get some cheap work for their chop shop. They also come across a feature or a problem they can’t solve so they call a Web Designer or programmer to solve it for a few bucks. They have trouble, they farm out the headache to someone and NONE of these people get any credit and they make little or nothing. These chop shops make the money. This is what I see happening around me all over. This new type of agency has a different view of the skill sets we all learned and it is not worth much. They talk to our former or current customers and are telling them how ridiculous it is to pay for good quality work when they can do it cheaper and or faster. I stopped freelancing for these kind of agency’s. This not a problem with CMS systems, I use them sometimes, when they are required. These are the people that really misuse the job title we are talking about and are not going away. You may say you have nothing to worry about. You really do. I have seen great agencies fold around me as the economy hits them and their clients fold. What is rising in their places is these kinds of operations or existing agencies adapting this kind of work ethic. Then they call someone with no idea how to do your job a “Web Designer” and they believe it. The you start getting emails or calls asking for your help. Watch who you are working for, this is about our jobs disappearing as Web Designers, Developers, Programmers and Graphic Designers What ever title you call yourself, take into account all of the work and years it took you to learn your trade. If you have a current job working in the industry savor it and do your best to respect your peers – what ever the job title is.

    • PJ Kovacs

      Dennis, you are so right. I am a member of a number of discussion groups and I could see this trend there clearly. The problem is, how can you tell the gullible that “have your professional web site in 5 minutes” is a con and ending up with (in most cases) low quality rubbish flooding the net, no wonder Google keeps sites hitting hard – the innocent as well.

  • sami

    Full stack developer is the way moving forward..!! I am doing reverse actually.. trying to get into css3/html5/advance JS skills/ psd etc.. after being php/js/python developer.

  • Chachie

    Web design is based on Graphic design. Those who don’t know this have never been brought up in the design field. I see this every day. Example: In graphic design we are taught production art first. We come up through the ranks first as production artists and it can be grueling to learn. So, the same goes for web design. We learn to code first in order to know how to design. I feel that designers who do not want to code just don’t want to learn web production! Before the web came in we also had many print designers who never (wanted to) learned print production…They were always the ones that would pass their work to others and say…”make it work.” In all..you need to know how to do your own work before you pass it off to others. Jobs take longer if you don’t know how. Long ago we also had this saying..If you don’t know how to do it…You don’t get to do it!! Quality would improve if we went back to basics because “design leads” not production.