Link Search Menu Expand Document

Types of Labs

All interactive content types share the same basic structure and configuration, but each has their own function and characteristics.

Labs are meant to teach discrete skills and concepts via steps in a lesson, whereas challenges provide learners the opportunity to test and verify their knowledge about a specific topic or tool set by requiring that they complete one task before moving onto another.

As of 2022, O’Reilly also provides a growing number of Cloud Labs or cloud-technology environments in which to run labs. These have their own unique authoring processes, but are not fundamentally different than non-cloud labs and challenges.


Labs are short (5-15 minutes), guided lessons that run alongside a preconfigured, sandboxed development environment. Labs are provisioned with the necessary tools, scripts, files, etc., to enable learners to explore a topic or skill without needing a full development environment on their local machine. A well-crafted lab will provide a focused and concise lesson, teaching the learner how to use a specific tool or approach to accomplish a specific task.

Cloud Labs

Like O’Reilly’s standard labs, cloud labs are interactive, preconfigured, sandboxed development environments accompanied by instructional lessons, specifically teaching skills and concepts around cloud environments. These cloud environments auto-provision a temporary cloud user account to the learner from within the lab, allowing them access to actual cloud account resources for up to 60 minutes. Currently O’Reilly supports cloud labs for Azure, AWS, and GCP (forthcoming).


Challenges are based on the same engine as labs, but the the learner experience and presentation of material is very different. Where labs teach new concepts, challenges help tune and strengthen the learner’s understanding of concepts. Challenges let learners try to complete the assigned tasks while the challenge engine watches for mistakes, provides hints, and confirms the learner’s success.

How a Challenge differs from a Lab

Challenges are based on the same engine as labs, but the material presentation and the learner experience is very different. Labs teach new concepts, while challenges help tune and strengthen the learner’s understanding of concepts. A challenge lets learners try solutions while the challenge engine watches for mistakes then confirms their success. When a learner successfully completes a challenge, and the reality check has been confirmed, there is a natural boost of confidence.

Think about your experience with learning a new game or sport. If you have never played the game before, you’ll want an orientation and some practice runs with an expert to learn the flood of new terms, rules, skills, and even some beginning strategies. This is the purpose of O’Reilly’s labs.

Once you understand the fundamentals and have successfully completed a few practice runs, you should have enough confidence to try a real playthrough of the game. When you play a real game with perhaps some minimal coaching, your confidence increases. The more you practice the better you get and you begin to progress from noob to beginner, to novice, and beyond. This is the purpose of O’Reilly’s challenges.

A lab is a step-by-step, interactive lesson on new concepts to solve a real-world problem.

A challenge is an opportunity for learners to solve a real problem by themselves, helping them gain a deeper understanding of how to apply a given tool or approach.

As such, challenges don’t contain an instructional lesson text, but instead, present tasks to be completed. As the learner completes each task, the session provides real-time feedback to encourage the learner to keep making progress. Through an on-demand reveal action, the challenge provides hints to assist the learner when they get stuck.