iGlossary — Programming Glossary App

In Academy, we use learning framework called CBLChallenge Based Learning” to solve real-world challenges. But in this journal I will not explain more about CBL. Instead, I will share you my solution to my friend’s problem on my frist (one week) solo challenge.


During this Engage Phase, we will move from an abstract big idea to a concrete and actionable challenge using the Essential Questioning process. The goal is to personally connect with academic content through the identification, development, and ownership of a compelling challenge.
- read more




How to help my friend through the academy journey?


Help my friend through the Academy journey

This will be our actionable challenge



In this challenge, our Big Idea is an empathy. so, before I started to investigate my friend to know about her goals, obstacle and needs in Academy, I should know about the basic knowledge of empathy, like…

  • What is a good example of empathy?
  • How do I show empathy to my friend?

After I know the basic knowledge to understanding better how to to show an empathy to my friend, I generate some questions to seek the problem and to understand our challenge better .

  • How to find the real problem?
  • What are my friend’s goals on the learning journey in academy?
  • How to define the achievement of the journey?
  • Why going through journey is important?
  • What are the boundaries of helping my friend?
  • What are my friends main obstacles to be successful in academy journey?
  • What are the things that can help my friend become successful with her academy journey ?
  • And so on…

After interviewed my friend and got some findings, I use it to drew a conclussions to demonstrates a depth of knowledge and make a case of proposed solution.

My friend goals are able to improve her skill especially in people management. She loves to learn by searching more information outside the academy and learn together with friends who can share their knowledge with her.

My friend love all of Academy Chores, but she have difficulty in learning code in detail because it’s not easy to recognize the term in coding..


Based on my general research synthesis I created more specific statement into:

Help my friend to learn code.


From the first synthesis and from more specific questions how to help my friend to learn code, I develop a final research synthesis.

My friend have difficulty to learn code because it’s not easy to recognize the term and my friend prefer learning by visual method with clear step by step process.


I created user persona to developing an accurate picture of my friend. It helps me understanding my friend’s goal and her problem.

user persona


My possible solution for my friend’s problem is…

I will help my friend by collecting programming terms that she has or never heard before including the definitions and sources to learn.

So this is it!

A native IOS APP that can help my friend to understand the term that she doesnt heard before by making a programming glossary including source to learn so she can understand and learn more about it.

This is a solution to the challenge because the main problem with my friend is she’s never been coding before and she doesnt know any of the term.


After I know what I will build, I listed the feature list



I created a task flow to identified a key task my user will complete.


There are three scenarios that my user can choose to see the definition of each programming term

  1. Search the term quickly
  2. Choose the term by the alphabet
  3. Scrolling down all the glossary to see before she selecting the term



Moving from pencil and paper to digital, I used sketch to create prototype


Since I am doing it myself, I don’t think I need to create a design guideline.

My friend is a dark mode user, so I just use all the IOS system color, font and background. It will follow the user system preferences .


This app is about programming glossary, so I called it iGlossary. Since we only have one week to finish this challenge including the development, so I don’t really have much time to ideate the logo, but Menlo font is literally catch my eyes.



This app is not really answer the Goal, but my friend/user said this app is really usefull for her. I asked another friend too and they said it’s quite help.




First development:

UIKit and Story Board

Second development (was created on another challenge):



What I learned from this challenge

  • CBL is really help us to figure out almost every problem on every challenges we want to tackle.
  • Empathizing allows us to understand our user better, it also helps us to look deeper in a way that helps us to think and create solutions for the problems
  • I learnt to be a good listener
  • Setting aside my assumption is important, it’s help me not to jump into conclusion
  • Constant curiousity by asking What, How and Why.
  • Solution is not always be an app

Need to be improved!

  • My friend’s goal and her problems is totally different. Next time I should have dig deeper more about my user fact and find all the patterns during research & investigation.
  • Every problem has many possible solutions, but I only created one. Next time I should brainstorm with my friend (or team) as many as I can to create solution concepts.
  • I use Menlo font for the Logo. I should have checked any font I use in advance whether it’s legal to use or not.
  • Should be more creative to create more solution


Thanks to my Mentors, especially Ka Gerson, Agatha and Tafa.
Also my friend
Ihwan for helping me learning Swift on this challenge



Get the Medium app

A button that says 'Download on the App Store', and if clicked it will lead you to the iOS App store
A button that says 'Get it on, Google Play', and if clicked it will lead you to the Google Play store