top of page

EDUCATION APP

UX DESIGN 

With Hackworth
GOAL
Design intuitive learning platform from concept to delivery.
MY ROLE
Product Design Lead
TOOLS
download.jpeg
GitHub-Mark.png
PS


For design,  prototyping and front-end coding 
downloadswd.jpeg
images.png
download.png

I was the product design lead in a software development company to make programming relevant and exciting to children of all backgrounds. Focusing on functional programming, we are bringing programming to domains with wide appeal instead of just the usual computing applications. This is an exciting opportunity to design a complex product from concept to launch.

 

We design for learning

Most programming languages are designed for industrial use. Those languages are optimised to solve problems that have nothing to do with the difficulties of learning to program, and their complexity is often at odds with pedagogy. Aware of the challenge, our tools are designed for learners, so we optimise for pedagogy and suitability to task.

Code Visualisation 

Code visualisation is the core feature of the product. We believe visualising code can help students recognise patterns and code structures better. To design the best possible experience, I learnt the basics of functional programming.

Here is an example of an expression we are visualising:

original code cumsum.png

After pedagogy research, we decided to adopt a tree graph approach. Our original plan below:

orginal tree cumSum_edited.png

However, in our user research, we realise that even though the visualised code helps students from 13 to 18 learn quicker, it is still too "text-boxy" according to some students, and that causes confusion. To make the trees more readable/understandable, I focused on data visualisation and started with 3 solutions:

Traditional 

Rules

The Child node does not appear directly above or below the node of a subtree of the next or previous level unless there's only one node in the next/previous level.

Grows Left & Right.

Traditional cumsum.png

Underground

Rules

The Child node does not appear directly above or below the node of a subtree of the next or previous level unless there's only one node in the next/previous level.

Grows Right.

Screenshot 2022-04-28 at 3.52.53 pm.png

Hybrid

After discussion, we decided a hybrid style is the best solution. This has proved to be right in usability testings. Students can read the code and identify how it works much quicker and accurately looking at the new design. 

Rules

The Child node can appear directly above or below the node of a subtree, but not overlaying it.

Grows Right.

Hybird cunsum.png

Usability Research and Design

I have led and designed all the usability tests for the product, including designing programming curriculums with the team. Teaching how to define types and functions that takes one or multiple inputs, function application and program evaluation.

Tablet Learning

Testing with students aged 11 to 18, instead of solely using the more traditional function examples (and, or, etc.), I embed novelty and more relevant examples like programs that can predict the results in penalty shoot-outs (also a great example for recursion), the rock paper scissors game, and a model of Mendel's peas reflecting genetics biology.

Some quotes from the testing sessions:

Labels make it easier to read the code. I like using football as an example and making my team win!

I like how the software helps me visualise the code and save me time typing. The new structure makes more sense. I can work on it longer with the new colours... It's easier to read at a glance.

Casual Side View Pose

We have also conducted usability testing sessions regarding how students interact with the UI. We have explored better UX solutions and optimised the product with the results.

Before

Original UI.png

After

Visioning Workshops

Knowing the importance of reviewing the goals and feature list of the product regularly. I also run workshops to help the team define visions and features. Looking at the bigger picture of the product.

Brainstorming

Design system
& Front-end coding 

I have also supported front end development and created our design system. 

Screenshot 2024-09-26 at 8.59.43 pm.png
bottom of page