Design User Experience

A Design Workflow Tutorial for Developers: Deliver Better UI/UX On Time

Editor’s Note: Lubos Volkov is an experienced designer who has worked remotely with numerous developers throughout his career. As the product designer at Toptal, Lubos interacts daily with team members from a variety of departments including engineering, community, and content. He is a talented designer whose communication skills contribute to his success. In this tutorial, Lubos shares his experiences and ways to optimize designer-developer UI and UX workflows that lead to quality products delivered on, or before, deadline.

Working with a great designer or design team can be an invaluable asset to any team. With clear communication channels, and free-flowing co-operation, the designer should give you everything you need to speed up the building process and limit questions and confusion as much as possible.

What can you, the UX developer, do to ensure that the product you have built is delivered in a timely manner without sacrificing the quality of the user interface and user experience?

Call up your designer; it’s time to streamline UI design workflow.

My answer: Get your designers involved from day one, and keep them involved throughout the entire UI/UX development process. Make sure to establish clear communication lines and consistent messaging between developers and the designers.

Do You Have Everything You Need?

The worst thing that can happen during the implementation of any UI is __lack of communication between the designer and the developer __(unless they’re the same person). Some designers think their job is done once the PSD is sent over. But, that’s just wrong! You must create an always-on communication workflow that lasts beyond the delivery of the PSDs.

Projects where the designer just submits the design files, and the developer just implements them, are the projects that just fail.

In many cases, it will take time before the designers see the actual UI/UX design implementation. To their surprise, the build is often completely different from the initial submission. (This happened to me more than once. I have sent over source files with complete descriptions and interaction prototypes, but when I finally saw the project, months later, it had a different layout, different colors, and no interactions in place.)

Some designers might hate me for this, as this design workflow requires a lot of “extra” work on their side. However, creating and delivering full assets and information, in an organized way, is better for the project and the team as a whole.

If a developer has everything that they need in front of them, it will speed up the process. A clean PSD is just not enough.

What do you need to get the job done effectively and efficiently?

These are the assets that a developer should expect from the designer to bring a UI/UX design to implementation:

  • Resource file – The designer should place every element of the app in one file. This file should contain buttons, checkboxes, header styles, fonts, colors, etc. Basically, based on the information in this file, the developer should be able to recreate any interface from scratch. It’s much easier for a developer to export any element from a single PSD, than to search multiple files for it.
  • Assets – Make sure that developers get all the required assets, as source files should not be touched anymore.
  • Interaction prototypes – Days of “static screens” are long gone. Using smart interactions and animations, to smooth-out UX design workflow and implementation, is a common practice now. But, you can’t just say “this will slide in from the left” to a developer. The designer should create the actual prototype of that interaction. The prototype should include information like speed, velocity, etc., and the designer is expected to specify each of these values.
  • Naming convention – Request a file naming structure to keep things organized. It’ll make it easier for both of you to navigate files. (No one likes to have things hidden in a background folder.)
  • HDPI Resources – We live in “hard times”, with the huge density of the screens. Make sure that the designer will deliver images in all of the required resolutions, so your application will look crispy everywhere. Note: use as many vectors as possible; it’s going to help you a lot (svg).

If you do find something else missing during the implementation, don’t be afraid; ping the designer and ask for it. Never skip, and never skimp! You are members of the same team, and your job is to deliver the best possible product. If a designer fails, you fail as well.

Work In-Progress

Utilize your designers during the UI/UX development process. Don’t keep them in the sidelines expecting them to just “push the pixels.” A designer sees possible innovations even before the implementation starts. To take advantage of this, keep them in the loop. Provide them with access to see, and test, the work in progress. I’m well aware that no one likes to share unfinished projects. But, it is much easier to make changes in the middle of a build than at the end. Doing so may save you time and prevent unnecessary work. Once you give the designer a chance to test the project, ask him to compile a list of problems and solutions, and suggest improvements.

What to do when a developer has an idea that would change the look of an application? Discuss it with the designer, and never allow a developer to modify the design, without consulting the designer. This design workflow will assure that the build stays on track. A great designer has a reason for every element on the screen. Taking a single piece out, without understanding why it’s there, could ruin the user experience of the product.

UI/UX Design Project Management

Designers think that developers can bring a design to life in one day, or even in one hour. But, like great design, great development takes time and effort. Keep your anxious designer at bay by letting him see the progress of the build. Using external project management software, to make sure every revision is accounted for, is a great way to make sure you don’t miss important information discussed in an email conversation or a Skype session. And let’s be honest: sometimes changes and activities aren’t even communicated until they happen.

Whatever solution you use, be sure to choose one workflow process that the whole team will adopt and consistently use. On our team, I tried to push Basecamp because that’s what I was using, but our front-end developers thought it had limited features. They were already using other project management software to track bugs, progress, etc., such as JIRA, GitHub, and even Evernote. I understood that project tracking and management should be kept as simple as possible, so I migrated my UI design workflow to JIRA. I wanted make sure they understood my workflow and progress, but I did not want them to feel like design was another thing to manage.

Here are a few suggestions for a project management tool:

  • Basecamp – Tracks the progress of the design and development related tasks, and easily lets you export tasks. It also has a simple mobile client.
  • JIRA – A fully customizable platform where you can easily set up custom boards for different areas. For example, organize boards to track activities such as back-end, front-end, design, etc. I think the mobile client is a bit weak, but it is a great solution for bigger teams and includes a bug tracking feature.
  • Email – This is great for setting up a conversation or sending images. But please be careful if you use email for feedback. Things can easily get lost.

You can also try Trello and other project management software, but the most widely used in our industry are Basecamp and JIRA. Again, the most important thing is to find a project management system that everyone can use on a consistent basis, as otherwise it’s a moot point.

UX Design And Development Come Together

The designer and the developer are a powerful combination. Be sure to brainstorm UI and UX together as often as possible. Developers should be willing to help a designer conceive ideas, while a designer should have at least a basic knowledge of the technology that is being used.

Figure out the design workflow together. Don’t just blindly implement what your designers create. Be proactive, and create something that looks beautiful and has a great user experience, by taking advantage of your two different perspectives. Designers think outside of the box and see crazy animations, ideas, pixels, and buttons, while developers see the technology, speed bumps, and limits.

Following this UI design tutorial will really bring clarity to your design workflow.

In my experience, every designer is crazy about pixels and interesting concepts. But sometimes, a designer gets to a point when they have an idea, but the developer pushes back and says, “This isn’t going to work well once it’s implemented. There will be performance consumption issues”. Recently, I was looking to implement a modal window with a blurred background, but this blur caused heavy loading times. To solve this problem, the developer suggested using a regular, full color overlay, which loads faster and retains image quality. Designers, pay attention: Don’t compromise the user experience for the design.

Feedback Loop

Feedback from the designer is crucial, and it has to happen as often as possible. It’s probably the most time (and energy) consuming thing that you will do. But, you need to adopt it to be able to deliver perfect results. Here are couple of UX and UI design worklow tips on how to make your feedback perfect.

  • Be visual – Feedback needs to be as specific as possible. The best way to make it accurate is to take a simple screenshot and highlight a problem you want to fix. It would be even better if you had a pictures of a current implementation vs how it is supposed to look. Visual communication will eliminate 50% of the questions.
  • Be descriptive – Feedback should be accurate. You can’t just say “move this button up”. The designer must specify how many pixels a button should move, what padding should be used etc. Always include an explanation of the problem, and the appropriate solution for it. It’s going to take a lot of time, but it’s worth it.
  • Be patient – Keep in mind that the designer and the developers do not share the same focus. If developers don’t fully understand a designer’s idea, it can lead to confusion and bad decisions. In every case, both sides need to be patient and willing to help the other team members. It’s really tough sometimes, but it is a soft skill that every designer and developer should learn.

It’s pretty obvious that these things needs to be combined together to make them into a suitable design workflow. But, what tool can actually help you deliver the feedback?

  • Email – I’m not afraid to say that this is still the most common platform to deliver the feedback. It is totally fine to use it, if you will follow couple of simple rules.
    • First, use single email thread for your feedback. Don’t put every individual tweak to a new email with a different subject.
    • Second, create the list of fixes. Try to sit down and think about every tweak or fix you noticed.
    • And lastly, don’t send huge list at once. Try to break it down to smaller individual lists and go part by part.
  • Skype (Hangouts) – Voice is really powerful tool for the feedback. You can immediately ask and answer questions. But, make sure to take notes and sent over the follow up message (email) after the call.
  • Collaboration tools – To be honest, I’m not a big fan of collaboration tools. But, they have a big benefit. They help you to keep feedback in place. Asking and answering questions is fast, and it stays there forever.

Here are some of the great tools:

Feedback annotation:

Collaboration tools:


Establish a system and UI/UX design workflow that keeps the communication lines open throughout the design and development process. This will allow you to implement great ideas, forecast potential problems, and prioritize important issues.

The developer and the designer can create great things together as long as they are willing to work as a team. Learn from each other and design tutorials like this one!

This article is originally posted in Toptal.

KaraboNgoatle User Experience User Research

Going Guerrilla: Affordable UX Research Tips And Alternatives

We are living in the Age of the Customer, and user experience (UX) is leading the charge in design of web and mobile software products. UX has become an integral part of software design, resulting in a paradigm shift in user research.

Therefore, modern business must move past the old advertising methods that scream corny slogans in big bold letters: “Try X. We are the Best!”

The obvious problem with this outdated approach is that there are too many comparable products out there that also claim to be “the Best” in their respective product categories. To survive in a market oversaturated with competition, companies must invest in developing their websites, apps, services, and other customer touch points around overall user experience.

The best way to assess your customer’s experience with company websites and apps is through UX user research.

The Case For Low Cost UX User Research

There are plenty of methods for conducting user research; however, many of these methods are resource-intensive and can be slow. In other words, they tend to be expensive and take a while to implement.

No money, no research? Not true. Developers and designers can employ multiple cost-effective methods to conduct user research on a dime.

No money, no research? Not true. Developers and designers can employ multiple cost-effective methods to conduct user research on a dime.

For companies operating on limited budget, pushing out a working product may be more important than quality UX research, but not taking the time to do useful research may have negative effects on the success of your product or service.

This is what compelled me to tackle the problem in this blog post, and I am confident a lot of people in the UX field often face the same challenges:

  • UX user research is no longer an exotic field, reserved for cutting-edge products and services, usually launched by big companies.
  • UX research is a must, even for small companies and startups; but, these organizations often lack the financial and technical resources needed to conduct in-depth user research.
  • These small players have to find innovative ways of levelling the playing field, allowing them to remain competitive in the face of strong competition from bigger companies.
  • In this context, user research has to be cost-effective and time-effective.
  • Lastly, a more down to earth reason: There simply aren’t that many quality UX research resources online, and there are even fewer resources covering UX research from the perspective of cash-strapped outfits.

Below, you’ll find a few methods that will help you conduct user research on a budget.

Desk Research

In the old days, in order to conduct adequate research, companies had to go out into the field to collect data. Now, there’s an entire world of research information available at your fingertips. If you want to get a head start on user research, bypass traditional primary research and look for secondary research.

A lot of user research can be conducted from the comfort of your office. Use secondary research methods to your advantage.

A lot of user research can be conducted from the comfort of your office. Use secondary research methods to your advantage.

While there aren’t that many UX-related resources online, the psychology of user interactions with computers and digital content is a growing field of study. With a little creativity, it is possible to find good information about user behavior and decision-making from a variety of industries.

The key takeaway here is that you shouldn’t limit research to user behavior to your specific industry. Browsing data collected and used by other industries could answer some of the same questions you may have about your audience.

Usability Testing

The usability testing method is self-explanatory and involves inviting users to test product prototypes. This is one of the most common types of tests run by companies that conduct UX research.

Nowadays, usability testing is almost a requirement for web and mobile app designers. It involves watching users actually navigate your apps and recording their reactions and statements as raw data for the design team to analyze. Large companies can spend hundreds of thousands of dollars on usability testing, but the process doesn’t have to be super expensive in order to yield useful results.

Usability testing and A/B testing can be conducted on a tight budget, provided you plan ahead.

Usability testing and A/B testing can be conducted on a tight budget, provided you plan ahead.

Take a gander at Steve Krug’s book Rocket Surgery Made Easy on usability testing to learn more about the finer points of usability testing.

A/B Testing

A/B Testing involves showing users two different options and asking for feedback on each of them. Ask users for a list of pros and cons for both prototypes, ask them to gauge the overall experience, ask them to focus on certain aspects of your product that could benefit most from additional research.

UX designers will take this data and modify prototypes to eliminate flaws or use these pros and cons to make a new hybrid prototype for another round of user testing. The Handbook of Usability Testing does a great job of discussing usability testing and A/B Testing.

Online Questionnaires

Another inexpensive UX research method, commonly used by big and small business alike, involves online questionnaires. It is simple enough to disseminate questionnaires to hundreds or even thousands of participants with just a click of a button. However, a significant amount of time should be dedicated to preparing surveys, publishing them, and ultimately analyzing the findings.

Online questionnaires are cheap and potentially extremely useful tools for user research. However, you don’t want to spam your users.

Online questionnaires are cheap and potentially extremely useful tools for user research. However, you don’t want to spam your users.

There are a variety of awesome online survey tools available, and I would single out Wufoo and Typeform as effective tools for those who are just getting started. Make sure to write good screener questions to eliminate unwanted participants! Here are some starter tips for user research surveys.

Use social media, online networking platforms, and emails to scrounge up respondents for your questionnaires. Remember that the point of the survey is to dig into the user’s psychology. How are they finding information? What types of information do they find relevant and useful?

The right questions will uncover your customer’s needs, desires, and pains.

Time for some caveats; the value and quality of results generated by online questionnaires and surveys varies depending on the type of questions asked, and the quality of your audience targeting. This is why it’s crucial to develop a set of well thought out screener questions, and to properly analyze the data once it is collected. Also, let’s not forget that many users disregard such surveys, so don’t expect a huge response rate. If you are faced with this problem, and if the response rate is too low, it doesn’t mean you’ll do any better if you keep spamming people with your questionnaires.

That’s why it’s important to get the questions right and direct them at the right audience the first time around.

Guerilla Research

Guerilla research (a phrase popularized by Steve Blank) is essentially a neologism for field research, although there are some differences. In any case, it all boils down to the same problem: Companies sometimes need answers on short notice.

While surveys are useful, the quickest way to get specific information is to take your questions straight to the people most likely to use your product. To find the best data for your research efforts, target the areas where your particular audience likes to congregate. Go to places where your audience will have the time to help you, like in a cafe, park, or sports venue.

Guerrilla research does not have to cost anything, provided you have time to spare and don’t mind approaching people for advice.

Guerrilla research does not have to cost anything, provided you have time to spare and don’t mind approaching people for advice.

This type of research can be fun and enlightening, as people usually love to share their technological experiences with professionals who are in a position to improve them. You can also use this method to test your prototypes in the field. Just take your prototypes on your laptop, smartphone, or tablet and ask people for their feedback.

You’ll be surprised at the usability issues strangers point out. It’s also important to note that you are likely to get data from people who might otherwise not be interested in your product. This is not a bad thing. On the contrary, expanding your target demographic and getting comments from casual users can prove quite useful. They might point out some issues you never thought about, since you did not view the product from their perspective. Don’t ignore such seemingly uninterested people; they can provide useful feedback too, and they can help you make your product more appealing to other casual users.

Focus Groups

Gather users together in an informal setting to discuss your products and services. Researchers have been using this method for eons, but it has been criticized for its propensity to encourage “groupthink” and ignore unmet needs.

Focus groups and remote interviews allow you to source targeted and in-depth user information and to receive instant feedback.

Focus groups and remote interviews allow you to source targeted and in-depth user information and to receive instant feedback.

Check out this article on how to effectively utilize focus groups for UX research.

Let’s point out the obvious: You need to take your time and ensure your focus group demographic is diverse. Prepare for the meeting, identify key areas you would like to discuss, make sure you have adequate background info and resources so you can answer any questions your group may direct back at you.

Remote Interviews

Interviews can be a bear to schedule, and many researchers lose participants due to scheduling conflicts.

Luckily nowadays, we can use online tools like Doodle to sync schedules,and Google Hangouts or Skype to conduct remote interviews. This drastically reduces the time it takes to organize multiple in-person interviews.

Remote interviews won’t give you the volume of data that other types of research methods will, but remote interviews can be useful in terms of uncovering major usability issues and analyzing various reactions to them.

The obvious advantage of one-on-one interviews is that you can focus on certain issues and get detailed information and targeted feedback. This may be problematic when dealing with groups of people. Plus, you also eliminate the risk of “groupthink”.


A lot of research methods can fall under this category. If you are working on a tight budget, use free tools like Google Analytics as a starting point for the collection of quantitative data.

Alternatively, simple tools, such as Betaloop, are available for collecting specific product insights from users. Betaloop’s software collects data from a set of users on the performance of product features. Data is then organized and displayed in a collaborative environment that allows designers and developers to create action items for their team on the fly without leaving the app.

A lot of analytics tools are free to use and can be a vital asset in user research. Structure your data properly so you don’t waste too much time tidying up.

A lot of analytics tools are free to use and can be a vital asset in user research. Structure your data properly so you don’t waste too much time tidying up.

Analytics tools usually answer questions like these:

  • How long does it take for users to complete a task?
  • What features are most popular?
  • What paths do people usually take?

Once you’ve got the raw data, be sure to pair it with real qualitative research for insight. Plan ahead and make sure that you collect useful, properly structured raw data that can be analyzed with as little effort as possible.

User Research On A Budget: Money Is Not Everything

Conducting useful user research doesn’t have to take a ton of money and a lot of time. By utilizing the power of digital tools, inexpensive research methods, and taking a closer look at customer interactions, your company will get the raw data and insights it needs to improve the user experience for its audience, without breaking the budget. UX research is an invaluable process that can have a major impact on product success and, ultimately, your sales and revenue.

This brings us to the financial aspect of user research. What’s it really worth? What’s the ROI of UX research? How do you convince your clients they need UX research, even if they think they can’t afford it? How can you compete with huge companies and their seemingly unlimited human and financial resources?

There is no one-size-fits-all answer to these questions. It all depends on the type of product you’re working on, the target audience, and client needs. However, this does not mean you can’t do anything to promote budget UX user research as an alternative. Quite the opposite, it merely means you have to streamline the research process, making it cost-effective and time-effective. You have to do more with less.

Communicating the value of user research to your clients is another vital step in this process. If you are dealing with clients who don’t think they can afford proper UX research, make it your responsibility to change their minds. Try not to throw numbers around, don’t make ROI promises you can’t keep, don’t tell them they’ll get top notch research for the price of a hotdog. Be realistic and straightforward, argue your position and emphasise the merits of your low-cost approach.

Remember, conducting UX user research on a limited budget usually means you won’t get all the data you need, and your efforts may even appear futile in the face of overwhelming competition from businesses that can afford to burn heaps of money on research. However, you are not trying to compete with them. This is what you need to bear in mind: The alternative to conducting budget user research is doing no research at all, and basing crucial design decisions on past experiences, best practices, or educated guesses.

Bottom line? Even a limited amount of cost-effective user research easily trumps these alternatives.

This article originally appeared on Toptal.

Design Thinking KaraboNgoatle User Experience

Anticipatory Design: How to Create Magical User Experiences

This morning the song “This Magic Moment” by The Drifters popped into my head for no apparent reason.

Those restless neural networks in our brains do funny things. They make seemingly unrelated, unconnected thoughts and concepts connect.

Slapping my forehead I said to myself: “But, of course…”

Recently I’ve been thinking about those magic moments in UX that happen when we’re interacting with our digital devices or services. We encounter perfect moments, when everything falls into place, in exactly the right way, at exactly the right time, as if it’s magic. It could be at your bank, in your car, a vending machine, or on your phone.

I believe the era of anticipatory design is here, or least within our reach.

Our limited GUIs are changing as a result of evolving technologies and input methods. It is an organic, natural evolution –– we already take talking to our devices for granted!

For example, while driving we might say: “Dial Anna.” We ask Siri to start a timer or about movies playing nearby. And we ask Alexa to play music or order our coffee. Nonetheless, the metaphors and graphical elements established more than four decades ago haven’t changed that much.

The Past

Consider that Xerox PARC’s original GUI is 44 years old yet our user interfaces still look remarkably like it.

The Xerox Star workstation introduced the first commercial Graphical User Interface (GUI) operating system in 1973

Today, we’re still looking at two-dimensional screens and mostly use keyboards and mice for input; devices designed for interaction methods that were optimized for computers, not humans.

The machines we interact with – laptops, desktops, tablets, mobiles, vending machines, etc. – are still designed and built with mental models and technologies that are legacy systems from the past.

It’s as if we’re using interaction models from the Flintstones’ era in a Jetsons’ world; they still rely on a lot of interaction from users (input) to move to the next step and display useful information (output).

What is anticipatory design?

The application of anticipatory design is more important than ever if digital businesses are to simplify and facilitate the course of our digital lives.

In light of this, what is anticipatory design?

It’s output, without much need for input.

A world where our computing machines are designed for interaction methods optimized for humans, not computers. A digital world where we move from user intent that’s deterministic to probabilistic.

Huge’s Aaron Shapiro defines anticipatory design as a method of simplifying processes by responding to needs one step ahead of the user’s decisions, i.e. responding to user needs they haven’t expressed yet.

Anticipatory design in its finest form goes way beyond personalization.

For example, Netflix showing you movies to watch based on your taste preferences and history is personalization. With anticipatory design, the interface actually changes in the moment as you’re interacting with an app.

An example of personalization-not anticipatory design.

Anticipatory design would mean—in the case of online shopping for example—that the system would know and personalize an experience to the degree that it would feel like a magic hand guiding your experience. It would actually change the UI on the fly, eliminate any extraneous information, and only present the most relevant options in a timely, simple, and efficient manner.

This is not too difficult to accomplish today.

Let’s say someone is shopping for a very expensive guitar on At checkout the site would automagically present “Ship to store for pick-up” as a default choice because it knows by observing the past behavior of other users, buying expensive guitars, that they would prefer to pick it up at the nearest brick-and-mortar store.

For another example, let’s pretend you’re shopping for a shirt on Amazon.

Amazon already personalizes a whole host of things for you and ought to know your size and color preferences since you have purchased shirts on the site before.

When going to the product detail page, it could pre-select your size, and show you navy, white and checkered shirts first, de-emphasize pink and yellow ones, and not force you to select your size every single time.


Anticipatory design’s promise is the elimination of friction and an increase in efficiency that would greatly improve user experiences, and in turn impact the bottom line. People return to products and services that deliver what they want when they want it.

Our daily interactions with digital systems have reached an unprecedented scale. Yet many of these interactions are stifled with friction and subsequent feelings of frustration.

There is a real need for customization and personalization on a grander scale that would delight users, and simplify their lives.

Take self-serve transportation ticketing machines, where commuters can refill commuter cards.

They’re still designed to be dumb – driven by user input in which everyone is taken through the same frustrating plethora of options.

One could easily imagine a much improved, more personalized system, where refill history could be stored on your card.

Instead of countless requests for input: select this option first, then select this other option, and so on, the entire interaction could start with you inserting the card you always refill and the system would immediately display, “Hello, would you like to refill this card with $20, using your Mastercard?”

The next step would be to pay and go.

It would cut down the time needed to refill cards by at least 75 percent, increase efficiency, move people along faster, and subsequently make them more satisfied.

This is already possible, yet I don’t know of a single ticketing machine that does this.

A “dumb” user interface that requires a lot of input vs. one that’s “anticipatory”?

Interfaces of the future.

When AI becomes more pervasive, a higher degree of personalization will enable a higher level of anticipatory design.

Based on all kinds of user authorized behavioral tracking – purchase histories, preferences, etc., the system would recognise you, and with a high degree of certainty predict what your next choice might be.

The lack of anticipatory design is surprising given that technologies exist today that would make doing so not that challenging.

Some companies are already practicing early forms of anticipatory design. Two examples are Google Now and Uber.

Google Now

The Google Now app is one of the more ambitious evolutions of Google’s search software. The idea is simple — predict what you’ll want or need to know before you know you need or want it, and serve it up in an easy-to-read card-based format.

Google’s data mining capabilities are second to none. It knows who you are, and it can display cards with personalized, location-aware information, such as calendar events, local weather, news, stock prices, flights, boarding passes, hotel’s, photo spots nearby, and more. It also tells you how long it will take you to get home from work, based on current traffic conditions.

If Google doesn’t think you need something at the moment, it won’t be displayed. It’s the embodiment of anticipatory design.


In the Uber app, when you take a trip somewhere it will provide a return button on a subsequent launch of the app because there is a 90 percent chance you would want to return to your original destination. No need to specify pickup and drop-off locations. Brilliant.

The Uber app gives users a quick shortcut to “Return” when it’s launched shortly after completing a trip

The times they are a-changin’.

Things are evolving to natural interaction methods.

In a not too distant future, our input will be more effortless.

We’ll have augmented and virtual reality with interaction methods, such as voice, gesture tracking, eye tracking, and speech. Google is already working on it. It’s called Project Soli.

Anticipatory design methods, assisted by AI and machine learning, will deliver experiences on an entirely better level.

How do we bring anticipatory design into play?

There is no magic wand, uttering “abracadabra,” so how do we design for those magic moments now? What are the steps we can take today to deliver those magic moments, using anticipatory design?

Sophisticated, personalized algorithms at work on Metromile create a sense of being anticipatory and incredibly useful to customers (prevent parking tickets)

Until we have incredibly sophisticated predictive algorithms, fully developed AI, and machine learning, businesses can mine existing data for personalization opportunities thereby reducing potential pain points and barriers.

They can also fully engage the user-centered design process, employ deep research, extensive user-testing, and use tools, like an open-source software library, for machine intelligence, such as Tensorflow.

Deep research will tell us a lot—contextual observation perhaps or ethnographic studies—where we could observe what users are inclined to do from moment-to-moment in their flow. We could map these user journeys step-by-step, and design the interaction accordingly.

The ideal outcome of applying such data mining and personalization, coupled with user-centered design methods, would create fluid and seamless anticipatory experiences that would please customers and generate loyalty by having things appear as if by magic.

It would advance the state of the art of user experience and create a win-win situation for both businesses and users, offering deeper customer satisfaction that positively impacts the bottom-line.

This article originally appeared on Toptal.