With more and more companies adopting AI and ML, more designers are starting to get into the field to design for something beyond the traditional graphical UI. At my job, I collaborate with a lot of designers from outside of my direct AI/ML team. Over time, I start to notice some fundamental mindset difference patterns. I’m writing this to share some of my observations. If you’re just starting to design for AI, I hope this post can also help you identify some of the mindset gaps and adjust better to become an AI designer.
- Conversational AI: the sky is the limit — but think about why
I’ve met some coworkers who are passionate to leverage AI for their products. They come to us with many brilliant ideas. Some typical reasons why they want AI:
- Leveraging AI makes their brand/product stand out among competitors;
- Having a conversational UI could lower learning barriers and improve user engagement;
- There are opportunities for automation and free the user from tedious tasks, and more.
Though it’s my or my team’s job to evaluate and identify which use cases make sense for an AI. Because resources are limited. You want to make your team focus on the areas where your AI can bring the most value.
Meanwhile, understand if their interest can be satisfied with lending them the AI brand. There are probably many cool tricks they could do without any AI/ML.
- Imagine you’re designing a robot friend, who is smart but only knows 30% of you
Leveraging the context and being able to automate tasks are the most valuable UX advantages of an AI, in addition to learnability and how it can be more personalized in the long run. When you design for it, not only think about the direct user-facing interaction but also what factors should be added to the algorithm and how the AI can serve the user better. However, leave a space for the users to overwrite any AI behaviors. There are always flaws in the algorithm and unexpected edge cases. Your design might serve the majority of users well but it’s a different story for any particular person. Don’t frustrate your users by making the AI too confident. Always design with your best hypothesis but give users the ultimate control.
- Discoverability: frame that invisible box
For a GUI only product, the capability of your app/website is usually straightforward. Certain content might be buried. But with some good navigation system, discoverability usually isn’t a too-hard-to-solve problem. People expect A LOT from anything AI. You want to keep the hype and avoid disappointing your users. Educating them on what the AI can do is extremely important so that people won’t constantly get frustrated by asking the AI to do something it cannot. The challenge is that your AI’s capability usually isn’t laid out in the format of navigation menus or CTA buttons.
Here are some solutions of how to frame that invisible box:
- Marketing materials:something tangible that users can search for or receive to learn more about the product.
- Ask the AI:many conversational AI has a help domain, which allows the users to ask questions like “what can you do”. This is a better solution because it’s on the product, which comes handier than any marketing materials.
- Hints/feedforward:when your user is interacting with the AI within a flow, consider how you can give some guidance on how to move forward and achieve the user’s goal. It can as simple as offering some suggested commands/actions while the AI is waiting for the user’s input.
- Error handling:people prefer to learn something by playing with it. When your user runs into an error, that’s also a chance to educate your users about the capabilities of your product.
- Error handling is so important that it deserves its own section
Because of the high expectations of AI, people tend to think the AI should be smarter than how it usually is. A task that is out of the product scope might be expected from your users.
When I say error handling, I don’t just mean giving an alert with a ⚠️. You should take a step back and identify the potential ways of how things could go wrong. Some examples:
- The user asks for something your AI can’t do at all: asking a food delivery AI to book a plane ticket;
- The user asks for something within the domain but your AI cannot do: your AI can only tell the local weather but the user is asking about the weather of another city;
- The user gives an unmatching entity to the AI’s ask:within a flow, your AI is asking the user how many pounds of beef they’d like to add to the cart, but the user responds with “add a box of oat milk”;
- The user gives a command that your AI can’t understand at all:a voice assistant captured some background chit-chat rather than a straightforward command from the person who’s trying to talk to the voice assistant;
- User isn’t responding to the AI:a voice assistant asks the user what time they’d like to set the alarm but the user keeps silent;
- System errors:the settings are wrong or the service is down. You should also treat them differently depending on whether the user can do to fix or not.
Once you identify the possible errors, you can start to define the right error handling approach. The goals of error handling are:
- Explain to the user what went wrong so that they understand the capability of your product. Building that perception can also avoid them from running into the same error in the future;
- Educate the user about what they could do to move on right now (if any). Nothing feels worth than getting stuck.
- Feasibility plays a more important role
We’ve all watched many AI-related movies. Though the reality isn’t always as magical as how it appears on Hollywood movies. We designers are naturally great at coming up with creative solutions for the ideal scenarios. But soon enough you’ll need to learn how to prioritize which pieces of that ideal version should be tested or launched within which timeframe. When it comes to prioritization, one huge factor is technical feasibility. Sometimes certain features just simply require much more investigation. A smart thing your AI can do probably needs tons more backend work than a feature on a GUI based website. Learn from your engineers and build some fundamental knowledge about how the technology works. Always collaborate with your engineering and product management counterparts to define the most reasonable roadmap.
- Great ideas come from everyone. Design can be the line that connects the dots
We designers should not only focus on creating the best experience for our users, but also our team. With the design thinking process and the power of visualization, we can combine everyone’s ideas into something well-balanced among usability, viability, and feasibility. Plus, we simply aren’t technical enough to see the full potential of our products. I like to share work early in progress with my counterparts. It allows me to get feedback earlier on. I also treat those meetings as mini brainstorming sessions. I can collect new ideas on how we could leverage the backend we’ve built and create something cool and swiftly. I constantly look for ways to use design to empower our team. I’ve created a sprint planning board for our team (link below). Even though it isn’t directly related to the end-users, creating a customized tool can help the team work more efficiently. Plus it helps to build rapport across teams.