Why did you start your career as a product designer?
First off, let's clarify what product designer means today. In the tech industry, we used to have roles like UX designer, UI designer and visual designer. Some companies call it interaction designer or experience designer. I am not sure exactly how it evolved to product designer, but I guess the reason is that the line between UX and visual design is becoming blurry. So, a product designer is someone who creates new products from scratch or make improvements to existing ones. If you're interested in a deeper dive, I refer you to this article.
The word designer, of course, has a much broader meaning. There are industrial designers, fashion designers, urban designers, architecture designers, interior designers, landscape designers, and so on... In the tech industry, product designers typically create digital products and services – mobile apps, web apps, watch apps, and desktop apps.
Now back to my story. I was a Computer Science major from the college all the way to the graduate school. So my de-facto destiny was to become a software developer :-) Well, no. Turns out that Computer Science has a lot more to offer than hacking computers and writing codes. While I enjoy coding, I discovered my passion in human interfaces when I worked on my undergraduate thesis. I was writing software to recognize hand signs that represent letters and numbers. Although the focus was on computer vision algorithms – extracting the hand from the background, recognizing patterns, etc. – I felt goosebumps when I showed a fist in front of the camera and the computer told me it was zero!! Later, I went on to read some books about the Human Computer Interaction (HCI), I was nothing but fascinated by this field. The seed was planted.
I went to Virginia Tech to attend the graduate school, where I studied HCI extensively. I was exposed to lots of exciting topics and research areas: user-centered design, usability engineering, user research, data visualization, Virtual Reality, Augmented Reality, gesture interfaces, etc. The road was paved.
I love product design. Computers bring us digital products – there was no such thing in 1900. The entire tech industry is built on delivering digital products and services to people! Being a product designer means that I have the privilege of creating new experiences, or improving the existing ones, and showing people how technology can change the quality of our lives.
First off, let's clarify what product designer means today. In the tech industry, we used to have roles like UX designer, UI designer and visual designer. Some companies call it interaction designer or experience designer. I am not sure exactly how it evolved to product designer, but I guess the reason is that the line between UX and visual design is becoming blurry. So, a product designer is someone who creates new products from scratch or make improvements to existing ones. If you're interested in a deeper dive, I refer you to this article.
The word designer, of course, has a much broader meaning. There are industrial designers, fashion designers, urban designers, architecture designers, interior designers, landscape designers, and so on... In the tech industry, product designers typically create digital products and services – mobile apps, web apps, watch apps, and desktop apps.
Now back to my story. I was a Computer Science major from the college all the way to the graduate school. So my de-facto destiny was to become a software developer :-) Well, no. Turns out that Computer Science has a lot more to offer than hacking computers and writing codes. While I enjoy coding, I discovered my passion in human interfaces when I worked on my undergraduate thesis. I was writing software to recognize hand signs that represent letters and numbers. Although the focus was on computer vision algorithms – extracting the hand from the background, recognizing patterns, etc. – I felt goosebumps when I showed a fist in front of the camera and the computer told me it was zero!! Later, I went on to read some books about the Human Computer Interaction (HCI), I was nothing but fascinated by this field. The seed was planted.
I went to Virginia Tech to attend the graduate school, where I studied HCI extensively. I was exposed to lots of exciting topics and research areas: user-centered design, usability engineering, user research, data visualization, Virtual Reality, Augmented Reality, gesture interfaces, etc. The road was paved.
I love product design. Computers bring us digital products – there was no such thing in 1900. The entire tech industry is built on delivering digital products and services to people! Being a product designer means that I have the privilege of creating new experiences, or improving the existing ones, and showing people how technology can change the quality of our lives.
What does product design mean to you?
It varies person by person, but for me, product design means three things.
First, understanding users.
The first principle of product design is to solve customers' problems. A product will fail to survive if it doesn't solve anyone's problem, regardless of how well it appears. So, in the essence, product design is a problem solving process. And I believe to solve a problem, we first need to understand those who are having the problem because they will be the customers of the product we create.
Understanding users is harder than it sounds, because it requires us to really let go many of our assumptions, be great at asking the right questions, be curious, be empathetic, be patient, and be scientific. And it carries from the conception of an idea all the way to shipping the product, and it continues. At the beginning, it's critical to understand what the user's needs are, what they are doing to meet the needs, and what the challenges are with the old solutions. When we launch the version 1, version 2 and so on – or even just a little new feature – it's key to understand if the product meets the user's needs, solves their problems, and how they use it. The findings will help us validate or invalidate some hypotheses.
Second, creating solutions.
This is self-explanatory. Being a product designer means creating new products or improving the existing ones, and delivering useful and delightful experience to customers. I found User Experience (UX) a much misinterpreted term. Most noticeably, people equals UX to veneering. But creating solutions involves a lot more than designing the interfaces. Imagine a mobile app as a series of screens that connect your whole experience together.
Product designers make decisions on what the screens are, how they are connected (i.e. when you click on this, go to the next screen), what content gets displayed on a screen, what actions users do, and how the content change in response to a user action. We call these interaction design.
Product designers also make decisions on layout, typography, color, shading, icon, graphics, and so forth. We call these visual design.
Sometimes, product designers make decisions on copywriting, i.e. the texts users read in a product. For example, does a button use "Submit" or "Send"? What are the links on the nav bar and the footer? What is the placeholder in a text box? Most companies have copywriters to specialize on copy, with whom product designers partner for content design.
Third, making users happy.
I am not talking about great customer service. Of course, customer service must be awesome to make users happy. I am really happy when I can easily return a defective product to Amazon and receive a refund in 1 or 2 days.
But making users happy goes way beyond customer service, and product designers can contribute significantly to it. It's important to realize that user experience is not just when customers use your website or app. It's the whole thing that matters. It's the experience of being your user: hear about your product from social media, ads or friends; learn about the product; use it; talk to customer service; ask a question; request a new feature; give feedback to your product; introduce your product to others; get surprising perks of being a user (e.g. thank you card, little goodies, etc.). The only upper limit to how great the user experience can be is our imagination.
Happy users will love your product. Users who love your product will most likely tell others about it. Pay attention to nitty gritty details, and capture as many opportunities as possible to make users smile. A cute icon. A funny line of message. An eye-catching gif. An emoji. A subtle animation. All of these, added together and applied properly, make users smile and remember you.
I found this particularly important for the new product that users never heard of before. The biggest enemy to the new product is not competitors. It's no one giving a shit. So, whoever takes extra efforts to make users happy is more likely to win.
It varies person by person, but for me, product design means three things.
First, understanding users.
The first principle of product design is to solve customers' problems. A product will fail to survive if it doesn't solve anyone's problem, regardless of how well it appears. So, in the essence, product design is a problem solving process. And I believe to solve a problem, we first need to understand those who are having the problem because they will be the customers of the product we create.
Understanding users is harder than it sounds, because it requires us to really let go many of our assumptions, be great at asking the right questions, be curious, be empathetic, be patient, and be scientific. And it carries from the conception of an idea all the way to shipping the product, and it continues. At the beginning, it's critical to understand what the user's needs are, what they are doing to meet the needs, and what the challenges are with the old solutions. When we launch the version 1, version 2 and so on – or even just a little new feature – it's key to understand if the product meets the user's needs, solves their problems, and how they use it. The findings will help us validate or invalidate some hypotheses.
Second, creating solutions.
This is self-explanatory. Being a product designer means creating new products or improving the existing ones, and delivering useful and delightful experience to customers. I found User Experience (UX) a much misinterpreted term. Most noticeably, people equals UX to veneering. But creating solutions involves a lot more than designing the interfaces. Imagine a mobile app as a series of screens that connect your whole experience together.
Product designers make decisions on what the screens are, how they are connected (i.e. when you click on this, go to the next screen), what content gets displayed on a screen, what actions users do, and how the content change in response to a user action. We call these interaction design.
Product designers also make decisions on layout, typography, color, shading, icon, graphics, and so forth. We call these visual design.
Sometimes, product designers make decisions on copywriting, i.e. the texts users read in a product. For example, does a button use "Submit" or "Send"? What are the links on the nav bar and the footer? What is the placeholder in a text box? Most companies have copywriters to specialize on copy, with whom product designers partner for content design.
Third, making users happy.
I am not talking about great customer service. Of course, customer service must be awesome to make users happy. I am really happy when I can easily return a defective product to Amazon and receive a refund in 1 or 2 days.
But making users happy goes way beyond customer service, and product designers can contribute significantly to it. It's important to realize that user experience is not just when customers use your website or app. It's the whole thing that matters. It's the experience of being your user: hear about your product from social media, ads or friends; learn about the product; use it; talk to customer service; ask a question; request a new feature; give feedback to your product; introduce your product to others; get surprising perks of being a user (e.g. thank you card, little goodies, etc.). The only upper limit to how great the user experience can be is our imagination.
Happy users will love your product. Users who love your product will most likely tell others about it. Pay attention to nitty gritty details, and capture as many opportunities as possible to make users smile. A cute icon. A funny line of message. An eye-catching gif. An emoji. A subtle animation. All of these, added together and applied properly, make users smile and remember you.
I found this particularly important for the new product that users never heard of before. The biggest enemy to the new product is not competitors. It's no one giving a shit. So, whoever takes extra efforts to make users happy is more likely to win.
What is your product design process?
At a highly general level, human-centered design (HCD). You can download the IDEO HCD toolkit below – I highly recommend it for junior designers. The execution is more fluid, though, varying from project to project. Whether it's creating a completely new product from the scratch, or it's making incremental improvements to an existing products. Whether it's about creating interaction flows, or polishing the visual interfaces. The Design Sprint from Google Ventures is a great strategy to execute design, and I believe it fits well for both startups and big corporations.
At a highly general level, human-centered design (HCD). You can download the IDEO HCD toolkit below – I highly recommend it for junior designers. The execution is more fluid, though, varying from project to project. Whether it's creating a completely new product from the scratch, or it's making incremental improvements to an existing products. Whether it's about creating interaction flows, or polishing the visual interfaces. The Design Sprint from Google Ventures is a great strategy to execute design, and I believe it fits well for both startups and big corporations.
Product design is a problem solving process. So I typically start with analyzing the problem space and understanding what problem I am solving, who are the users I am solving for, why it is an important problem to solve, and what values I will bring to the users. This typically involves user interviews (informal chat, formal interview, focus group, field study, etc.), observation, and research. And sometimes, it takes good instincts. Understanding users is super, super critical to creating a useful and valuable products. Even if the goal is to make a little improvement to the existing product, it's great to understand how it brings value to users. I learned to make as few assumptions as possible, because assumptions make designers harder to put themselves in the user's shoes.
As I build up the understanding of the problem and the user, I and my partners in design and product management run brainstorming sessions to map the user needs to the user flows. This is the time when the product is conceptualized and visualized. We typically end up with user storyboards, tons of post-it notes and sketches. We have a good grasp of what jobs users will get done with the product, and a step-by-step plan of how we help them get the jobs done.
The next step is to make wireframes and then high-fidelity mocks to visualize the user flows and explore a number of design options. Different designers have preferences over different tools to make wireframes and mocks. I personally like Keynote, Sketch, Photoshop and Illustrator. The key goals of this process are
This is a highly iterative process where all stakeholders are involved. Loads of ideas are born and killed during the iterations – which designers do not always get enough credits for :) Well, it's understandable because the users only see the final product and it's not their job to contemplate the behind-the-scene efforts anyways. The good news is most companies today have figured this out – and I highly doubt the survivability of those who haven't. The beautiful thing about wireframes and mocks is that it's extremely easy to make many alternatives, comparing to writing code to implement them. With tools like Invision and Zeplin, we can "fake" the end product with high-fidelity, clickable mocks (or prototypes, if you may).
Some designers, like me, code prototypes directly, and later ship the code to the production repo (onto Github). The practice varies from companies to companies. I enjoy coding prototypes with HTML, CSS and JavaScript. I found it an effective way to collaborate with engineers, because otherwise, engineers have to write the HTML and CSS to match your design mocks. That slows down product launching. I know designers without a technical background may find coding daunting. But for designers I mentored and coached before, I empowered everyone to go beyond their comfort zone and learn coding.
Launching a private beta is always useful before everyone sees the new product. This is the time I partner with user researchers – or sometimes be a researcher myself – to observe how users react to the product, collect and document feedback, and later on propose bug fixes and enhancements.
Another tremendously useful way to learn how customers use the product is partnering with the data science team. I suppose most companies use one or more tools to track user activities (not just page views). At SproutUp, for example, we used Mixpanel, Intercom and Google Analytics. I found it very useful to think about and document the key metrics you, as a product designer, cares about. Then make sure the metrics are measured in the production code. Data can objectively inform you whether the customers use the product as the way it's designed. For example, if you want users to click on a button but users rarely click, it means something is wrong with the design – either flow or visual.
As I build up the understanding of the problem and the user, I and my partners in design and product management run brainstorming sessions to map the user needs to the user flows. This is the time when the product is conceptualized and visualized. We typically end up with user storyboards, tons of post-it notes and sketches. We have a good grasp of what jobs users will get done with the product, and a step-by-step plan of how we help them get the jobs done.
The next step is to make wireframes and then high-fidelity mocks to visualize the user flows and explore a number of design options. Different designers have preferences over different tools to make wireframes and mocks. I personally like Keynote, Sketch, Photoshop and Illustrator. The key goals of this process are
- Clearly show the visual layout and information architecture of each screen. Information architecture is a design jargon. Simply put, it's what content users see on a screen at the abstract level, say, a photo gallery, a title, a subtitle, a description, three buttons, etc.
- Clearly show the user workflows, screen by screen. For example, what happens when users click on this button or that icon?
- Explore several design options before coming to a conclusion.
- Assembly high-fidelity mocks and collect feedback from other teams: product management, engineering, marketing, etc.
This is a highly iterative process where all stakeholders are involved. Loads of ideas are born and killed during the iterations – which designers do not always get enough credits for :) Well, it's understandable because the users only see the final product and it's not their job to contemplate the behind-the-scene efforts anyways. The good news is most companies today have figured this out – and I highly doubt the survivability of those who haven't. The beautiful thing about wireframes and mocks is that it's extremely easy to make many alternatives, comparing to writing code to implement them. With tools like Invision and Zeplin, we can "fake" the end product with high-fidelity, clickable mocks (or prototypes, if you may).
Some designers, like me, code prototypes directly, and later ship the code to the production repo (onto Github). The practice varies from companies to companies. I enjoy coding prototypes with HTML, CSS and JavaScript. I found it an effective way to collaborate with engineers, because otherwise, engineers have to write the HTML and CSS to match your design mocks. That slows down product launching. I know designers without a technical background may find coding daunting. But for designers I mentored and coached before, I empowered everyone to go beyond their comfort zone and learn coding.
Launching a private beta is always useful before everyone sees the new product. This is the time I partner with user researchers – or sometimes be a researcher myself – to observe how users react to the product, collect and document feedback, and later on propose bug fixes and enhancements.
Another tremendously useful way to learn how customers use the product is partnering with the data science team. I suppose most companies use one or more tools to track user activities (not just page views). At SproutUp, for example, we used Mixpanel, Intercom and Google Analytics. I found it very useful to think about and document the key metrics you, as a product designer, cares about. Then make sure the metrics are measured in the production code. Data can objectively inform you whether the customers use the product as the way it's designed. For example, if you want users to click on a button but users rarely click, it means something is wrong with the design – either flow or visual.
In product design, what are you good and bad at?
First off, I am good at big picture – product vision, roadmap and impact on business, revenue and growth. I learned it from my entrepreneurial journey. Then on the design side, I am a fullstack product designer and I am good at executing the end-to-end user experience and visual design.
I am good at talking with users and understanding their needs and difficulties. I'd like to share a useful tip, because I found inexperienced designers constantly make mistakes on this. Do not sell your product or idea to the user. Our job is not to sell the idea to customers and ask them what they think. They don't know until they see the product. Do not ask "if there is a product like [ this, blah blah blah ], will you buy it?". You'll never get the true answer until you launch the product and customers take a credit card out. Our job is to understand customers' needs. Find a way to get customers talk and share their personal stories with you.
I am a visual person and I am good at creating wireframes and mocks, either with design tools or programming languages. I am good at details and I pay a lot attention to details. I have a good sense of visual aesthetic, when it comes to picking typography, color, alignment, spacing, shape, shadow, opacity, transition, animation, and so forth.
I am okay at writing copy and I enjoy sharpening my writing skills.
Comparatively, my weak chop is graphic design. I am so amazed by the talented designers who create the mind-blowing icons, illustrations, cartoons and characters. And I keep learning from them.
First off, I am good at big picture – product vision, roadmap and impact on business, revenue and growth. I learned it from my entrepreneurial journey. Then on the design side, I am a fullstack product designer and I am good at executing the end-to-end user experience and visual design.
I am good at talking with users and understanding their needs and difficulties. I'd like to share a useful tip, because I found inexperienced designers constantly make mistakes on this. Do not sell your product or idea to the user. Our job is not to sell the idea to customers and ask them what they think. They don't know until they see the product. Do not ask "if there is a product like [ this, blah blah blah ], will you buy it?". You'll never get the true answer until you launch the product and customers take a credit card out. Our job is to understand customers' needs. Find a way to get customers talk and share their personal stories with you.
I am a visual person and I am good at creating wireframes and mocks, either with design tools or programming languages. I am good at details and I pay a lot attention to details. I have a good sense of visual aesthetic, when it comes to picking typography, color, alignment, spacing, shape, shadow, opacity, transition, animation, and so forth.
I am okay at writing copy and I enjoy sharpening my writing skills.
Comparatively, my weak chop is graphic design. I am so amazed by the talented designers who create the mind-blowing icons, illustrations, cartoons and characters. And I keep learning from them.
What's your favorite websites or apps?
Oh gosh. I am not really good at answering "what's your favorite X", mainly because 1) this is not how I rank things and 2) you can't compare apple to orange. I love products that are useful and beautiful, and apparently, it depends on the context. I use Uber if I need a taxi. I use Amazon if I need to scan a barcode and find out the price. I use Dropbox everyday. But it doesn't mean that I favor Uber over Amazon, or Dropbox over Uber. All of them are great apps and extremely helpful in its intended use case.
Similarly, I don't know who is my favorite football player or movie star. Nor what is my favorite TV shows. Favorite is a state of experience and human experiences are highly fluid (for anyone interested, I recommend Stumbling on Happiness).
If you are curious what apps I installed on my phone, here you go. I have three pages of highly curated apps. For some apps, I use them everyday. For others, I don't use them on daily basis but they are necessary and useful when it comes to their intended use cases – for instance, I use Office Lens to scan documents or whiteboards. For the rest, I wish I could remove them but they are built in in the iOS.
Oh gosh. I am not really good at answering "what's your favorite X", mainly because 1) this is not how I rank things and 2) you can't compare apple to orange. I love products that are useful and beautiful, and apparently, it depends on the context. I use Uber if I need a taxi. I use Amazon if I need to scan a barcode and find out the price. I use Dropbox everyday. But it doesn't mean that I favor Uber over Amazon, or Dropbox over Uber. All of them are great apps and extremely helpful in its intended use case.
Similarly, I don't know who is my favorite football player or movie star. Nor what is my favorite TV shows. Favorite is a state of experience and human experiences are highly fluid (for anyone interested, I recommend Stumbling on Happiness).
If you are curious what apps I installed on my phone, here you go. I have three pages of highly curated apps. For some apps, I use them everyday. For others, I don't use them on daily basis but they are necessary and useful when it comes to their intended use cases – for instance, I use Office Lens to scan documents or whiteboards. For the rest, I wish I could remove them but they are built in in the iOS.
I picked apps with two criteria: 1) the usefulness, and 2) the design. Usefulness is my top consideration, because if I find no personal use of an app, it doesn't matter how beautiful it appears. I'll throw two examples.
Wealthfront. Wealthfront is "the most tax-efficient, low-cost, hassle-free way to invest". I like to make my life effortless, and speaking of personal investment, Wealthfront is the best tool I know that makes it effortless. I love Wealthfront for two reasons.
Wealthfront. Wealthfront is "the most tax-efficient, low-cost, hassle-free way to invest". I like to make my life effortless, and speaking of personal investment, Wealthfront is the best tool I know that makes it effortless. I love Wealthfront for two reasons.
- It makes investment extremely simple. Investment involves extremely complex activities – rebalancing, dividend reinvestment, portfolio diversification, direct indexing, tax-loss harvesting, etc. Professional investment management companies do these all the time at very high cost, so their services are accessible only to a small amount of people. Wealthfront, with its scalable technologies, makes it accessible, simple and low-cost for everyone. In fact, I don't need to do anything. All I need is to put money in my account, set a risk score (1 to 10) that works for me, leave it and forget it. Wealthfront takes care of everything and shows me only the most important information I care as an investor: how much money I have and what is the return.
- Because Wealthfront is so great at hiding complexity and revealing simplicity, the app is super simple and beautiful. There are only a handful of things you can do with it, and not surprisingly, none of them seems superfluous. It just works. It just gets all what users need done.
Square Cash. Square Cash is one of the most beautifully designed apps. Every single detail is well crafted. For example, the subtle animation on the digit when you enter the amount is visually appealing. Not to mention functionality wise, it's so easy to send or receive money from someone. The $Cashtag is a brilliant idea – the best proof is that PayPal stole it and launched PayPal.Me.
What books do you recommend to junior designers?
I assume you have had certain level of mastery of the basics from schools or design gigs. So, instead of pointing to the "design classics", I'd love to recommend books that perhaps won't directly hone your design skills, but will definitely shape you, yourself, to a better thinker, listener, writer, leader – overall, a better person. Then you're ready to become better at anything you choose to do, including design.
That said, I found a few design books fun to read over and over again, and handy to keep them on my bookshelf.
And if they are not sufficient for you? Don't worry, goodreads.com has a list of Must Read UX Books. Go voracious!!
I assume you have had certain level of mastery of the basics from schools or design gigs. So, instead of pointing to the "design classics", I'd love to recommend books that perhaps won't directly hone your design skills, but will definitely shape you, yourself, to a better thinker, listener, writer, leader – overall, a better person. Then you're ready to become better at anything you choose to do, including design.
- Ego Is The Enemy by Ryan Holiday.
- Thinking, Fast and Slow by Daniel Kahneman.
- Influence: The Psychology of Persuasion by Robert B. Cialdini.
- The Tipping Point: How Little Things Can Make a Big Difference by Malcolm Gladwell.
- Awaken The Giant Within by Tony Robbins.
- On Writing Well: The Classic Guide to Writing Nonfiction by William Zinsser.
- Insanely Simple: The Obsession That Drives Apple's Success by Ken Segall.
- Creativity Inc. by Ed Catmull.
That said, I found a few design books fun to read over and over again, and handy to keep them on my bookshelf.
- The Design Of Everyday Things by Don Norman.
- About Face: The Essential Of Interaction Design by Alan Cooper.
- Emotional Design: Why We Love (or Hate) Everyday Things by Don Norman.
- Sketching User Experiences: Getting the Design Right and the Right Design by Bill Buxton.
And if they are not sufficient for you? Don't worry, goodreads.com has a list of Must Read UX Books. Go voracious!!
What do you think about "Simplicity"?
My interpretation of simplicity is being useful in as easy a way as possible. Two important concepts here are useful, and easy. Simplicity is not about removing as many things as possible from the surface. I think it's about making a product very useful, and making it very easy for users to use. In other words, it's about solving a problem with a simple and elegant solution.
The first principle is, a product must solve a customer problem. It's tricky to talk about simplicity without referring to this context. Note that the customer problem is highly contextual. An elegant solution for a professional trader may be complicated for an amateurish investor. A top-rated iPad app for a general contractor may be difficult to use for an interior designer. So, the first step to achieve simplicity is to fully understand the problem space. In particular, the complexity of the space. Many spaces are inherently complex, involving workflows orders of magnitude more sophisticated than checking your local weather or setting an alarm to wake up your finger in the morning.
I believe that the only way to create a simplistic solution is to understand and appreciate the complexities in the problem space. Then we can use our creativity power to reduce complexities and create solutions to solve the problem. We cannot achieve this only by showing as few things as possible. For an (extreme) example, a personal financial app can show only a few words like "Your Total Asset is $24,029,200.38". (I am not saying this is my account.) This is not simplicity. This is uselessness. Because it doesn't solve any real user problems in the personal financial management space. The user may want to see a detailed breakdown of all her accounts, manager her investment portfolio, set and track her monthly budget, get advices on way to save, and so on. Each problem is complicated, but our job is to explore various options and achieve a simple and elegant solution to help the user solve the problem.
Another note that we may occasionally overlook is, simplicity has to be approached in a realistic way. Otherwise, it's day dreaming. A simplistic solution to make a mean pizza, for instance, is to throw flours, veggies and spices (or anything else you like) into a magic oven and say "make me a pizza". But it's more of a fiction than a solution. In a data analytics app, it'd be magical to drag in an excel sheet and get all visualizations and KPI's right away. But it's technically unfeasible.
So, in addition to fully understanding the complexities in the problem space, it's equally important to realize the complexities in the solutions – what the technology enable us to do today, where it can lead us to tomorrow, what is the limit, what are the constraints.
My interpretation of simplicity is being useful in as easy a way as possible. Two important concepts here are useful, and easy. Simplicity is not about removing as many things as possible from the surface. I think it's about making a product very useful, and making it very easy for users to use. In other words, it's about solving a problem with a simple and elegant solution.
The first principle is, a product must solve a customer problem. It's tricky to talk about simplicity without referring to this context. Note that the customer problem is highly contextual. An elegant solution for a professional trader may be complicated for an amateurish investor. A top-rated iPad app for a general contractor may be difficult to use for an interior designer. So, the first step to achieve simplicity is to fully understand the problem space. In particular, the complexity of the space. Many spaces are inherently complex, involving workflows orders of magnitude more sophisticated than checking your local weather or setting an alarm to wake up your finger in the morning.
I believe that the only way to create a simplistic solution is to understand and appreciate the complexities in the problem space. Then we can use our creativity power to reduce complexities and create solutions to solve the problem. We cannot achieve this only by showing as few things as possible. For an (extreme) example, a personal financial app can show only a few words like "Your Total Asset is $24,029,200.38". (I am not saying this is my account.) This is not simplicity. This is uselessness. Because it doesn't solve any real user problems in the personal financial management space. The user may want to see a detailed breakdown of all her accounts, manager her investment portfolio, set and track her monthly budget, get advices on way to save, and so on. Each problem is complicated, but our job is to explore various options and achieve a simple and elegant solution to help the user solve the problem.
Another note that we may occasionally overlook is, simplicity has to be approached in a realistic way. Otherwise, it's day dreaming. A simplistic solution to make a mean pizza, for instance, is to throw flours, veggies and spices (or anything else you like) into a magic oven and say "make me a pizza". But it's more of a fiction than a solution. In a data analytics app, it'd be magical to drag in an excel sheet and get all visualizations and KPI's right away. But it's technically unfeasible.
So, in addition to fully understanding the complexities in the problem space, it's equally important to realize the complexities in the solutions – what the technology enable us to do today, where it can lead us to tomorrow, what is the limit, what are the constraints.