Two Cats In A Sack: Designer-Developer Discord

Advertisement

The differences between designers and developers often erupt in pointed jabs on the Web or at conferences. Jokes or not, the jabs create friction whose consequences are real.

I am a designer, and by no elaborate means of job-title-rejigging do I consider myself a developer, but I see the cruelty of designer and developer egos going both ways. So, what happens if someone throws a pair into a sack to hash it out? How do we emerge? Our projects, careers and maturing industry rely on our ability to learn to work together instead of against each other, and looking at what we have in common is one way to begin addressing interdisciplinary cat fights.

Screenshot1

Shared Priorities

A belief that design and development have competing interests is an obstacle to successful collaboration. There are, of course, developers who design and designers who code (I’ll return to this point later on), but the tension referred to here is between the designer and developer who believe that their respective discipline is more important. Conquering this belief is crucial to avoiding a clogged workflow, low team morale and, ultimately, limited project success.

Design is not completely an aesthetic concern, nor is development an entirely technical one; designers must consider how functionality affects form, and developers must be creative in building out functionality. Similarly, if we look closely at design and development, we find that principles of good design are often similar in good development. Focusing on these overarching ideas reveals a large pool of reciprocal interests.

Harmony of Parts

Paul Rand, a designer’s designer, creator of the IBM, ABC and UPS logos, wrote in A Designer’s Art:

Copy, art, and typography should be seen as a living entity; each element integrally related, in harmony with the whole, and essential to the execution of an idea.

He wrote this in 1985. Today, the principles remain mostly the same, but one component is sorely missing from Rand’s statement: technology. Copy, art, typography — and technology — are the bones of a project, where design and development are the joints and skin that connect and hold together the parts. When all of these elements fit together well, you essentially have design and development working together as the support structure for the user experience and overarching concept, the so-called “living entity.”

While far too simplistic a metaphor to cast a strong light on the process (building a website in fact looks much messier2), Harmony of Parts does illustrate how design and development should ultimately work towards the same goal.

Screenshot3

It is also worth mentioning that development, like design, encourages the harmony of parts in programming concepts like polymorphism and encapsulation. These ideas quite broadly mean that pieces of functionality should work well when placed inside or beside other pieces, another way of saying, “each element integrally related, in harmony with the whole.”

Teachability

Both design and programming are teachable, and where there are talented individuals there is also hard work, discipline, teachers, mentors, standards, taste, ruthless editing and constructive criticism, all of which are cultivated. There is bad work and breathtaking work. There is the scrap heap, the slush pile, the useless code: all evidence of learning.

This commonality between disciplines is important because it presents an opportunity: designers can learn about development, and developers can learn about design. The democratization of resources in this information age (which some would argue we’ve already passed45) means that we have little excuse not to obtain, or teach, at least a basic understanding of each other’s crafts. Not doing so will work to the detriment of the team. And when there are gaps in knowledge, rather than reprimanding, we should encourage an open dialogue to protect our most valuable learning tool: the ability to ask questions.

Elegance and Efficiency

Chris Coyier, self-described Web craftsman, blogger, author and speaker, writes in “What Beautiful HTML Code Looks Like6”:

Code? Beautiful? Sure. After all, code is poetry. This is just HTML, so it can’t be quite as intricate and elegant as a dynamic language, but it still bears the brush strokes of its creator.

What is elegance? It could mean restrained beauty and grace, as in art and fashion. But in design as well as math and science, something elegant typically embodies simplicity and effectiveness, sometimes solving two or more problems at once or by an unexpected insight. Elegance, then, refers to underlying content or an underlying process.

Design may rely on aesthetics for its medium, and development may rely on code, but both draw on theories of efficiency (perhaps a synonym for elegance) to create effective output: elegant code is efficient code, and elegant design is efficient design. This means that design and development share some core values of process.

Shipping

In his article “Design Is Not the Goal7,” Francisco Inchauste writes:

The end product (website or application) should always be the focus.

Inchauste goes on to say that too often, process insists on polishing irrelevant deliverables; for example, over-updating wireframes instead of moving on to the build and user testing. The true deliverable is the final product that we launch and that people interact with. Jeff Gothelf goes more in depth in his article “Lean UX and getting out of the deliverables business8.”

In a healthy team environment, we designers, developers, copywriters, user experience designers and project managers are all shippers. Bigger agencies tend to lump design and development teams into the Production Department, for better or worse, and this is telling. It demonstrates that both “creative” and “technical” professionals share a predominant interest: they must ship.

Correcting The Workflow

It may be that designers and developers are perfectly capable of collaborating effectively, and that management and process are the biggest hurdles or frustrations within a team.

Good Ideas Intersect

The logistics of securing work often mean that the earlier a great idea is identified for the project, the happier and more secure the client will be, resulting in a better working environment for everyone. However, it also means that stakeholders will come together early in the process to come up with ideas. This can occur to the preclusion of the very people who will produce the final work, especially in hierarchical agencies. This undermines the designer or developer’s ownership and discourages self-direction and personal investment in the project.

One solution to this problem is to ensure that great ideas are universally respected, wherever their origin. Michael Lebowitz of Big Spaceship famously preaches an agile workflow, saying in a New York Times interview9:

We also invite people from all of our disciplines into all of our brainstorms. Great ideas come from everywhere.

A policy like this opens communication channels in a team framework and dispels departmental inequalities. When something goes wrong, finger-pointing is no longer an option if everyone’s had an opportunity to provide input, and collaborators are forced to learn from mistakes. This is not to say that responsibility is evenly distributed, but allowing teammates and workspaces to intersect in unexpected ways will allow great ideas to surface.

Screenshot10

Waterfall vs. Agile Thinking

In waterfall-structured processes11, where development is held up by unfinished designs, developers are the ones who end up staying late to finish the project on time. Not only is this unfair to developers, it is complicated, because pointing the finger at designers for taking too long is too easy an answer. Responses to a design can be so subjective and cryptic (“I don’t know why I don’t like purple, I just don’t”); true insights require time to unearth and can result in unpredictable delays in the process.

Hold-ups are best avoided not by keeping design and development separate but by bringing them closer together via an iterative workflow. This agile methodology12 distributes responsibility and assigns value to each team member. Furthermore, departments are not tied to an inflexible plan. All of these attributes of agile thinking help to alleviate designer-developer tension.

Giving Credit

In the fable “The Lion, the Bear and the Fox,” a lion and bear fight over prey until they can fight no more and fall over exhausted. Meanwhile, a fox who has been watching the fight sneaks up and steals away with the prize. The moral is this:

Saepe alter alterius fruitur labribus.
From the labors of others, it is often another who profits.

Giving credit where credit is due and sharing the rewards is better, but unfortunately, in a fast-paced digital environment, whoever is left sitting at the table is often the one who gets the final praise. It is up to that last team member (the project or account manager, art director or tech lead) to pass feedback onto the rest of the team in a meaningful context. The cost is minimal (however long it takes to shoot an email or walk to someone’s desk), but the shared joy (or misery) will bond design and development teams because they will see the end product as the force that unites them.

Work Habits: Playing Nice

Sometimes playing nice is as simple as extending a courteous email; other times it is as complex as learning a new skill set. There are many concrete ways, big and small, for designers and developers to become more compatible colleagues. Let’s first look at efforts that can be shared, then at tasks more specific to designers and to developers.

Screenshot13

Both Designers and Developers

Despite being in separate disciplines, our greatest commonality is that we are human. So, many of these shared tasks demonstrate how to play nice with anyone:

  • Keep an eye on the big picture.
    Pre-established goals that are developed by the whole team should inform decisions (and compromises) throughout the process.
  • Cast a wide net for inspiration.
    Look to a variety of sources for a well-rounded understanding of the topic. Discriminate material by quality, not subject matter.
  • Check in early and often.
    Avoid making too many decisions in isolation.
  • Be nice.
    If you must criticize, make it constructive. Being kind14 often reaches far beyond office walls.
  • Teach each other.
    In their book Rework, Jason Fried and David Heinemeier Hansson preach transparency between companies and their customers: “Letting people behind the curtain changes your relationship with them. They’ll feel a bond with you and see you as human beings instead of a faceless company. They’ll see the sweat and effort that goes into what you sell. They’ll develop a deeper level of understanding and appreciation for what you do.” This works for designers and developers, too. Revealing the inner process means teaching, and teaching is a way to invest in a relationship and build mutual respect.

Designers

There are innumerable great tips to help designers become better colleagues. Here are some of my favorites:

  • Explain the design rationale.
    Design isn’t magic, and making an effort to analyze and share design decisions will create a conversation and demonstrate to colleagues that their insights are valued.
  • Practice PSD etiquette.
    Adopt the Photoshop Etiquette Manifesto for Web Designers15.
  • Design thoroughly.
    Think through the interactivity of the product, which includes designing the on, off and current states, designing error messages for forms, designing 404 pages, etc. This will save your teammates valuable time.
  • Be considerate.
    Avoid making others wait on you. Be proactive and organized, and ask for feedback often.
  • Enlist a developer.
    If the technical implications of the project are unclear, grab a developer to go through it with you. They’ll likely appreciate being involved.
  • Learn about development.
    Knowing even a little about code will make you a better designer.

Developers

Here are a few ways for developers to improve their work habits:

  • Make yourself available.
    Being a part of the process from concept to realization will translate into a sense of ownership of the project. Ask colleagues what they’re working on. Make your expertise available as a resource.
  • Simplify the explanation.
    If you can help team members from all levels and backgrounds understand high-level concepts and how they affect a project, you will become more valuable.
  • Develop the design details.
    Much of a designer’s craft lies in the details; if they are forgotten or changed, the designer’s time and effort will be wasted.
  • Be honest about what can’t be done and why.
    Big ideas often struggle against time and budget constraints; that’s nothing new. Knowing the development constraints ahead of time allows the team to create more appropriate solutions.
  • Learn about design.
    Theories, rules and standards play important roles in aesthetic and usability decisions. A little knowledge of these concepts will help you better navigate designs.

Some of the tips for designers will certainly also be useful for developers, and vice versa. Being able to work well on a team often depends on the individual’s personality, so take those habits from either group that will contribute to better collaboration. Do you have other good ideas? Share them with us in the comments.

The Hybrid’s Role

Designers and developers come in many shapes, and design and development skill sets are overlapping more and more. Hybrids, who have one foot in each discipline, seem to be increasingly sought after by clients and employers. This begs the question of whether we need to get along better or simply become more like each other.

Hybrids are in a unique position to answer this question. If you consider yourself both a designer and developer, tell us: What is it that you find easier or harder about being involved in both disciplines? What do you like or dislike about it? What can we all do to become better collaborators?

Post-Disciplinary Collaboration

Way back in 1999, Andrew Sayer, professor of sociology at Lancaster University, published an article titled “Long Live Postdisciplinary Studies! Sociology and the curse of disciplinaryparochialism/imperialism.” Despite the hefty title, he wrote quite simply:

Interdisciplinary studies are not enough, for at worst they provide a space in which members of different disciplines can bring their points of view together in order to compete […] Post-disciplinary studies emerge when scholars forget about disciplines and whether ideas can be identified with any particular one; they identify with learning rather than with disciplines.

Competition is fierce in our industry, and as talented new generations join the workforce, it will only become fiercer. Web makers will need to work harder and more efficiently to retain that quality that clients and consumers value: the ability to surprise. For this, we need innovation, but designer-developer cat fights take up precious time that could be put to innovation. If we instead incorporate post-disciplinary collaboration into our process (a fancy way of saying, “Let’s forget about job titles for a moment and work toward something together”), I believe we’ll be more successful and find our jobs more enjoyable.

(al) (il)

Footnotes

  1. 1 http://www.smashingmagazine.com/wp-content/uploads/2011/05/00McDaniel-CatsInASack-v31.png
  2. 2 http://visitmix.com/work/descry/awebsitenameddesire/
  3. 3 http://www.smashingmagazine.com/wp-content/uploads/2011/05/01McDaniel-HarmonyOfParts.png
  4. 4 http://techcrunch.com/2011/04/10/the-new-information-age/
  5. 5 http://techcrunch.com/2011/04/10/the-new-information-age/
  6. 6 http://css-tricks.com/what-beautiful-html-code-looks-like/
  7. 7 http://www.getfinch.com/finch/entry/design-is-not-the-goal/
  8. 8 http://www.smashingmagazine.com/2011/03/07/lean-ux-getting-out-of-the-deliverables-business/
  9. 9 http://www.nytimes.com/2011/01/30/business/30corner.html?_r=2&pagewanted=all
  10. 10 http://www.smashingmagazine.com/wp-content/uploads/2011/05/02McDaniel-GoodIdeasIntersect1.png
  11. 11 http://en.wikipedia.org/wiki/Waterfall_model
  12. 12 http://www.alistapart.com/articles/gettingrealaboutagiledesign
  13. 13 http://www.smashingmagazine.com/wp-content/uploads/2011/05/03McDaniel-GoodHabits1.png
  14. 14 http://blogs.hbr.org/corkindale/2011/04/the_importance_of_kindness_at.html
  15. 15 http://photoshopetiquette.com/

↑ Back to topShare on Twitter

Cassie McDaniel is the lead UX designer (or whatever) for the Mozilla Webmaker project. Say hi to @cassiemc on Twitter or check out www.cassiemcdaniel.com for design and more words.

Advertising
  1. 1

    Interesting read. Communication and just a bit of empathy seem key. Seeing as I am a developer and most definitely not a designer, what you do recommend for “Learn about design”?

    Any books or other resources?

  2. 6

    Why not do both? :D

  3. 8

    This was a great article and a refreshing read. I consider myself both a designer and developer although I’d say my primary strengths lay in the design side. Having development knowledge has helped me to think about implementation while designing, but I also feel that in some cases has possibly hindered my design approach knowing that some ideas are just not feasible given my development skill set. I also think that being both a developer and designer has possibly “held me back”, in the sense that I’m forced to be good at both, but unable to be great at either discipline. I’ve often wondered if I should stop trying to be both and just focus on one side of the coin. Anybody have a quarter I can borrow? ;-)

    • 9

      Cassie McDaniel

      May 13, 2011 12:13 pm

      Nick, that is indeed one of the drawbacks of being a hybrid. Unfortunately there’s no easy answer. This article is about building a more collaborative team, but I do think there is room for all kinds of skill sets. How we define ourselves often says more about the necessities of our job roles, and I’m sure your knowledge of both will come in handy, but you should definitely do what works for your goals.

  4. 10

    First and foremost, this was a solid article and something we generally dodge in the web community.

    @Nick brings up a good point, in that some of us “hybrids” could potentially be better at designing/developing if that’s all we focussed on. I feel passionate about the topic because of how good or bad it can really get between designers and developers. It works best when both parties understand their roles well but are willing to be taught, as noted in the article. Two things you can’t learn easily… humility and teachability.

    Good environments and conditions between designers and developers will only breed better work, in my opinion.

    • 11

      Cassie McDaniel

      May 13, 2011 12:14 pm

      Thanks Dan. You’re spot on.

    • 12

      While I agree that there’s a “jack of all” tendency for us hybrids, there are other factors. First, because we know the technology, there are ways we can include details that another designer may not have known was possible. On the flip side, I find that I sometimes limit my designs because I know something will be impossible or at the least, difficult. As with so many things, it’s a double edged sword.

      • 13

        Richard Williams

        May 16, 2011 6:14 am

        I’m happy to be able to say that I’m definitely a hybrid.

        Personally I think it’s an advantage to know exactly how everything is going to work together.

        I do a lot of work on my own and I love not having to rely or wait for anybody else.

        I see where Nick is coming from when saying you might be able to be better if you were to focus on one discipline, but I like the change of being able to go back to photoshop and playing with layout after a week of solid coding (or vice versa). Definitely a help when you find yourself suffering from designers/coders ‘block’. I don’t think I’d be able to get as much done if I was forced to do one thing only, and I enjoy both sides of my work.

  5. 14

    I’m a hybrid. I could never say, “I’m better than a Web designer or developer”. I just try to share my knowledge like any hybrid, and try very hard to learn about design and development at the same time,… Do u happen to have 2 ways? for both? I see only one.

  6. 15

    Hi Cassie:
    very thoughtful article – if only more developers would appreciate good design… Perhaps the UX guys should be included in the mix.
    N.B did you work @ Mindblossom, Toronto?

    • 16

      Cassie McDaniel

      May 13, 2011 2:35 pm

      Mide! I did work at Mindblossom, where are you at now? I included UX peeps in the article where I could, but much of the tension seems explicitly between designers and developers. UX designers seem to be standing on a safer middle-ground.

      • 17

        Cool… nice to stumble upon you online
        I’m still working in the GTA… doing front end work but surrounded by hard core developers!! it’s tough, they’re trying to turn me into a developer as well

  7. 18

    I am primarily a designer, but I have solid understanding of HTML and CSS. This understanding really helps me in creating things that ARE possible. If I’m unsure, I go talk to the developers first. BEFORE, I talk to the client, much less show the client anything.

    When it comes to creating something that is more interactive, our project manager works out the details of how it’s suppose to work with the client and developers. Then taking that spec, I design the interface. I when I want to change something, because from a design/usability perspective I think works better, I go discuss it with the developers.

    Our team works really well this way. I think having a solid understanding of what’s possible is key. Not necessarily, being able to implement it, but an understanding.

  8. 19

    Your proposed dualistic view is rather naive.

    A designer would actually be the person who understand what, why and how. Developer just knows how to build it.

    Now you propose that designer just paints it up. Thats not how things work at all most of the time, imo. Unless you use some subcultural definition of designer, which would imply your opinion is fringe, iow irrelevant.

    So, this article ends up being “kind of wierd”.

    • 20

      Cassie McDaniel

      May 13, 2011 2:31 pm

      I’m not at all proposing a designer just ‘paints it up’ nor am I suggesting that developers ‘just know how to build it.’ The idea is that when both designers and developers are involved in the process from start to finish you end up with a better product and a happier team.

    • 21

      @Anon Ancestor:I think you’ve missed the point…
      It’s absolutely vital that deigners have a basic understanding of what a developer does and that the developer has an understanding of a) the general principles of graphic design, and b) the rationale behind some of the design decisions made on a particular project.

      I guess you’re a designer… as a hybrid with a very slight tilt towards the technical, I work with a lot of designers. The best ones all have a basic understanding of how and what I do for them on a technical level. Not that they can do my job, but they are able to appreciate what I talk about. The flip side of this is that they also know that I understand design, and that if I make a suggestion, it will have beenthought through from both perspectives.

      I would be very suprised if i was the only person in the world like that :oP

      In truth, and I think it’s what this article is about, we should all be hybrids, to varying degrees. How much is each individual’s choice, but hybrids we all should be :o)

      It’s all about the ‘C word’…

      Communication…

      And what a great diverse world we live in.

      Oh, finally, Cassie, thanks for a great article.

  9. 22

    hi, I’m a designer by education, but switched to fiddling with the webs in 1997. I have a solid understanding in html/css, js, ajax, jquery, can code in php build templates with smarty and make things work with mysql. To answer your question, I find it very exciting to create, to bring my ideas to life – not limited to the “look”, and not depend on someone else to craft the thing. It helps to have a understanding of the mechanics, logics and tools needed – but I find that it can limit the creative process. I often think that designers without the knowledge of the underlying technologies may come up with truly surprising designs, not limited by the constant nagging in the back of their head regarding the possible implications for the development process. On the other hand, I will never be able to think solely in terms of logics and classes, ignorant to the representation. I love building the web, but sometimes keeping up with all the disciplines and honing the skills needed is a hellofajob, and as Nick says above, maybe the time is better spent concentrating in one thing, getting expertise there. But I love knowing and doing all this stuff. :-) – Tom

    • 23

      Exactly my thoughts, Webrocker. Sometimes I wish I could shrug off the knowledge or thoughts of what’s “possible.”

  10. 24

    As a hybrid, most of the challenge seems to come to me in the form of design. Sometimes, it’s easy to get caught up on small details and things that will work / will not work when it’s time for development. This can leave a hybrid spinning their wheels quite a bit. In my opinion, it’s beneficial to design fast and at a high level in the beginning. This may create a bunch of holes and inconsistencies, but these can be patched up before presenting to the client and before you begin development. This 2-pass process allows hybrids to get ideas out quickly, but polish everything up for development.

    It can be challenging to flip between a designer brain / developer brain but I think it’s better to know both in the long run, especially with the way things seem to be going.

  11. 25

    Well, this is exactly what’s going on where I work. Neither one can see the other one’s point of view. I guess for better or worse I’m the ‘hybrid’. And, I gladly take on the gruff.

    I’m not a php programmer but I use php and can write simple apps and trouble shoot. I’m not a javascript programmer but use javascript everyday and can usually write functionally or find clean code for what I’m trying to accomplish. Nor am I a Unix sys admin, but I interact with a command line everyday as well, (especially with sub version control software; in particular ‘Git’.) I use Photoshop, some Flash and I love to play with Illustrator, but am certainly no graphic artist. I’ve seen programmers and sys admins whip through the command line and editors flinging code and scripts like a short order cook flings hash. I see how incredible they’re skill sets are. I’ve seen our graphic artist do the same with Photoshop creating beautiful designs and mocking up cleaver and useful UX.

    Most of the time I feel like I should know more on both ends. Motivating? Yes. Learning in leaps and bounds? Yes. But, I can end up driving myself into the ground with unrealistic expectations. Glad to hear the idea of ‘Hybrid’. Heck if I can think of those designs or fluently write dynamic languages like I’m writing this response. But, if you give me the .psd I can put it into html, style it with css, add js and hook up the back end functionality sometimes writing code or editing the .psd to make it work.

    Great article. Glad to know we’re not the only ones dealing with this issue.

  12. 26

    Im primarily a designer and quite efficient at that but I did learn javascript, html, css and some flash but I dropped using these skills actively. Why? Because both disciplines are too wide and extensive, you can write average code coupled with average-moderately good design but probably it does not come as a surprise that if you split yourself you lose efficiency in both. However I do believe that in most cases it is possible to do both (most of the webdesign is not cutting edge and does not require top end code nor design and medium to good is good enough).

    What I have done is getting myself a programmer to work in sync with. By now we have been working together for 3 years day-in & out. I have learned alot about coding and coders mentality which has propelled my competency into new heights because now I can direct developers properly and not cause problems and keep both bosses and programmers happy cause I can relate to both.

    I guess my point is, get form partnerships and strong teams – its good to know how to code but from work efficiency point I think its better to have a real good coder who can do whatever you want using fraction of the time you would and he can take your designs and blast away real quick not having to struggle with photoshop skills etc.
    Most importantly respect eachothers talents and include eachother into the “Design” process discussing flows and usability – sure there is stuff you can do alone (drawing details) but flows and usability is something that I find is done best when both are involved since both have their unique input…..

    J,

  13. 27

    I consider myself a hybrid, however as soon as I have to delve into learning new, in-depth programming I get a intense form of A.D.D. and can find anything else to do.

    I am fluent in HTML/CSS but from the little “more intense” programming I have learnt I’ve found that I can talk with developers more freely of what solutions I want to achieve through my designs. And my Designs have improved to work better with Developers and what they are trying to achieve in a project.

    My dream is to become a teacher in Interactive Media Design and the first thing I will tell my students is to learn hoe to code, because I truly believe it improves interactive design in a whole way.

  14. 28

    I believe design is more than the skin. It’s also the number of “legs” and “arms”, as well as what the software has to do.

    • 29

      Cassie McDaniel

      May 14, 2011 6:46 am

      I’m glad you’re questioning that. Determining the shape of the body is a good idea, but many people together make that decision, not just the designer. And design isn’t ‘merely’ skin – skin is a body’s largest organ and a person can’t live without it. It is deceivingly complex; it constantly rejuvenates itself, regulates a body’s temperature, and allows us to touch and interact with the world, all the while staying pliable, impervious to disease, and sometimes is the cause of a disease. Despite all this, people often see the role of skin (or design) as very simple. So while I agree – design isn’t always surface – the skin metaphor works because it infers hidden functionality along with the bits we see.

      • 30

        Martin LeBlanc

        May 21, 2011 3:35 am

        I believe design should be Design as in “Purpose, planning, or intention that exists or is thought to exist behind an action, fact, or material object”

        So I believe design should be how the whole body is put together – not just one layer.

        • 31

          The problem is that people think in development as “building”. Coding is a design process! Graphic design is a part of the design, developer are designing too.

  15. 32

    Shannon Mølhave

    May 14, 2011 6:41 am

    I enjoyed this article and think it has some great tips for creating more of a harmonious work environment among designers and devs. Being a “hybrid” I think it really helps to understand the thought process of developers. Algorithmic thinking is used in front- and back-end development, and while I don’t know how to write PHP, I can understand when discussing a design with our developer how certain elements can affect the coding process.

    This leads to my advice for design/dev teams (which you touched on discouraging a waterfall workflow): get the developer involved throughout the design process. Having a designer explain how they envision a PSD storyboard will work to the developer can bring to light certain parts of the design that either won’t work the way you thought or can be improved upon knowing more about the back-end setup. This can save a lot of time and frustration on both ends as well as help both parties understand where the other is coming from.

  16. 33

    Proud to be a hybrid. But it’s important to note that it’s even more rare for a hybrid to be as knowledgeable in each field (design and development) than a person dedicated to either would be.

    I’m 60/40 Designer/Developer and I’ve worked with people who are 85/15 Developers. It’s true that there are significantly different priorities between the two, but there’s no reason we can’t work together. We just need to see eye to eye.

    Of course, people love Hybrids because you pay 1 salary and get someone knowledgeable in both fields (for the sake of being cheap) but you’ll always get what you pay for. A hardcore designer/developer vs. a hybrid will best a hybrid in their respective field, but then have no experience in the other field that the hybrid can claim responsibility in.

    Designer, Developer or Hybrid; we all have a common enemy: Internet Explorer.

  17. 34

    Great article, but just one thing, if you cant code, you are not a web designer, and thats it. Graphic Designers should always be involved in web design team, always, but they cant take on the web designer role, its like a developer saying he/she is a graphic designer because he/she downloaded a template.

    Graphic designers have a much wider understanding about message, color theory, hierarchys, presence, and so on, so they should be a part of the team, but the job title should be graphic designer, not web designer.

    But anyways, as always, smashing magaziens articles are top notch!!!

    • 35

      Cassie McDaniel

      May 14, 2011 5:01 pm

      You’ve brought up a good distinction Ricardo, but I’d clarify and say web designers need to know about code, not necessarily how to do it themselves. Obviously there are many differing opinions about this, but in my experience the need for designers to code is not always implicit, especially in large teams.

      • 36

        Ricardo is right. In my experience a designer who can’t code is essentially a print designer. Why? because if you can code, even to some degree, you respect the medium and understand it’s limitations and that is reflected in your design work.

        I can pick off a web design concept done by a non-coding designer a country mile away. There is always at least one Pollyanna element to it that looks nice but won’t work in the real world. The other tell-tale sign is arbitrary complexity. Even though things have gotten better over the years with the newer browsers, any true web designer will have spent time in the trenches fighting browser inconsistencies and will avoid going back into battle for the sake of some overly complex, but ultimately inconsequential design element.

        Absolutely no offence to any non-coding designers, but you have to eat your own dog food – even if it’s just once in a while. You will be better off for it and you might even get a raise!

        • 37

          Cassie McDaniel

          May 15, 2011 7:00 am

          I don’t agree that a designer must know how to code in order to respect and understand code’s limitations, but I’m 100% in agreement that designers should know about code, which is truly the least we can do. There are occasions, as Nick mentioned above, where focusing on limitations tends to produce the same ideas over and over again. In reality the skill set depends on the team’s values and end goals.

          • 38

            Regarding the role of “The Hybrid”… I wouldn’t word it as strongly as Ricardo does, but I definitely agree with what he’s saying. There’s no good reason for a designer not to pick up the basics of HTML and CSS, or for a developer not to read “Don’t Make Me Think” or other ui/ux books — both could be hammered out in a day or two of reading and experimenting.

            In my short career (4-5 years), I’ve seen only two big designer/developer clashes, and in my view, both were caused by people that refused to pick up additional skills that would have helped them to better understand each other.

            I now work at a web startup called Mahalo.com where nearly every member of the 12-person development has crossover skills: design/front-end, front-end/back-end, back-end/systems. And all members of the team, regardless of discipline, are encouraged to voice their opinions about everything from business decisions to issues of company culture. Conflicts between team members are practically non-existent because each person knows a fair amount about what their teammates do, and how their work will affect each other. Arguments still happen, of course — but everyone gets their say and logic prevails more often than not.

            37signal is another often-cited success story of what can happen when you hire (or mold) cross-discipline people.

          • 39

            Cassie McDaniel

            May 15, 2011 11:00 am

            Travis, the issue seems somewhat a problem of semantics – a day’s effort would produce a fairly shallow skill set, which is close to what I mean when I say to know “about” each others’ disciplines. Regardless, it is only one root of the problem, and the hybrid’s role as you mention is certainly changing the game.

  18. 40

    Any coder worth his salt knows how to handle dynamically loadable content without it exploding his code. The only exception is when design, UI, business logic, and user experience are intermingled with no separation, put under a sniper scope deadline while the project zealously oversold to the client, and managed by yes-man grunts who hover over you, doing the equivalent of pressing F5 every three seconds asking for a status update like each coder was their own Twitter server.

    When you hand over your car to be fixed, do you call the mechanic every thirty minutes and make change requests? No? Do you know why you don’t do this? Because the mechanic would gut your pocketbook with glee in his heart.

    You can always have placeholder art and change it later.

    Good luck changing placeholder code later. Hope you like wasting lots of money.

  19. 41

    Also, there is no such thing as a “really good coder.” Dispel with that myth entirely. Coding “really good” is not a critique that can be made by non-coders. Really good code is modular, compartmentalized, atomic, efficient, well-organized, and scalable.

    If you don’t even know what those principles mean when applying them to the field of computer programming, then you’re analysis of what a “really good” coder means is no different than saying you know a “really good” astronaut. How the fuck would you know?

    Good code is a discipline, not a magical property that manifests as a result of a personality trait. Really good code is a group discipline that requires perpetual maintenance and communication.

    • 42

      Exactly.

      The things I’ve learned about coding from my coworkers shows that the greatest code is that which is clean, optimized, modular and upkeeps itself; and it always puts a smile on my face when you see that clean code running nice and smoothly.

  20. 43

    JC Transfiguracion

    May 15, 2011 6:15 pm

    Great article! I’m a hybrid that takes most of the design duties of my team. I work with a team of 4 who are mostly developers. By education I’m actually 50/50 on design and development but I’ve found that I struggle more with design. Probably my cue to brush up on that a bit more.

    Working with someone who is purely a developer (and a very good ornery one at that), I’ve found that it’s not that they DON’T appreciate aesthetically pleasing things. It’s more of if it means more work for them you better have good reasons for it. As the person dealing with UX as well that has actually pushed me to do even better since I wouldn’t want to waste my team mate’s effort and time.

    A good healthy environment actually goes a long way into putting ideas into reality.

  21. 44

    Great article! I am actually pursuing the hybrid road but at this point I’m more of a web designer than a developer. What tips, guides or suggestions would you have for someone who wants to become a web developer as well? I’ve been looking at javascript and ajax books and tutorials but it just seems like its not clicking.

  22. 45

    Wahooo, I am hybrid! lol – I do both roles for my clients AND I am also now learning and implementing all of the latest SEO, SEM, and Social Marketing tips and tricks for better online marketing. Having to build a whole new website to talk about all of that…

    I find it is great being able to do it all because I can easily mould myself into a team knowing each area, but I wouldn’t class myself as a true expert in either discipline. It can be a bit stretched thin sometimes.

    I understand a lot about the principles and best practices in each skillset so I can offer a really good design and development service, but in an ideal world I will be hiring an individual to help with the skinning of my websites.

    • 46

      Richard Williams

      May 16, 2011 6:23 am

      +1 I’m the same, brushed over SEO on various occasions over the years, getting much more into it again now. Need to be a good designer, developer, sys admin, SEOer and copy writer too!

  23. 47

    I’ll put in my thoughts as a hybrid, but one coming from the engineering/development side as opposed to the design side (which is to be expected given SmashingMag’s readership). I’m a front-end engineer currently working for Google.

    I think the front-end eng. role is a necessary one when bringing together designers and developers. I’ve seen it time and again: the engineers have no interest in figuring out anything beyond a minimal layout, and the designers have no interest in learning about it takes to build a feature. Yes, you can ask both sides to learn more about each other, but unfortunately what’s learned tends to be at a high, shallow level and the devil is always in the details.

    The FE eng. is there so they can figure out how best to implement a project/feature, from design to implementation to maintenance. My experience has been with teams of 3-10 people (e.g., more than one guy who can “do it all”) and there’s always a question of how certain things should look/interact and whether feature X is possible; that is, not whether something can be coded in HTML/CSS, but whether the infrastructure and architecture can support the designer’s “friends of friends of friends” feature.

  24. 48

    I feel like the challenge for me (as a hybrid) is having depth in either area and in a way my voice could be lost since I’m not the powerhouse for either side. I’m not too sure if having many hybrids is a good idea, maybe a few that would fill the communication bridge but specialized designers and developers r still needed as visioneers. Maybe 4:1 ratio hybrids would grant better understanding and communication?

  25. 49

    I’m both a designer and a developer although I have always concidered myself a developer first, being that development was my first love. Where I work there are many more developers than designers which has born a kind of developer snobbery towards design and it’s disciplines. In real terms this causes less time to be assigned in projects to design related tasks. The general view seems to be that designers are simple, Mac loving, indoor scarf wearing people who given a box of crayons will be happy enough. Having feet in both sides this attitude causes me to shun the designer in me and make more of an effort to prove myself as a developer to my peers.

    In short, I totally agree that the more people who become a ‘hybrid’ the better; but I don’t believe that those people will ever achieve a true balance as there is always one discipline that comes before the other.

  26. 50

    This was good!! I haven’t broken out in a clash with a developer yet (thankfully) but I do have that designer’s ego. The developers I work with are pretty cool guys and we have been collaborating quite well!!

    Still though, sometimes I wonder I’m needed very badly and my designer’s ego gets a boost! and again, I consider the other side, I need them badly too!!

    So, I’ve been trying to be a hybrid but it’s tough I guess, since I believe I’m passionately into designing and the developer thing is head spinning! But I’ll try my best!! I need to improve!

    Like you said, the competition is tough and is getting much more tougher in the coming days!!

  27. 51

    Great article! As usual everyone goes into a rant about designers vs. developers. It’s 2011 people! In this day and age EVERYONE is a designer. There are 10 year olds that can make awesome webapps that’ll make you look bad. If you’re not on board, you need to examine what you’ve been doing. As a true hybrid, I design experiences. What this means is I’m fully capable of doing the UX, UI, IA, visual design, programming and everything before/after/in-between across a variety of media. Yes. And I’m good at all of it. Just because you’re not doesn’t mean that other people can’t be. So, stop being so full of yourself and focus your energy on making something awesome. We def need to step back and look at the bigger picture and realize that it’s not about design and/or development – it’s about the end goal of making something awesome!

  28. 52

    Thanks for sharing your post…Studies suggest that it would only take 3 to 5 seconds to catch your visitor’s attention; else, he will move on to another site . A web designer takes care of your site’s overall appearance and functionalities including: right color, navigations, etc. Again, your web design is crucial to get your visitor’s attention.

  29. 53

    I am a developer. Java, SQL, php, JavaScript, HTML, CSS. I am also a photographer so I have a creative streak. When I have to design something from scratch I am proud to say it is functional, but sad to say it is far from beautiful.

    I often implement the ideas of others and definitely have frustrations. To me the biggest impediment in larger shops is having separate design and development groups with different managers. You have one goal, one site, and it should be managed as such with small agile teams with involvement and communication constant. It should be the team that succeeds or fails not a department.

    If you work somewhere where you hear talk about ‘the design group’, ‘those dev guy’s’

  30. 54

    Argg. Can’t “click to edit comment sent via iPhone. Continued:

    or the folks on 3rd floor, you are in a shop setting up for problems, finger pointing, and failed projects.

    We can’t hope to get along if we are structured to fight against each other.

  31. 55

    Ok part 2. As a developer, I know designers can have horror stories about us uncreative knuckleheads :-) but there are a few things I want to pass on to developers.

    Please read that designers manifesto. I am tired of being the one to push back because of fonts that aren’t liscened, megabyte graphic files, and next buttons below the scroll.

    Most places don’t hire UX people and it often falls to developers to push back on inexperienced designers. I don’t get this. I used to assume that designers were knowledgeable about this, but I see time and again that is not true. I can tell you that relying on developers for this UX knowledge is not a good idea. And if usability is not worked out until after it is coded, the project will be late or rushed.

    Also designers need to remember that developers are usually logical thinking. If we are discussing something and the answer is “i like it because purple is better” won’t go over well. If you can say “I’ve seen studies that show that purple attracts the users attention and we want the users to notice this part of the site first” we will say ok, that makes sense.

    Developers need to remember to communicate the real issues. We are always under time and tech constraints. We often don’t say “I can’t use jquery on this project because our framework doesn’t play well with it so I am constrained in what I can do.” instead we just say “nope, I can’t do that. Try again”.

    Communication is really the biggest hurdle any project faces, and many companies organize to reduce communication and pit dept against each other.

    Can’t we just get along?

  32. 56

    Vincent Listrani

    May 16, 2011 7:10 am

    Fantastic article Cassie! This has inspired me to attempt to create a workshop for the company I work for which includes 22 designers and 14 developers. We are creating so many sites in a day that the communication has atrophied and is almost non-existent. I don’t know that we want to create hybrids [here], but letting people try those shoes on could be a catalyst for better communication and inspiration for both designers and developers.

    Thanks again.

  33. 57

    Great writing – while the topic doesn’t really interest me, I was still engaged with your writing and appropriate structure. Thanks for the time.

  34. 58

    Design Just 4 You

    May 16, 2011 10:59 am

    This article is nice!, yeah I agree on what you’ve said, that who ever stay longer at the office will definitely win the prize, because since we are in fast-phase environment the faster as you work the less reward will you get because most of the time they can only see the length of period of a person sitting in the office without doing anything than a person who sit and work in just couple of hours but with a greater results.

    Thanks

  35. 59

    Being both designer and developer has advantage that you know how to organize layers in PSD, already sliced (or saved as final images and imported inside document), also you already have code snippets for many of design blocks you created. This may also be true for separate roles, if teamwork is good.

  36. 60

    Discord between designers and developers at the end of the day comes down to poor communication. Designers and developers have to be able to understand each other, and in order to do that they need to have some base understanding of where their counterpart is coming from. Designers sometimes have trouble articulating visual things using words, and sometimes developers have trouble explaining things in a way that a non-coder can understand. In these situations, a hybrid can be valuable, because they can bridge that communication gap, especially if they are naturally gifted with the ability to teach people. Without a hybrid? Left-brained and right-brained need to learn how to explain things in ways the opposite brain understands. It’s all about how you communicate.

  37. 61

    I got my BFA in pen & ink, fell into web design after hand-coding my first website and after 11 years find myself in the role of a UX Designer. What I enjoy most about the hybrid role is the ability to see the whole picture and how all the bits and pieces fit together. But what I love most is the problem solving. I’ve found that designers and developers are all great problem solvers and love a good challenge. Like others here I don’t consider myself a great designer or developer, but instead a great communicator and problem solver. Great article!

  38. 62

    bruzed has a point (although I marked you down by mistake). “Everyone is a designer”. I’d add: “and everyone is a developer”, if by developer we mean someone who is driven by transforming an idea into a url worth visiting.
    Development is more than plumbing a wireframe. Design is more than crafting a skin and replacing placeholder graphics. Plumbing and crafting for a web app is hard labour that demands practical experience and well developed skills handling the relevant tools. But both groups have a creative drive that got them into this industry in the first place. Because there is more to creating great stuff for the web than mastering a tool (or language). To be a good web designer or web developer, it really doesn’t matter which – individuals need to be able to be inventive, aware and focused. Not just in relation to their own little toolbox, but to that idea, vision and goal that placed them in the same production team. If they want to build great things on the web platform, they need to step out of their comfort zone and apply their professional selves to the hot pot of cross disciplinary action. Which leads me to object against the constructed dualism of this discussion. We have many more roles than ‘designer’/’developer’ at play here. And they don’t work as super categories for the rest. The game developer’s work could be closer related to the animator’s than to the back-end developer’s . So in which room should we place him or her? Maybe these two roles are just old constructs that are actually working against the spirit of this media and this technology.
    This is probably a trace of a master-and-slave paradigm still present in our way of thinking and organizing society. Something that we need to hire each other. Something that the business people need in order to reduce us to laborers and thus legitimize paying us less. Ok, sidetracking down marxist boulevard, now….

    Personally I alternate between describing myself as a hybrid, and as a developer, never as a designer – although sometimes as an instructional designer. In reality I could be a developer who’s trying to explain why I don’t feel like (as good as?) a stereotypical developer by claiming I am something else too. But I should be confident calling myself a developer and just wait patiently for people to learn and accept that a web developer is someone who needs to have ideas, opinions, skills – maybe even talent, that transcends the area of coding. In my experience the most competent co-workers – developers and designers alike are the ones who are not afraid to abandon their field of expertise from time to time, and just be the brilliant wholesome people they are.

    Great article, well written, important subject.

  39. 63

    A very well written article with some good points. As a developer who works closely with designers I think it’s very important to have good communication and never to think your role is more important than another persons.

    It’s important to work together closely and ensure you compliment each others skill-sets. Always consider your colleagues viewpoint, each role requires a different mentality so you’ll often disagree but remember, your final decision should always be based on what’s best for the client. Never let anything overshadow this.

    Regarding the point about being good at both, I’m not sure there’s many true hybrids around (good at both back end development and design). I think it’s hard to be successful at the two as each skill requires dedication and vast amounts of time to become proficient at.

  40. 64

    It depends on the scope of the project if you have developer and/or designer involved together. Usually if you are dealing with small to medium clients they just prefer dealing with one person. Also, this keeps the cost down. When I worked at an agency it was ridiculous when you looked at the amount of people involved. It was just this long list from (Art Director, Project Manager, Junior, Senior, Web Designer and all the Developers etc.). In the end this made projects worse, turning it into a Titanic that was not agile enough.

    Now I really believe that to make a really good and business strategic design you have to have a good understanding of branding, structure, code and tools available. As a designer you have to at least want to go out there and get ‘inspiration’ on what other people are doing in terms of effects. However, designers will only be limited to what they see visually. Coders on the other hand can visualize what this new function X can achieve. That’s why bringing these two worlds together is so important as it allows us to harness new ideas and innovation. This comes either through a hybrid person who is skilled in both areas OR effective communication between designer and developer. It is always going to be difficult to get designer and developers on one level. But it’s understandable, they both have a different view on their projects. Designers see the beauty in harmony, visual impact and branding. Developers see the beauty in efficient code, elegant architectures and flexible structures.

    I think one of the big downsides I really miss today is good web designers. For me a good web designer is someone who really understands the web and creates websites that are multi-dimensional. I have experienced it too often, that web pages are still treated like Power Point slides instead of harnessing prototyping tools like Axure. The main reason is because many graphic designers come from a print background or fine arts background. Also, how annoying is it when you have designers go into a client meeting with just a printed website mock-up. I mean, yes visually this is important. But will that really be how visitors experience the brand and site? No, quite likely not.

    Also you have the other side of the story and it is also very common. You can have an excellent coder but because he is so focused on the the architecture and structure of the site you are completely missing the character and underlying strategy of the site. Especially today they tend to just rely on templates and modifying them slightly.

    All in all I believe a good team must have generalists with focused key specialty skills. This allows them to harness their skills and still see the bigger picture.

  41. 65

    @Cassie – You mention in a few places that a creative should know “about” code, and not necessarily “know how to code”, and I don’t want to get into a semantics battle, but I have to respectfully disagree… to an extent.

    I believe in the year 2000, you could say that a designer did not need to know how to code, but more than 10 years later, the New Media industry has completely changed, and so the talents of designers should evolve. A designer should at the very least be able to build out a very simple portfolio web site using HTML, CSS, and basic JS, not only to have the skills available for any work related tasks, but also I think it is an expectation of any company where the person interviews.

    Now, the exception to this rule happens when you get into some more complex programming languages like ActionScript, Objective-C, Java, C#, PHP… etc etc, and this is where the knowledge about what a technology is capable of doing is more important.

    But I think the main point of this article is how to get the two entities to play nicely with each other, and that is a result of how the project is run and the creative workflow.

    I already plugged this conference above, but just in case it was lost in the replies, I would recommend attending the D2W Conference to learn more about workflow and efficiency. http://www.d2wc.com

    rp

  42. 66

    Mark Lacsamana

    May 30, 2011 6:00 am

    Interesting read :-) I found myself butting heads numerous times before (mostly with myself) on the design vs development idea, speciallyw hen I graduated and was looking for a job (and most companies were looking for photoshop boy, not a webdesigner).

    I consider myself a hybrid in the sense that I’ve been practicing my craft and code pretty well even over the years. Most of my problems came when finding a job as a web designer (in the most limited narrow minded sense) and not being satisfied with the requirements given to me :-P

  43. 67

    I am a Hybrid ?!. I like that :)

  44. 68

    *sigh* one day we’re going to get an article like this from a developers perspective. Still, at least this one is more grounded in reality than previous attempts!

    In my experience, most squabbling stems from one simple principle: That a developer will always try to stick to convention, whereas a designer will always try to break convention.

  45. 69

    The biggest difference between designers and developers is designers know what they don’t know.

    Designers don’t need to know how to run a printing press or run a television studio – that part is left to the technical experts. The web should be no different, but the huge majority of websites are built on tiny budgets making the role of hybrid developer common. But hiring a designer who outsources tech is still a better way to go for the smallest of companies.

    Letting a technician have a say in the message, content or design is absurd, much like letting a plumber or electrician design your house.

    Developers tend to think that web is somehow different and that designers are taught print media. But design principals are universal and designers are taught to use those principals to create anything – clothes, advertising, electronics, cars, websites, logos… anything. Functionality and user experience are huge parts of the training and have been for over a century – long before the web came along.

    The idea that these two roles are even comparable is nieve. The designer education is a 4 year BA from a college program with a +70% failure rate and developers come from a community college with a -10% failure rate.

    The very best artists from high schools fight to get into design colleges, but less than 30% graduate, so if your are a self taught designer, how is it possible you managed to achieve anything close to the equivalent of a 4 year BA when all those top prospects failed despite having the best teachers and a large community of others to learn with?
    The answer is you didn’t – you simply don’t know what you don’t know.

  46. 70

    Love this article, Cassie! I couldn’t agree more with the subject and just a superb job of aesthetics and clarity in the delivery. I’m going to go back and look for more of your stuff.

    As someone who has had to be at times the designer, at times the developer, and at times project managing the two camps it can get real interesting.

  47. 71

    I like both design and development. I am a designer by trade and education but making the site come to life is a different type of challenge which I find tremendously rewarding. I never ever find my technological knowledge being a limiting factor when I design. To me anything is possible. If a snippet of code doesn’t already exist (which is highly doubtful) then I write my own – and I LOVE being able to do that!

    I guess it’s not so much about being just a designer, developer or hybrid (why do we have to put labels on everything?). It’s about having passion for the work and the right mindset and drive to get-it-done-right.

  48. 72

    This article may be too old to restart dialogue but I do have a unique question regarding the designer/developer relationship.

    I’m in a situation where I’m fighting templates. I’ll work in photoshop for a week creating some ideas for our web site and our developer will just find a template and when we show the Owners of the company (it’s a small company) they’ll be blown away by the template and not care what I created. It seems like we’re competing at the same objective and my ideas/opinions/thoughts have become that of some lowly intern while the developer is getting his praises sung for copy and pasting template code into our frontend.

    From my perspective it seems like it will be impossible to change and I should find a new job. I stumbled upon this article and thought it would be interesting to see what the folks here thought.

  49. 73

    Cassie McDaniel

    May 13, 2011 2:37 pm

    Sounds like you and your team are in a good position, Jessica. Keep it up! Thanks for sharing.

↑ Back to top