It’s Time To Grow Up.
I have a confession to make: I’m a designer who can’t code. OK, let me clarify, I can code a little. But this website you’re reading right now? Nope. Any of the websites I’ve designed for clients? Not a chance.
Does that make me a bad designer? Some would have you think so.
Back in October, Jeffrey Zeldman had this to say on Twitter:
Spurred by Stuart Thursby’s admittedly misguided “The Case Against Code,” Andy Rutledge followed up with this tweet in December:
Then today, by virtue of being a full work day ahead of America in the UK, Elliot Jay Stocks set the TwitterBlogoVersoSphere ablaze with this 119-character missile:
Yeesh. Here we go again. And so the age-old question is resurrected: should web designers know how to code?
The Architect Metaphor.
Many have made the argument—myself included—that architects aren’t expected to construct their own buildings, so why are web designers required to code their own designs? You may have heard variations on this: the industrial designer who doesn’t fabricate his own products, the chef who doesn’t cook at his own restaurant, etc. Some, lead by Carsonified’s Mike Kus, have argued that this logic isn’t relevant, that the building of a structure is simply too complex and the individual tasks too specialized to be understood and executed by one person alone:
For example, an architect who wished to build their house after designing it would then have to learn how to drive a JCB, lay bricks, be a carpenter etc. Comparing an Architect and a Web Designer just doesn’t make any sense in this context.
Now, correct me if I’m wrong, but hasn’t web design and development reached this level of intense specialization? To successfully pull off the modern website, you need to be able to do the following things (and countless other things that I’m leaving out): conceive strategy, understand user behavior, create a design taking color theory, proportion, typography, and brand into account, write compelling copy, navigate the ever-shifting landscape of HTML/CSS/Javascript, develop in Flash, construct complex back-ends and databases, and under most circumstances, juggle a delicate client relationship.
Is one person capable of all this? Of course not. We separately delegate the tasks of client management, user experience, Flash, and back-end programming. So why is everyone so hell-bent on arbitrarily lumping design and front-end development together?
My guess?
Because That’s The Way It’s Always Been Done.
Time was, you needed to code your own designs. I know I did. My first websites were sketches in HTML, little more than dabbling under the hood of my Angelfire sites. More often than not, you designed in the browser, because you had to. There was no way Netscape or Internet Explorer could have handled the complexity of a Photoshop-derived design. Download speeds were molasses. Code specs were limited. Rendering engines were elementary. CSS had no critical mass. And there was certainly no such thing as a front-end coder. If you wanted to be a web designer, you needed to know code. There was no other choice.
But industries mature. Their output grows in complexity. Specialized labor develops. And soon, there are twenty people performing the tasks previously performed by one. Is the profession of web design mature? Not by any measure. The time I’m referencing above isn’t the late 1800s. It’s the late 1900s…the late 90s to be more specific. No matter how long you’ve been at this, you haven’t been at it for very long. So no, our industry isn’t mature. But that doesn’t mean it’s not maturing.
It’s Time To Grow Up.
To say I’m not a “real” web designer simply because I lack the ability to build my own designs is an insult to a career I’ve spent the better part of the last decade crafting. And I’m certainly not alone in feeling stung. Now, if you’re talking about “those” web designers—the divas who bury their developers in non-standard fonts, rounded corners, and drop shadows, the “artists” who scoff at the mere mention of web standards, the ones who wouldn’t know HTML5 from a RAV4—keep lobbing grenades at those guys. Just don’t hit us with the shrapnel.
If you’re a designer who has kept your coding skills sharp, good for you (seriously). If you’re a designer who has taken up coding recently, I applaud your effort to broaden your skill set. But understand that it’s not necessary anymore. We believe this so fully that we founded our company on this very division of labor: I design it, Nate codes it. Our business model requires intense collaboration and constant communication; Nate’s coding research informs my design, and my design pushes his coding ability. But you know what? We’re doing just fine.
Our industry is growing up. It’s time for everyone to follow suit.
Derek Nelson
Hey Jay. Love the site! Oh wait, what?! You didn’t code it? Your site is stupid and I hate it.
Kevin Holesh
“I’m a damn good recipe writer, but I can’t cook worth anything.”
When have you heard a chef say that. The metaphor thing doesn’t work right when the industry is different.
Nate
Let’s move beyond analogies since all of them break down eventually. If it were possible to magically press a button in Photoshop and have your design translated into the appropriate HTML and CSS, wouldn’t we all do it? After all, that’s exactly what’s happening when you hand your design off to a developer, particularly one who cares enough to check in with you to make sure the design is implemented correctly. If you understand how HTML and CSS work, the actual act of writing the code doesn’t make you a better designer, it just takes up time you could be using to design the next site. While the designer is under a professional obligation to at least grok the differences of font substitution technologies, the compromises involved in delivering a image-heavy page, or the inherent limitations of HTML and CSS, he certainly shouldn’t be tasked with the actual job of implementing sIFR, compressing the CSS sprites, or writing a Javascript function to select every other list item.
At the end of the day, this is a failure of tooling and one of the few things Flash still has squarely in its corner. The programs you use to design websites and the programs you use to build them aren’t the same. Massive amounts of time are wasted regardless of who codes the final product because styles need to be manually recreated. Someday, someone is going to build that perfect combination of Photoshop, InDesign, Illustrator, and Dreamweaver that is geared specifically for the workflow of the educated web designer. (I know who it won’t be.) Except by the time it’s built, technologies like Canvas, SVG, Drag-and-Drop, et al will have again turned the web upside down. It’s hard enough to account for all the interactivity in sites that gives our industry its name. When the fluid animation and power of Flash is eventually wed to the ubiquity of browsers, designer and developer alike will need to step up their game.
Stuart Thursby
To a degree, it all depends on context. If you work at a large ad agency, chances are you’ll be an art director or a developer. If you’re a lone freelancer, you better have a bitchin network or a decent enough idea of the predominant solutions out there.
I think it’s tremendously important for a designer who works primarily on the web to be aware of the limitations and possibilities of most of the major solutions out there. It’s essential for a designer to be aware of what’s going on out there, because different projects may call for different solutions. Total knowledge of them all is not only impossible but also irrelevant, but a deep and broad enough understanding to get to the crux of what might work and what might not is imperative.
What I was getting at with my post which you mentioned above is that the concepts behind the design of the site should dictate the design of the site, not the technology itself. Sometimes, Flash is the best solutions; other times, simple HTML & CSS. However, this kind of knowledge can only come from broad understanding. In effect, it’s the digital equivalent of reading design magazines from North America and Europe: broadening your knowledge and inspiration base.
Alex Magill
I don’t think it is as simple as saying ‘All good web designers must understand how to code’. Furthermore I think this statement has been confused with the statement ‘All good web designers must code the projects they work on’ leading to people arguing cross-purpose.
I think understanding the subtleties and nuances (or even the basics) of code and coding can make most good designers even better at producing fantastic work. However, I’m sure there are a few phenomenal designers out there have never typed a line of html but who just utterly understand the requirements of the project that they are working on and produce incredible work, but I think they are few and far between.
We can only possibly benefit from learning as much as possible about the tools and technologies that we have available. That’s not to say we need learn (or even be aware of) all of them though.
As to whether a designer should code – I think that depends far too much on project specifics. Though a designer who works in Photoshop but understands code is, to my mind, likely to have a better, more communicative, and probably more productive, working relationship with the coder as they will speak a common language.
Rob
Jay,
Thank you. Thank you. Your post is exactly what our industry needs. Not people with thousands of Twitter followers spouting off bad, narrow-minded advice. Thank you for the refreshing point of view.
Best of luck to you and Nate!
Brendan Cullen
As much as it pains me to admit I was wrong about anything ever, I used to sneer at web “designers” who couldn’t code their own designs at my level of html/css/js (wow that sounds arrogant, but hold on).
Now, after I’ve been doing almost purely front-end development for the past 2 years I’ve realized a true web designer doesn’t have to know how to code, s/he just has to understand the medium and the limitations of code.
The designer who I work for knows the basics and can hack around if necessary but can’t code a web site as fast or as well as I can. Conversely, I can’t design a web site as fast or as well as he can.
Together (plus our back-end developers of course), our team puts together pretty high quality work that we could not match individually.
As long as there’s just enough overlap of knowledge between specialties to communicate & respect what each member is doing, the wheel turns pretty smoothly.
And then there are the few times where I have to code up a design from a flat PDF from an outside source, designed in InDesign by a print designer who “also does web design”.
That’s when I appreciate working with designers who understands the medium, regardless of their level of coding.
michael hepher
Agreed. I own/run a design & development firm that has grown to a point where my able yet slow coding doesn’t make financial sense. I simply can’t keep track of design trends, my business needs, staff, clients, and code standards also. I have @thatleeguy sitting at the desk next to me and we work back and forth to push each other to do new things, learn new skills, and build better sites. I admire Zeldman, Elliot J. Stocks and all the rest of them, but as long as I have an understanding of the code enough to communicate it to my developer, that should suffice. I personally can make better use of my time by continuing to put pen to paper.
Saying that a web designer requires code-ninja skills is like saying that Lady Ga Ga should not only write and sing the song, but play the drum, keyboard, guitar, and bass parts, not to mentions do the sound engineering too. An understanding of those pieces is a requirement, but one need not play them at a professional level in order to be considered a true musician.
Thanks for your post.
Kevin Holesh
Stop with the metaphors. Design + markup is not the same as saying every web designer should be able to design, markup with HTML, style with CSS, write the backend code in PHP, enable caching, set up a server from scratch from the command line using Linux, configure Apache, set up a load balancing server, and perform a cron job of the necessarily daily, weekly, and monthly database backups.
I’m a web designer and I love seeing my websites take shape in code so I’m anxious to learn all about it. It gives me ultimately more control over how my design is displayed.
Photoshop does not produce websites. HTML and CSS do.
Jonathan Moore
To a degree I believe that designers who can build out their own designs are at somewhat of an advantage. Not because they can operate as a one-man team, but they have a strong understanding of what works and how to optimize their designs for sites. Although I have worked with some code illiterate people who have a far better understanding of what works well than people who build everything they design.
Today it rarely makes since to try to do it all yourself. There was a time when I tried to personally tackle every aspect of web design / interactive, but since I have focused only on creative direction, design, marketing strategy, etc I believe my work has improved as a result. Now I only worry about creating the most compelling design, and I can hand off the build to some of the most skilled experts to get it done.
In building a business it will only slow down your growth and progress if you try to do it all. Focus on what you do best and hire experts to handle everything else.
Dan Ritz
I think a lot of this comes from designers that have spent a lifetime in print and have no clue how to design for the web and the web-designers that complain about them. If you grew up in websites, understand the interactions, and can make it look good. Knowing how to code it up is probably unnecessary. (this sounds like you, Jay)
But learning how to code is a great way to get familiar with how the internet works.
I think people are trying to make this a black and white discussion and look a bit foolish in the process.
Sidenote:
Architects are expected to know strengths of the materials they use, the ground they’re built on (rock, dirt, sand), the environment they’re built in (rainy, sunny, windy), and whole host of other things that have NOTHING to do with designing buildings.
I’d say architects have it worse than any web-designer. I always think that analogy completely backfires on whoever uses it.
Mike Kus
Hi Jay,
I totally understand where you’re coming from. I also understand why you must feel a bit pissed off when this debate comes up and it feels like people are implying that you’re less of a web designer because you don’t code.
Believe me, I don’t think you’re less of a designer because you don’t code (I was a designer long before I wrote any code) and I don’t think web designers *have to* code. It’s just my personal opinion that it’s beneficial to know HTML & CSS if you’re a web designer for the reasons I stated in my post.
It certainly wasn’t my intention to belittle designers that don’t code and I hope my post didn’t come across like that.
You’ve obviously got a working situation going that works for you, and that great. :)
David Trang
This recent debate is really starting to irritate me. The fact is, coding (aka markup) is SO easy, any WEB designer should at least know the concepts and basics. If they CHOOSE not to code, based on time factors, that’s fine in my book. But if they refuse to learn such a simple language as HTML/CSS and call themselves a “Web” designer, then that it just ludicrous in my book. Not going to change my stance on that.
drhouse
There is merit to the idea of design and code being specialized fields, it’s just having knowledge of both informs one another.
Think of playing music in a band. If you’re a lead singer who can play guitar at the same time, then also work on the production, album art and distribution… it reflects how a competent DIY type of artist can express themselves in a more articulate way.
Part of internet culture as a neccessity at its root has been that creators have been modern renaissance men, some more interdisciplinary than others. Having an expertise in a subject area could be best expressed if one were able to control both the medium and the message, the design, code and content.
This probably is a conversation about how much of a website is a product of a unique voice or a committee. With business, it’s more the latter and when money is involved you have to function under a safe, standard, realiable industry model of production.
If you want to be a rock star, you’re going to be protective of all aspects of your project and rise to your personal aptitude to control code, design, and everything else that you can effect.
Jonathan Harris
Understanding the medium that you’re working in is a fairly sensible if not mandatory prerequisite of any design process. Getting up to speed with the boundaries of any project is design 101, be it a browser, an experiential, an interior, a page or a radio commercial.
There are some basic questions that you ask each time.
You ask which medium, the audience, the time-scale, the scalability, the budget (usually the killer one!) etc.
In web terms this is knowing the limitations of HTML, CSS, Flash, Java etc. If you want to design for web then you need at least an understanding or a working knowledge of these elements. Otherwise you’re probably going to plow into Photoshop and create something astounding that can’t be realised with current Earth technology.
So do you need to Code? Heck no! And anyone making such an edict is naive, rude and arrogant. Do you need to understand, appreciate, communicate and learn? Absolutely.
Jason Zipperer
Photoshop creates graphics. To become a website those graphics need to be coded in HTML/CSS. Until someone makes that step they are a ‘graphic designer’ not a ‘web designer’.
Steve Woods
A whole essay defending why you haven’t picked up HTML/CSS throughout the whole decade of your career. Why not? It’s not like it’s a difficult thing to learn…
You’re a graphic designer. You’re not a web designer. Or do you term “web designer” as a different job to “website designer”.
Roderick Robertson
Designers should know the basics of coding but they should never code. And programmers should know the basics of design but they should never design. I do prefer the architect / contractor metaphor and I do use it with my students. They always jump into coding their bad designs before they really work out their design. The design tools and practices have become more and more complicated and sophisticated as have the programmers’ tools.
However, I have had a number of students who were talented enough to major in Graphic Design and Computer Science. They are all successful web “designers.”
Perhaps what we need to do is to define the word “designer” in the title “Web Designer.”
Jaime Pinzon
The architect analogy has been misused by graphic designers for far too long. Architects designing a building need to have in mind dimension requirements, land use, zoning laws, etc… An architect, like a web designer, doesn’t NEED to build a house; nevertheless the architect, like a web designer, needs to know that some elements have height restrictions, may have structural inconsistencies, and may pose a public risk to the people that might come in contact with his “creation”.
It has been said by everyone on this side of the argument, the problem is not designers that don’t code, but the designers that CAN’T. To successfully design for the web you need to have a thorough understanding of the semantic value of the markup that’s going to be generated to match your PSD, a true care to match your styling to the possibilities of the web regarding CSS, and interest in the art of creating user experiences. If you only create pretty design comps with no knowledge of how the web works, you’re a “Graphic Designer” and someone else is having to pick up your slack wether anyone notices or complains. On the other side, if you suck at coding, but you understand the intricacies it involves, wether you actually code your designs or not is a moot point. You don’t need to actually create them, just to be ABLE to do it.
To finish up before I keep on ranting: I’ve worked with graphic designers who couldn’t code the simplest webpage, and only ONE could actually come up with real good quality work. In all other cases, I end up redesigning parts of the comp in photoshop because the designer decided to skip on best practices. It takes a very special person to be able to design for the web without knowing the fundamentals. There are exceptions off course, but most people on the other side of the argument aren’t.
Martin Leblanc
I have to agree with the quotes from Twitter. In webdesign alot of the solutions to problems are based partly on what’s possible technically. Another aspect is the cost for implementing the design. Before CSS3 having rounded corners would take a lot of time (cost more) to implement, so knowing stuff like that can make you a better webdesigner.
Nicole Dominguez
‘Web Design’ is creating websites. Beautiful, functional websites. In my opinion, a web designer is one who can code their designs, as well as build successful websites. They go hand in hand. Would you call someone an artist if they colored a coloring book? No. Same concept. I respect your career and the work that you have put forward, but the mistake on your part was not learning how to code. The only way to effectively design a website is to know how they work. And that is to know how to create one. That doesn’t mean that you have to do everything, nor do you have to code your designs like you do now, but you should know the semantics nonetheless.
One who designs, and does not code is not called a web designer. They have their own title. Graphic Designer. To successfully be a web designer, is to posses certain skills. If not, you can design websites, but not be called a web designer.
Should Web Designers know HMTL/CSS? ;^) bobbyburdette.com
[…] not going to rewrite the whole argument since it’s done so well here (Six Revision) and here (Full Stop Interactive), but being in the biz for 10 years I can throw in my 2 cents on the whole […]
Should Web Designers Know HTML and CSS? | xandot.com
[…] a web designer not knowing how to code their PSDs into HTML/CSS echoed that of Jay Fanelli, who wrote in response to Stocks’s tweet: "If you’re a designer who has kept your coding […]
Jason Cooksey
Why does it matter?
AJB
Is this related to Graphic Design? I ask because Graphic Designers nowadays are also Web Designers so do those need to know really in depth HTML/CSS then? Heck no. In my opinion as an artist, A really great, artistic, right brained Graphic Designer with art pumping throughout their blood that produces amazing, Picasso digital art doesn’t have mind for code so let’s separate these two please. Graphic Design is an ART. Web Design, that’s different but those are mixed nowadays and they both do both tasks so I’m here to defend my fellow artists. There are those who focus on one thing and do it well, the experts… and those who focus a little on everything. If you’re getting divorced, Would you rather have a lawyer that knows marriage law, immigration, criminal, administrative, asbestos, every other kind of law, etc.. when you just need an expert on divorce. I would choose the one that’s an expert on divorce not the one that salads into everything.
Xananax
Being a coder myself and some sort of designer, I used to look at designers who can’t code with contempt.
But I’ve been working with this same designer for a long while now, and although she was not really up to date with standards and general groking about the web at first, she came up to speed real fast (a long time ago). Working with her taught me the following:
1 – She’s much much better at designing that I will ever be. And that is because she focuses on it, rather than disperse in sidetrack skills
2 – Learning to code would help her in her career (maybe), but as the one that codes her designs, I never have to complain, ie, I never feel they come from someone who does not understand code
3 – And most important, her lack of formatting, in other words, her lack of knowledge in the innards of the web actually allows her to be more free than anyone who does know, and come up with innovative things that make me think “what?!” at first but gradually becomes “you know what? this could work”.
This imagination and free mindset is actually diminishing with time as she naturally learns more about how things actually get implemented.
I would advocate that it might actually be BENEFICIAL for designers to NOT KNOW how to code, provided they are know everything about usability, how to design a good UI/UX and so forth.
Webdesigners/code: Stuck in the middle?The One Who Knocks - The One Who Knocks
[…] and a huge difference between knowing what code does, and knowing how to code. Many others think that way, that’s to say: make a website within a digital […]
gangerdesign
Oh, snap—I’m late to the party here. For what it’s worth, thanks for calling bullshit on this issue. To be honest, now that I have several websites in different stages of development all the time, I don’t have time to code them all. Even though I’m good at markup and sling Firebug and Komodo like Coleman Hawkins on sax. The question is, do I want to spend all my time coding? I’m at the stage in my career when I’d rather spend time on concept and art direct. People who criticize designers for not knowing jQuery are looking at the small picture. I run a business. Does that mean I should know the proper method for calculating the depreciation on my office equipment? I don’t have time to do it all. Let the code warriors do their thing. Hire people that are better than you. That’s how you become successful. And that’s probably what got you where you are right now. So keep on with your bad self.
Xananax
I am that same guy that said up there that I agreed. I don’t anymore. I had to give a workshop on that matter, and I researched the issue extensively, read countless posts and comments, went to all sorts of heights in order to have a view that would be as exhaustive as possible. I don’t pretend I do, and I won’t pretend to hold the truth either, but here are my two cents:
My position now is: You can’t possibly design efficiently for the next web if you don’t code (Notice the “efficiently”). In this era of responsive designs, the concept of “page” inherited from print does not make sense anymore. Designing in photoshop does not make sense. The only way you can design is in the browser. Unless you want to create one thousand mockups, one for each type of screen/browser/resolution, with explanations for each for your developers. That they won’t be able to parse or follow. Unless you are standing right behind their shoulder, directing every detail. And if that’s the case, it means the dev is here simply as an tool for you. Why not remove the bridge?
I am not saying designers should be great coders. They won’t, just like coders won’t be great designers. But designers should know more than the basics. They should know how to actually talk HTML and CSS fluently, and rely on the devs for the complex stuff. There is a confusion that HTML and CSS is coding. It’s not. Javascript is, server-side languages are. The dev’s job is to deal with those. The designer’s job is to deal with HTML/CSS. That’s your medium, not pixels, not vectors, but blocks of HTML styled through CSS. And if you design a responsive design in some adobe soft, then you are leaving so much for the coder to invent, because whatever you do, you won’t think of everything.
I really advise every designer out there to get to it. It’s really easy. My workshop was about teaching designers HTML and CSS. In three days, I managed to give them the basics to build pages. Give it a shot.
Design Techniques - Do Designers Need to Know Code Basics as Well? | Blog
[…] Maybe because the question: “Do designers need to know code basics as well?” reflects on the professionalism and integrity of many designers and their working relationships with developers. Here’s what Jay from Full Stop Interactive had to say: […]