Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

How/When to design an interface? [closed]

Tags:

html

interface

I'm trying to get in the habit of designing the interfaces to my websites at the very beginning before I do any actual coding. I've read "Getting Real" by 37 signals and they recommend doing the interface first, before any actual code is produced.

What exactly is meant by that? Does that mean use pure HTML and CSS to design the site and add php, js logic to page afterwards, or is it okay to sprinkle in the php, js from the beginning?

What if your using a framework, should I set up empty controllers that simply call the views, or should the early stages be solely html, css?

Also, what do you guys think about design first vs later?

EDIT I'm talking about AFTER I have sketched everything with pen and paper.. I'm taslking solely about the html mockups. And I'm not too sure about using extra tools that I would need to learn to do this

like image 741
BDuelz Avatar asked Jan 21 '23 13:01

BDuelz


2 Answers

I think that the majority of the benefit of designing the interface first has been achieved after you are done your paper sketches. Basically, you are just ensuring that you have a design in your head and that your coding process is somewhat end-user driven. You are also trying not to waste time on needless documentation.

Getting the HTML in place (or the skeletons of the Views in an MVC app) makes some sense and this is the main thrust of what 37signals says. I would certainly not do anything beyond this that is just going to be thrown away.

I think if you have a proper design, it is immaterial if you next move on to writing the back-end code after the HTML or if you do the CSS and JavaScript. The CSS and the code should not even need to be aware of each other.

Do whatever gets you excited and motivated. Do whatever gets you thinking more deeply about how the app will actually work so you can catch any flaws in your original thinking. I like to code before CSS but that is just me. You might find it important to get the CSS further along before the app takes shape in your head.

Joel Spolsky likes Balsamiq as a mocking tool. I think that 37signals uses Draft (an iPhone app). I use a Sharpie. The key is not getting too detailed though.

Opinions vary, but I believe that JavaScript should come last. I believe most sites should be designed so that they work 100% without JavaScript and then have JavaScript added for polish.

Learn more about Unobtrusive JavaScript

So (for me):

  • Quick and dirty sketches of views
  • Get some HTML in place
  • Maybe some basic CSS for layout (or more if I need to impress somebody early)
  • Write the core logic
  • Add support for web services and AJAx calls
  • Pretty it all up with snazzy CSS
  • Write some JavaScript to add the sizzle
like image 90
Justin Avatar answered Feb 01 '23 22:02

Justin


Let me ask you this. Do you paint a car before or after you have made the working parts? Maybe you have chosen which paint but ultimately it cannot go on until the car is finished. Maybe you don't agree with this analogy but I think coding will bring out issues that cannot be understood before a site is designed. Code first, design second.

like image 24
thenengah Avatar answered Feb 01 '23 22:02

thenengah