Ui Ux Design Guide
Ui Ux Design Guide
2024‐01‐01
1
Contents
What is this book? 8
Who is this for? . . . . . . . . . . . . . . . . . . . . . . . . . . 9
Why am I creating this? . . . . . . . . . . . . . . . . . . . . . 10
Are there more guides? . . . . . . . . . . . . . . . . . . . . . . 11
UI/UX 12
User Interface (UI) . . . . . . . . . . . . . . . . . . . . . . . . 13
User Interface (UI) ‐ benefits . . . . . . . . . . . . . . . . . . . 14
User Experience (UX) . . . . . . . . . . . . . . . . . . . . . . 15
User Experience (UX) ‐ benefits . . . . . . . . . . . . . . . . . 16
Customer Experience (CX) . . . . . . . . . . . . . . . . . . . . 17
Customer Experience (CX) ‐ benefits . . . . . . . . . . . . . . . 18
Developer Experience (DX) . . . . . . . . . . . . . . . . . . . . 19
Developer Experience (DX) ‐ benefits . . . . . . . . . . . . . . 20
Design thinking 25
Focus group . . . . . . . . . . . . . . . . . . . . . . . . . . . 26
Personas . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 27
Journeys . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 28
Voice of the Customer (VoC) . . . . . . . . . . . . . . . . . . . 29
Subject Matter Expert (SME) . . . . . . . . . . . . . . . . . . . 30
Design charrette . . . . . . . . . . . . . . . . . . . . . . . . . 31
Mind map . . . . . . . . . . . . . . . . . . . . . . . . . . . . 32
Decision tree . . . . . . . . . . . . . . . . . . . . . . . . . . . 33
Gamification . . . . . . . . . . . . . . . . . . . . . . . . . . . 34
Design management 35
Design system . . . . . . . . . . . . . . . . . . . . . . . . . . 36
Style guide . . . . . . . . . . . . . . . . . . . . . . . . . . . . 37
2
Pattern library . . . . . . . . . . . . . . . . . . . . . . . . . . 38
UK Government Design Principles . . . . . . . . . . . . . . . . 39
Apple Human Interface Guidelines (HIG) . . . . . . . . . . . . 40
Google Material Design . . . . . . . . . . . . . . . . . . . . . . 41
Task analysis 42
Cognitive Task Analysis (CTA) . . . . . . . . . . . . . . . . . . 43
Hierarchical Task Analysis (HTA) . . . . . . . . . . . . . . . . 44
Workflow Analysis . . . . . . . . . . . . . . . . . . . . . . . . 45
Critical Incident Technique (CIT) . . . . . . . . . . . . . . . . . 46
Diary study . . . . . . . . . . . . . . . . . . . . . . . . . . . . 47
Anticipatory design . . . . . . . . . . . . . . . . . . . . . . . 48
Ideation 49
Creative thinking techniques . . . . . . . . . . . . . . . . . . . 50
Brainstorming . . . . . . . . . . . . . . . . . . . . . . . . . . 51
Active listening . . . . . . . . . . . . . . . . . . . . . . . . . . 52
Thinking Hats . . . . . . . . . . . . . . . . . . . . . . . . . . 53
SCAMPER . . . . . . . . . . . . . . . . . . . . . . . . . . . . 54
Futurespective . . . . . . . . . . . . . . . . . . . . . . . . . . 55
Storyboard . . . . . . . . . . . . . . . . . . . . . . . . . . . . 56
Storyboard steps . . . . . . . . . . . . . . . . . . . . . . . . . 57
Mental model . . . . . . . . . . . . . . . . . . . . . . . . . . 58
Dendrogram . . . . . . . . . . . . . . . . . . . . . . . . . . . 59
The map is not the territory . . . . . . . . . . . . . . . . . . . 60
Vision board . . . . . . . . . . . . . . . . . . . . . . . . . . . 61
Oblique Strategies . . . . . . . . . . . . . . . . . . . . . . . . 62
Abramović Method . . . . . . . . . . . . . . . . . . . . . . . . 63
Product design 64
Design canvas . . . . . . . . . . . . . . . . . . . . . . . . . . 65
Mockups . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 66
Wireframes . . . . . . . . . . . . . . . . . . . . . . . . . . . . 67
Use cases . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 68
User stories . . . . . . . . . . . . . . . . . . . . . . . . . . . . 69
3
Use cases and user stories . . . . . . . . . . . . . . . . . . . . 70
MoSCoW method . . . . . . . . . . . . . . . . . . . . . . . . . 71
Low‐fidelity prototype . . . . . . . . . . . . . . . . . . . . . . 72
High‐fidelity prototype . . . . . . . . . . . . . . . . . . . . . . 73
WYSIWYG . . . . . . . . . . . . . . . . . . . . . . . . . . . . 74
Kaizen (continuous improvement) . . . . . . . . . . . . . . . . 75
Cognitive load . . . . . . . . . . . . . . . . . . . . . . . . . . 76
Cognitive load ‐ recommendations . . . . . . . . . . . . . . . . 77
Usability friction . . . . . . . . . . . . . . . . . . . . . . . . . 78
Usability friction ‐ recommendations . . . . . . . . . . . . . . 79
Jakob’s Ten Usability Heuristics . . . . . . . . . . . . . . . . . 80
Modeling diagrams 81
Activity diagram . . . . . . . . . . . . . . . . . . . . . . . . . 82
Sequence diagram . . . . . . . . . . . . . . . . . . . . . . . . 83
Use case diagram . . . . . . . . . . . . . . . . . . . . . . . . . 84
State diagram . . . . . . . . . . . . . . . . . . . . . . . . . . . 85
Timing diagram . . . . . . . . . . . . . . . . . . . . . . . . . 86
Cause‐and‐effect diagram . . . . . . . . . . . . . . . . . . . . 87
Unified Modeling Language (UML) . . . . . . . . . . . . . . . . 88
PlantUML . . . . . . . . . . . . . . . . . . . . . . . . . . . . 89
Mermaid.js . . . . . . . . . . . . . . . . . . . . . . . . . . . . 90
North Star 91
Big Hairy Audacious Goal (BHAG) . . . . . . . . . . . . . . . . 92
Strategic Balanced Scorecard (SBS) . . . . . . . . . . . . . . . . 93
Big design up front (BDUF) . . . . . . . . . . . . . . . . . . . . 94
Domain‐Driven Design (DDD) . . . . . . . . . . . . . . . . . . 95
Behavior Driven Development (BDD) . . . . . . . . . . . . . . . 96
Test‐driven development (TDD) . . . . . . . . . . . . . . . . . 97
Affordance 98
Gibson’s affordance theory . . . . . . . . . . . . . . . . . . . . 99
Accordion UI . . . . . . . . . . . . . . . . . . . . . . . . . . . 100
Drawer UI . . . . . . . . . . . . . . . . . . . . . . . . . . . . 101
4
Ribbon UI . . . . . . . . . . . . . . . . . . . . . . . . . . . . 102
Tree UI . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 103
Wizard UI . . . . . . . . . . . . . . . . . . . . . . . . . . . . 104
Progress indicator . . . . . . . . . . . . . . . . . . . . . . . . 105
Header and footer . . . . . . . . . . . . . . . . . . . . . . . . 106
Site map . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 107
ARIA attributes . . . . . . . . . . . . . . . . . . . . . . . . . . 108
Model‐View‐Controller (MVC) . . . . . . . . . . . . . . . . . . 109
Paper cut bug . . . . . . . . . . . . . . . . . . . . . . . . . . . 110
Dark pattern . . . . . . . . . . . . . . . . . . . . . . . . . . . 111
Cross‐cultural communication . . . . . . . . . . . . . . . . . . 112
Communication styles . . . . . . . . . . . . . . . . . . . . . . 113
Screen reader . . . . . . . . . . . . . . . . . . . . . . . . . . 114
Keyboard shortcut (a.k.a. hotkey) . . . . . . . . . . . . . . . . 115
Alternative text attribute . . . . . . . . . . . . . . . . . . . . . 116
Web Content Accessibility Guidelines (WCAG) . . . . . . . . . . 117
UI for color blindness . . . . . . . . . . . . . . . . . . . . . . 118
5
Locale . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 135
Locale codes . . . . . . . . . . . . . . . . . . . . . . . . . . . 136
Bidirectional text (bidi) . . . . . . . . . . . . . . . . . . . . . . 137
6
Data beats emotions . . . . . . . . . . . . . . . . . . . . . . . 166
Idioms 167
Quick wins . . . . . . . . . . . . . . . . . . . . . . . . . . . . 168
Think outside of the box . . . . . . . . . . . . . . . . . . . . . 169
Out of scope . . . . . . . . . . . . . . . . . . . . . . . . . . . 170
Over the horizon . . . . . . . . . . . . . . . . . . . . . . . . . 171
Aphorisms 172
The Law of Demos . . . . . . . . . . . . . . . . . . . . . . . . 173
The Law of Conservation of Complexity . . . . . . . . . . . . . 174
The Pareto Principle (The 80/20 Rule) . . . . . . . . . . . . . . 175
Chesterton’s fence . . . . . . . . . . . . . . . . . . . . . . . . 176
Conclusion 188
Thanks . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 189
About the editor . . . . . . . . . . . . . . . . . . . . . . . . . 190
About the AI . . . . . . . . . . . . . . . . . . . . . . . . . . . 191
About the ebook PDF . . . . . . . . . . . . . . . . . . . . . . . 192
About related projects . . . . . . . . . . . . . . . . . . . . . . 193
7
What is this book?
UI/UX Design Guide is a glossary guide ebook that describes one topic
per page. The guide is intended for quick easy learning about concepts,
tactics, and ideas.
All the topics here are chosen because they have come up in real‐world
UI/UX work, with real‐world stakeholders who want to learn about the
topic.
If you have suggestions for more topics, then please let me know.
Some of the topics are related, so they are grouped into sections. For
example, see the topic about task analysis: in the table of contents, it’s
listed as the first topic in a section that contains various kinds of task
analysis techniques. The section grouping is intended to help readers get
up to speed faster. If you have suggestions for new groups, or topics that
should be in existing groups, then please let me know.
You can read any topic page, in any order, at any time. Each topic page is
intended be clear on its own, without needing cross‐references or links.
8
Who is this for?
People should read this guide if they want to learn quickly about user
interface (UI) design and user experience (UX) development, and how
these concepts are practiced in companies today.
For practitioners
For stakeholders
For people whose work intersects with UI/UX topics, this guide is
intending to bring you up to speed quickly and easily, so you can work
better together with your team, your partners, and your other
stakeholders. When you know the right terminology, then you’re
better‐able to share information, collaborate, and create the working
relationships that you value.
For students
9
Why am I creating this?
I am creating this ebook because of years of experience in UI/UX work,
with a wide range of clients, from small startups to enormous
enterprises.
When I work with companies and teams, then I’m able to use glossaries
like this one to help create shared context and clearer communication.
This can accelerate working together, and can help teams forge better
UI/UX, in my direct experience.
10
Are there more guides?
Yes there are more guides that may be of interest to you.
11
UI/UX
UI/UX stands for User Interface (UI) and User Experience (UX), which
are two essential components of designing and developing digital
products, such as websites, mobile applications, and software interfaces.
While UI and UX are distinct, they are closely related and work together
to create an optimal user experience.
12
User Interface (UI)
User Interface (UI) refers to the visual and interactive elements of a
digital product or system. It encompasses the graphical layout, controls,
and navigation elements that allow users to interact with software
applications, websites, or other digital interfaces. Typical goals of a user
interface include being appealing, intuitive, and efficient.
Key aspects:
13
User Interface (UI) ‐ benefits
User Interface (UI) design helps users and businesses.
Examples:
• Less Friction: Optimize for fewer errors, fewer support issues, and
fewer needs for training. Minimize user frustration, abandonment,
and poor reviews.
14
User Experience (UX)
User Experience (UX) refers to the overall experience and satisfaction of
users when interacting with a product, system, or service. It focuses on
understanding users’ needs, behaviors, and emotions to design and
deliver an enjoyable, intuitive, and meaningful experience.
Key aspects:
15
User Experience (UX) ‐ benefits
UX encompasses every aspect of the user’s interaction, including their
initial impression, ease of use, efficiency, effectiveness, and overall
satisfaction. It goes beyond the visual aesthetics and considers factors
such as usability, functionality, accessibility, and emotional response.
Key aspects:
16
Customer Experience (CX)
Customer Experience (CX) refers to the overall perception and
interaction a customer has with a company or brand throughout their
entire journey, from the initial contact to post‐purchase support. It
encompasses every touchpoint and interaction between the customer
and the business, including online experiences, customer service
interactions, product usage, and more.
Key aspects:
17
Customer Experience (CX) ‐ benefits
Customer Experience (CX) is a holistic approach that focuses on
understanding and improving the customer’s feelings, emotions, and
satisfaction at every stage of their engagement with the company. It goes
beyond simply providing a product or service and aims to create positive
and memorable experiences that foster loyalty, advocacy, and long‐term
customer relationships.
Examples:
18
Developer Experience (DX)
Developer Experience (DX) refers to the overall experience and
satisfaction of software developers when working with tools,
frameworks, libraries, and APIs to create applications or software
solutions. It encompasses the usability, efficiency, effectiveness, and
enjoyment that developers derive from their development process and
the tools they use.
Key aspects:
19
Developer Experience (DX) ‐ benefits
DX focuses on improving the productivity, efficiency, and satisfaction of
developers by providing them with well‐designed and developer‐friendly
tools, documentation, resources, and support. It recognizes that
developers are the key users and stakeholders in the software
development process, and their experience directly impacts the quality
and speed of application development.
Examples:
20
User‐centered design (UCD)
User‐centered design (UCD) is an approach to designing products,
systems, or interfaces that places the needs, goals, and preferences of
the end users at the forefront of the design process. It involves
understanding the users through research and iterative testing, and
using that knowledge to guide design decisions. Benefits include
improved user satisfaction, enhanced usability, reduced development
costs, and ultimately a competitive advantage.
Key aspects:
21
Usability
Usability refers to the ease of use and effectiveness of a product, system,
or interface in achieving its intended purpose. Usability plays a crucial
role in user experience (UX) design, as it directly impacts how users
perceive and interact with a product.
Key aspects:
22
Accessibility
Accessibility refers to the design and development of products, services,
environments, or digital content that can be used by individuals with
disabilities. It aims to ensure that everyone, regardless of their abilities
or disabilities, can access and engage with information, technology, and
physical spaces.
Key aspects:
23
Information architecture (IA)
Information architecture (IA) is the practice of organizing, structuring,
and labeling information to support effective navigation, findability, and
understanding within a system, such as a website, application, or
database. A well‐designed information architecture helps improve user
efficiency and enhances user satisfaction.
Key aspects:
24
Design thinking
Design thinking is a problem‐solving approach that emphasizes
empathizing with the end‐user, to understand problems, ideate potential
solutions, and iterate until a solution is achieved. Design thinking can
apply to a wide range areas, from product design to user experience
design to organizational design. It is a flexible and iterative process that
allows designers to stay focused on the user’s needs.
Typical stages:
2. Define: In this stage, designers define the problem they are trying
to solve based on the insights gathered in the empathize stage.
This involves reframing the problem in a way that focuses on the
user’s needs and interests.
25
Focus group
A focus group is a qualitative research method used to gather opinions
and attitudes from a small, diverse group of individuals about a
particular product, service, concept, or topic. It typically involves
bringing together 6 to 10 individuals who represent the target audience
and who can provide valuable feedback on the subject being studied.
However, there are also some limitations to focus groups. For example,
the opinions and attitudes shared by participants may not be
representative of the wider population, and group dynamics can
influence the responses given. Additionally, the moderator’s role can
also have an impact on the results obtained, and there may be bias in the
selection of participants or in the questions asked.
26
Personas
Personas are a tool used in product design and development to create a
representation of the typical user of a product. A user persona is a
fictional character that represents a group of users who share similar
goals, needs, motivations, and behaviors. It is based on research and
analysis of real users, including their demographics, behavior patterns,
and preferences.
27
Journeys
A user journey, also known as a customer journey, is a tool used in
product design and development to map out the path that a user takes to
complete a specific task or achieve a goal. It is a visual representation of
the steps that a user goes through, from initial awareness of a product or
service to the final outcome.
User journeys are often created in conjunction with user personas and
are used to provide a better understanding of the user’s experience when
interacting with a product or service. They help designers and
developers to identify pain points and areas for improvement, and to
create a product that is user‐focused and meets the needs of its intended
audience.
28
Voice of the Customer (VoC)
Voice of the Customer (VoC) refers to the process of capturing customer
feedback, opinions, preferences, and needs regarding a particular
product or service. It is a way for organizations to better understand
their customers and make informed decisions about how to meet their
needs.
Benefits include:
29
Subject Matter Expert (SME)
A Subject Matter Expert (SME) refers to an individual who possesses
specialized knowledge, expertise, and experience in a specific subject
area or field. SMEs provide subject‐specific insights, guidance, and
support. Their expertise is typically acquired through years of education,
or work in a specific industry, or conducting research.
Key aspects:
30
Design charrette
A design charrette is a collaborative, intensive, and time‐limited design
process that brings together a group of designers, stakeholders, and
subject matter experts to generate ideas, explore solutions, and develop
a plan for a specific project or problem.
General steps:
31
Mind map
A mind map is a graphical tool that is used to organize and structure
ideas and information visually. It is a type of diagram that is created by
starting with a central idea or concept and then branching out to other
related ideas or subtopics. The main idea is placed in the center of the
diagram, and additional information is added in the form of branches
that radiate out from the center.
Benefits include:
32
Decision tree
A decision tree is a decision‐making model that is widely used in
business, science, and engineering. It is a tree‐like structure that
represents a series of decisions and their potential consequences.
Decision trees are useful when there are multiple possible outcomes or
decision paths, and the best path is not immediately clear.
The top of the decision tree is the root node, which represents the initial
decision. From there, each branch represents a possible outcome or
decision. The branches are connected to additional nodes, which
represent the decisions that lead to that outcome.
Sector examples:
Tree types:
One of the benefits of decision trees is that they are easy to interpret,
even for people without a technical background. They can also be
updated easily as new data becomes available, making them a flexible
and useful tool for decision‐making.
33
Gamification
Gamification is the process of incorporating game‐like elements and
mechanics into non‐game environments to make them more engaging
and enjoyable. It is used in a wide variety of contexts, from education
and training to marketing and advertising, to encourage participation
and increase motivation and engagement.
The goal of gamification is to make activities more engaging and fun, but
it is also used as a tool to achieve specific objectives. For example, it can
be used to motivate employees to improve their performance or to
encourage customers to make more purchases. It can also be used in
educational settings to encourage students to learn and retain
information.
34
Design management
Design management refers to the process of planning, coordinating, and
overseeing the design activities within an organization to achieve
strategic objectives. It involves managing the design function and
integrating it into the broader business strategy and operations.
Key aspects:
35
Design system
A design system is a collection of guidelines, principles, and reusable
components that help maintain consistency and cohesion in the design
of digital products or services. It serves as a central resource that defines
the visual and interactive elements, patterns, and rules to be followed
when creating user interfaces. A design system helps improve UI/UX
consistency, efficiency, scalability, and collaboration.
Typical aspects:
36
Style guide
A style guide is a comprehensive set of guidelines that establishes rules,
standards, and best practices for design and communication. It serves as
a reference document that ensures consistency in the visual and written
elements of a brand or organization.
Typical aspects:
• Layout and Grid Systems: Guide the layout and grid systems to
maintain consistency in the placement and alignment of elements
within designs, such as for spacing, margins, and proportions.
• Brand Voice and Tone: Guide the brand’s voice and tone, writing
style, language usage, and cohesive communication personality
across written materials, such as web copy, social posts, and
marketing.
37
Pattern library
A pattern library is a centralized collection of reusable design
components, patterns, and guidelines that help maintain consistency
and efficiency in the design and development of digital products. It
serves as a reference and resource for designers, developers, and other
stakeholders involved in creating and maintaining a product’s user
interface.
Key aspects:
38
UK Government Design Principles
Start with user needs. Do research, analyse data, talk to users. Don’t
make assumptions. Have empathy for users. Remember that what they
ask for isn’t always what they need.
Iterate. The best way to build good services is to start small and iterate
wildly. Release minimum viable products early, test them with actual
users, and make refinements based on feedback.
Be consistent, not uniform. Use the same language and the same design
patterns wherever possible. This helps people get familiar. When this
isn’t possible, make sure your approach is consistent.
Make things open. Share code, share designs, share ideas, share
intentions, share failures. The more eyes the better things get.
39
Apple Human Interface Guidelines (HIG)
The Apple Human Interface Guidelines (HIG) are a set of design
principles and recommendations provided by Apple Inc. to assist
developers in creating user‐friendly and visually appealing software
applications for Apple platforms. The HIG covers various aspects of user
interface design, including visual design, interaction design, and user
experience guidelines.
Key aspects:
• App Store Guidelines: Submit apps to the App Store using Apple’s
guidelines, covering topics such as app icon design, app previews,
and user privacy considerations.
40
Google Material Design
Google Material Design is a set of guidelines developed by Google to
create visually appealing and consistent user interfaces across different
platforms and devices. It aims to emphasizing a clean and modern
design aesthetic, while also considering functionality and usability.
Key aspects:
41
Task analysis
Task analysis is a systematic method used to break down complex tasks
or activities into smaller, more manageable steps. It involves studying
and documenting the actions, processes, and cognitive activities
required to complete a specific task or achieve a particular goal. Task
analysis enables researchers to identify potential bottlenecks, errors, or
inefficiencies, and find ways to optimize.
General process:
1. Identify the Task: Select a specific task or activity that you want to
analyze. It could be a complex work task, a user interaction with a
software application, or any other goal‐oriented activity.
3. Decompose the Task: Break down the task into smaller steps or
subtasks. Start with a high‐level view of the task, and decompose it
into more detailed actions. Each step should be discrete and
meaningful.
4. Sequence the Steps: Arrange the steps in the order in which they
need to be performed. Consider dependencies and relationships
between the steps and ensure a logical flow.
42
Cognitive Task Analysis (CTA)
Cognitive Task Analysis (CTA) is a research methodology used to
understand the cognitive processes and mental strategies that
individuals employ while performing a task. CTA aims to uncover the
knowledge, decision‐making, problem‐solving, and other cognitive
activities involved in completing a task. The goal is to bridge the gap
between observable behaviors and underlying cognitive processes.
Key aspects:
43
Hierarchical Task Analysis (HTA)
Hierarchical Task Analysis (HTA) is a method used to break down
complex tasks into a hierarchical structure of subtasks, actions, and
operations. It provides a systematic way of representing the
relationships between different levels of tasks, allowing for a detailed
understanding of the task’s structure, goals, and dependencies. HTA can
help with process evaluations, schedule planning, risk identification,
training needs, and workflow optimizations.
General process::
• Decomposition: Break down the task into subtasks. Start with the
highest level or top‐level task and decompose it into more specific
subtasks, actions, and operations. Each item is a meaningful unit
of work.
44
Workflow Analysis
Workflow Analysis, also known as Process Analysis, is a systematic
examination and evaluation of the sequence of activities, tasks, and
information flow within a system, organization, or process. It aims to
understand how work happens, identify inefficiencies and opportunities,
clarify roles and responsibilities, and optimize the workflow.
Typical aspects:
45
Critical Incident Technique (CIT)
The Critical Incident Technique (CIT) is a qualitative research method
used to gather detailed and specific information about significant events
or incidents that have occurred in a particular context. The primary
objective is to extract valuable insights and actionable knowledge from
real‐life events that can inform decision‐making, problem‐solving,
training, or process improvement efforts.
General process:
46
Diary study
A diary study is a research method used to collect qualitative data about
individuals’ experiences, behaviors, and thoughts over a specific period
of time. It involves participants keeping a record, often in the form of a
diary or journal, of their activities, emotions, and other relevant
information. Diary studies are particularly useful when studying
phenomena that unfold over time or when exploring people’s thoughts
and experiences within their own context.
General overview:
47
Anticipatory design
Anticipatory design is an approach to user experience (UX) design that
focuses on predicting and fulfilling user needs and actions before they
explicitly express them. It involves using data, context, and intelligent
algorithms to proactively provide users with relevant information,
options, or interactions, thereby simplifying their decision‐making
process and enhancing their overall experience.
Key aspects:
48
Ideation
Ideation is a creative process or technique used to generate ideas,
concepts, or solutions to a problem or challenge. It involves
brainstorming and exploring various possibilities without judgment or
evaluation. The goal of ideation is to foster a free‐flowing environment
that encourages diverse thinking and promotes the emergence of
innovative and novel ideas.
There are techniques and methods that can be used to facilitate ideation,
such as brainstorming, mind mapping, role play, random word
association, random image association, provocation, and SCAMPER
(Substitute, Combine, Adapt, Modify, Put, Eliminate, Reverse).
49
Creative thinking techniques
Creative thinking techniques stimulate and enhance the generation of
new ideas, insights, and innovative solutions. These techniques help
individuals or teams break free from traditional or linear thinking
patterns and encourage out‐of‐the‐box, imaginative, and unconventional
ideas.
Examples:
50
Brainstorming
Brainstorming is a creative problem‐solving technique used to generate
a large number of ideas in a short period of time. The goal is to promote
a free‐flowing and non‐linear environment that allows for the
exploration of diverse perspectives and possibilities, related to a specific
topic or problem.
Key aspects:
51
Active listening
Active listening is a communication skill that involves fully focusing on,
understanding, and responding to the speaker. By practicing active
listening, you can improve communication and understanding, help
problem‐solving and decision‐making, and foster collaboration and
teamwork.
Key aspects:
52
Thinking Hats
Thinking Hats is a decision‐making problem‐solving technique that uses
a metaphor of hats to encourage different ways of thinking. Each hat
represents a different type of thinking. By wearing a particular hat,
individuals are encouraged to think in a particular way.
53
SCAMPER
SCAMPER is a creative thinking technique used to stimulate idea
generation and innovative problem‐solving. It is an acronym for
prompts to examine existing ideas or concepts, and transform them into
new and improved versions.
• Modify: Can you alter an idea? Can you change, enhance, or adjust
to improve functionality, aesthetics, or performance?
• Eliminate: Can you remove aspects from an idea? Can you simplify
or streamline it?
54
Futurespective
A futurespective is a group activity that focuses on exploring and
envisioning possible futures for a team, organization, or project. It is a
forward‐thinking approach that helps to identify potential opportunities
and challenges, as well as to prepare for possible changes and
disruptions.
55
Storyboard
A storyboard is a visual tool used to outline and plan the sequence of
events in a story, such as a film, animation, advertisement, or any other
visual narrative. It is a series of illustrated or sketched panels arranged
in a sequence, much like a comic strip, to represent the key scenes,
actions, and shots of the story.
Key aspects:
56
Storyboard steps
Storyboarding allows creators to visualize their ideas and communicate
them effectively, making it an essential tool in the planning and
production of visual narratives.
General steps:
57
Mental model
A mental model is a cognitive framework or representation that
individuals use to understand, interpret, and navigate the world around
them. It is an internalized concept or schema that helps people make
sense of complex information, predict outcomes, and guide their
actions. Understanding and leveraging mental models can enhance
learning, problem‐solving, decision‐making, and communication.
Key aspects:
• Evolving and Adaptive: Mental models can evolve and adapt over
time as individuals gain new knowledge, acquire new experiences,
or challenge existing beliefs.
58
Dendrogram
A dendrogram is a graphical representation used in various fields such
as biology, data science, and taxonomy to illustrate the arrangement of
objects or items based on their similarity or dissimilarity. It’s commonly
used in hierarchical clustering analysis, which is a technique that groups
similar data points into clusters or groups based on their distances or
relationships.
Dendrograms are particularly useful when you have a large dataset and
you want to understand how items or data points are related to each
other in terms of their attributes. By analyzing the dendrogram, you can
decide where to cut the tree to form clusters at different levels of
granularity, depending on the specific analysis or task you’re
performing.
59
The map is not the territory
“The map is not the territory” is a phrase coined by philosopher Alfred
Korzybski to illustrate a fundamental concept in semantics and
perception: a subjective understanding or representation of reality (the
map) is not the same as the actual reality or experience itself (the
territory).
Key aspects:
60
Vision board
A vision board is a visual representation of your goals, dreams, and
aspirations. It is a tool that helps you clarify and visualize what you want
to achieve in different areas of your life, such as career, relationships,
health, or personal growth.
Key aspects:
61
Oblique Strategies
Oblique Strategies is a set of cards created by musician and producer
Brian Eno and artist Peter Schmidt in the 1970s to help stimulate creative
thinking and problem‐solving. The cards contain aphorisms,
instructions, and prompts designed to encourage lateral thinking and
break free from conventional ways of approaching a problem.
Key aspects:
62
Abramović Method
The Abramović Method is a set of exercises and techniques developed by
performance artist Marina Abramović. It is designed to enhance
awareness, presence, and focus for both performers and audience
members.
Core principles:
63
Product design
Product design is the process of creating new products or improving
existing ones to meet the needs of consumers. It involves designing,
prototyping, testing, and iterating until a final product is developed that
meets the user’s needs, solves their problems, and provides a delightful
user experience.
Next, the design team will create rough sketches, wireframes, and
mockups to explore different design options and present them to
stakeholders. Once the stakeholders have approved a design direction,
the team will create high‐fidelity prototypes that mimic the look, feel,
and functionality of the final product.
After the prototype is developed, the team will test it with real users to
gather feedback on the product’s usability, desirability, and functionality.
This feedback is used to iterate on the design and refine the product
until it is ready for launch.
Throughout the product design process, the design team will collaborate
with stakeholders, including product managers, engineers, marketing,
and sales teams, to ensure that the final product aligns with business
goals and meets the needs of the market.
64
Design canvas
A design canvas in UI/UX design is a visual framework or template that
helps designers organize and structure their thoughts, ideas, and design
concepts. It serves as a tool to capture and communicate key aspects of a
design project, providing a holistic view of the product or experience
being designed.
Typical elements:
65
Mockups
Mockups are visual representations of a design or product concept. They
are used in various industries, including software development, product
design, and marketing. Mockups can take many forms, such as sketches,
wireframes, digital prototypes, or physical models.
66
Wireframes
Wireframes are a type of visual design representation used in the early
stages of product development, particularly in software design. They are
essentially a low‐fidelity blueprint of a user interface (UI) that represents
the basic layout and structure of a web page, application, or other digital
product.
Wireframes are created to help design teams conceptualize and plan the
layout and flow of a product, and to communicate this information to
other stakeholders such as developers, project managers, and clients.
They are typically created using simple lines and shapes, and can be
produced using a range of tools, from pen and paper to specialized
software.
67
Use cases
A use case is a technique used in software engineering to describe and
define the interactions between a user or a system and a product. It is a
tool used to capture the functional requirements of a system and is an
important part of the requirements gathering process in software
development.
The use case defines a specific interaction between a user or system and
the product being developed. It outlines the steps that are taken to
achieve a specific goal or task, and identifies the inputs, outputs, and
actors involved in the process. Use cases are typically presented in a
diagram or table format, and may include descriptions, flow charts, and
other visual aids to help illustrate the interactions.
There are several types of use cases, including functional use cases,
which describe how the system should behave under normal conditions;
alternate use cases, which describe how the system should behave under
different or unexpected conditions; and exception use cases, which
describe how the system should handle errors or unexpected input.
68
User stories
A user story is a technique used in software development to capture a
description of a feature from the user’s perspective. It is a short, simple
statement that describes a user’s need or requirement for a product or
system. User stories are often used in Agile software development,
where they are used as a basis for planning and prioritizing work.
User stories are designed to be simple and easy to understand, and are
often written in a way that can be easily communicated to both technical
and non‐technical stakeholders. They are intended to serve as a
reminder of the user’s perspective throughout the development process,
and help to ensure that the product being developed meets the user’s
needs and expectations.
69
Use cases and user stories
Use cases and user stories are two techniques used in software
development to capture requirements from the user’s perspective, but
they have some key differences.
One key difference between use cases and user stories is their level of
detail. Use cases are typically more detailed and comprehensive than
user stories, as they describe the specific interactions between the user
and the system in greater detail. User stories, on the other hand, are
typically shorter and more focused on the user’s needs and desired
outcomes.
Another difference is the way they are used in the development process.
Use cases are often used in more traditional, Waterfall‐style
development processes, where requirements are captured up front and
the development team follows a structured plan. User stories, on the
other hand, are more commonly used in Agile development processes,
where requirements are captured in an iterative and incremental
manner and the development team adapts to changing needs and
priorities.
70
MoSCoW method
The MoSCoW method is a prioritization technique used in project
management and requirements gathering. MoSCoW stands for Must,
Should, Could, and Won’t, representing different levels of priority for
project requirements or features.
Levels:
• Should: These requirements are important but not critical for the
project’s immediate success. Should requirements are desirable
and add value to the project but can be deferred if necessary.
71
Low‐fidelity prototype
A low‐fidelity prototype is a simple and rough draft of a product,
application, or service that is created at the early stages of the design
process to quickly and inexpensively test and iterate on ideas. It is also
known as a lo‐fi or paper prototype.
72
High‐fidelity prototype
A high‐fidelity prototype is a detailed and interactive representation of a
design that closely resembles the final product or application. It
includes all the visual and functional elements of the final product, such
as colors, fonts, images, layout, and user interactions.
Examples:
73
WYSIWYG
WYSIWYG stands for “What You See Is What You Get.” It refers to an
interface or editor that allows users to see the final output of their work
exactly as it will appear to the end‐user. In other words, what is
displayed on the screen during the editing process closely resembles the
final printed or published result.
74
Kaizen (continuous improvement)
Kaizen is a Japanese term that means “continuous improvement.” It is a
philosophy and methodology that emphasizes a systematic, incremental
approach to improving processes and products in a way that involves all
employees of an organization, from top management to frontline
workers.
Steps:
75
Cognitive load
Cognitive load, in the context of product design and usability, refers to
the amount of mental effort or processing capacity that users must
expend to interact with a product, understand its interface, and
accomplish tasks. Cognitive load is a crucial concept in user experience
(UX) design, as minimizing unnecessary cognitive load can significantly
improve a product’s usability and user satisfaction.
76
Cognitive load ‐ recommendations
Reducing cognitive load in product design makes the user experience
more efficient and enjoyable, and also increases the likelihood of users
successfully completing tasks and returning to the product. It is a
fundamental aspect of creating user‐friendly and intuitive interfaces.
Recommendations:
77
Usability friction
Usability friction refers to the resistance or obstacles that users may
encounter when interacting with a product. It encompasses any
elements that make the user experience less smooth or efficient.
Reducing friction is a key goal in product design because it can lead to
improved user satisfaction, increased engagement, and better overall
product performance.
78
Usability friction ‐ recommendations
Reducing usability friction is a critical goal in design and user
experience, because reducing friction makes it easier for users to
interact with a product, website, or application. This leads to increased
user satisfaction, improved engagement, and more successful task
completion.
Recommendations:
• Get Feedback: Collect and act upon user feedback and suggestions.
Users often provide valuable insights for improving usability.
79
Jakob’s Ten Usability Heuristics
Source
2. Match between System and the Real World: Use words, phrases,
and concepts familiar to the user, rather than internal jargon.
10. Help and Documentation: It’s best if the design doesn’t need any
additional explanation. However, it may be necessary to provide
documentation to help users complete their tasks.
80
Modeling diagrams
Modeling diagrams are graphical representations that help visualize
software systems or processes. They provide a visual representation of
the system’s architecture, structure, and behavior, which can be used to
communicate the system’s design to stakeholders.
Common diagrams:
81
Activity diagram
An activity diagram is a type of behavioral diagram in software
engineering that describes the flow of activities or actions within a
system or process. It is a graphical representation of the steps or actions
that take place in a workflow or business process, and can be used to
model complex systems or business processes.
Key aspects:
82
Sequence diagram
A sequence diagram is a type of interaction diagram that illustrates the
interactions between objects or components in a system over time. It is
used to model the behavior of a system in terms of the messages
exchanged between objects or components.
Typical elements:
83
Use case diagram
A use case diagram is a type of behavioral diagram that illustrates the
interactions between actors (users or other systems) and a system. It
models the functionality from the user’s perspective.
Main elements:
Relationship connections:
84
State diagram
A state diagram, also known as a state machine diagram or state chart
diagram, is a type of behavioral diagram in software engineering that
describes the behavior of an object or a system over time. It is a
graphical representation of the states, events, and transitions that occur
in the system.
Typical elements:
85
Timing diagram
A timing diagram is a graphical representation of the timing and
duration of signals or events in a digital system or electronic circuit. It is
commonly used in electronics, digital communication systems, and
software engineering to visualize the temporal behavior of a system.
Typical elements:
86
Cause‐and‐effect diagram
A cause‐and‐effect diagram, also known as an Ishikawa diagram or
fishbone diagram, is a visual tool used to analyze and solve problems.
The diagram is shaped like a fishbone, with the problem statement or
effect placed at the head of the fish, and the potential causes branching
out along the spine. They were developed by quality control expert
Kaoru Ishikawa, and are often used in manufacturing, engineering, and
quality management.
• Manpower (people)
• Methods (processes)
• Machines (equipment)
• Materials (inputs)
• Measurements (data)
• Mother nature (environmental conditions)
The diagramming process involves brainstorming the possible causes of
the problem and organizing them into these categories. This is typically
done in a group setting, with a team of people who have knowledge and
experience related to the problem. Once the possible causes are
identified, they are analyzed and prioritized, and potential solutions can
be developed and implemented.
87
Unified Modeling Language (UML)
Unified Modeling Language (UML) is a visual language used for
modeling software systems. It is a standardized notation that helps
developers, architects, and other stakeholders to communicate and
visualize the structure, behavior, and relationships of different
components in a software system.
Diagrams:
88
PlantUML
PlantUML is an open‐source tool that allows you to create various types
of diagrams using a textual syntax. It provides a way to write diagrams as
plain text and then generates the corresponding visual representations.
89
Mermaid.js
Mermaid.js is a JavaScript‐based library that allows you to create
diagrams and flowcharts directly in the browser. It provides a simple
way to define diagrams using a Markdown‐inspired syntax, and to
embed diagrams in webpages, documents, or presentations.
Key aspects:
90
North Star
In business terminology, the “North Star” is a term used to refer to a
singular, overarching goal or objective that guides a company’s
decision‐making and strategy. It is the guiding principle that helps the
company stay focused on what is most important and drives the
company towards achieving its long‐term vision.
The North Star concept is often used in agile and lean startup
methodologies, where it is seen as a critical tool for staying focused on
what matters most, avoiding distractions, and making effective decisions
in the face of uncertainty. By identifying a clear North Star, companies
can more easily align their efforts, stay motivated, and measure their
progress towards their ultimate goals.
Here is an example of a North Star metric: For Airbnb, their North Star
metric is “nights booked”. This metric is used to track the company’s
success in connecting travelers with unique and affordable
accommodation options. By focusing on this metric, Airbnb is able to
measure the effectiveness of its platform, make data‐driven decisions to
improve user experience, and stay focused on its mission of providing
travelers with a unique and authentic travel experience.
91
Big Hairy Audacious Goal (BHAG)
The term “Big Hairy Audacious Goal” (BHAG) was first coined by James
Collins and Jerry Porras in their book “Built to Last: Successful Habits of
Visionary Companies”. A BHAG is a long‐term goal that is both
ambitious and inspiring, challenging a company to think beyond its
current capabilities and pursue something truly significant.
The idea behind a BHAG is that it provides a long‐term direction for the
company, helping to guide its strategic decisions and prioritize its
resources. It also helps to rally employees around a common purpose
and inspire them to think creatively and innovatively to achieve the goal.
Examples:
92
Strategic Balanced Scorecard (SBS)
The Strategic Balanced Scorecard (SBS) is a management framework that
helps organizations to measure and manage their performance across
multiple perspectives.
The scorecard helps align strategy, objectives, and metrics across these
four perspectives. This helps align resources and initiatives with
strategic priorities.
93
Big design up front (BDUF)
Big design up front (BDUF) is an approach to software development
where developers work on detailed requirements, design documents,
and specifications that outline the entire project before any coding
begins. BDUF contrasts with agile methodologies, which favor iterative
approaches.
However, there are several criticisms of the BDUF approach. One of the
main criticisms is that it can be time‐consuming and costly. By spending
a lot of time on design upfront, there is a risk that the development team
will invest resources in creating a design that ultimately does not meet
the needs of stakeholders or the market. Additionally, because the entire
system is designed before any coding begins, it can be difficult to make
changes or pivot the project if new information or requirements emerge
during the development process.
94
Domain‐Driven Design (DDD)
Domain‐Driven Design (DDD) is a software development approach that
aims to help teams create software aligned with a business’s needs and
requirements. DDD focuses on breaking down complex business
domains into components, which can then be implemented in software.
The business domains are the subject matter and context in which a
particular business operates.
• Entities and Value Objects: These are two key building blocks in
DDD. Entities are objects that have a unique identity and can
change over time, while Value Objects are objects that represent a
value or a concept, such as a date or a currency.
95
Behavior Driven Development (BDD)
Behavior Driven Development (BDD) is an agile software development
methodology that emphasizes collaboration between developers, testers,
and business stakeholders to ensure that the delivered software meets
the business requirements. It involves the creation of a shared
understanding of the project goals and the development of tests to
ensure that the system behaves as expected. BDD is an extension of Test
Driven Development (TDD), which focuses on unit testing, but BDD
shifts the emphasis to behavior specification and documentation.
This process ensures that the system is developed to meet the business
requirements, and that the code is tested to ensure that it behaves as
expected.
BDD focuses on defining the desired behavior of the system from the
perspective of the business stakeholders. BDD typically uses a structured
language to define the expected behavior of the system in terms of
scenarios that describe the interactions between the system and its
users.
96
Test‐driven development (TDD)
Test‐driven development (TDD) is a software development practice that
emphasizes writing automated tests before writing code. In this
approach, developers write a test case first, which describes an aspect of
the code that they want to implement, and then they write the code to
make the test pass. TDD is a part of the Agile software development
methodology.
Steps:
1. Red: The developer writes a test that fails because the code that
implements the test is not yet written.
97
Affordance
Affordance is a concept in design and psychology that refers to the
perceived and intuitive relationship between an object or element and
its potential actions or uses. It describes the qualities or attributes of an
object that suggest how it can or should be interacted with.
Two types:
Affordances provide users with cues or signals about how they can
interact with a physical object, digital interface, or any designed artifact.
However, it’s important to note that affordances can sometimes be
misleading or ambiguous, leading to usability issues. Clear and
well‐designed affordances can enhance the usability and learnability of a
product or interface, while ambiguous or misleading affordances can
cause confusion and frustration.
Affordances help bridge the gap between a user’s goals or intentions and
the actions they need to perform to achieve those goals. They provide
visual or sensory cues that guide users to interact with objects or
interfaces in a way that aligns with their expectations.
98
Gibson’s affordance theory
Gibson’s affordance theory, developed by psychologist James J. Gibson, is
a framework that explains how humans perceive and interact with their
environment. Affordances are the perceived possibilities for action that
the environment offers to an individual. Gibson’s affordance theory has
had a significant impact on various fields, including psychology,
cognitive science, human‐computer interaction, UI/UX, and design.
Key aspects:
99
Accordion UI
An accordion user interface is a graphical control that allows users to
expand or collapse sections of content within a limited amount of screen
space. It helps to organize and manage large amounts of information or
content in a compact and easily navigable manner.
Key aspects:
100
Drawer UI
A drawer user interface, also known as a slide‐out menu or navigation
panel, is a graphical control that provides a hidden panel that can be
revealed by sliding it into view from the edge of the screen. It is
commonly used in mobile and web applications to display additional
navigation options or content without taking up much screen space.
Key aspects:
101
Ribbon UI
A ribbon user interface is a graphical control that presents a set of
commands or actions in a horizontal bar across the top of an application
or document. The ribbon control is often used in productivity software,
to provide a visually organized and easily accessible set of tools and
options to users.
Key aspects:
102
Tree UI
A tree user interface is a graphical control that displays hierarchical data
in a tree‐like structure. It allows users to navigate and interact with a
hierarchical set of items or categories, typically represented as nodes
and branches. Tree controls are commonly used in various applications,
including file explorers, project management tools, organizational
charts, and content management systems.
Key aspects:
103
Wizard UI
A wizard user interface is a step‐by‐step interactive process that guides
users through a series of tasks or decisions. It simplifies complex
processes and makes them more manageable for users. Wizards are
commonly used in a variety of applications and scenarios, such as user
registrations, onboarding processes, form submissions, configuration
setups, and complex task workflows.
Key aspects:
104
Progress indicator
A progress indicator, in the context of user interface (UI) and user
experience (UX) design, is a visual element that communicates the
progress or status of a process, task, or operation to the user. They
provide feedback to users that something is happening, and can help
users understand the expected completion time.
Key aspects:
105
Header and footer
A header and footer are two essential components of a website’s layout
that appear consistently across multiple pages.
• Header: The header is located at the top of the web page and
typically contains branding elements, the website’s logo, and
primary navigation menus. It serves as a visual identifier for the
website and allows users to navigate to different sections or pages
of the site. The header may also include search bars, contact
information, social media icons, or other relevant elements that
facilitate user interaction and engagement.
• Footer: The footer is positioned at the bottom of the web page and
often contains secondary navigation menus, copyright
information, legal disclaimers, links to important pages (such as
privacy policy or terms of service), and contact details. The footer
is typically less prominent than the header but still serves as a
navigational aid and provides additional information or links for
users.
Key aspects:
106
Site map
A site map is a visual representation of the hierarchical structure and
organization of a website’s content. It is essentially a list of all the pages
and sections of a website, organized in a way that helps users navigate
and understand the site’s content.
Typical elements:
Important functions:
• Help users navigate the site: Site maps make it easy for users to
find the information they are looking for by providing a clear and
organized overview of the site’s content.
107
ARIA attributes
The ARIA (Accessible Rich Internet Applications) attributes are a set of
HTML attributes that can be used to enhance the accessibility of web
content for individuals with disabilities. ARIA attributes are particularly
useful for making dynamic web applications and interactive components
more accessible to assistive technologies, such as screen readers.
Key aspects:
• ARIA Roles: The role attribute is used to define the role or type of
an element. It allows you to specify the purpose or function of an
element beyond its default role. For example, to indicate that a div
element functions as a button or a menu.
• ARIA States and Properties: ARIA attributes also can describe the
state and properties of elements. For example, the aria‐expanded
attribute can be used to indicate whether a collapsible section is
expanded or collapsed.
108
Model‐View‐Controller (MVC)
Model‐View‐Controller (MVC) is a software architectural pattern widely
used in designing and developing applications. It separates an
application’s data (Model), user interface (View), and the logic that
connects the two (Controller) into distinct components. Key benefits of
using the MVC pattern include modular design, separation of concerns,
code reusability, simultaneous development, and better testability.
109
Paper cut bug
A “paper cut bug” in the context of UI/UX refers to a minor but
noticeable usability issue or annoyance in a user interface. It’s often
used to describe small design flaws or inconsistencies that, although
seemingly insignificant individually, can collectively impact the overall
user experience.
Examples:
110
Dark pattern
A dark pattern in UI/UX design refer to deceptive techniques used to
influence user behavior. These patterns exploit cognitive biases and
psychological principles to trick or mislead users. Dark patterns are
unethical and harm the user experience.
Examples:
111
Cross‐cultural communication
Cross‐cultural communication refers to the communication process that
takes place between individuals or groups from different cultural
backgrounds. It involves the exchange of information, ideas, and
messages across cultural boundaries. Effective cross‐cultural
communication requires understanding and navigating cultural
differences to ensure mutual understanding and avoid
misunderstandings.
Key aspects:
112
Communication styles
Communication styles refer to the patterns and preferences individuals
or cultures have in conveying and interpreting messages. Three
common dimensions of communication styles are direct or indirect,
high‐context or low‐context, and individualistic or collectivist.
Understanding communication styles helps individuals adapt their
approach to different cultural contexts, promoting effective
communication, building rapport, and avoiding misunderstandings or
misinterpretations.
Dimensions:
113
Screen reader
A screen reader is an assistive technology software designed to help
individuals with visual impairments or blindness access and interact
with digital content. It is a crucial tool for ensuring inclusive user
experiences in UI/UX design.
Key aspects:
114
Keyboard shortcut (a.k.a. hotkey)
A keyboard shortcut, also known as a hotkey or key combination, is a
combination of one or more keys on a computer keyboard that triggers a
specific action or command in a software application or operating
system. Keyboard shortcuts are designed to provide a quick and efficient
way for users to perform common tasks. Examples include Ctrl+C (copy),
Ctrl+V (paste), and Alt+Tab (switch between open applications).
Key aspects:
115
Alternative text attribute
In web design and accessibility, the “alt” attribute (short for alternative
text) is used to provide a text alternative for images. It is an important
accessibility feature that allows users who are visually impaired or using
assistive technologies, such as screen readers, to understand and
interpret the content of an image.
Key aspects:
116
Web Content Accessibility Guidelines
(WCAG)
The Web Content Accessibility Guidelines (WCAG) are a set of guidelines
for making web content more accessible to people with disabilities. The
guidelines aim to ensure that web content is perceivable, operable,
understandable, and robust. Success criteria are organized into three
levels of conformance: A (low), AA (medium), and AAA (high).
Core principles:
117
UI for color blindness
Designing user interfaces (UI) that are accessible to individuals with
color blindness is an important consideration for creating inclusive
digital experiences.
Guidelines:
118
UI/UX implementation
UI/UX implementation refers to the process of bringing the user
interface (UI) and user experience (UX) designs to life. It involves
translating the design concepts, wireframes, and prototypes into
functional and visually appealing digital products, such as websites,
mobile applications, or software interfaces.
Key aspects:
119
Typography
Typography refers to the art and technique of arranging and designing
typefaces (fonts) to make written language readable and visually
appealing. It involves the selection, arrangement, and styling of
typefaces, as well as considerations of spacing, line length, and overall
layout. Typography plays a crucial role in graphic design, web design,
branding, and various forms of visual communication.
Key aspects:
120
Copywriting
Copywriting is the art and skill of writing persuasive and engaging
content with the intention of promoting a product, service, or idea. It
involves crafting written material that grabs attention, communicates a
message effectively, and motivates the reader to take a desired action,
such as making a purchase, signing up for a newsletter, or sharing
information.
Key aspects:
121
Microcopy
Microcopy refers to the small, concise blocks of text or copy that are
used throughout digital interfaces to guide and assist users in their
interactions. It includes labels, instructions, error messages, tooltips,
button texts, and other short snippets of text that provide clarity,
direction, and feedback to users.
Key aspects:
• Tone and Voice: Microcopy should reflect the brand’s tone and
voice to create a consistent experience, whether the brand aims for
a formal, friendly, professional, or playful tone.
122
Iconography
Iconography refers to the use and design of icons, which are visual
representations or symbols that convey meaning or represent concepts,
objects, actions, or ideas. Icons are widely used in various fields,
including user interfaces (UI), graphic design, signage, and
communication to communicate information quickly and effectively.
Key aspects:
123
Grid system
A grid system in design refers to a structure or framework that helps
organize and align elements within a layout. It provides a systematic way
to create balance, hierarchy, and consistency in the visual presentation
of information. Grid systems are widely used in various design
disciplines, including graphic design, web design, and print layout.
Key aspects:
• Layout Division: The grid helps divide the layout into discrete
areas or modules. These modules provide designated spaces for
placing content, such as images, text, and other design elements.
124
Mobile‐first design
Mobile‐first design is a design philosophy in which the design process
starts with creating a design specifically for mobile devices, and then
scaling it up to larger screens such as tablets and desktops. It focuses on
providing an optimal user experience on smaller screens with limited
space, processing power, and bandwidth.
The approach involves designing for the smallest screen size first,
typically a smartphone, and then working up to larger screens. This
forces designers to prioritize content and features, and to think about
the most efficient ways to present information to users. The mobile‐first
approach also encourages designers to use techniques such as
responsive design and progressive enhancement to ensure that the user
experience is consistent across all devices.
In addition, mobile‐first design also has SEO benefits. Google has stated
that mobile‐friendly websites will rank higher in search results, and they
have also started to use mobile‐first indexing, which means that they use
the mobile version of a website as the primary version for indexing and
ranking.
125
Reactive UI
Reactive UI, also known as Reactive User Interface, is an approach to
user interface design and development that focuses on building
responsive and interactive user interfaces. It involves designing UI
components that react to changes in data or user input, providing a
dynamic and engaging user experience. Reactive UI is often associated
with reactive programming frameworks such as React and Angular.
Key aspects:
• Declarative UI: Describe how the UI should look and behave based
on the current state of the data, instead of imperatively
manipulating the UI.
126
Low‐code / no‐code
Low‐code and no‐code are software development approaches that aim to
simplify and accelerate the process of creating applications, typically
without the need for extensive coding knowledge or traditional
programming skills. Both approaches allow individuals with varying
technical backgrounds, such as business users or citizen developers, to
build functional software solutions.
127
Text‐To‐Speech (TTS) and
Speech‐To‐Text (STT)
Text‐To‐Speech (TTS) and Speech‐To‐Text (STT) are two technologies
that enable the conversion of text and speech, respectively, into their
corresponding formats. These technologies have various applications
across different fields, including accessibility, communication, and
automation.
TTS and STT are often used together in applications that require
seamless voice interaction. For example, voice assistants like Siri,
Google Assistant, and Amazon Alexa utilize both TTS and STT
technologies to understand spoken commands and respond with
synthesized speech.
128
Progressive enhancement
Progressive enhancement is an approach to web or user interface (UI)
design and development that focuses on delivering a basic, functional
experience to all users, then adding enhanced features and functionality
for those with more advanced or capable devices.
Key aspects:
129
Graceful degradation
Graceful degradation, in the context of UI/UX design, refers to a design
approach that ensures a website or application functions and remains
usable even when certain features or technologies are not supported or
available in the user’s environment. Graceful degradation is the
complement of progressive enhancement.
Key aspects:
130
Data schema
A data schema is the structure or blueprint of a database. It defines the
organization, storage, and relationships among data elements, tables,
views, and other database objects. The schema provides a framework for
organizing data and ensuring data integrity and consistency.
Common types:
131
Object‐Relational Mapper (ORM)
An Object‐Relational Mapper (ORM) is a programming technique that
allows developers to interact with a relational database using
object‐oriented programming (OOP) concepts. It provides a higher‐level
abstraction layer between the application code and the database,
eliminating the need for manual SQL queries and reducing the
complexity of data access.
Key aspects:
132
Internationalization and localization
Internationalization and localization are steps in the process of creating
software or a website that can be used by people in different regions of
the world, from different cultures, and speaking different languages.
• Process: Make sure that all user interface text is separate from the
code, that dates, times, and other regional settings are properly
handled, and that the software is designed to work with a wide
range of character sets and other language‐specific features.
• Goal: Create a version of the software that is easy and natural for
users in that region to use, even if they do not speak the same
language as the original developers.
133
Internationalization and localization:
steps
Internationalization typical steps:
2. Adapt: Adapt the content to the culture of the target market. This
includes adapting images, symbols, colors, and other visual
elements to be more appropriate for the target market.
Shared steps:
134
Locale
In the context of UI/UX design, a locale refers to the specific linguistic
and cultural settings used to adapt a user interface for different regions
or languages. It involves designing and implementing UI elements,
content, and interactions that cater to the preferences and expectations
of users in specific locales.
Key aspects:
135
Locale codes
In the context of localization and internationalization, a locale is a
combination of language code, country code, script code, region code,
and variant code. This defines a specific linguistic and cultural context.
For example, “en‐US” represents English in the United States.
Key aspects:
136
Bidirectional text (bidi)
Bidirectional (bidi) text refers to text that combines both left‐to‐right
(LTR) and right‐to‐left (RTL) scripts within the same line or paragraph.
This is commonly found in languages such as Arabic, Hebrew, Persian,
and Urdu, where the writing direction alternates between RTL and LTR
scripts.
Key aspects:
• Text Direction: Ensure that LTR scripts and RTR are aligned and
displayed correctly. The text direction should follow the natural
reading order of the respective languages.
• Text Editing and Input: Provide a text input and editing experience
that accommodates bidirectional text. Allow users to switch
between LTR and RTL input modes as necessary. Ensure that the
cursor and text selection behavior follows the directionality.
137
UI/UX testing
UI/UX testing is a process of evaluating and assessing the usability,
effectiveness, and user satisfaction of a user interface (UI) or user
experience (UX) design. The primary goal is to identify any usability
issues, such as pain points or areas for improvement in the design.
Typical approaches:
138
Split testing
Split testing, also known as A/B testing, is a method used to compare two
or more variations of a webpage, interface, or marketing element to
determine which one performs better in achieving a specific goal. It is a
data‐driven approach that helps optimize and improve the effectiveness
of digital experiences by systematically testing different design, content,
or functionality options.
General steps:
139
End‐to‐end testing
End‐to‐end testing is a type of software testing that is designed to verify
that an application or system is functioning as expected from beginning
to end. This testing method is used to test the functionality of an
application or system as it would be used by a real user. It involves
testing the application’s user interface, all the different components and
modules of the system, and the integration between these components.
140
Acceptance testing
Acceptance testing is a type of software testing that evaluates whether a
software application meets the requirements and specifications of the
client or user. This type of testing is conducted to ensure that the
software application is ready for deployment and use by end‐users.
The goal of acceptance testing is to verify that the software meets the
client’s requirements and performs as expected. The testing process is
typically conducted by end‐users, business analysts, or quality
assurance professionals, who evaluate the application’s functionality,
usability, and performance.
141
Localization testing
Localization testing is a type of software testing that focuses on ensuring
that the software or application can be adapted to different languages,
cultures, and regions without losing functionality or usability.
Localization testing is typically carried out by a team of testers who are
familiar with the target regions and languages.
Key aspects:
• User Interface (UI) and User Experience (UX): The UI/UX of the
application should be tested to ensure that it can handle different
languages and scripts without breaking the design or functionality.
142
Accessibility testing
Accessibility testing is the process of evaluating a website, application,
or program to ensure it is usable by people with disabilities. The goal is
to ensure that everyone, regardless of their ability, can use the
application or website without any barriers.
Key aspects:
143
Screen reader testing
Screen reader testing is the process of evaluating the accessibility and
usability of a digital interface for individuals who rely on screen readers
to access content. It involves assessing how well a website, application,
or other digital product can be perceived, navigated, and interacted with
using a screen reader.
Key aspects:
144
Benchmark testing
Benchmark testing, also known as benchmarking, is the process of
comparing the performance of a computer system, software application,
or other technology against a standard or reference point. The goal of
benchmark testing is to evaluate the speed, efficiency, and overall
performance of a system or application, and to identify areas for
improvement. It is important to choose appropriate benchmarks and
testing methods and to interpret the results carefully, as they may not
always be directly comparable or indicative of real‐world performance.
Common types:
145
Shift‐left testing
Shift‐left testing is an approach to software quality assurance that
involves identifying and fixing defects early in the development process.
The goal of shift‐left testing is to move testing activities earlier in the
software development lifecycle, rather than waiting until the end of the
development cycle to test the code. This approach enables developers to
identify and fix defects before they become more costly and
time‐consuming to fix later in the development process.
The term “shift‐left” refers to the idea of shifting the testing process to
the left on a timeline of the software development process. In traditional
software development, testing is often performed after development is
complete, or “shifted right” on the timeline. However, shift‐left testing
involves testing the code as it is being written, ensuring that defects are
detected and corrected as soon as possible.
Shift‐left testing also involves using tools and techniques that support
early detection of defects. For example, code reviews and static analysis
tools can help identify defects in the code before it is tested. Continuous
integration and continuous testing can help detect defects early in the
development process, ensuring that they are fixed before they impact
the quality of the final product.
146
Heatmap
In the context of UI/UX design, a heatmap is a visual representation of
data that illustrates the areas of a user interface where users focus their
attention or interact the most. It provides valuable insights into user
behavior, helping designers understand which elements of a design are
engaging, effective, or potentially problematic. Heatmaps can track
UI/UX interactions such as clicks, taps, and cursor movement. With
more‐advanced setups, heatmaps can track biometrics such as eye
movement and attention.
General steps:
147
Artificial Intelligence (AI)
Artificial Intelligence (AI) is a branch of computer science that focuses
on creating machines that can perform tasks that typically require
human intelligence. AI involves the development of algorithms and
computer programs that can learn and make decisions based on data. It
aims to create intelligent agents, which are systems that can perceive
their environment, reason about it, and take actions to achieve specific
goals.
148
AI UI/UX
AI UI/UX (Artificial Intelligence for User Interfaces and User
Experiences) refers to the application of artificial intelligence
technologies to enhance and improve the user interface and user
experience of digital products or services.
Examples:
149
AI form fill
AI form fill, also known as form autofill or autocomplete, refers to the
functionality provided by artificial intelligence systems to automatically
populate form fields with relevant information, reducing the effort
required for users to enter data manually.
Typical steps:
150
AI for product development
AI for product development refers to the process of creating and
enhancing products that incorporate artificial intelligence (AI)
technologies. It involves leveraging AI algorithms, machine learning
techniques, and data analysis to develop intelligent and innovative
solutions. AI can be integrated into various aspects of the product
development lifecycle, from ideation and design to implementation and
improvement.
Examples:
151
AI content generators
AI content generators, also known as AI writing tools or AI text
generators, are software applications that use artificial intelligence (AI)
algorithms to automatically generate human‐like written content. These
tools leverage natural language processing (NLP) and machine learning
techniques to analyze and understand text data, and then generate new
content based on that understanding.
Key steps:
152
AI image generation
AI image generation refers to the process of using artificial intelligence
techniques to create new and original images. AI image generation has a
wide range of applications, including computer graphics, art, design,
and entertainment.
Key aspects:
153
AI internationalization/localization
Artificial Intelligence (AI) can play a significant role in the processes of
internationalization and localization, which involve adapting products
or services to different languages, cultures, and regions.
Key areas:
154
Books about UI/UX
Some popular and highly recommended books in the field…
155
Universal Principles of Design by
William Lidwell et al.
The book “Universal Principles of Design” is written by William Lidwell,
Kritina Holden, and Jill Butler. It is a reference guide that explores 125
fundamental principles of design that can be applied across various
disciplines, including graphic design, product design, user experience
design, architecture, and more. The boo provides explanations,
examples, and practical applications of each principle.
Key aspects:
156
The Design of Everyday Things by
Donald Norman
“The Design of Everyday Things” is a book written by Donald Norman, a
cognitive scientist and usability engineer. It explores the fundamental
principles of design and usability, focusing on how the design of
everyday objects and systems can either enhance or hinder user
experience.
Key aspects:
157
Envisioning Information by Edward R.
Tufte
“Envisioning Information” is a book written by Edward R. Tufte, a
professor emeritus of statistics and information design. The book
explores the effective visual representation of data and information,
emphasizing the principles and techniques for presenting complex
information in a clear and engaging manner, such as via charts, graphs,
maps, diagrams, and illustrations.
Key aspects:
158
Don’t Make Me Think by Steve Krug
“Don’t Make Me Think” is a book written by Steve Krug that focuses on
web usability and user experience design. It offers practical advice and
insights for creating intuitive and user‐friendly websites, so users don’t
need to think too much or make unnecessary decisions.
Key aspects:
159
Forms that Work by Caroline Jarrett et
al.
“Forms that Work: Designing Web Forms for Usability” is a book written
by Caroline Jarrett and Gerry Gaffney. It focuses on the design and
usability of web forms, providing practical guidance and best practices
for creating forms that are user‐friendly and effective.
Key aspects:
160
The Humane Interface by Jef Raskin
“The Humane Interface: New Directions for Designing Interactive
Systems” is a book written by Jef Raskin, an American human‐computer
interaction expert. The book explores Raskin’s vision for designing user
interfaces that are more intuitive, efficient, and user‐friendly.
Key aspects:
161
UI/UX quotations
These quotes highlight the importance of user experience, simplicity,
attention to detail, and the integration of form and function in design.
They serve as reminders of the fundamental principles and mindset
required for effective UI/UX design.
“Design is not just what it looks like and feels like. Design is how it
works.” ‐ Steve Jobs
“The details are not the details. They make the design.” ‐ Charles Eames
“The best design is the one you don’t notice.” ‐ William Gibson
“Design is not just about making things look good; it’s about making
things work better.” ‐ Sahil Lavingia
162
Learn early, learn often
“Learn early, learn often” is a quotation by Drew Houston, co‐founder of
Dropbox . The phrase is popular in the startup community because it
emphasizes the importance of continuous learning and experimentation.
It suggests that it is better to start learning and experimenting early on
in the development of a product or service, rather than waiting until
later when it may be more difficult and expensive to make changes.
The concept behind “Learn early, learn often” is closely tied to the lean
startup methodology, which emphasizes rapid experimentation and
iteration to quickly validate or invalidate assumptions about a product or
service. By learning early and often, startups can quickly identify and
correct errors in their assumptions, refine their products or services,
and make data‐driven decisions.
The “early” part of the phrase refers to the importance of starting the
learning process as soon as possible, even before a product or service is
fully developed or launched.
163
Make mistakes faster
“Make mistakes faster” is a quote from Andy Grove, the former CEO of
Intel and a renowned business leader. The quote is often used to
emphasize the importance of taking risks and being willing to fail in
order to achieve success.
The idea behind “make mistakes faster” is that the faster you can make
mistakes, the faster you can learn from them and make improvements.
In other words, it’s better to learn from a mistake quickly and move on,
rather than dwelling on it and wasting time.
164
Perfect is the enemy of good
“Perfect is the enemy of good” is an aphorism that emphasizes the
potential negative impact of striving for perfection in various aspects of
life. This suggests that pursuing perfection can hinder progress and
prevent the achievement of satisfactory results.
One interpretation of this aphorism is that the quest for perfection often
sets unrealistic standards that are difficult, if not impossible, to meet.
Perfectionism can become a self‐imposed barrier to success and
satisfaction. Instead of embracing incremental progress or accepting
good outcomes, perfectionism can breed dissatisfaction and create a
cycle of never‐ending refinement.
165
Data beats emotions
“Data beats emotions” is a quotation by Sean Rad, founder of Tinder. The
quotation suggests that data‐driven decision making is superior to
relying on emotions or gut feelings when making important decisions.
This means that leaders and organizations should prioritize the
collection, analysis, and use of data to inform their decisions, rather
than relying solely on intuition or emotional reactions.
166
Idioms
Idioms are phrases or expressions that have a meaning that is different
from the literal meaning of the words used. These expressions are
commonly used in everyday language and are often used to add color or
emphasis to a statement.
For example, the idiom “the ball is in your court” means that it is now
someone’s turn or responsibility to take action. This idiom is often used
in situations where someone has made a proposal or suggestion, and it is
up to the other person to respond.
For example, the idiom “barking up the wrong tree” means that
someone is pursuing a mistaken or misguided course of action. The
literal meaning of the words “barking” and “tree” does not convey the
same meaning as the idiom.
Idioms can add color and nuance to language, but they can also be
confusing or difficult for non‐native speakers or those who are not
familiar with the language and culture.
167
Quick wins
“Quick wins” is a term commonly used in business to describe projects
or actions that can be completed quickly, usually within a short time
frame of a few weeks to a few months. These are initiatives that require
minimal resources, time, and effort but can yield significant, tangible
results.
The idea behind quick wins is to build momentum and show progress,
which can help gain buy‐in from stakeholders and build enthusiasm
among team members. This approach can be particularly useful in
situations where a larger project or long‐term strategy is being
developed or implemented.
168
Think outside of the box
“Think outside of the box” is a common phrase used to describe the act
of approaching a problem or situation in an unconventional, creative, or
innovative way. It refers to thinking beyond the limitations of traditional
or established ideas, methods, and processes, and exploring new
possibilities and perspectives.
The phrase originated from a popular puzzle in the 1960s called the
“nine dots puzzle,” where nine dots were arranged in a square, and the
challenge was to connect all nine dots with four straight lines without
lifting the pen. The solution required drawing lines outside of the
perceived boundary of the square, and this led to the term “thinking
outside of the box” to describe unconventional thinking.
169
Out of scope
“Out of scope” is a phrase commonly used in project management,
business analysis, and other fields to indicate that a particular task or
activity is not within the bounds of the current project or assignment.
When someone says that a task or activity is “out of scope,” they are
essentially saying that it is not something that they are currently
responsible for, or that it is not something that they can work on within
the context of their current project or assignment.
In other contexts, the phrase “out of scope” can also be used to indicate
that a particular problem or issue is not relevant to a particular
discussion or debate. For example, if two people are having a
conversation about the best way to market a new product, and one
person starts talking about the technical details of how the product was
designed, the other person might say that the technical details are “out
of scope” for the current discussion. This would indicate that they
believe the technical details are not relevant to the discussion about
marketing the product.
170
Over the horizon
“Over the horizon” is an idiomatic expression that refers to events,
situations, or possibilities that are not currently visible or known but are
anticipated or expected to occur in the future. It implies that something
lies beyond the current range of perception or understanding.
The phrase draws its metaphorical meaning from the visual concept of
the horizon, which represents the farthest point that can be seen or
known from a particular vantage point. Anything beyond that point is
beyond the observer’s current field of vision.
Overall, “over the horizon” captures the notion of looking beyond the
present and considering the possibilities that lie ahead, whether they
are related to strategic planning, risk management, or personal
aspirations. It emphasizes the importance of forward‐thinking and
being prepared for the future.
171
Aphorisms
Aphorisms are concise, memorable, and often witty statements that
convey a general truth or principle. They are succinct expressions of
wisdom, offering insights into human nature, life, and various aspects of
the human experience. Aphorisms are typically presented in a pithy and
memorable form, making them easily quotable and shareable.
While aphorisms are valuable for their succinctness and impact, they
can also be subject to interpretation and contextual understanding.
Their brevity can leave room for multiple interpretations, allowing
individuals to apply them to their own experiences and perspectives. As
a result, aphorisms often provoke discussions and debates, as different
individuals may interpret them in different ways.
172
The Law of Demos
The Law of Demos, also known as Kapor’s Law, is a principle that states
that any technology demo will eventually fail if it is demonstrated often
enough. This law was first formulated by Mitch Kapor, co‐founder of
Lotus Development Corporation, in 1983.
The idea behind the Law of Demos is that demos are essentially fake,
controlled environments that do not accurately represent the real world.
Demos are designed to showcase the best features of a product or
technology, and they often ignore or gloss over any flaws or limitations
that may exist. As a result, demos can create unrealistic expectations in
the minds of the audience.
173
The Law of Conservation of Complexity
The Law of Conservation of Complexity, also known as Tesler’s Law, is a
design principle that was formulated by Larry Tesler, a computer
scientist who worked for Xerox PARC and Apple. The Law states that
complexity is a finite resource that must be conserved, and that every
increase in complexity in one part of a system must be offset by a
corresponding decrease in complexity elsewhere.
In other words, the Law is a call for simplicity in design. It suggests that
designers and developers should strive to make their products as simple
and easy to use as possible, by minimizing unnecessary complexity and
focusing on the most important features and functions. This is
particularly important in today’s technology landscape, where users are
inundated with a vast array of products and services, many of which are
needlessly complex and difficult to use.
174
The Pareto Principle (The 80/20 Rule)
The Pareto Principle, also known as the 80/20 rule, is a principle named
after Italian economist Vilfredo Pareto. It suggests that roughly 80% of
the effects come from 20% of the causes. This principle has been applied
to a wide range of fields, including economics, business, management,
and personal productivity.
It’s important to note that the 80/20 split is not a hard and fast rule, and
the actual percentages may vary depending on the context.
Nevertheless, the Pareto Principle remains a useful tool for analyzing
and prioritizing tasks, resources, and activities in various fields.
175
Chesterton’s fence
Chesterton’s fence is a principle of cautionary conservatism that states
that before changing or removing something, it’s important to first
understand why it exists in the first place. The idea is that even if a
particular practice or object may seem pointless or unnecessary to us, it
likely served some purpose in the past that we may not be aware of.
The principle is named after the writer and philosopher G.K. Chesterton,
who wrote about it in his 1929 book “The Thing: Why I Am a Catholic.”
In the book, Chesterton uses the metaphor of a fence to illustrate the
principle: imagine that you come across a fence in a field and don’t
understand why it’s there. Rather than immediately tearing it down, it’s
important to investigate the purpose of the fence first. It could be there
to keep animals from escaping, to prevent people from falling into a pit,
or to mark the boundary of a property.
176
Soft skills
Soft skills, also known as interpersonal skills or people skills, refer to the
personal attributes and qualities that enable individuals to effectively
interact with others and navigate various social and professional
situations.
177
How to create a UI/UX portfolio
Your UI/UX portfolio should showcase your skills, and also tell a
compelling story of your design journey, and demonstrate your ability to
solve real‐world problems through effective UI/UX design. Before
finalizing your portfolio, seek feedback from peers, mentors, or
professionals in the field.
178
How to sketch a user interface
Sketching a user interface can be an effective way to quickly explore and
visualize design ideas.
179
How to run a focus group
Running a focus group involves gathering a small group of individuals
with similar characteristics or experiences to gather insights, opinions,
and feedback on a specific topic or product.
• Plan Logistics: Determine the date, time, and location for the
focus group. Choose a comfortable and quiet environment that
encourages open discussion. Ensure you have all the necessary
equipment.
180
How to give a demo
Giving a demo involves showcasing a product, service, or concept to an
audience, whether it’s in‐person, through a virtual presentation, or a
combination of both.
181
How to interview a user
Interviewing users is a valuable method for gathering insights,
understanding their needs, and gaining feedback.
• Dig Deeper: Probe further into the user’s responses to gain deeper
insights. Ask follow‐up questions to encourage the user to
elaborate on their thoughts and experiences.
• Empathize and Seek Context: Put yourself in the user’s shoes. Ask
questions that explore their background, goals, challenges, and
specific situations.
182
How to collaborate
Collaboration is essential for successful teamwork and achieving
common goals. Here are some tips…
183
How to lead a meeting
Leading a meeting effectively involves careful planning, facilitation
skills, and the ability to keep participants engaged and focused.
184
How to work with stakeholders
Working with stakeholders is crucial for successful project execution
and achieving desired outcomes. This requires active engagement,
effective communication, and a genuine commitment to understanding
and addressing their needs.
185
How to get feedback
Getting feedback is essential for personal and professional growth.
• Follow Up: If there are any areas of feedback that you don’t fully
understand or need further clarification on, reach out to the
person for more information.
186
How to give feedback
Giving feedback effectively is an important skill that can contribute to
personal and professional growth.
• Choose the Right Time and Place: Find a time and place for a
private uninterrupted conversation. Ensure that the recipient is
open and receptive to receiving feedback.
187
Conclusion
Thank you for reading UI/UX Guide. I hope it can be helpful to you and
your project.
Your feedback and suggestions are very much appreciated, because this
helps the guide improve and evolve.
Repository
https://github.com/sixarm/ui‐ux‐guide
You can open any issue you like on the repository. For example, you can
use the issue link to ask any question, suggest any improvement, point
out any error, and the like.
188
Thanks
Thanks to many hundreds of people and organizations who helped with
the ideas leading to this guide.
Consultancies:
• ThoughtWorks
• Accenture
• Deloitte
• Ernst & Young
Venture funders:
• Y Combinator
• Menlo Ventures
• 500 Global
• Andreessen Horowitz
• Union Square Ventures
Universities:
• Berkeley
• Brown
• MIT
• Harvard
Foundations:
189
About the editor
I’m Joel Parker Henderson. I’m a software developer and writer.
https://linkedin.com/in/joelparkerhenderson
https://github.com/joelparkerhenderson
https://linktr.ee/joelparkerhenderson
Professional
Personal
I write free libre open source software (FLOSS). I’m an avid traveler and
enjoy getting to know new people, new places, and new cultures. I love
music and play guitar.
190
About the AI
OpenAI ChatGPT generated text for this book. The editor provided
direction to generate prototype text for each topic, then edited all of it by
hand for clarity, correctness, coherence, fitness, and the like.
Yes, ChatGPT has the capability to generate text. However, the quality
and coherence of the generated text may vary depending on the topic
and the specific requirements.
So while ChatGPT can be a useful tool for generating content and ideas,
it would still require a human author to provide direction, editing, and
oversight to ensure the final product meets the standards of a book.
191
About the ebook PDF
This ebook PDF is generated from the repository markdown files. The
process uses custom book build tools, fonts thanks to Adobe, our open
source tools, and the program pandoc.
The book build tools are in the repository, in the directory book/build.
The tools select all the documentation links, merge all the markdown
files, then process everything into a PDF file.
Fonts
https://github.com/sixarm/sixarm‐fonts
The book fonts are Source Serif Pro, Source Sans Pro, and Source Code
Pro. The fonts are by Adobe and free open source. THe book can also be
built with Bitstream Vera fonts or Liberation fonts.
markdown‐text‐to‐link‐urls
https://github.com/sixarm/markdown‐text‐to‐link‐urls
pandoc‐from‐markdown‐to‐pdf
https://github.com/sixarm/pandoc‐from‐markdown‐to‐pdf
192
About related projects
These projects by the author describe more about startup strategy,
tactics, and tools. These are links to git repostories that are free libre
open source.
193