This is a collection of Design principles from around the web. The list was started from a list compiled by http://principles.adactio.com/ Jeremy Keith, a web developer in Brighton, England to whom we are grateful. Copied here because we are interested in expanding it and dreadfully afraid it might disappear one day.
The Robustness Principle
Be conservative in what you send; be liberal in what you accept.
The Pareto Principle
80% of the effects come from 20% of the causes.
The Principle of Least Surprise
When two elements of an interface conflict, or are ambiguous, the behaviour should be that which will least surprise the user.
The DRY Principle
Every piece of knowledge must have a single, unambiguous, authoritative representation within a system.
Personal Design Principles
Architectural and philosophical points
These statements of architectural principle explain the thinking behind the specifications. These are personal notes by Tim Berners-Lee: they are not endorsed by W3C. They are aimed at the technical community, to explain reasons, provide a framework to provide consistency for for future developments, and avoid repetition of discussions once resolved.
- Modular Design
- Being part of a Modular Design
- Test of Independent Invention
- Principle of Least Power
What is a good standard?
Why doesn't HTML include tags for style? Why can't you put text inside SMIL? Why doesn't CSS include commands to transform a document? Why, in short, does W3C modularize its specification and why in this particular way? This essay tries to make explicit what the developers in the various W3C working groups mean when they invoke words like efficiency, maintainability, accessibility, extensibility, learnability, simplicity, longevity, and other long words ending in -y.
- Minimum redundancy
- Binary or text format
- Backwards compatibility
- Repurposing of content
- Use what is there
- Design by committee
- Good design is innovative
- Good design makes a product useful
- Good design is aesthetic
- Good design makes a product understandable
- Good design is unobtrusive
- Good design is honest
- Good design is long-lasting
- Good design is thorough down to the last detail
- Good design is environmentally friendly
- Good design is as little design as possible
- Be narrow
- Be different
- Be casual
- Be picky
- Be user-centric
- Be self-centered
- Be greedy
- Be tiny
- Be agile
- Be balanced
- (bonus!) Be wary
The following principles are fundamental to the design and implementation of effective interfaces, whether for traditional GUI environments or the web. Of late, many web applications have reflected a lack of understanding of many of these principles of interaction design, to their great detriment. Because an application or service appears on the web, the principles do not change. If anything, applying these principles become even more important.
- Color Blindness
- Efficiency of the User
- Explorable Interfaces
- Fitts’ Law
- Human Interface Objects
- Latency Reduction
- Protect Users’ Work
- Track State
- Visible Navigation
Interfaces exist to enable interaction between humans and our world. They can help clarify, illuminate, enable, show relationships, bring us together, pull us apart, manage our expectations, and give us access to services. The act of designing interfaces is not art and they are not monuments unto themselves. Interfaces do a job and their effectiveness can be measured. They are not just utilitarian, however. The best interfaces can inspire, evoke, mystify, and intensify our relationship with the world.
- Interfaces exist to enable interaction
- Clarity is job #1
- Conserve attention at all costs
- Keep users in control
- Direct manipulation is best
- One primary action per screen
- Keep secondary actions secondary
- Provide a natural next step
- Appearance follows behavior (aka form follows function)
- Consistency matters
- Strong visual hierarchies work best
- Smart organization reduces cognitive load
- Highlight, don't determine, with color
- Progressive disclosure
- Help people inline
- A crucial moment: the zero state
- Existing problems are most valuable
- Great design is invisible
- Build on other design disciplines
- Interfaces exist to be used
Inclusive Design is where innovation and imagination flourish. Meeting the needs of the widest variety of people does not inhibit creativity. It opens our minds and inspires excellence.
- Equitable: Be welcoming.
- Flexible: Provide options.
- Straightforward: Be obvious and not ambiguous.
- Perceptible: Don’t assume anything.
- Informative: Be timely, predictable, uncomplicated and precise.
- Preventative: Provide easy to follow instructions and gently guide users.
- Tolerant: Handle errors respectfully.
- Effortless: Don’t make demands or place restrictions on your users.
- Accommodating: Be approachable, uncluttered and give people room to manoeuvre.
- Consistent: Follow standards, guidelines, conventions and best practices.
Organisational Design Principles
Reduce the cost of using and acting on the evidence in the archive.
Engage new people in the records.
Preserve access to the evidence for as long as possible in as many ways as possible.
- Use open standards
- Think long term
- Stay small, let others create meta-collections
- Strive for universal accessibility, be accessible by default
- Store the original record, present its essense over its resolution
- Work together
- Be wary of other people’s ideas
Google’s mission is to organize the world’s information and make it universally accessible and useful.
- Focus on the user and all else will follow.
- It’s best to do one thing really, really well.
- Fast is better than slow.
- Democracy on the web works.
- You don’t need to be at your desk to need an answer.
- You can make money without doing evil.
- There’s always more information out there.
- The need for information crosses all borders.
- You can be serious without a suit.
- Great just isn’t good enough.
- Focus on people their lives, their work, their dreams.
- Every millisecond counts.
- Simplicity is powerful.
- Engage beginners and attract experts.
- Dare to innovate.
- Design for the world.
- Plan for today’s and tomorrow’s business.
- Delight the eye without distracting the mind.
- Be worthy of people’s trust.
- Add a human touch.
Government Digital Service
These guidelines are intended for people building digital services for the GOV.UK domain. … We believe that the work should do the talking, so underneath each of the principles there are examples of how we have applied that thinking in the work released so far.
- Start with needs
- Do less
- Design with data
- Do the hard work to make it simple
- Iterate. Then iterate again.
- Build for inclusion
- Understand context
- Build digital services, not websites
- Be consistent, not uniform
- Make things open: it makes things better
U.S. Digital Services
To increase the success rate of these projects, the U.S. Government needs a new approach. We created a playbook of 13 key “plays” drawn from successful best practices from the private sector and government that, if followed together, will help government build effective digital services.
- Understand what people need
- Address the whole experience, from start to finish
- Make it simple and intuitive
- Build the service using agile and iterative practices
- Structure budgets and contracts to support delivery
- Assign one leader and hold that person accountable
- Bring in experienced teams
- Choose a modern technology stack
- Deploy in a flexible hosting environment
- Automate testing and deployments
- Manage security and privacy through reusable processes
- Use data to drive decisions
- Default to open
- Design for how people actually behave
- Assume people don’t care
- Always lead to action
- Aim for lasting relationships, not one-night stands
- Build for everyone… who receives a utility bill
Indie Web Camp
- Own your data.
- Use visible data for humans first, machines second.
- Build tools for yourself, not for all of your friends.
- Eat your own dogfood.
- Document your stuff.
- Open source your stuff!
- UX and design is more important than protocols.
- Build platform agnostic platforms.
- Build for the long web.
- Have fun.
Format Design Principles
HTML5 defines the fifth major revision of the core language of the World Wide Web, HTML.
A set of simple, open data formats built upon existing and widely adopted standards.
- Solve a specific problem
- Start as simple as possible
- Design for humans first, machines second
- Reuse building blocks from widely adopted standards
- Modularity / embeddability
- Enable and encourage decentralized and distributed development, content, services
The guidelines and Success Criteria are organized around the following four principles, which lay the foundation necessary for anyone to access and use Web content. Anyone who wants to use the Web must have content that is:
PerceivableIt can't be invisible to all of their senses.OperableThe interface cannot require interaction that a user cannot perform.UnderstandableThe content or operation cannot be beyond their understanding.RobustAs technologies and user agents evolve, the content should remain accessible.
Software Design Principles
- Server rendered pages are not optional
- Act immediately on user input
- React to data changes
- Control the data exchange with the server
- Don’t break history, enhance it
- Push code updates
- Predict behavior
An open source content management platform
- Make the most frequent tasks easy and less frequent tasks achievable.
- Design for the 80%
- Privilege the Content Creator
- Make the default settings smart
Instead of reviewing restaurants, you can recommend your favorite dishes and see what others have recommended wherever you go.
- It’s about dishes, not just restaurants
- It’s visual
- It’s positive
- It’s global
It's what enables us to debate whether something “Is Facebook” or “Isn't Facebook,” it's what allows us to evaluate whether anything we’re designing could be improved.
After a few weeks sketching and debating, we stepped back and created some simple design principles before moving forward:
- Interaction is the basic unit of design.
- Transitional interfaces are easier to learn and more pleasant to use.
- Interactions should be delightful and surprising.
- Focus the user on one primary action at a time.
Is what we’re making a clear expression of what it means to be Firefox? What will make it more Firefoxy? What will we not do because it’s not true to Firefox?
Takes care of you
- default to privacy
- no surprises
- actionable advice
You help make it
- research gives a voice to our non-core community
- start people with smart defaults
- implicit as well as explicit customization
- invite people to be more than users
Plays well with others
- user control and choice
- simple to use the services you choose
- suggest ways to get the most out of the web
- feels like there is a person at the other end
- fun tools are easier to use
- humour and whimsy
- have a point of view
- see also our visual design guidelines
- continuity of look and feel across platforms
- perceivable quality is vital
- global means local and local and local
Balances power and simplicity
- 80/20/2: default to surface minimalism and easy access to the rest
- user-agency and understanding, not just less
Makes sense of the web
- focus on real human tasks and contexts
- many real tasks involve a browser and other tools
- quick access to your stuff and web
- no jargon
- performance is objective, but responsiveness is subjective
- a happy user performs better
- Reduce concepts to increase confidence
- Small things matter, good and bad
- Be great at “look” and “do”
- Solve distractions, not discoverability
- UX before knobs and questions
- Personalization, not customization
- Value the life cycle of the experience
- Time matters, so build for people on the go
- Pride in craftsmanship
- Do more with less
- Fast and fluid
- Authentically digital
- Win as one
These design principles were developed by and for the Android User Experience Team to keep users' best interests in mind. For Android developers and designers, they continue to underlie the more detailed design guidelines for different types of devices.
- Delight me in surprising ways
- Real objects are more fun than buttons and menus
- Let me make it mine
- Get to know me
Simplify My Life
- Keep it brief
- Pictures are faster than words
- Decide for me but let me have the final say
- Only show what I need when I need it
- I should always know where I am
- Never lose my stuff
- If it looks the same, it should act the same
- Only interrupt me if it's important
Make Me Amazing
- Give me tricks that work everywhere
- It’s not my fault
- Sprinkle encouragement
- Do the heavy lifting for me
- Make important things fast
These design principles provide some simple heuristics about how you should plan and assess your Android Wear app design.
- Focus on not stopping the user and all else will follow
- Design for big gestures
- Think about stream cards first
- Do one thing, really fast
- Design for the corner of the eye
- Don’t be a constant shoulder tapper
Glass is fundamentally different than existing mobile platforms in both design and use. Follow these principles when building Glassware to give users the best experience.
- Design for Glass
- Don’t get in the way
- Keep it relevant
- Avoid the Unexpected
- Build for people
Harmony by Intuit
Our vision is to create a cohesive, multi-device user experience that unites Intuit’s small business products.
Be simple, easy to use, and guiding.
- Establish a familial resemblance.
- Maintain user context by staying in place.
- Guide the user where appropriate.
Design for the customer and instill confidence.
- Be trustworthy and helpful.
- Imbue confidence.
Establish modern and iconic ownable moments.
- Define a standard personality.
- Celebrate unique tasks.
- Project a voice.
- Define ownable visualizations.
Celebrate data while respecting user and device context.
- Be smart and appropriate for the task at hand.
- Understand the broader contexts of use.
Hardware Design Principles
The Clock Of The Long Now
These are the principles that Danny Hillis used in the initial stages of designing a 10,000 Year Clock. We have found these are generally good principles for designing anything to last a long time.
LongevityWith occasional maintenance, the clock should reasonably be expected to display the correct time for the next 10,000 years.MaintainabilityThe clock should be maintainable with bronze-age technology.TransparencyIt should be possible to determine operational principles of the clock by close inspection.EvolvabilityIt should be possible to improve the clock with time.ScalabilityIt should be possible to build working models of the clock from table-top to monumental size using the same design.
- Rather than solving problems from scratch, adapt other people's solutions, and then give them credit.
- Design for materials and components which are reasonably cheap to buy, low-carbon and fully recyclable or biodegradable.
- Design structures which can be assembled with minimal formal skill or training, and without the use of power tools.
- WikiHouses should be capable of being habitable throughout the year, and as efficient as possible in the use of energy and water.
- Design in such a way as to offer maximum provision for the safety, security and health (both mental and physical) of the users at all stages of the structure's life.
- As a general rule, design for the climate, culture, economy and legal / planning framework in which you live, and you know best. Others will then be able to adapt the design to suit their environment.
- Share your work as much and as openly as possible, it might come back better. At very least you'll have contributed to solving a common problem.
- “It is easier to ship recipes than cakes and biscuits” — John Maynard Keynes
- Design to dismantle. The easier it is to dismantle structures or replace individual parts, the better.
- Design for mistakes. Try to design components which either make it impossible for the assembler to get it wrong or are designed in such a way that it doesn't matter if they do.