GoCode

Best place for web development practice

UX design ▪ Case study ▪ Personal Project

Challenge

How might we make web development learning experience more fun and engaging?

Role

UX designer

Deliverables

  • User research report
  • Task flows
  • Sketches
  • UI
  • Prototype

Tools

  • Figma
  • Google meet
  • Microsoft Office

Timeline

February 2023

Prototype

Learning how to code: It’s as hard as it gets

Project background

 

Learning how to code

According to one report, the number of people who quit online coding programs neared a shocking 94%.

But not only people who take online coding programs quit in large numbers; as the NY Times noted, roughly 60% of “students planning engineering and science majors end up switching to other subjects or failing to get any degree.”

What is the solution?

Web development is one of the most challenging fields because it requires learning more than one programming language and a broad skill set. 

I decided to work on this project because I myself have tried different programming courses when I was younger, and I was wondering what happens when we can stick to a course and we quit another one.

Problem statement

The number of people who quit online coding programs is near the shocking number of 94%. This is a problem because people show interest by starting the course, but they don’t keep up with it and so much time and effort will be wasted.

Empathizing with the students

User research

 

Secondary research

I analyzed the most influential articles about difficulties in programming learning between 2015 and 2022 on the Semantic Scholar to find the most frequent pain points in the process of programming education.

Here are the results of the most frequent pain points that can be addressed by a design solution:

  • Programming is conceived to be a difficult subject
  • Debugging and code testing skills
  • Learning syntax and semantics at the same time is difficult 
  • It is difficult to turn a real-world problem into a programming problem

 

Competitive analysis

I assessed the top 5 competitors, W3Shcools, Sololearn, Mimo, Enki and Codeacademy by gathering the feedback they’ve received from their users on their social media channels, platforms, Play Store, Apple Store, etc.

Analyzing their customer feedback showed a few common patterns among users’ pain points, but the main problem was regarding platforms that have applied gamification in their process:

  • Users find it difficult to review and recap what they have learned in the process of practices and quizzes.

I joined a group of students!

Instead of doing user interviews, I decided to observe their environment. I joined an online group of students who had registered for a one-month programming course. 

I witnessed how they started super motivated, but as the time went on, the disappeared from the online discussion one by one.

Main user pain points

I identified 3 main pain points:

🎯 Learning how to program has a steep learning curve

🎯 Online platforms don’t offer enough step-by-step practices

🎯 It’s hard to learn multiple syntaxes all at once
 
 

Empathy map

Persona

Design solution

define, ideate, design

POV statement

As a young student who likes to learn coding, I want to have solid programming skills, so that I can land a job in the tech field.

How might we..?

I ideated a few HMW questions to facilitate the ideation process:

  • HMW help Dan stay consistent during the course?
  • HMW help Dan have a fun experience?
  • HMW help Dan get ready for working in the industry?

Design solution

To address the findings of the research phase, I designed specific features to solve the problem:

An online platform for step-by-step practice  of web development from the basic level to the advanced

Gamification

To help students stay engaged and motivated during their learning

Basic level of practice (Fairyfly)

Fairyfly practice is the name of a feature to help students tackle the complexity of the programming

Debugging practice (Ladybug)

Ladybug practice is the name of a feature for helping students practice their debugging skills

Learning various syntaxes (Dragonfly)

Dragonfly practice is the name of a feature for practicing learning two syntaxes at the same time

Recap and review of the learnings

I ideated a “Handbook” feature to help students review their learnings

Spiderman projects

Students can find volunteer opportunities to work on real-world projects using this feature

Information architecture with card sorting

To determine the information architecture of the website, I asked 5 individuals to participate in a card sorting session.

The result was surprising in some aspects; for example:

  • 4 of 5 participants sorted handbooks as a separate section on the main menu
  • 3 of 5 participants sorted “Get certified” as a separate section on the main menu
  • 4 of 5 participants did not sort languages as a separate section of the main menu

Low-fidelity wireframing

After finalizing the IA, I started my design with designing lofi wireframes.

Design solution

Final product

Style guide

Classic, Review and Battle!

So what the website offers is 3 practices, Fairyfly, Ladybug and Dragonfly in 3 different modes:

  • Classic: 10 level, each level 10 questions, each question 5 points
  • Review: Choosing the level numbers they want to review
  • Battle: Time-boxed test of the whole level

Overview of the pages

Home page

Spiderman project

Volunteer pojects

Language page

Handbooks

Profile

Fairyfly

Dragonfly

Final thoughts

  • The main problem with doing a passion project is that you don’t have the real constraints of a real-world project. To avoid designing anything unfeasible, I looked for similar features in products that have this approach to gamification. I’ve confirmed that they are achievable since most of these features have similarities with apps like Duolingo and Lingodeer. Practicing coding is hard on a mobile app (this comment was extracted from users’ feedback about coding apps). That’s why I decided to design the desktop version of GoCode.

 

  • Unfortunately, I wasn’t able to make similar constraints by having a stakeholder, but I defined a brand identity of fun and entertainment to achieve a vision for the style guide (color, typography, etc.).

 

  • Gamification approaches must have a scientific base to have actual effects on engagement and motivation. I tried to keep all the approaches as scientifically proven as possible. Learning more about gamification was one of the best takeaways from this project.

 

More works

Avandra

Social media app for female solo travelers

UX design ▪ Case study ▪IterateUX

Shero

Smart assistant application for dentists

UX design ▪ Case study ▪ Personal Project

Step by Step 

Career platform to find your dream job

UX research ▪ Freelance ▪ Contract