Calix Huang
← BackIntroducing Bloom
Introducing Bloom

Re-imagining personalized learning at scale.

Nov 27 2023 in #projects

Personalized learning has been the gold standard of education that many institutions have strived towards for decades. The idea of having the content and delivery of educational curriculums be personalized for students has been an ideal, but unattainable vision for teachers across the globe. The problem? Personalized learning does not scale well.

The only method of personalized learning that has succeeded is in one-to-one or one-to-few teaching scenarios, where any one instructor is responsible for teaching a manageable number of learners. Though this has been successful, not every learner has the financial means or opportunity to have a personal instructor.

Currently, personalized learning at scale is only tackled by ambitious teachers, trying to personalize their class’s curriculum. This usually ends up leaving the teacher overloaded, overwhelmed, and burnt out. There’s no proper infrastructure for teachers to personalize their curriculums for their students, let alone platforms for the average consumer learner to have personalized curriculums created and managed for them.

TLDR; Personalized learning lacks the customizable infrastructure to optimize educational content towards individual learners.

Introducing Bloom, a speculative re-imagining of personalized learning at scale. Bloom is a learning platform that accommodates all of an individual learner’s needs to create a curriculum that changes and personalizes to the learner as they make progress. Every learner has their own learning preferences, assessment preferences, learning goals, and specifications on what they want to learn, and Bloom uses all of this information to personalize educational curriculums to you.

Here’s how you create a personalized course on Bloom:

  1. Describe a topic you want to learn about
  2. Upload any existing content to use in the personalized course
  3. Specify your learning and assessment preferences
  4. Specify your existing knowledge level
  5. Specify your learning goals
  6. Customize the course structure
  7. Receive your personalized course

Once you have your own personalized course, you can start learning! There are a few nuances attached to each course on Bloom that makes it truly personalized to the user, without creating a confusing user experience.


Courses on Bloom are made up of modules and lessons, similar to other online learning platforms. But on Bloom, the next module in your course is only generated once you finish the previous module. This allows for the course to be personalized as you complete it, as the content within modules will be generated based on your level of knowledge of the various concepts in the course. Concepts you struggle with will be emphasized more, whereas concepts you’re comfortable with will not be emphasized as much.

The lessons within each module are optimized for evaluating your knowledge, and understanding your strengths and weaknesses. Lessons are frequently embedded with quiz questions to test your understanding, and before you complete each lesson you must rate how comfortable you are with the information taught in the lesson. Any concepts you’re struggling with can be self-reported, all of which is taken into account when module reviews and assessments are generated.

Overall, Bloom courses are architected to be very fluid. Bloom collects as much information as possible about your knowledge level, and uses that to personalize the course content to your needs. With the information collected while creating your course and the frequent assessment of your knowledge level throughout the course, Bloom can modify your course so that you will have achieved all of your learning goals by the time you’ve completed it.


Throughout my moodboarding process, I was imagining a minimalistic, classic design with a light style, serif fonts, and clean layouts. Online learning platforms require a lot of multi-modal content to be served, inevitably guaranteeing a semi-overwhelming interface. With this in mind, I wanted to make sure the platform was minimalistic, ensuring the user wouldn’t be further overwhelmed with unnecessary illustrations, animations, or colors.



The first iteration of the brand system for Bloom (formerly Sprout) followed closely in the footsteps of the initial moodboard, highlighting serif fonts but keeping a sans body font to make sure the body of each lesson is standard and readable.


I wasn’t quite happy with the Sprout branding. Even though it contained the main elements I wanted from my moodboard, the color seemed too common and the logo icon was pretty basic and lacked meaning. After a lot of design inspiration and help from friends, I was able to change the name and brand to Bloom. Using Airbnb as inspiration, I selected a similar color and font for a clean, readable aesthetic that still contained a bold color.


High fidelity prototype

The high-fidelity prototype (view on Figma) is made up of two main flows: creating a course and taking a course.

The course creation flow is designed to add a significant amount of friction, forcing the user to put thought into their answers. There are quite a few questions that the user needs to answer to create a personalized course, so each question is displayed in a different “step” of the process allowing the user to focus on one answer at a time.

At the end of the initial question answering, the structure of modules is generated and available for the user to customize for themselves. This gives the user autonomy over what they choose to learn, keeping their own personal learning goals in mind. Multiple modalities of modification are available for the user to make both large or small changes - they can either manually edit/delete modules or chat with an assistant to add new modules.

The course experience is designed to follow similar design standards as other MOOC (massive open online course) platforms like Udemy and Coursera to highlight the lesson content while giving easy access to the course structure. Many of the AI-based personalizations are done behind the curtains in the JIT (just-in-time) module generation. User-driven actions are subtly integrated into the existing interface, and can be expanded upon being triggered.

Here are a few feature highlights of the course experience:

Multimodal embedded assessments


Assessments are multimodal and embedded. There are multiple forms of assessment that learners can be tested with, including multiple choice, checkboxes, long answer, audio/speech based, and project based.


Upon incorrect answers, Bloom is able to provide real-time feedback on your answer and give subtle hints to gear you towards a more holistic answer.


These assessments can be embedded directly into lessons, allowing users to solidify their knowledge during each lesson. They can also be re-generated (similar to ChatGPT) and learners are able to generate more assessment questions on demand if they decide to further test their understanding.

Suggested resources


To support the learner’s curiosity, curated resources are provided at the end of each lesson, allowing the user to personally explore the lesson content deeper.

User learning feedback loops


Personalized experiences are built on top of user feedback loops, and personalized learning is no exception. Bloom courses are designed to take in as much feedback as possible. All assessment results are used in the course’s personalization, giving clear indication as to which concepts the user excels and struggles with. At the end of each lesson, the learner is required to self-evaluate their knowledge of the respective lesson content, with the option to self-identify what they’re struggling with. This information is used to customize future lesson content to support the user in their weaker concepts and remove unnecessary content that the user is comfortable with already. This personalization cycle allows the course to be formatted towards what the learner needs to fully understand the material while allowing them to feel like they’re making progress.

Personalized module reviews & assessments


At the end of each module, a review of each lesson inside the module is created for the learner. A score is generated for each lesson, measuring the learner’s grasp of each lesson. Based on the learner’s score for any given lesson, supportive material is given to clear any confusions they may have before taking their module assessment.


After the module review, the learner must take the module assessment to test their understanding and finish the module. The questions are geared towards verifying their strong areas of knowledge, as well as instructing them on weaker areas of knowledge.

AI-enhanced learning


Inspired by Notion’s integration of AI, you can easily highlight any text in any lesson and select an AI-driven action to perform on that text. For example, you can highlight a paragraph that may sound confusing and simplify it. Another example, you can ask for a metaphor/analogy to convey a specific concept that may be confusing.


For larger AI-driven actions, Bloom provides a command bar that can be easily accessed on any lesson (except assessments) to simplify lesson content, answer questions, and support the learner in any way possible. The command bar interface also opens the door for an actions marketplace in the future, allowing third-party developers to build custom integrated actions for learners.


Personalized learning at scale is something that could help students and learners overall make huge strides in their personal and professional lives. Most commonly, personalized learning has been a concept promoted and experimented with inside of classrooms, but learners of all ages and backgrounds have huge potential to benefit from it as well.

Bloom was an interesting look into what generalized infrastructure for personalized learning could look like for consumer learners, and what an optimized personalized learning experience could look like. I still believe that in-person and immersive learning experiences provide a separate dimension of education, but in our now digital-native world, the possibility for a platform like Bloom to be built and distributed becomes more feasible every day.