Get rid of the line between design and development

Get rid of the line between design and development

Designer and developer Bastian Allgeier says designers should learn how to code to become creatively independent and calls for an end to the strict separation between both skillsets

Should designers code their own projects? How much code should designers know?

Countless articles have been written on that topic in the past few weeks, and they all led me to question my own motives: why did I, as a designer, originally choose to learn how to code? And how come I still do? It all boils down to a simple answer: creative independence.

For an interface designer, handing over your designs to the developer means losing control of the creative process. Of course, you will be working together on the project and communicating back-and-forth, but it will never result in a creation that is all of your own. In other words, you will never be independent in your creativity.   

Bret Victor hits the nail on the head:

"An author can write a book. A musician can compose a song, a animator can compose a short, a painter can compose a painting. But most dynamic artists cannot realise their own creations, and this breaks my heart."

Starting with an idea, making concepts, working on the design, writing code and finally launching – maybe even selling – your very own project is a mind-blowing experience that will most probably change you, and your work, forever. It definitely changed me.

Learn more

Once you have been to the land of code and pixels, you never want to go back. It's not about having to learn something, or about blindly imitating what the cool kids are doing. Rather, it's about scratching an itch to learn more, about being able to create without limitations and having a greater influence over the outcome of your own work.

Obviously, learning additional skills does not mean never working with developers again, or withdrawing into an egoistic bubble. It does, however, change the way you think about projects and helps you exert creative influence over aspects you never thought about before.

Learning to code extends your creative toolkit. The more you learn, the more you will find yourself rethinking basic concepts, features, structures, even your design decisions. The technology becomes a new lens through which you can see and critique your work – or the work of others.

The more you learn, the more both worlds will converge. Things you have learned as a designer will start influencing the way you develop, and things you have learned as a developer will change the way you design.  

The web is packed with free resources for both designers and developers to learn more and to improve their work. We are all living in a candy shop, and all the sweets are for free. Once you realise that you are in a position to become independent in your creativity, it's no longer about wondering if you should learn how to code. It's about where you want to start first.

But wait, we are always talking about designers. Doesn't the question hold the other way around? Should developers learn about design?

Blending skillsets

We often forget that developers are facing the same problem designers do: they know how to build great applications, but designing interfaces often proves a tricky task for them.

We are all trapped by our limited knowledge of the cognitive tools of others, which keeps us from challenging each other. Instead of being afraid to lose our expertise by branching out, we should think in terms of readjusting it.

Certainly, we shall never be able to know everything there is to know about both design and development. Becoming a professional developer or designer requires years of study, and a sharp focus remains essential in building high-quality work. But there is a big difference in how we set that focus.

At the university where I studied, we were able to take classes in pretty much every aspect of design during the first semesters: typography, illustration, photography, editorial design, interface design … The list goes on.

It helped us all find our preferred domain and enabled us to narrow our focus in the following semesters. Looking back, I longed for an opportunity to attend all sorts of development classes as well, to get the same overview of that field. But I studied design, and instead had to learn how to code in my spare time, because I felt my tool belt would not be complete without it.

Why is there still such a strict separation between developers and designers? By now, we should have better models that blend both skill-sets.

Let's mix things up! Let's throw our egos over board and move closer together! We need to focus our skills on the things we want to create instead of following obsolete study programs based on long-gone job descriptions. New ideas and better products will inevitably stem from this global approach.

Get rid of the line between design and development: design is development, and development is design.

18 comments

Comment: 1

In principle, nothing wrong with your arguments. For small scale, simple sites, not an issue. When it comes to sizeable projects, particularly things like ecom, you're going to need specialists, not generalists. I'm sure there are designers capable of building secure, efficient, scalable sites; but should they? I'd rather have a developer and a designer doing what they do best than two generalists who half arse it between them both. The end result will always be a better product.

Unless of course you're only talking about html/css and not really going into depth with server side code.

Comment: 2

@barryp: I agree that you need specialists but those specialists need to understand the technical part the other specialists do. At least to some degree. As in every profession you can't only think about your range of duty to archive something great.

Comment: 3

Totally agree that designers must make an effort to learn some development skills in order to maintain a level of control on the overall user experience, and to make themselves more valuable to the overall team as they understand the scope and implications of their designs and recommendations.

With that said, "A little bit of knowledge is a dangerous thing", and the ego (like always) must be kept in check as designers absorb bits of development best practices and have one "A-HA!" moment after another. The world has "opened up" to me in the last 2 years as I've picked up more JS/PHP, and it is very rewarding in many ways, but the number of programmers I have on-call for various projects has not decreased by even one.

Comment: 4

@dantz: True, but there's a difference between "understand" and "blending skill sets", even then I suppose understand is only to a surface level. I don't think developers need much beyond the basics of typography (for example) any more than designers need to worry about data validation. Both areas are important, both areas make a difference, neither party needs to spend too much time worrying about the other.

Comment: 5

A designer who can and who wants to code is a dime a dozen. I'm all up for it if designers want to do front end HTML/CSS but I've only met a few who can actually produce any good markup. They normally give up and send it to the developer anyway who will rip it apart and start again.. wasting time. Very rare good designers can be good coders, most of them don't want to even look at a line of code.

A good front end developer will take what ever the designer wants and be able to translate it to a web site. Sometimes things aren't possible and some designers are from a print background so some things don't translate correctly to web. It's just a learning exercise.

It doesn't help when you have crap developers. I'm a developer myself and I pick up a lot of work because customers always comment how hard it is to work with many other devs and they need consultation in the design process and be told straight up what shouldn't be done.

Comment: 6

I agree and disagree with parts of this article but I especially don't agree with the comment of being 'trapped' with a 'limited knowledge'. That is tarring a lot of people with the same brush, sometimes great designers just don't get development, and vice versa, it's not about having limited knowledge, it's about having different knowledge and I'd always be more than happy to out-source work to people that I know would do a much better job than I would within the time restraints of a project.

Comment: 7

Don't get me wrong guys. I'm not talking about being less specialized or a generalist. We will always need specialists, but there's still a huge gap between specialists on the development side and specialists on the design side. With blending skillsets I mean to specialize somewhere in between, to be able to bridge that gap. We work so close together and yet we are so far away.

Comment: 8

For me, a designer first, having a solid understanding of the development process and the ability to code my own websites has opened my eyes to both the limitations and the opportunities inherent in the medium. I see this as only a good thing and a tremendous asset.

Comment: 9

I sense a gross underestimation of the complexity of the two fields. A composer does not master all the instruments in his works.

This seems typical for a time where inspiration trumps creation, and simple trends replace authenticity.

It has been shown, that to achieve mastery in a complex cognitive task, of which I would argue both design and development can be considered, a full 10,000 hours of purposeful practice is needed. In the real world, this translates to about roughly 10 years.

In 10 years, and especially for developers, the tools and skillset will be renewed a number of times, and for every hour you use on areas other than that which you want to focus on, you are postponing mastery.

There are good reasons for the saying "Jack of all trades, master of none". I would argue that the cognitive tasks of design and development, are too diverse to have a useful amount of carryover.

I think, as a designer, you can benefit from having an understanding of the limitations of development--without, for that matter, knowing how to build it.

The idea that collaboration would hamper creative independency is the part that I just won't buy. Any trait that would give birth to such notions, I would have to question.

It also becomes paradoxical to argue that having both perspectives yourself would be inherently superior to having both perspectives in a group, and actually suggests that the skills we should sacrifice some time on are trust and communication.

Comment: 10

Hey,

I agree with everything said here, both the initial article - blurring the lines between design and programming, as well as the need for specialists.

There is one line of thought missing here, and that is that hard-core specialists, so designers who have no clue whatsoever how programming works, and programmers who have no idea of design - come up with such an insane solutions and it is them that usually make a breakthrough in their corresponding fields.

A designer who knows too much about programming and development will constantly think about consequences of his work and this will constantly be a burden, a pressure. Working with free mind will produce things which are in their first versions impossible to code, but with just a bit of tweaking and clever programming could later produce supreme work.

Same goes for programmers. In my company when master programmers have free time, they come up with some insane borderline useless bits of code, and bits of software. Crazy photo manipulation techniques, silly ways to query a database, etc ... they do not care would designers be able to use this, they just make it. A year later - designers and product managers found a way to do something really good with it.

Too much knowledge can limit you. Sometimes ignorance really is a bliss.

Comment: 11

This topic could run and run then go into the graphic designer web designer/developer argument. in an ideal world designers should know enough to try and spot issues and if they are not sure should ask consult a developer. Communication is the key as with most parts of a business.

Comment: 12

Does anyone actually care? surely the more you know the better it is for you. Who is likely to win a job / contract someone who can design or someone who can design and build?

Comment: 13

It doesn't hurt ANY designer to know how to realize their design in basic html/css code. If you can go on to be an efficient web PROGRAMMER after the fact, great!

I started out as a real world designer, moved to HTML & Photoshop, then to asp & LAMP. I've run the entire gamut since the 90s. The more you learn, the stronger both skill sets are going to become and compliment each other because you'll actually have an understanding of how your designs will work.

Comment: 14

I'm sorry, but this guy is an idiot. What's next? Saying college majors shouldn't major in graphic design or computer science, but instead it should all be rolled into one major? They are two totally different fields of study. Doesn't say much for your design or developer skills if you really feel this way.

Comment: 15

I think there's some misunderstanding in the underlying message here really.
The problem is as much one of communication and collaboration, as it is one of shared skillsets.

Yes, it's invaluable for a designer to understand code.
Yes, it's invaluable for a developer to understand design.

BUT, being a master in your field requires a lot of commitment. It's unrealistic to nurture your creative side and engineering side to a sufficient degree and still have a life.

Sure, if you work on a small scale problem/product, you can get do perfectly fine with being a designer/developer.

Once you hit bigger problems, work on larger scale projects, you absolutely want the best people in their respective fields. But to maximise the outcome, you need developers and designers who understand each other, who talk all the time with each other, who see themselves as equal partners of the process and collaborative effectively - in that way, it's still about removing the line between design and development...

Comment: 16

Designers who don't know code directly impact the sustainability of the web. Imagine if a automobile designer didn't know about engines or what made gas mileage good or bad. The designer would create a Hummer, and expect an engineer to make it get 100 mpg. Obviously, that can't be done.

Industrial designers aren't the hardcore engineers, but they understand the engineering to create efficient cars. You can't design in the absence of understanding your underlying system.

The same is true for the web, which is now responsible for consuming several percent of electrical power worldwide. As you'll see from my posts over at Sustainable Virtual Design (http://sustainablevirtualdesign.wordpress.com) the biggest impact on the Internet's current "code bloat" - and the subsequent drain of energy and resources - is designers who create the equivalent of Hummer websites without understanding how web pages work.

A particularly bad set of examples may be found at this link

http://sustainablevirtualdesign.wordpress.com/2012/03/11/green-design-vs...

which shows how supposedly "green websites" are some of the biggest energy and resource hogs online. Checking some of them, (e.g. Inhabitat) you see supposedly "green" designers who are responsible for pages burning 10x the carbon of similarly designed pages on other sites.

Design is the problem, not engineering. Engineers, Google, etc., can only streamline the hippo.

Obviously you need specialization in a design and development team. But that doesn't mean that designers can ignore code, any more than coders can ignore design. It runs both ways - the "codebeast" who doesn't bother to understand design creates similar problems in sustainability.

According to Nate Shedroff's great book "Design is the Problem" (Rosenfeld press) design, is where we can make things more sustainable. To do this, designers have to understand the process of making their design real, and engineers have to understand design well enough to critique/comment. Typically, making sustainable products (and websites are just virtual products) requires major resets and re-thinking at the design level, back-driven by engineering.

This only works if designers and developers are part of the same team, and understand each others profession well enough to suggest changes. We need hybrid designer/developers, and hybrid developer/designers.

Comment: 17

@bastianallgeier
@Daemon
@ux4science

I think Bastian is proof that you can be proficient in both areas, and thats why its him writing the article... ;-)
However my personal experience different: When I lean towards one side, the other side suffers... Especially on the development side (I come from design), I always have the feeling, I am lacking no matter how much time and effort I put into it...

There can be good inputs, though...
A good example for me is GIT. Just thinking about designing in a GIT way (commit, branch etc.) helped me improve some (previously chaotic) design processes. For developers, design thinking will probably do the same for them...

Comment: 18

Developers that stick to one or the other, design vs development, front-end vs back-end, marketing, development, usability, etc.

I can't speak for those people, but I personally think it's the difference between just a job and the passion.
June issue on sale now!

The Week in Web Design

Sign up to our 'Week in Web Design' newsletter!

Hosting Directory
.net digital edition
Treat yourself to our geeky merchandise!
site stat collection