I open my phone to a notification, claiming that I didn’t do enough language lessons. In fact, I dropped down a “League,” because of it. I try to be encouraged by this—I can do better next time—but instead, I find myself avoiding the app. What’s the point, if I have to compete against others that have more time on their hands? Am I not good enough of a learner?
Duolingo is a popular language-learning app. Its methods are undoubtedly effective: it has more than 50 million active users. As someone interested in learning languages, I found the app to be whimsical and inviting. However, one thing stood out—the use of “Leagues.” Leagues are where users can compete against each other, in a mad dash to gain the most "XP."
While I found this feature to be effective in some ways, I wondered:
How might we expand Duolingo's "default" learning methods to incorporate more learning styles? Is there some way to go beyond the league framework?
Before starting my project journey, I wanted to interview a variety of Duolingo users to better understand their experiences. I came out of the interview process with a couple of important trends and insights:
These insights helped me better understand the motivations and needs of Duolingo users. They are self-motivated, but find it helpful to work in collaboration with others; this differs from the Leagues, which is why they don't often use that feature.
After reviewing my trends and insights, I was able to come up with a more solidified people problem to encompass the feelings of my interviewees:
As someone that uses multiple different learning methods, I want to be able to learn as effectively as possible through personal goals and fun collaboration with others! But I can’t do this well because…
1. It can get stressful to constantly be pressured to compete with others, instead of working alone or in a more collaborative format.
2. There is not a space in which I can work with my friends in a way that we can encourage each other and keep one another accountable.
After coming up with the people problem, I recruited two of my friends to help me brainstorm different ideas to address it. This was a quick and easy way to explore the solution space and many possible concepts (thank you Joy and Katie!).
Once we brainstormed as many ideas as possible, we organized them into three main categories that would become my primary opportunity areas:
1. Learning systems and styles
What are different ways in which we can incorporate more learning styles into the app?
2. Social/Community Engagement
How can we get users to interact with more parts of the app?
3. Rewards and progress
What can we do to make sure users are motivated to keep coming back and to further their learning?
Narrowing down our thoughts into these three categories then gave me a chance to brainstorm more specific solutions that would cover these opportunity areas.
Based on the opportunity areas that I identified, I focused on determining specific feature ideas that I particularly liked. This resulted in three potential solutions: team leagues, group lesson plans, and individual lesson plans.
My first feature idea explored the current League system to see if it could be more collaborative. However, after analysis, this seemed like one of the least feasible options. Programming/development effort has to be taken into account, and it did not fully align with my people problem (still has a competitive aspect!).
My next feature was the idea of group lesson plans, which I found would be a good balance between individual work and collaboration. While the feasibility was medium, impact seemed high.
The last feature that I explored was individual lesson plans. This was an interesting idea, and feasibility wise it didn't seem incredibly intense. However, going back to my people problem, I really wanted to give users the ability to work with others directly.
At the end of my feasibility and impact analysis, I decided to move forward with the group lesson plan idea. Referencing my initial user research showed me that users really valued working with others, especially for language learning. At the same time, they also appreciated being able to set their own goals. Thus, I thought that the group lesson plan concept was the best of both worlds.
Once I decided to focus on group lesson plans, I moved onto iterating on mid-fidelities. For this feature, I wanted to focus on three main flows: making an individual lesson plan and inviting a friend, receiving the invitation and creating a plan, and viewing the final Friend Plan (as well as encouraging the other person!).
For each of these flows, I made design decisions along the way to refine the UX clarity and visual design.
To begin a Friend Plan, the first user sets their own goals based on their current lesson progress. I experimented with different ways to display a user's progress, as well as how they should select what they would like to complete for their goal.
I moved forward with Option 1 because it was a much clearer way to indicate which lessons the user has left to complete. In addition, it is a more accessible and intuitive way to select what they want to add to their plan.
Once the first user creates their plan, they can invite their friend to join in. In my mid-fidelity iterations, I thought about different ways to represent what a received invitation looked like.
I decided on Option 2, as I thought that it showed the right amount of information regarding a pending plan. I didn't want friends to feel like they were in competition with one another, and displaying the personal goal of the "initiator" may put pressure on the second person to match their commitment.
After both users have created their plans, the final Friend Plan is visible on the "Goals" page. For this section, I thought about what information should be shown to users regarding their own plan, and that of the other person.
I moved forward with Option 2, as it was the right balance of information for the users (not too little and less specific, but not too much so that it's ultra specific). This way, users can easily keep track of their goals while seeing a rough estimate (XP) of where both plan participants are.
As I wrapped up the design process, I made sure to conduct user testing to get feedback about the flows and overall styling of the feature.
The main piece of feedback that I received was actually about button styling; even though the text (for example "Back" and "Next") made the functionality of each button clear, users wanted more differentiation. Thus, I responded by creating more obvious "active" and "inactive" states.
These changes, although small, made a significant difference; the user experience felt clearer, overall. They also allowed me to look at Duolingo's design system through a different lens—design is dynamic and evolving, and it's important to utilize user feedback to improve experiences. Even design systems can and sometimes should change, especially if we have data to back it up.
My final solution is a new concept for learning on Duolingo that goes beyond individual work and a competition-like setting. Goal setting is incredibly important when learning a language, and Friend Plans provides a unique way to do this with friends without the pressure of competition.
The final, major flows are 1. inviting a friend (beginning the plan), 2. receiving an invitation and creating your own plan, and 3. viewing the finalized Friend Plan and providing encouragement.
Duolingo Friend Plans was my very first "real" design case study; something that I created all by myself, on Figma (a brand new tool to me!). Because it is my earliest project, some aspects are a bit "rough around the edges," but they are authentic and come from a place of genuine passion for the design process. While I learned so much during these 3 months, here are some primary lessons and takeaways:
If I had more time, I would try to conduct another round of user testing to get more specific feedback on the flows themselves, especially after I changed the button styling. I would also look back at Duolingo's company objectives to see if there was any way for me to better combine their goals and user goals.
Thank you to my TAs, instructors, and peers from Introduction to Digital Product Design—your guidance, feedback, and encouragement helped me create a finished product that I'm proud of. 🦉
I am in no way affiliated with Duolingo; this is a case study that was created as part of Cornell's Digital Product Design course.