A Good Style Guide Under the Creative Commons? 131
eldavojohn writes "I've been charged with making a specific user interface style guide for a suite of software by my employer. I'm not quite sure where to start. So I turned to my favorite search engine only to be brutally disappointed with what is out there to help me. I'm a software developer but have not had any formal training in UI design or look and feel. I'm looking for something more than just "keep it simple, stupid." I'm looking more for something that is specific but not technologically dependent. This doesn't have to be a global standard, merely a document that illustrates how one would effectively describe look and feel. Does anyone know of such a guide either created by an organization, government or company for their own uses — possibly one even released under the creative common license?" In addition to just documentation, what other UI advice can Slashdot readers offer in order to ensure quality development?
And what's so wrong with ... (Score:2)
Re: (Score:2, Insightful)
I dunno, it took over 7million years and the second greatest computer of all time to come up with that answer.
Doesn't seem overly simple to me.
quack quack.
Re: (Score:1, Flamebait)
Apple Human Interface Guidelines (Score:5, Informative)
Re:Apple Human Interface Guidelines (Score:5, Informative)
The KDE Usability Guide [openusability.org] also has some good material, although at this time it looks much less mature than the GNOME docs.
Re:Apple Human Interface Guidelines (Score:5, Informative)
For an introduction to UI design, here are some good resources:
Re: (Score:2)
Re: (Score:2)
I'll second the recommendations for "The Design of Everyday Things" and "Tog's First Principles of Interaction Design" as I've found both to be solid and helpful for avoiding some of the biggest pitfalls. I bought a copy of the former and put it in my previous company's engineering library and it has been read by almost everyone by now. I also would like to echo try_anything's recommendation that you look at the style guide for your particular target plaform(s) unless you are coding an interface for somethi
Re: (Score:2)
These principles include the use of Metaphors, Modelessness, User Control, Direct Manipulation, See-and-Point, Consistency, Feedback and Dialog, WYSIWYG (What You See Is What You Get) Forgiveness, Perceived Stability and Aesthetic Integrity.
Additional considerations include Knowledge of Your Audience, Worldwide Compatibility and Universal Accessibility. You c
Design for switchable interfaces. (Score:2)
What I might suggest is to design so that the UI is loosely coupled so it can easily be switched out as needed. Better than trying to make one universal perfect interface is to create one simple interface with the ability to create alternates easily. Then if you need a console based or text-based interface (say for a blind employee) it's easy to do withou
Re: (Score:2)
Re: (Score:2)
Re: (Score:2)
Re: (Score:2)
The worst is people who think of themselves as web programmers. There is often no separation of logic at all. Of course if you're going to cra
Apple (Score:2)
Re: (Score:2)
Say what? I don't like OS X, but it's a vast step up from prior versions. Before X, Mac OS was a clusterfuck of bad usability. Now, it's at least passable. Why would you follow any version before OS X? Serious question.
Re: (Score:2)
Re: (Score:2)
Re: (Score:2)
Not really sure what you're looking for, but... (Score:5, Informative)
GNOME HIG
http://library.gnome.org/devel/hig-book/stable/
Apple's HIG
http://developer.apple.com/documentation/UserExperience/Conceptual/OSXHIGuidelines/XHIGIntro/chapter_1_section_1.html
Re: (Score:2, Interesting)
The GNOME HIG is, in fact, licensed under the GFDL, which effectively meets the Creative Commons request. It's definitely a good place to start.
But when using those, remember they're tied to the individual desktop. Things that are standard under GNOME and Apple are reversed under Windows. (For example, Windows always uses "Yes/No/Cancel" while both GNOME and Apple recommend using action
Re: (Score:1)
I saw your anonymous comment.
WTF are you talking about?
I don't agree with your statements. Gnome is not an OS, it is more of a GUI shell for the OS that has interoperable programs that pull look and feel from the shell. Like a lot of software does on a lot of differing platforms. The thoughts outlined in the HIG can be translated by any intelligent person to fit their needs. The poster just needed an idea of how to proceed, and the HIG does an excellent job of providing a jump point.
Re: (Score:2)
Re: (Score:2, Insightful)
My only comment would be that:
The introduction of the Gnome HIG brought about substantial stripping of functionality out of gnome.
It's heavily tailored toward lowest common denominator computing. It does make flexible & robust GUIs.
They just don't do anything you want.
... (^-^)
Re: (Score:2)
Re: (Score:3, Insightful)
Gnome is consistent and very usable - so their guidelines seem to be working. I'm not sure what your complaint is.
Re: (Score:3, Informative)
Only with itself ... the order of buttons on dialog boxes is f*cked up. For example, in the GIMP : Create a New Image, the order is [Help] [Reset] [Cancel] [Okay]. Last I looked, this was an LTR (left-to-right) locale. The default action in EVERY other environment is on the left in LTR locales.
Their rationale for doing it different was 90% ego bloat, 90% stupid (with an 80% overlap).
Re:Not really sure what you're looking for, but... (Score:5, Informative)
Except Windows, where the default action is in the middle (i.e. the hardest to find possible choice):
Windows Dialog [georgetowncollege.edu]
Or Mac OS Classic, where it works just like in Gnome:
Mac Classic Dialog [georgetowncollege.edu]
Or In Mac OS X, where it works just like in Gnome:
OS X Dialog [primarysou...arning.org]
I can't find a screenshot, but KDE seems to work like Windows.
I still don't see what the problem is here. There are two common ways of doing it. Mac and Gnome do it one way, Windows and KDE do it the other. *shrug*
Re: (Score:2)
I had a fit over this 18 months back (if I recall correctly, when the Gimp changed from Yes-No to No-Yes) and did some research (Message-ID: <slrned8i4a.2t1.grahn+nntp@frailea.sa.invalid>)
If you look at simple Yes-no and Ok-Cancel choices, it seems to me that Mac was the odd exception before Gnome (or GTK?) switched . Ok-Cancel isn't just Windows
Re: (Score:2)
Re: (Score:3, Interesting)
No you don't - the rightmost button is the 2nd, or 3rd, or 4th, or whatever - it varies with the number of buttons.
Putting the default as FIRST would mean always hitting the same location.
The right-hand side is the wrong one in LTR locales.
It isn't "the easiest to hit" unless the window/dialog/whatever is always a fixed size. Otherwise, its position is floating, and it is the last in a series of "N" buttons, instead of the first
Re: (Score:2)
In contrast, the left-most button, as the first, is the first to be seen in LTR locales, the first to be read, and if its what you're looking for (as the default action) you need go no further.
No the lft side is not the first you are looking for, except YOU are one of the 5% exceptions.
Everybody looks to the right first, why do you think, go now and test it, take a random magazine and open a random page, why is the advertizing on the right side and not on the left?
The same about your comment about same loca
Re: (Score:1)
Re: (Score:2)
First off, you're wrong - I grabbed the first magazine off my desk, and on opening it, I'm greeted by a full-page ad ON THE LEFT PAGE.
Also, we're dealing with computer screens here. People read left-to-right in the "C" locale.
Furthermore, right is *not* "allways [sic] the same location". It just happens to be the last in a sequence. To say that its in the same location is just wrong (the x,y coordinate obviously varies). You still have to scan left-to-right to find it, which takes longer, and, in some
The action button is in the corner (Score:2)
In GNOME, to accept the most common, you always hit the same location.
No you don't - the rightmost button is the 2nd, or 3rd, or 4th, or whatever - it varies with the number of buttons.
The rightmost button is first from the end in LTR locales. In a touch screen environment such as a tablet PC, PDA, or handheld video game system, it's also closest to the dominant hand of over 90 percent of users.
It isn't "the easiest to hit" unless the window/dialog/whatever is always a fixed size.
In Mac OS Classic and Mac OS X, the action button is always at a fixed distance from the lower right corner of the window. Eyes are drawn to edges and especially corners.
the left-most button, as the first, is the first to be seen in LTR locales
Apple's studies indicate the opposite, that users do not always scan buttons LTR even in LTR locales. The eye goes diagonally
Practical first step (Score:1)
Re: (Score:3, Funny)
Hire an artist. (Score:1)
Re: (Score:1)
However, that's not to say that programmers are any less important. 200% of shit is still shit, and every UI requires some functionality behind it. Artists generally won't know how to
Re:Hire an artist. (Score:5, Insightful)
Creating a good interface is about FAR more than just pretty pictures. An artist might make it look good, but looking good and being functional are not related in any way, shape or form. I've seen art houses produce UIs that were illogical and violated many basic UI principles but look nice. The worst part is your client will fall in love with the looks without thinking about the damage that is being done.
If you are going to bring in outside sources, there are art houses that have specific UI design experience. You should make sure you engage one of these. Or come up with a design, then have the art house make it look nice.
Real UI design is about user cases, apprentice-master relationships, and other things 99.9% of artists don't know anything about.
Re: (Score:2)
you should consider developing/hiring in-house talent.
I have had some experience with out-sourcing UI design and I discover
this usually works well on the small scale, When I have a specific screen which
performs specific tasks and I want someone to select widgets for me, place them on the
screen and put some nice colors and art around them an external UI-design company could do a good job. But there are many UI issues that require a much in dep
Re: (Score:1)
Re: (Score:2)
And because of this, one size does not fit all when it comes to UI. Always, always, always separate your actual functionality from presentation, so that people can implement and use the UI that fits them best.
Personally, I find apps like Rasmol, Gnuplot, and R to have the finest UIs available. Which is to say they only use graphics when absolutely necessary and everything else is done through a command line. I just find the language metaphor a more compell
Some suggestions (Score:5, Informative)
Know the author Ed Tufte [edwardtufte.com].
Know what HCI [wikipedia.org] stands for.
Know your audience and let them evaluate Throwaway Prototypes [wikipedia.org].
If you are looking for a book to teach you UI design, you are misguided. If you are looking for a Creative Commons and/or Open approach to UI design, register a domain called "Principles of UI Design" and launch a Wiki on it, then license it with the license you desire (but I would recommend CC0).
If all goes well, this thread will serve as a good starting point for getting ideas/content to populate your new Wiki with.
Re: (Score:2)
To teach, maybe. But there are several good and useful books, such as Designing from Both Sides of the Screen [google.de], Observing the User Experience [google.com] (well that's more about your user testing), and others that are at the office and which I can't remember right now.
Re: (Score:1)
Great starting points here. The audience one is a massive factor.
For instance, are your programs for designers, artists, programmers, office workers, etc? Different groups tend to use applications in different ways. They've also been exposed to different styles of UI design. An important factor is often not to "surprise" your audience with some neat new UI trick *cough* Office 2007 R
Re:Some suggestions (Score:4, Insightful)
I think the ribbon has been unfairly criticised since it became public. It eliminates the redundancy of having both menus and toolbars with the same commands in them, and makes better use of the space on the screen.
To be clear, I'm generally a critic of Microsoft, since they can be trusted to act in their own interest no matter how much they try to make it seem otherwise, and I've never used Office 2007 before. Despite that, I disagree with the ribbon bashing bandwagon people seem to want to jump on - there's plenty of legitimate things to criticise about Microsoft, no need to latch onto something that is actually a good idea. Also, this isn't directed at the post I'm replying to specifically, it's more of a generic rant about ribbon bashing.
Re: (Score:2)
I think the ribbon has been unfairly criticised since it became public. It eliminates the redundancy of having both menus and toolbars with the same commands in them, and makes better use of the space on the screen.
This is the first sensible rationale for ribbons that I've yet seen. Yes, really. The. Very. First. Not that I've been looking for such rationales.
But I don't think it is a particularly strong rationale. There are good arguments for redundancy of controls. Especially in apps like Firefox, oOO, and even Office 2003, where the user has the ability to customize the toolbars to whatever makes the most sense for him, but the menus continue as a known constant, which is damn useful when giving instructions to
Re: (Score:2)
Two things:
Good Interfaces (Score:2)
I like Tufte for his arguments against using PowerPoint. His own works are mostly about using images to display information well. While some important HCI topics are covered, finding the few critical points would be much work for someone with an immediate need to create a guide for interfaces.
"Know what HCI stands for."
Much good information can be found with much less work by reading the free materials from the organization that certifies HCI professionals:
Re: (Score:1)
The Usability Professionals Association website lists resources http://www.usabilityprofessionals.org/usability_resources/ [usabilityp...ionals.org]
I attended their conference last year. This ia a good quaility place to start learning.
Your Platform/Toolkit's HIG (Score:3, Funny)
Wrong question... (Score:3, Insightful)
You don't know where to start because you don't work as a tech writer!
Tell your tightwad boss to pick someone more suited to the task - Even the weenies in Marketing can probably do the task better than an engineer (unless you just happen to have a background in technical writing, but it sounds like that doesn't fit into your job description/requirements).
Geeks can do anything - That doesn't always make us the best person for every job even tangentially related to "computers". If you want me to design a website, I can make it do anything HTML supports, but prepare for a color scheme that makes most people's eyes bleed...
Re:Wrong question... (Score:4, Interesting)
When geeks design a Style Guide, it looks like this [ieee.org]. Simple, elegant, uncluttered.
When the weenies in Marketing design a Style Guide, the audience ends up trying to punch a psychedelic virtual monkey. Please don't suggest anything that would put marketing personnel in a position to produce anything that will guide me, thankyouverymuch.
Re: (Score:1)
Agreed. Marketing people are employed to build hype and help sell products. Most of them don't know squat about design.
Engineers can do a good job on design, but only when you slow down and force yourself to look at it from a user's perspective. We all use a lot of software, and you can probably come up with ideas very quickly about what annoys everyone you know. But you also have t
Re: (Score:2)
MEMO FROM THE MANAGEMENT: You're out of excuses [colourlovers.com], now design that website!
Re: (Score:2)
I'd argue that a pure marketing employee is almost the opposite extreme from why you wouldn't ask an engineer. I work as a web developer implementing my companies own design as well as those designed by outside marketing agencies. By far the most difficult designs are from the marketing company. While we try to beat it into their heads that print is not the the same as web nor is video the same as the web, many times they still
Re: (Score:2)
Tell your tightwad boss to pick someone more suited to the task
And obviously you're not a manager or you're not a good one. If managers lacked trust, confidence, and were not willing to challenge their employees, then their employees would only be as good as the first day they stepped in the door. Unfortunately or fortunately, most employees will stay for a good amount of time, therefore the better you can develop and train your employees, the more satisfied they will be with their job. If you simply sit at let them age (especially in the tech field) they are not im
Re: (Score:1)
Exactly right. There is an entire field of expertise around UI design and technical writing (and no, they are not in the Marketing department) - what makes you or your boss think you can pick it up in a few hours and do a reasonable job of it?
On second thought, perhaps they're all busy doing application development...
Re: (Score:2)
This is a job for someone who has prior experience in creating Human Interface Guidelines, who can create a set of guidelines for your company free from any plagiarism or theft of Creative Commons licensed material. There is a substantial amount of work
Testing, testing, testing (Score:2, Insightful)
Re: (Score:2)
The concept is called "Useability Testing". Do not stop with asking them to "accomplish 6 objectives". Match the objectives to the product requirements. Match the tester to the appication (if it is a Computed Aided Dispatch system, your primary testers should be dispatchers (I know, a novel concept
Another resource: (Score:2)
Author: Platt, David S.
ISBN: 0-321-46675-6
Get it and read it.
"Quality" is not an adjective! (Score:2)
Do you mean "quality development" as how to develop of some sort of measure of quality, or do you simply mean development that fails to suck?
Have I got a job for you (Score:3, Funny)
That would make you the perfect Microsoft employee.
Just Get An Interaction Design Textbook (Score:2, Informative)
A Great Brochure (Score:3, Insightful)
http://www.humanfactors.com/downloads/guistandards.pdf [humanfactors.com]
Page very close attention to page 14. It describes your situation as "Pitfall #4." And it's right.
Curly Brace OK/Cancel (Score:3, Interesting)
Try this HCI web comic, I don't think it is updated anymore but there's lots of great archives:
http://www.ok-cancel.com/ [ok-cancel.com]
Don't re-invent the wheel (Score:3, Insightful)
Re: (Score:2)
Follow the design style guide of the hosting desktop environment.
If you are developing for Windows, use Microsoft's own guidelines [microsoft.com].
If you are developing for Mac OS X, use Apple's (link already given by someone else).
If you are developing for Gnome, use the Gnome guidelines.
You get the general idea. Also, don't invent your own controls/widgets unless you Really Have To.
If you are writing a cross-platform application, it's a bit more difficult. Find an applic
Starting points for search (Score:1)
An 8th principle (Score:1)
Pointer to Model-View-Controller (Score:1)
http://en.wikipedia.org/wiki/Model-view-controller [wikipedia.org]
I'm pretty sure that someone wrote an article on the need to combine view and controller. I may be able to look in up on Monday.
For me, it's easy (Score:1)
Ask your self (or the other person), "What do you want to do" (over and over again, in different contexts). There are so many times we get wrapped up in the technology to create a solution that we start to build the UI based on it. The UI should be based on the desires/needs of the user. Why else would the software be developed? Takin
Start with Facebook... (Score:3, Insightful)
Then work with real users and find out what they want the app to do, how they want it to do it, and assess what their knowledge and skills levels are. In all likelihood you are entirely the wrong person to judge what's appropriate for end users.
A Pattern Library for Interaction Design (Score:2, Informative)
This is a collection of design patterns for creating UI.
I was extremely impressed by this work already 8 years ago when it was presented in PLoP2K http://jerry.cs.uiuc.edu/~plop/plop2k/proceedings/proceedings.html [uiuc.edu] but since then it became much much bigger.
Usability Guide (Score:4, Informative)
Hopefully this helps.
About Face Is A Good Read (Score:1)
About Face: The Essentials of Interaction Design
http://www.amazon.com/About-Face-Essentials-Interaction-Design/dp/0470084111/ref=pd_bbs_sr_1?ie=UTF8&s=books&qid=1204319582&sr=8-1 [amazon.com]
http://www.amazon.com/About-Face-2-0-Essentials-Interaction/dp/0764526413/ref=sr_1_3?ie=UTF8&s=books&qid=1204319582&sr=8-3 [amazon.com]
Sun web spec (Score:2, Informative)
I'm not a UI Designer but I play one on TV (Score:3, Informative)
Then your proper response is, "Are you sure you want me to do this? I have no training in this area."
And put it in writing as a CYA.
Done. (Score:2, Funny)
HCI (Score:2)
Also, the guidelines for a web application or mobile application will be different to that of GUI application.
You should read up about accessibility, should your application be used in government organisations then it may often need to be able to be used by people with eyesight or mobility defects.
Important points, never rely on colour to differentiate things. Not everyone has reliable colour vision.
Involve end users where possible.
Read Jacob Nielsen's op
Web Design from Scratch (Score:2, Informative)
For searches like this, don't use Google or other search engines like it. Search people's bookmarks. http://del.icio.us/search/?fr=del_icio_us&p=design&type=all [del.icio.us]
Re: (Score:1)
scenarios (Score:2)
To do so, try to imagine a few "typical" users for your application, and go down to enough details about them, until you have a clear image of their personality. It's pretty hard to do first (sounds easy, until you actually start writing stuff down, then you block).
The idea while doing this is to come to different aspects in usability, not in features. That
Fluid (Score:1)
From http://fluidproject.org/ [fluidproject.org] ---
"Fluid is a worldwide collaborative project to help improve the usability and accessibility of community open sourc
general reading under interface development (Score:1)
Motif Style Guide (Score:1)
Inmates are running the Asylum (Score:1)
It gives a good case for why YOU shouldn't be writing User interface guidelines and why a design specialist - who is a stakeholder and needs to own the project - should be.
Wisdom from the Design of Everyday Things (Score:2)
The Design of Everyday Things is a great book, considered a classic. It covers basic things like doors and telephones more than GUIs, but it helps you think in the right direction.
One principle that stuck in my mind is that you should make things as obvious as you can - if you've got four heating elements on a stove, arranged in a square, then arrange the knobs that control them in a square and it's obvious how it maps. If you put the knobs in a straight line, you have to label them and the user has to st
Accessability Guidelines for Developers (Score:1)
http://www-03.ibm.com/able/guidelines/software/accesssoftware.html [ibm.com]
Understanding Accessibility
If you are new to accessibility, review "Understanding accessibility" before completing the checklist or contacting the Human Ability and Accessibility Center for help.
IBM software accessibility checklist
Use this checklist for:
* general software products and applications that have a user i
Tango Icon Community (Score:1)
UI Design for Programmers (Score:2)
Negative? (Score:2)
I don't want to sound negative but (and assuming this is a commercial gig) you may need to get someone who knows how to design UIs in to do the job. After all, would you hire a HCI specialist to produce C code? It's good that you want to learn about UI design (and best of luck), but it's a surprisingly large area with lots of work being done (even so called specialists aren't aware of the research that goes on).
Reading books and style-guides is a start but then so is employing programmers with a basic cer
A mechanical style guide won't help much. (Score:2)
- use standard controls and designs from your operating system
- copy the best parts of other similar applications
- think hard about how the user uses it and make it as smooth as possible for those cases.
- be tidy.
- use a few nice graphics sparingly.
Most business apps fall into this category and just following the basics will make a reasonable app, but nothing world-beating.
If you are doing something for whic
Make it skinnable... (Score:2)
Look into whether you can side step the whole design thing by
Your initial job would be to build a rudimentary interface and a toolkit that would allow each user of the software to skin it the way they think would work best. Long term maintenance would include adding extensions to the toolkit tha
Why does it have to be in the Creative Commons? (Score:2)
Why would the research for this style guide have to be in the Creative Commons?
First of all, unless you're going to be copying and pasting the actual text of the research style guide into your own document, the copyright law regarding the research style guide is irrelevant. You can't copyright an idea, so if you see a good idea in a copyrighted book and you want to use it, there's nothing stopping you (at least on the copyright end - patent law is a much d
I don't fear the moderation ! (Score:1)
Do you understand what you're being asked to do? (Score:4, Insightful)
I have a feeling that 99% of the replies here are misundertanding something crucial. And so is your employer, and so are you. (OK, so it's more likely I'm the one who doesn't understand. But hear me out.)
First off, what is a style guide?
Here's how I would define it.
A style guide is a document which prescribes standards for subjective matters of presentation, which are to be followed for material created within a specific framework. For example, the material might be written articles for publication in a newspaper. Or the material might be programs created to run on an OS, or with a GUI or application framework. Or C language source code written to be read and modified by a programming team.
A style guide's purpose is to enforce consistency among material created by multiple parties (or one party over multiple sessions). This consistency is for the benefit of the end user, not necessarily the creators. And the style guide is for use by the creators, not the end user
A style guide governs presentation, not content. Grammar and article length, not viewpoints or what gets discussed and what doesn't. How a pushbutton looks and behaves, not how it gets drawn on the screen. Code indentation and naming, not what the program does.
A style guide does not prescribe standards that are enforced elsewhere. It doesn't tell writers to properly end their sentences with punctuation, because that's a rule that applies to all writing. It doesn't say that scrollbars in a GUI should not be placed at 45-degree angles, because the GUI API provides no means to do so anyway. It doesn't say that curly braces must be balanced, because the compiler will catch that anyway.
A style guide is the sole authority on the issues it covers. If an issue within the domain of the style guide is not governed by it, then there is no rule on it.
A style guide prescribes standards as the preferred choice among various possible options, none of which is objectively correct or incorrect. The standards take the form of "for such-and-such, do it this... way, not that... way. There are some who do it that... way, but we do it this... way because such-and-such."
A style guide can not be legitimately created by someone who doesn't define the standards in it, and have the authority to decide what to prescribe.
So, if your employer is asking you to make a UI style guide for their software, there is a basic issue that you haven't explicity made clear:
Does this software provide a framework for creating material that should conform to some standard? You say you are creating a user-interface style guide, so is it a user-interface creation tool (or something that allows external components with their own user interfaces)? If that's not what your software does, and the user-interface you're referring to is something that your software uses, rather than provides, then your company is in no position to create a style guide (that is, define standards) for it. Whoever created the GUI (Windows? Mac? QT?..) has already done that, and chances are they've published it, and your software engineers have been following it. Any attempted style guide would be merely descriptive, not prescriptive. It would say "for such-and-such, our software does it this way...", possibly even while the actual standards say to do it that... way.
Now if your software is in fact a UI-creation tool and it's already been created, then allthe content that needs to go into your style guide is already in the heads of, or has already been written by, whoever created the software. You know who to talk to.
And if the software is UI-creation tool but you're still at the design stage, then what you're being asked to do is actually create the standards, not just write a document. Your employer is asking you, a software engineer with no UI expertise, to define the rules which all of your customers, as software developers, will be mandated to follow, and which will in
Re: (Score:3, Funny)
Signed,
Chester W. Lampworth
President and CEO
Amalgamated Manure, Inc.