Stories
Slash Boxes
Comments

News for nerds, stuff that matters

Slashdot Log In

Log In

Create Account  |  Retrieve Password

A Good Style Guide Under the Creative Commons?

Posted by ScuttleMonkey on Fri Feb 29, 2008 03:12 PM
from the build-something-that-doesn't-suck dept.
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?
+ -
story

Related Stories

This discussion has been archived. No new comments can be posted.
The Fine Print: The following comments are owned by whoever posted them. We are not responsible for them in any way.
 Full
 Abbreviated
 Hidden
More
Loading... please wait.
  • I'm looking for something more than just "keep it simple, stupid!
    Try 42. It doesn't get much simpler than that.
    • 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.
  • by Foofoobar (318279) on Friday February 29 2008, @03:18PM (#22604466)
    Macintosh develop site has several well put together style guides for software development that you should look at. Check out the Apple Human Interface Guidelines [apple.com]. Apple may not be your cup of tea but they always have good ideas and have a well put together interface and this will DEFINITELY give you a good idea where and how to start.
  • Read the Apple Human Interface Guidelines, ideally a version from before OS X when they weren't trying to merger MacOS and OPENSTEP HCI principles into a coherent framework. They're well written, contain rationales for most of their descriptions and full of examples.
    • ideally a version from before OS X
      O.o

      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.

  • by ruyon (660897) on Friday February 29 2008, @03:19PM (#22604480)
    How about taking a look at these well-known samples?

    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)

      by Anonymous Coward
      Not that anyone will ever even see this since the new Slashdot comment system doesn't even show anonymous comments, but...

      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
    • Yes, the Gnome HIG is really quite nice. Props to Sun for all their work on it!

      • 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)

          Gnome is consistent and very usable

          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).

          • 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.

            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:3, Interesting)

              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.

              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

  • Some suggestions (Score:5, Informative)

    by RobBebop (947356) on Friday February 29 2008, @03:27PM (#22604590) Homepage Journal

    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.

    • If you are looking for a book to teach you UI design

      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.
    • "Know the author Ed Tufte."
      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:
      • by Simon80 (874052) on Friday February 29 2008, @04:37PM (#22605486)

        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.

  • by Sentry21 (8183) on Friday February 29 2008, @03:30PM (#22604632) Journal
    Pretty much every platform (in this case, I'd count GNOME and KDE as 'platforms') will have a set of Human Interface Guidelines that will give advice on how to craft a usable interface that meshes well with native applications and provides a solid user experience. There's no one hard-and-fast style guide, though there are lots of examples of what NOT to do if you Google (see the User Interface Wall of Shame [mac.com] for one).
  • Wrong question... (Score:3, Insightful)

    by pla (258480) on Friday February 29 2008, @03:31PM (#22604654) Journal
    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

    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)

      by RobBebop (947356) on Friday February 29 2008, @03:47PM (#22604868) Homepage Journal

      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).

      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.

    • 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...

      MEMO FROM THE MANAGEMENT: You're out of excuses [colourlovers.com], now design that website!

    • Even the weenies in Marketing can probably do the task better than an engineer

      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

    • 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

    • I came here to say that. Except for the part about marketing, which is possibly the worst advice you could give. Marketing should only have minimal input, with neither approval or veto power over the project, or you will end up with neon blink tags and worse.

      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
  • by Anonymous Coward
    Some of the best input you can get is by giving the software to someone completely unfamiliar to the project, and ask them to accomplish 6 objectives that require them to navigate the application's interface. Ideally, you'll want them to be able to successfully complete those objectives with a minimal amount of time and hassle searching for the proper way to accomplish it. Have them identify trouble spots they ran into (icons confusing, unclear menu structure, etc). After reading over the input of uninitiat
    • Some of the best input you can get is by giving the software to someone completely unfamiliar to the project, and ask them to accomplish 6 objectives that require them to navigate the application's interface.

      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

  • In addition to just documentation, what other UI advice can Slashdot readers offer in order to ensure quality development?

    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?
  • by iliketrash (624051) on Friday February 29 2008, @03:40PM (#22604776)
    "I'm a software developer but have not had any formal training in UI design or look and feel."

    That would make you the perfect Microsoft employee.
  • I would suggest going out an getting a book on Interaction Design, such as that by Sharp, Rogers, and Preece. If you look over the diagrams and the chapters you should get the gist of it. This book is used in introductory graduate Human-Computer Interaction courses.
  • A Great Brochure from Humanfactors.org is here:

    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.
  • by hansamurai (907719) <hansamurai@gmail.com> on Friday February 29 2008, @03:46PM (#22604858) Homepage Journal
    Choose a curly brace style and stick with it! Oh, this is UI styling we're talking about...

    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]
  • by MSTCrow5429 (642744) on Friday February 29 2008, @03:47PM (#22604866)
    Unless the software suite is the only thing the user is going to see, and not the underlying OS or any other software, you should just follow the guidelines for the OS or desktop environment. Otherwise, you get a schizophrenic result that clashes with everything else, leading to user confusion and frustration. If you're designing from scratch, I suggest reading Raskin's "The Humane Interface," and using that as a baseline. Don't read the Apple user guidelines. Unless you're used to a Mac, they don't make sense.
    • I can only amplify what the parent poster has said.

      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
  • by rueger (210566) on Friday February 29 2008, @03:57PM (#22604988) Homepage
    ... and ignore everything that they do.

    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.
  • I strongly recommend this link: http://www.welie.com/ [welie.com]

    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)

    by kcurtis (311610) on Friday February 29 2008, @04:06PM (#22605124)
    This is not directly a style guide, but a Federal (US) usability guide. http://usability.gov/pdfs/guidelines_book.pdf [usability.gov]

    Hopefully this helps.
  • My employer recently adopted Sun's standards. They posted them here: http://developers.sun.com/docs/web-app-guidelines/uispec4_0/ [sun.com]
  • by sconeu (64226) on Friday February 29 2008, @04:26PM (#22605376) Homepage Journal
    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."

    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.
  • Everything you need is right here [gnu.org].
  • You need to read up about Human Computer Interaction.

    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
  • This is the best website on design that I've found: http://webdesignfromscratch.com/ [webdesignfromscratch.com]

    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]
  • I've had no formal training in GUI design either, but I've found that making a few useful scenarios works pretty good (although it takes a bit of time).

    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
  • 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

  • I highly recommend Spolsky's User Interface Design for Programmers [amazon.com] as a place to start. It's short and to the point, with about a dozen guiding principles to make your UI practical. It's a light and fast read, yet substantial enough to get you off and running.
  • by Riktov (632) on Saturday March 01 2008, @01:51PM (#22610878) Journal

    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)

      And make sure that whatever objet d'art you create doesn't look like too much of a turd.
      I really don't understand the need for this rule.

      Signed,
      Chester W. Lampworth
      President and CEO
      Amalgamated Manure, Inc.
    • Different brains are wired for different things.

      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
      • Re:Hire an artist. (Score:5, Insightful)

        by neurosis101 (692250) on Friday February 29 2008, @03:55PM (#22604962)
        I almost never post on /. but seeing this I can NOT pass up.

        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.