Author Archives: Mr. M

Microbit Firia Lab Concepts

  1. Unit 1
    1. Datatypes (scroll vs show())
  2. Unit 2
    1. Variables (delay= 1000)
    2. Roman Translator Standalone Assign
  3. Unit 3
    1. while loop
  4. Unit 4
    1. break statement
  5. Unit 5
    1. Intro to lists
  6. Unit 6
    1. Lists
    2. len function
    3. random index from list (Answer Bot)
    4. Cycling through a list
    5. type function
  7. Unit 7
    1. Probability Lab
  8. Unit 8
    1. def() using functions
  9. Unit 9

Guess Animal’s Weight – Using a Loop

Write a program in which the use is asked to guess the weight of an animal.  Allow the user 5 guesses to figure the weight of the animal.

Finished Project :


  1. Use a while-command-alice loop to keep track of the number of guesses and and the world function
  2.   use a < b  to keep track of how many times the user guessed the weight.alessthanb-alice-world
  3. If they guess the correct number then



Alice 2 Proximity Functions

One of the hardest concepts for younger programmers to learn is what returning a value means, a concept which Alice represents by its notion of ‘functions’.  And, in Alice, a great approach is to require students to move an object based on the distance  and to use a function to return the value of that distance and store it in a variable.

Every object in Alice has a set of proximity functions:


However, distance to, which most students will probably be most tempted to use is rarely what you want to use–especially when you want to move an object relative to another object using the calculated distance.

Consider, the picture below. Let’s say we want to calculate the distance between the hammer and the moon’s surface. Well, if you used distance to  to calculate the distance and move the hammer down, you’ll see that the hammer actually falls down into the moon. That’ s because the distance is being calculated from the center of the hammer and the center of the whole planet!

Instead, use distance above!


In the picture below, if you want the astronaut to move to the spaceship based off of a distance, you should try the distance in front of



Before you jump into text coding with middle school coders  , Alice is a powerful tool for teaching what “returning a value” means.

Intro To CS 2019-20

I. Alice

Unit 1 

  • Complete packets #3- 8  by Thursday Wednesday 27th
    • #1 (Example tutorial)
    • #2 (skipped)
    • #3 Coach–opacity, color
    • #4 Camera and manipulating objects (turn,tumble etc)
    • #5a Alice code (how to add instructions)
    • #5b  Alice Primitive Methods
    • #6 ( camelCase,  — read only, no tutorials)
    • #7 ( primitive methods from object tree)
    • #8 (do together )
  • Project #1
    • at least 10 instructions
    • modify a ‘subpart’
    • 1 do-together statement
    • at least 3 different objects
    • Worth 7 points.
    • To get a 7/7 you must achieve the ‘wow factor’–ie go above and beyond to create a superior final project
    • you must save your file in the format of
      • lastname-assignment1
      • morris-assignment1

Unit 2

Unit 2 Packets

  • #9 (variables)
  • #10 functions vs methods

Unit 2 Assignments

All the assignments listed below are detailed on this page

  • Drag Racing
  • Spaceship Repair
  • Apollo 15
  • End of Unit Assign

Unit 3

  1. #10
  2. #11 (math Expressions)
  3. #12 (Strings and Text)
  4. Read:  Important post to understand 
  5. Read What as a String
  6. Area of Triangle Assignment (only that one assignment)
  7. #13 (booleans)
  8. #14 (relational operators) (Show me this one when you’re done with the gumdrop/fish tutorial)
    1. Skip #14 (we did this together)
  9. Complete the rest of unit 3/4 assignments
    1. Roman Translator
    2. MPG modified
    3.  Temp Convert Mod
    4.  OR , you can skip all of these and do the much much more involved “Rock Paper Scissors ” game .

Unit 4 . Loops

  • Complete Packets:
    • 15 b (The Loop Instruction)
    • 16 (The While Instruction)
  • Unit 4 assignments here

Unit 4 . Parameters and Objects [advanced] 

  • Complete Packets:
    • #18 Writing a Class Level Method
    • #20 Saving an Object to a New Class
    • #21 Stepwise Refinement (Follow the instructions carefully on this one). If your method does not seem to work, it’s probably because you switched a left leg with a right leg
    • #22 Passing Arguments
    • Assignments here 


Last year’s class page.