Courses · Practice · Projects

The grind is broken; grow deep roots and lasting skills.

Prepare for technical interviews with guided courses and practice. Build AI and machine learning skills with real-world projects.

Choose your career path

Pick a goal and follow the courses, practice, and projects in order.

Compare all paths

What would you like to learn?

Start with a course, or apply your skills in a project.

Learning staircase: Algorithms

Build the foundations, then combine them to solve more advanced problems.

Selected topics. Step heights illustrate learning order, not measured difficulty or performance.

Learn · practise · build

Understand it. Repair it. Use it.

Move from a clear explanation to focused practice, then apply the same idea in a realistic setting.

  1. 01
    Understand

    Work through small examples until the pattern is visible.

  2. 02
    Repair

    Read the failure and make one focused change.

  3. 03
    Use

    Connect the idea to realistic data, code, and decisions.

LearnHash Tables and SetsPracticeContains Duplicate

Contains Duplicate

You are given an integer array nums. Return true if any value appears more than once.

def contains_duplicate(nums):
seen = set()
for num in nums:
if num in seen:
return True
seen.add(num)
return False
✓ 3 / 3 tests passed
Example progress
  • Hash Tables and Sets
  • Set Membership
  • Contains Duplicate
  • Frequency Maps
Explore Algorithms

Strong foundations. Skills that grow.

Like the baobab tree, lasting skill grows from the roots up—master the fundamentals first, and every harder topic has something to hold onto.

Learn one idea, practice it, then build on it. The baobab represents that progression: roots, trunk, and branches.

  1. Root
    Build the foundations

    Start with the essential ideas in your chosen course.

  2. Trunk
    Strengthen reusable patterns

    Ideas you can recognize and reproduce under pressure.

  3. Branch
    Solve what you have not seen

    Progressive problems turn understanding into independence.

Choose a course

Ask a question

We usually reply by email within 24 hours.

Not live chat. Your message goes to the CodeBaobab team.