Explore features and challenges
The Explore tab is where Code Lab becomes more than a block editor.
It is meant for guided curiosity, not for replacing your first successful run.
When to use Explore
Use Explore after you can already do at least one of these:
- load a template
- run it once
- find the output it produces
If you open Explore too early, it can feel like extra complexity instead of help.
How Explore starts
When no advanced feature is active, the Explore area behaves like a discovery prompt.
From there you can enable optional tools instead of being forced into them by default.
That is a good design choice for beginners: the advanced surfaces stay available without taking over the first learning experience.
The main Explore tools
Explain My Code
This feature turns the current block program into:
- a program overview
- step-by-step explanations
- optional real-life analogies
- a walkthrough that can highlight related blocks
Use it when you want to answer: “What is this program doing, in plain language?”
What-If Mode
This feature lets you adjust supported values and preview what would likely happen without changing the actual code.
Use it when you want to:
- test a different number or condition
- reason about loops or comparisons
- compare the current behavior with a hypothetical one
This makes it a safe place for experimentation.
Bug Fix Challenges
This feature loads intentionally broken logic so learners can practice fixing it.
It includes:
- challenge cards
- difficulty levels
- hints
- a load-into-workspace flow
- completion tracking
Use it when you are ready to move from “I can run examples” to “I can diagnose logic problems.”
Code ↔ Blocks Bridge
This feature shows how the current blocks translate into text code.
It helps you:
- compare block logic with generated Python or JavaScript
- highlight connections between blocks and code lines
- copy the generated code for study
Use it when you want to build a stronger bridge between visual programming and text-based programming.
A good order for using Explore
If you want a useful progression:
- start with Explain My Code
- use What-If Mode for prediction
- open Code ↔ Blocks when you want language comparison
- try Bug Fix Challenges when you are ready for more active problem solving
That order keeps the learning curve sensible.
Important learner caution
Do not enable every Explore feature just because it looks interesting.
A better strategy is:
- enable one feature
- use it on a small working template
- learn what it teaches
- then enable the next one
That keeps Explore educational instead of distracting.