Core Computer Science
Bridge the gap between writing basic scripts and understanding real computing systems. Explore how algorithms scale, how operating systems manage memory, how concurrency works, and the physical limits of computation.
Like Duolingo, but for Core Computer Science. Tomo turns the whole topic into a game you play five minutes a day, until it actually sticks.
22 levels across 3 sections, about 44 minutes end to end, roughly 9 days at five minutes a day. It moves through Thinking in Efficiency and Scale; Managing Systems, State, and Concurrency; and The Underlying Machinery of Computing. It assumes you already know the basics.
Free forever · No credit card · iPhone & Android

Key ideas in Core Computer Science
- Big-O characterizes scaling rates as inputs grow, not fixed wall-clock execution times
- Hardware specs and input constants dominate small benchmarks but fade at scale
- An algorithm with a lower growth order eventually outperforms one with higher growth
- Sequential array access exploits hardware cache prefetching and maximizes cache hits
- Pointer chasing across node-based structures incurs frequent, expensive main memory stalls
- Low constant overhead from cache locality can outweigh theoretical asymptotic gains
- Flame graph width directly maps to proportional CPU execution time
- Flame graph vertical layers represent the function call stack hierarchy
- Wide bars with nothing stacked on top identify direct execution bottlenecks
- Lookup tables swap repetitive math evaluations for single memory fetches
- Memoization retains function results in heap storage to skip recalculation
- In-place sorting conserves RAM at the cost of additional comparison operations
- Geometric resizing doubles capacity so expensive copy events happen exponentially less often
- Amortized complexity distributes the rare O(N) reallocation cost across many cheap O(1) appends
- The overall amortized cost per individual append operation remains constant O(1)
- High load factors increase bucket collisions and lengthen chain traversals
You've tried the other tabs
Thirty open tabs. Four facts you actually kept.
You watched. You nodded. By Sunday it was gone.
One answer, then back to scrolling.
Eight weeks. You meant to finish. You didn't.
Tomo gives Core Computer Science the Duolingo treatment: levels, streaks, and quick quizzes that test what you just learned. That game loop is what the tabs above never had, so it's the one you actually finish.
Here's what playing it feels like
A real question from this course. Take your best guess.
Imagine running a microbenchmark on just 50 items. Why might a theoretically slower algorithm win the race?
Get it right to open this lesson and 21 more in the app.
Where Core Computer Science takes you
- 1
Thinking in Efficiency and Scale
- Profiling and Complexity in Practice
- Navigating Data Structure Tradeoffs
- 2
Managing Systems, State, and Concurrency
- Memory Lifecycles and Hardware Realities
- Concurrency, Parallelism, and Shared State
- Networking and Distributed Systems
- 3
The Underlying Machinery of Computing
- How Code Becomes Execution
- Computability and Theoretical Limits
3 sections · 7 units · 22 levels. Built to play, not to enroll.
Tomo is in ChatGPT
Tomo is also a ChatGPT plugin: the same playable courses, built and played inside your chat.
Add Tomo to ChatGPT- What to ask
- “Make me a Tomo course on black holes.” “Turn this chat into a Tomo course.”
- What you get
- Quick questions with instant feedback, hearts and stars, ready to play in about a minute.
- Where it goes
- No sign-up to start. Connect your Tomo account and your streak carries on in the app.
You pick the voice
Core Computer Science is taught in the Storyteller style: every lesson is a story. Want a different feel? In the app you can spin up the same topic in any of Tomo's teaching styles. Same facts, totally different vibe.
More Technology on Tomo
Software Engineering: Systems & Science
Bridge the gap between working code and rigorous software systems. Explore the cognitive mechanics of human-computer interaction, the internal machinery of modern databases, formal theoretical computer science, and empirical research methods for evaluating software in practice.
Big-O in Real Code
Move beyond counting simple loops to evaluate hidden runtime costs, memory overhead, and algorithmic tradeoffs in production software.
Thinking in Object-Oriented Code
Learn how to model real-world problems by bundling data and behavior into self-contained objects. Master the core principles that make software reusable, organized, and resilient to change.
Java Backend Interview Playbook
Bridge the gap between basic Java syntax and senior-level interview expectations. Master the core data structures, concurrency traps, distributed architecture tradeoffs, and JVM mechanics backend interviewers test most.
Modern Front-End Architecture
Move beyond basic HTML and CSS to build scalable, high-performance web applications. Learn to architect components, manage complex state, and optimize the user experience like a professional engineer.
Thinking in Code
Learn how to command computers and build working software from scratch. Discover the core mechanics of programming, from simple step-by-step instructions to data structures and debugging.
Start Core Computer Science today.
Download Tomo, search Core Computer Science, and play your first lesson in under a minute.