Designing in the browser

Designing in the browser

Designer and developer Edward O'Riordan explains why you should design in the browser and why clients should be shown HTML and CSS mockups

Designing on the web is changing. In a world of multiple devices and capabilities we have many new, exciting challenges. I have found designing in the browser to be a helpful approach in solving some of these design problems.

First off, some clarifications. Designing in the browser does not mean that you uninstall Photoshop, burn the license key and swear an oath never to push another pixel. Design in whatever way works for you. Get inspired in the park or with a Sharpie. Think through problems in the way you enjoy. Never let anyone tell you how you should be creative.

In what follows I would hope to convince you that:

  1. We should spend design time working in the medium of HTML, CSS and JS.
  2. Clients should be shown HTML and CSS mockups in place of static images as the final design deliverable where possible.

The static comp is a bad deliverable

Traditionally the final static comp has served two distinct purposes: to get client sign-off and as a blueprint to hand to a developer to build the final site. It's a bad deliverable in both these instances.

For clients it sets false expectations, emphasises the wrong things and does not represent the web well to beginners. As designers we are always communicating. Be it listening to clients, talking through approaches, working with feedback or convincing people at least half the work of design is communicating. Static comps confuse this communication. They emphasise surface impressions when we also need to talk about the feel of browsing and the experience of interacting. Getting "design sign-off" as images of pages we teach them to think of sites in terms of pages rather than components. Comps give a false impression of the web as something which neither ebbs nor flows but stays stubbornly static.

For developers static comps provide a confusing, incomplete and often frustrating blueprint. It's hard to get an overview of a site from images of a subset of its pages. A static comp does not describe well the purpose and potential re-usability of its contents. There is often confusion over what things should do and where they will be reused. Developers can also become frustrated with the assumptions contained in the comp. The perfect content of the comp gives way to reality lurking in the database. The unchanging perfection of static images can be hard to match in older browsers. Comps can become sink holes of developer time leading to brittle, buggy code and time misspent on elements of dubious importance.

The advantages of the browser

It's easy to criticise and poke holes. I don't want to spend more time being negative. All approaches have draw backs. I don't believe that designing in the browser is simply the least worst approach. I believe the compelling reasons for designing in the browser are its virtues rather than other approaches' failings.

Responsive by default

The web is responsive by default. We are all excited about responsive design. Proper geniuses are working on proper genius stuff. We are all experimenting and trying new things. Let's not forget, though, that the web is responsive by default. The basics of the web are to create HTML documents and have them be viewable almost everywhere on almost anything. By default the web has no optimal width, optimal height, optimal font-sizes or optimal anything really. Designing in the browser gives us responsiveness for free. It also, just as importantly, centers our design thinking around the fluidness of the web.

Designing in the browser gives practical benefits. We have tools (such as Shadow and LiveReload) to design across multiple devices simultaneously. We can experiment with our design and have the changes reflected instantly across desktops, tablets, phones in landscape and phones in portrait. This is Sci-Fi stuff! Just as importantly we are changing the way we think about designing web pages. We are designing with the diversity of the web in mind. In fact, more than that, we are designing with the variety of the web front and center. The variety of the web becomes part of our canvas.

Plan as prototype

As designers on the web we are lucky. Our medium is neither expensive nor impractical to shape. Architects can't easily test their ideas in brick. Few other mediums allow us to move so nimbly between plan and prototype. Let's cherish this. Let's spend time with our designs as practical rather than theoretical things.

Designing in the medium we will build in allows us to test our design decisions against something close to the final product. We can decide in a more informed way. We get to test more than just the surface appearance of our designs. We get to metaphorically hold them in our hands, measure their weight and test their balance.

This is not to say we must only design in the browser. Experiment and try things out in what ever way your comfortable with. Never listen to anyone who has a prescription for creativity. But try not to second guess your design. Make final decisions based on your impression of it in the browser.

Summary

Designing in the browser is not a silver bullet. I do believe, however, that it provides strong advantages over traditional approaches especially considering the new design challenges faced when designing across multiple devices.

It's as much a change in mindset as a change in tools. Designing in the browser gets clients, designers, UX people and developers focused on the product rather than a deliverable. It reminds us what and why we are building. Try it out, see how it feels, let me know how you get on.

14 comments

Comment: 1

I pretty much disagree with the entire post. Going right to code is a bad idea and really limits the flow of ideas. Going right to code is lazy and an effort to push out something sooner than needed. Ideas should be set before a single line of code is ever written.

Comment: 2

I tend to disagree as well. The bit about static designs as a blueprint for developers is only right, if you writing project specification document ant do not do any wireframing. Which is bad idea

Comment: 3

I also completely disagree. the whole point of doing static comps in photoshop and Greyscale wireframes is that it takes less time and you waste less time by only doing the coding once.

To use the authors own analogy, it would be like an architect building a house to show a client what it was going to look like rather than just doing technical drawings first.

Comment: 4

Hi guys, thanks for reading.

@mechwd
> Ideas should be set before a single line of code is ever written.

I kinda agree. You should definitely have ideas before you start to code. I don't know how 'set' they should be.

@tomronda
> The bit about static designs as a blueprint for developers is only right, if you writing project specification document ant do not do any wireframing

I definitely think wireframes are great supplement to static designs. I don't quite see how the solve some of the issues I was trying to raise. Would be interested in hearing more.

@jonhobbs
> static comps in photoshop and Greyscale wireframes is that it takes less time and you waste less time by only doing the coding once.

I am not convinced that Photoshop and wireframes are faster then coding. They are faster at certain things but not so sure creating the final design of a website is one of them.

Comment: 5

I agree with this article.

Styletil.es + sketching wireframes + Zen coding + LESS + LiveReload = BOOM

Comment: 6

Well I'm on the +1 side of this article. Quick wireframe for a variety of resolutions / devices, yes. Is it really then the best use of the clients' money to Photoshop comp each and every variation?

Perhaps a design system, as suggested in another recent article (http://www.netmagazine.com/opinions/designing-infinite-number-devices) or style guide, to frame it another way, should be produced in tandem with wireframes. Edit: I've just seen the link from martinfreer above to http://Styletil.es/ and that 'sexactly the process I envisage. Thanks Martin, Boom :)

The client then has a reasonable idea and input into the look/feel of what they are getting as an end result, without being given the false impressions inherent in a static comp, which I increasingly feel is a false impression in any case - typographical / webfont nuances across browsers and OS as just one symptom of this.

Comment: 7

I think some misunderstand what Edward means.
Actually I kinda do design in the browser, and the author should have gone more into practical examples to round the article off.

I do it as follows:
1. Dream up my design as I like it (actually use InDesign for that, which has Problems later, but I like it best).
2. At some point I stop and say: Gee, let's look how this looks in real life. I do a basic template to see if contrasts, Fonts and everything come close to my vision. Often it is surprisingly different.
3. Go back to 1, and try to find a better balance. When I go back to 2, I now have a basically working Html representation of my design, and can quickly apply changes and see how it looks now.

So my vision of the design and brutal reality get into a fruitful dialog at best, my Design gets thrown into the bin for a fresh start in the worst case. But I save myself and the client the "Oh, it looked different in the mockup" frustration, leaving me with the problem having created an unfulfillable expection all by myself.

The important thing this article got me thinking about is: Do the effort and do all this before I show it to the client.
You won't be able to do it on a cheapo, cheapo project. But for that you should use a prebuilt template and modify it instead of creating a custom design anyway.

Comment: 8

First of all. I barely comment on this site, because this log in form. It keeps asking me to sign in, even after I close a session. Cookies, please.

Second, I disagree with this. The visual aid of what needs to be done should be a comp. For both clients and developers.

Third, you can leave notes to the developer.

Fourth, it cuts an important step of the process. Its like writing code without having a UML diagram or something. Just, no.

Comment: 9

did anyone even read the article? You all say "no this is wrong, create static mockups!". But no one gives a real reason why. If static mockups are what you are comfortable with then fine go nuts but to me (in most cases, not all) they are pure evil. They DO NOT represent what the final work will look like, they DO NOT help with user experience in fact for me they hurt it. why do they hurt it? simple! they are not usable. How do you test usability on something that isn't usable?

I can't tell you how many wasted hours have been put into trying to make the final website look EXACTLY like the mockup because the mockup is a promise, it's a promise of what the final product will look like and I'll tell you something.... it's nothing but a big fat lie.

Wifreframes are a great start (really there are a thousand steps before wireframes like user testing, creating persona's, content strategy, style guide's or mood boards etc etc etc.....) HTML / CSS / JS / browsers can do so much now that only graphics did in the past, embrace the future leave your graphic editing software for just that, creating graphic elements not mockups.

Comment: 10

to clarify my point, I'm not saying creating mockups is the wrong approach especially if it's what works for you. I'm saying that "designing in the browser" isn't wrong either (and I feel it's a better approach most of the time, but that's beside the point).

Comment: 11

I design in browser, and this notion that I'm limiting my ideas is nonsense. Completely the opposite, because the second I have an idea, I can code it up. Half hour later, I've got an in-browser mock up that I can easily tweak, adjust, until my hearts content.

But honestly, all these comments saying "it's wrong" are narrow minded. It's not wrong, it's personal preference, and you're no less of a designer because you choose this method. Everybody prefers different techniques and work flows, and no one is universally "better" than another.

Comment: 12

Thanks for all the comments.

@eigentor "At some point I stop and say: Gee, let's look how this looks in real life" That is brilliant. Love it! It is actually what I used to worry about when I was working in Photoshop. This looks good here but I wonder if it will be as good and feel right on the web.

@brightonmike "Everybody prefers different techniques and work flows, and no one is universally "better" than another." Exactly! I think 'Designing in the browser' as become a bit of a loaded term. People associate it with sneering attitude toward people who aren't into HTML/CSS which has tarnished the idea.

@mazurka "How do you test usability on something that isn't usable?" That is a great point.

@lukeburford "Perhaps a design system...or style guide to frame it" I am using style guides at the moment and I really like them. I would have liked to have talked more about the process of trying to design more in the browser and I think we still have a lot to figure out in terms of rougher and loser design deliverables to facilitate conversations with clients.

Comment: 13

I completely agree with your article. Some designers can say laziness comes from starting in the browser, but I say those designers are lazy for having a closed mind towards the concept. If you regularly design for the web, one PSD hardly accounts for the multiple screen sizes and resolutions that are required of us to account for.

Sure, you can wireframe and birth your ideas in PSD like you have for as long as you remember, but why not start in the browser, and then load up Photoshop?

I design in the browser now, and I find it a very liberating and fulfilling practice which has made me both a better design and developer, all while having a firmer grasp in understanding limitations each browser will impose on my conceived designs. Thanks to the absolutely impressive nature of CSS3, and the tools online that can help, I am currently faster in the browser than in Photoshop. :-)

Nothing bothers me off more than a designer that gets pissed when the margins and gutters are off by two pixels in Safari on Apple (Since that's usually the browser of choice), but everything is perfect in IE, Chrome and FFox. Learn to better understand your limitations, and your designs will improve as well.

Great read!

Comment: 14

I think that design really starts with pen and paper...

that´s where all the main ideas como to play. Altough notice that the pen and paper are only representations of your thoughts... that´s where it all beguins.

Once everything is clear, I agree that designing pixel perfect mockups don´t really get the job done. Photoshop or fireworks is not the web.

But if you work on a team where you take care of UX and design only, you need to pass the ideas, concepts and designs to developers. And pixel perfect beguinnings to the job first of all, followeb by lots of iterations.

It depends if you work on a team or by yourself. When I work on my own I do: pen, paper and then a mixture of browser and adobe fireworks, till I get everything working in just code.

thanks for the great discussion!
July 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