Please enable JavaScript to use CodeHS

Intro to Programming with Karel and micro:bit

The Introduction to Programming with Karel and micro:bit course merges the Physical Computing with micro:bit and the Introduction to Programming with Karel courses. The Karel course will provide the prerequisite information needed before students apply programming concepts to their physical micro:bit device. Note: The concept of variables is not covered by the Karel content so supplemental information will be necessary before teaching this lesson with the micro:bit device.


Units: 11
Timeframe: Semester
Contact Hours: 80

By the Numbers

Contact Hours 80
Lessons 42
Videos 42
Exercises 51
Challenges 32
Offline Handouts 107


Unit Description
Introduction to Programming: Students are introduced to programming by a dog named Karel. Karel only knows how to move, turn left, and place tennis balls in his world. Karel can be given these commands to instruct him to do certain things. Karel is used to show students what it means to program and has a strong focus on problem solving.
Intro to micro:bit: Students go through the basics of the micro:bit, such as how to light up and change the brightness of LEDs, and learn how variables can be used to write more versatile programs. Students will build circuits to control external LEDs with the micro:bit and explore how pseudocode can be used to structure programs from the start.
Functions: Students learn how to teach Karel new commands by combining existing commands and defining functions.
Super Karel and For Loops: Students learn about SuperKarel's enhanced ability and how to repeat commands with for loops.
If Statements: Students will learn how to test conditions of the Karel world and make decisions on whether to perform actions based on the results of those conditions.
While Loops: Students learn how to repeat commands while a specific condition is true.
Program Control with micro:bit: Students will apply control structures, such as if/else statements and loops to create programs that will react to the outside world. They will build programs that use the built-in sensors that detect temperature, light, and acceleration, as well as external sensors, such as an ultrasonic range finder, which detects the distance from the device to nearby objects.
Control Structures: Students practice using For Loops, While Loops, and If Statements to write complex programs.
Karel Challenges: Students solve some tricky challenge puzzles with Karel that combine the concepts they have learned so far.
Advanced micro:bit: Students will have a chance to explore all of the capabilities of the micro:bit on their own! They will research, explore, and teach their peers about new sensors, follow directions to build an advanced device, and have a chance to create their very own micro:bit machine.
Final Project: Students flex their creative muscles and write a creative program with Karel!

Format of Course

This course utilizes a blended classroom approach. The content is provided through a mix of web-based and physical exercises, with students writing and running code in the browser and then downloading code to their physical devices for further testing and exploration. Each unit is broken down into lessons which are made up of video tutorials, short quizzes, pseudocode exercises, physical explorations, example programs, and written programming exercises. The course is designed for a semester long class that meets 5 days per week, though schools implement it in a variety of ways.

Required Materials

For students to fully experience the physical computing portion of this course, they’ll need access to a few materials. These include the micro:bit device, various wires to connect external components and sensors, and breadboards which allow for more complex circuit builds. A complete list can be found at
In the final physical computing module of the course, students will explore additional sensors on their own and teach their peers how they can be incorporated in different projects. You may provide options or allow students to research various sensors on their own, but these should be provided to students in addition to the required materials list.

Who is it for?

The Intro to Programming with Karel and micro:bit course is designed for complete beginners with no previous background in computer science. The course is highly visual, dynamic, and interactive making it engaging for new coders.

Before students begin working with micro:bit devices, they will need to be familiar with the concept of variables. This concept is not covered in the Karel portion of this course, so you will need to supplment with additional material in order to set your students up for success.

Physical Computing Demos

Students begin by developing simple programs utilizing on screen LEDs:
Moving Bright Box Exercise
They move on to write programs that utilize internal and external sensors:
Brightness by Acceleration Exercise
And complete the course writing programs that include control structures and external components:
Challenge: LED Arrow Following Servo


Interested in teaching the Introduction to Programming with Karel and micro:bit course with CodeHS? Get in touch, so we can help you bring CodeHS to your school!

Bring to My School


Intro to Programming with Karel and micro:bit is aligned with the following standards

Standards Framework View Alignment
Alaska 6-8 View (58.5%)
California 6-8 View (50%)
CSTA 2 View (47.8%)
Georgia Foundations of Computer Programming View (57.6%)
Maryland 6-8 View (40.9%)
Wyoming 6-8 View (44%)
New Jersey 6-8 Computer Science View (44%)
Utah 6 View (42.9%)
Utah 7 View (75%)
Utah 8 View (66.7%)