• Mike MulveyMike Mulvey, over 6 years ago

    I've been designing websites for over 18 years, and mobile apps for ~8 years. My coding aptitude is about the same as my Spanish: I understand it, but don't ask me to write (much). I think we all fall on a different spot within the spectrum of novice to expert.

    If you're a digital designer (web/mobile app/interface) I think you should be interested in code, but by no means do you have to learn to code.

    It's like telling a print designer they had better learn to create their own typefaces. They don't.

    16 points
    • Raffaello SanzioRaffaello Sanzio, over 6 years ago

      If you're a digital designer (web/mobile app/interface) I think you should be interested in code, but by no means do you have to learn to code.

      Mike, your advice is well-intentioned, and, at least for today, spot-on. However, with the way technology advances and competition, for both business and employees, becomes much more fierce, it'd be a mistake for a designer not to add Coding Skills to their arsenal. In 1-2 years from today it could be the difference between providing a good life for your family and living from paycheck to paycheck.

      It's like telling a print designer they had better learn to create their own typefaces.

      For me it's more like telling a Print designer they'd better learn how to design for the Web. I know many who were left behind because they couldn't adapt to a new environment in which design was flexible and iterative, rather than static.

      8 points
      • Mike MulveyMike Mulvey, over 6 years ago

        I hear you. It's such a macro-level question, I find it counter-productive. Coding what? CSS? XCode? PHP? I think coding fundamentals are key. The stuff I used to do in Actionscipt (dating myself) is just as valid now as it was in the pre-iPhone world. You'll find loops, arrays, conditionals, and if-then statements everywhere.

        I feel like it's a warning where no warning is needed. If you're a digital designer, you should already be interested in code.

        For me? I like tinkering with Wordpress templates. I like customizing the CSS on my site. I like viewing the source code on new and interesting websites.

        Understanding the possibilities and limitations of technology allows me to know what I can design, and collaborate with people on my team who have the technical chops to execute it. Do I need to know how to build what I propose? Absolutely not. Would it be a huge plus if I did know how? Sure.

        But again, for me, there's a spectrum of understanding/skill.

        6 points
      • barry saundersbarry saunders, over 6 years ago

        not really. Having lead design teams and hired designers, I'd take a talented designer who can design over a someone who's ok at design and code.

        Should designers know what code is? Yes.

        Should designers be able to articulate what can be done with code? Yes.

        Should designers be able to use code prototyping tools? Sure, if it's relevant.

        Should designers write production code? Jesus no. That's what engineers are for.

        14 points
        • xxxxxx xxxxxxxxxxxxx xxxxxxx, over 6 years ago

          My thoughts exactly Barry, there are some really talented folks out there who can whip up great design and quality code blindfolded, but most of the time it's better to specialise and be really really good at one thing and have top-level knowledge of the wider skillsets.

          2 points
        • Sean LesterSean Lester, over 6 years ago

          I wouldn't even know how to find the time. At Match I'm constantly swamped with work, more than I could ever do and much of the polish that we really should be doing gets neglected for this reason — and I've done so well here largely because I turn around work fast.

          Maybe I can see where the people saying this kind of thing are focusing heavily on the Silicon Valley world or thinking somewhat futuristically about automation (as well as an arrogant assumption that since products mostly all use the same solutions now, that we've "figured design out" and design will just get more brainless)

          2 points
        • Tyler Cecchi, over 6 years ago

          I don't buy with this notion that if you know how to write code that makes you a mediocre designer.

          Code is just a medium. How you apply it is what matters.

          You can use it to solve computer science problems, architecture problems, product problems, or design problems.

          When we talk about someone who's "good at design", what are we really talking about? Someone who can create a great visual representation of something? Or are we talking about someone who can craft a great solution based off some information?

          While there may not be a ton of people who are good at creating visuals and code, there are a ton of people who craft great product solutions and write code, which if we're talking about "design" as more than aesthetics and visuals, makes that person a great designer.

          Visuals and code could be considered two mutually exclusive disciplines. However the ability to craft strategy, understand research, create solutions to business/product/user problems, and write code are not.

          2 points
          • barry saundersbarry saunders, over 6 years ago

            The core design skills:

            Requirements gathering

            Gap analysis

            Market analysis

            User analytics


            Product strategy


            Content strategy

            Information architecture

            Understand psychology and HCI

            Apply psychology and HCI

            Keep current with academic psychology (big psychology replication crisis going on right now)

            Do user research

            User interviews

            User ethnography and contextual inquiries

            Survey design

            Create personas

            Run workshops

            Sell a solution

            Scenario planning

            Create a product vision

            Do stakeholder management

            Do accessibility testing

            Do user testing

            Do heuristic analysis

            Understand motion design

            Understand colour theory

            Understand typography



            Create comps

            Art direction


            Increasingly: service design

            Now in my career I've known a couple of extremely talented people with maybe half of these skills. The reality is there's just too much in design alone for one person to know all of it. I've met a few people who can do maybe a quarter of this plus code, but they are extremely rare.

            Is it possible for one person to know all this? Sure.

            Is it possible for one person to know all this plus code? Again, sure. Unlikely, but possible. I've never met one, but I'm not ruling it out.

            Is it reasonable to expect a designer to learn to code? Sure, if they are specifically a production focused designer and someone else in the business is doing the research and strategy. I've met a couple of people like this. Often they're frustrated cause they just get treated as another developer and don't get to do the research and strategy aspects of design.

            Is it good advice for designers to learn to code? Well, if you like production focused work, there are a lot of startups and ad agencies who'll hire you.

            2 points
            • Tyler Cecchi, over 6 years ago

              If you see writing code as simply factory-type production work, then you're just as narrow minded as the person who looks at "design" as simply aesthetics.

              Gap analysis, Market analysis, User analytics, Specification, Product strategy, Information architecture, Understand psychology and HCI, Apply psychology and HCI, Sell a solution, Scenario planning, Create a product vision, Prototype, Wireframe, service design, Create personas, Do user research, User interviews, Do stakeholder management.

              These are not designer skills. They're used in design, but not exclusive to people who:

              Create comps, Art direction, Understand motion design, Understand colour theory, Understand typography

              Many of the things you listed are shared responsibilities among product, design and tech. Building great products is a team sport after all.

              1 point
              • barry saundersbarry saunders, over 6 years ago

                I don't see code as simply factory-type production work, but I've rarely seen a business that's structured to take advantage of creative coders. Every designer / coder I've met has been frustrated by being pushed into production work.

                I agree that building great products is a team sport. Good design comes from creative tension between people with different specialisations. Which is why the constant push to learn code instead of all those other design specialisations is frustrating!

                0 points
        • Mike MulveyMike Mulvey, over 6 years ago

          Thank you!

          1 point
      • Paco Lara, over 6 years ago

        If design is not a viable profession in the future why I should became a developer? I mean, coding and design are totally different. Yes, we both work in the digital work but that is all. When you say that to survive as a designer I have to became a developer, you are actually saying than I´m not going to be a designer any more, because if you want to be proficient in coding, believe me, you need to study hard at lest two or three years and you have to be upgrading your knowledge all the time. New technologies, new languages, new frameworks... If you want to be a pro developer you just have to be a pro developer. Beside, I did not choose design because of the money but because I love it. So, as I tell you, If design is not going to be a viable profession in a couple years (I don´t agree, by the way) maybe I´ll try to be a 3D designer (something closer to design than coding), a handcrafter, or a chef... but not a developer.

        3 points
    • Joe ShoopJoe Shoop, over 6 years ago

      Agreed. Being able to write production code (clean, consistent, maintainable, performant, etc) is something that takes a lot of ongoing attention. If you can write production code today, but stop learning the new things, your knowledge will be out of date in a few years.

      But being able to look at a bit of code and have a general idea of what it does is super valuable. You don't need to be able to write it yourself, or even edit it. Just a rough understanding will help so much in communicating with developers and designing things that are reasonable to build.

      10 points
      • Mike MulveyMike Mulvey, over 6 years ago


        1 point
      • xxxxxx xxxxxxxxxxxxx xxxxxxx, over 6 years ago

        Nods head vigorously

        Tools like FramerJS are fun because they enable designers to show a bit more flair and get a bit scrappy in code if they want to, and its really useful for showing complex interactions. But it's whole world away from all the intricacies of a production environment.

        1 point
        • Joe ShoopJoe Shoop, over 6 years ago

          Yes, absolutely! (Sorry just noticed the reply notification from a month ago)

          And if you're writing production quality code for a framer prototype, you're wasting your time. The whole point of prototyping is that it is much faster than actually building the thing. It should be hastily written code that is all copy/pasted and Frankensteined together.

          In fact, I'm not even convinced Framer is the best tool most of the time. It certainly gives you a ton of power to create dynamic, complex prototypes, but something like Principle takes less than half the time and has 90% of the fidelity of a Framer prototype.

          0 points
    • jj moijj moi, over 6 years ago

      Hi, I'm a print designer turned UX and I can create my own typefaces.

      1 point
    • Nathan LongNathan Long, over 6 years ago

      I think the better analogy is telling print designers to understand paper, and how printing presses work, or other printing methods. It's the manifestation of the designers work in the real world.

      Understanding paper weights, how separations work, which colors lead to oversaturation, etc. all help the designer become better at their craft and avoid unintended side-effects.

      I feel it's the same way with code. It's the same manifestation from concept to reality and leads to a better understanding of the medium you're working with.

      2 points