I recently started working for eFlex Systems, a manufacturing software company and had the pleasure to sit in on a "lunch & learn" with staff. Each month, staff enjoy an informal lunch together in our conference room and take turns presenting information that they find interesting and relevant to our work process.
Our lead designer, John Gnotek was our latest presenter. He has a vast knowledge about design and has worked in many industries including software development, graphic design, web development, screenplay & video development as well as live web TV broadcasting. What he has recognized through his diverse work situations is that there are design rules that fit across multiple platforms. I thought I would share key takeaways from his presentation that applies to software design.
14 Software Design Rules You Should Never Break:
- Keep it simple: The number one design rule across any medium. Ideally, there should be one primary function per screen view.
- Always design for your audience: The golden rule! A good designer always keeps the end user in mind. You want the design to communicate to your audience effectively with a good user experience. Research your target audience and look at things such as age, gender, geographic location and even consider psycho-graphic options such as color, images and typography that may best fit your audience.
- Always use a grid: Grids enable you to build solid structure and form into your designs. That doesn't mean your designs will be boxy or boring, it just provides designers with the ability to present content and imagery in a more readable or manageable way. Consider a CSS framework such as Bootstrap, Chopstick, Ink, etc.
- Practice appropriate word spacing and don't forget to kern: Adjust the space between words or pairs of letters to make them more visually appealing.
- Don't disregard readability: You want your design to be legible and understandable. Make sure your contrast is not too low and don't use too many capital letters making it difficult for the eye to distinguish letter forms. Additionally, make sure your type size and style is appropriate.
- Have a purposeful hierarchy. You want your design to flow well between text, colors, visual information, etc., so that the user is easily able to digest the information they are viewing in a meaningful way.
- Use correct alignment: Whether you are using left, right, center, or justified alignment, make sure you choose the one that is most easily legible and has a nice flow for the end user.
- Have a logical color palette: Color is an important tool for designers. Make sure the colors you use are not distracting or confusing your message. Avoid color discord so that colors are not clashing or causing a struggle for the eye to find the line between each color. Look into color theory for your target market to see if it is appropriate. For example, color has cultural and psychological ramifications. Where green might be an earthy and favorite color in the US, in some cultures it's a color associated with mourning. This of course goes back to #2.
- Have a consistent font palette: Use a consistent font palette when designing. Just like colors, fonts can create or evoke a certain mood or emotion with designs. Do not use more than 2-3 font styles in your design at a maximum and use fonts that complement each other and communicates well to your end user.
- Never stretch type: When stretching fonts it can often distort the fonts and make them more difficult to read.
- Don't think of white space as empty space: White space can be an extremely effective tool with design and can actually increase effectiveness and readability. Look at the success of Apple. One of their biggest features of design is minimalism. They keep their message simple using large areas of white space and big margins to focus on single areas of content. Point #1.
- Use the Right Tools: A good designer will know what tools to use and not use in certain situations. For example, do you use a raster or a vector graphic file? What is your ability to scale the graphic? Do you use Adobe Photoshop or Illustrator? Familiarize yourself with available software to help create more effective designs.
- Learn proper grammar: Take the time to learn some of the design-oriented rules of grammar. Proper grammar is a powerful tool that will make designs appear more professional with attention to detail.
- Don't use too many effects: While rainbow gradients, drop shadows, and many other effects are fun and ad visual impact they are not always appropriate. Know when to use special effects and when not to. More often than not, simple designs are best.
Design is an integral part to any software development process -- with the goal of end-user satisfaction. As graphic designer Milton Glasner said, "There are three responses to a piece of design - yes, no, and WOW!"