Animating, keyboard and mouse events

We will continue on Chapter 10 which is more animating but also looking at how to interact with keyboard and mouse events, follow along if you get a little lost:

Since I will be away for Wednesday (and Friday for the Field Trip), I will give you your next assignment now).

Create one program that has the following:

  1. Create at least two different functions that draw an object to the screen. For example, draw_bird or draw_tree. Do not draw a stick figure, we did that one already. Create your own unique item. Do not simply draw a circle or rectangle. Draw a train, or cloud, or house, T-Rex or whatever. But minimal work = minimal points. If you created your own object in the create-a-picture lab feel free to adapt it to this lab.
  2. In Chapter 10, we talked about moving graphics with the keyboard, and the mouse. Use both to control two different items that you have drawn on the screen.
  3. In the case of the keyboard, make sure to add checks so that your object does not move off-screen and get lost. Remember you can’t just reverse the direction like the bouncing rectangle.

The assignment is due next Wed Mar 6.


Moving Objects, Pygame

Today, we head back into Pygame in Python. In today’s tutorial, we will be learning how to move objects using loops. Here is the link to the lesson:

As usual, please submit your tutorial lesson to the server when done.

Earsketch Reflection Questions

If you haven’t already handed in your Earsketch assignment, please go ahead and do so. As a followup, please copy/paste the following questions into MS Word or Google Docs, answer the questions, then submit to the server:

  1.  Explain the similarities in Python coding in Pygame with WingIDE vs Earsketch?
  2. Explain the differences in Python coding in Pygame with WingIDE vs Earsketch?
  3. Which environment do you prefer to program in and why?
  4. Please list some of the common syntax and logic errors that you encountered when creating you project and how you solved them?

Film Industry Field Trip on Friday Mar 3

For those interested in the local film industry here in BC, you are invited to attend a field trip to downtown Vancouver on Friday March 3, all day. The MPPIA (motion picture production industry association of BC) will host the day long event, feature speakers and tours. There will be at least 4 productions going on at that time.

To sign up, please register on the Parent Portal ( . The field trip cost is $5 to cover the bus, and you will need to have teacher permission from your Block A, B, and D teachers to attend. I will have permission forms, and you can also see Ms. Griffin for the forms as well.

Join us on Friday March 3rd in the iconic Canada Post building, now a working studio facility in the heart of downtown Vancouver, for the 10th anniversary edition of the
MPPIA Career Expo – BC Creates Careers… 
The Expo presents a rare point of access to the people, organizations and companies that make the Motion Picture and Digital Media Industries tick. A refreshed take on the annual favourite, this forum provides students with the opportunity to connect with established professionals, leading companies and industry educators. Explore career pathways through People & Skills, Infrastructure, Visual Effects, Animation & Post Production – the many strengths that make British Columbia a world renowned, innovative, premier centre for screen production.
 NEW THIS YEAR  – ‘Industry Insiders’ a series of discussion sessions where those ‘in the know’ share their stories and career paths.
 This 10th Anniversary special is not to be missed!
When:  Friday March 3rd 2017, 10 am to 4 pm
Where:  425 Georgia Street, Vancouver (Homer Street Entrance)
 Our venue has been home to many productions since it was repurposed as a studio facility less than  2 years ago, for example: 
 DC’s Legends of Tomorrow (TV Series – Warner Brothers
  • Arrow (TV Series – Warner Brothers)
  • The Flash (TV Series – Warner Brothers)
  • Supernatural (TV Series – Warner Brothers)
  • Van Helsing (TV Series – Syfy)
  • Travelers (TV Series – Netflix Original) 
  • Supergirl (TV Series – Warner Brothers)
  • Romeo Section (TV Series – CBC)
  • Ice (TV Series – Direct TV)
  • Okja (Feature – Netflix Original)
  • My So Called Wife (TV Series – NBC/Universal)
  • The Magicians (TV Series – NBC/Universal)
  • Altered Carbon (TV Series – Netflix Original)
 At the time of the Career Expo at least 4 productions will be underway and we’ll be working with the productions teams to gain access to tours contingent upon set status (which fluctuates daily) Tours will be scheduled by random selection in advance of the event and will be available to secondary school students only.

Earsketch Song

Your final assignment for Earsketch is to produce a song using the Earsketch software:


  • Must be a minimum of 50 measures
  • Must use at least 2 functions, you can use the ABA musical form, or another musical form of your choosing.
  • Must have at least 1 For loop controlling the measure
  • Must have at least 3 tracks
  • Must have at least 1 setEffect
  • Must have at least 1 makeBeat of your own creation

When done, you will download both the text file of your python script and the .MP3 song file, and submit both to the server. You will have 2 full classes to work on the assignment, and it will therefore be due Mon Feb 20.

Earsketch Assignment

Part 1

Launch the earsketch curriculum through the link below and read all of Chp 7 on copyright:

Take the following short copyright quiz below, when done, click on the “Check” button to check your answers. Finally, in your Chrome browser choose “File” from your menu and “print” out your results and choose “Save as PDF”. Submit your PDF document to the server in a folder with your name on it.

Part 3

Copy and paste the following multiple choice Q’s into an MS Word or Google Docs document and highlight (make bold or italicize) your answer. When done, submit your file to the server. Answers can be found by going through earsketch’s curriculum for Unit 1 (Chapters 1-8).

1. Which of the following is not true regarding APIs?
A. They allow you to simplify complex coding tasks.
B. They allow you to use Ableton Live within EarSketch.
C. They often come as a collection, or library.
D. They let different software components talk to one another.

2. fitMedia() is an example of what?
A. Function
B. Library
D. Comment

3. Which of the following is NOT used to describe rhythm?
A. Meter
B. Tempo
C. Beat
D. Pitch
4. What type of data type is HIPHOP_SNARE_001?
A. Boolean
B. Constant
C. Variable
D. String

5. Which of the following lines show the correct way to assign the value 7 to the variable track?
A. track == 7
B. “track” = 7
C. 7 = track
D. track = 7

6. Which combination of pitch and tempo could be used to produce a happy, exciting song?
A. Lower pitch, faster tempo
B. Higher pitch, slower tempo
C. Higher pitch, faster tempo
D. Lower pitch, slower tempo

7. Which of the following is not a common type of error found in code?
A. Grammatical Errors
B. Logic Errors
C. Syntax Errors
D. Runtime Errors

8. Which of the following is an example of a Syntax Error?
A. The program does not run at all.
B. The program runs at first, but eventually crashes.
C. The program runs, but prints a warning to the console.
D. The program runs, but doesn’t do what you expect.

9. What does an effect allow you to do in EarSketch?
A. Change the qualities of sound within a project
B. Add a sound to a track
C. Change the tempo of a song
D. Create a drum beat

10. Which of these is NOT a setEffect() argument?
A. Effect Name
B. Clip Name
C. Track Number
D. Effect Value

11. How would you set the delay time of a delay effect on track 3 to 50 milliseconds?
A. setEffect(3, DELAY, DELAY_TIME, 50.0)
B. setEffect(50, DELAY_FEEDBACK, 1)
C. fitMedia(DELAY, 3, DELAY_TIME, 50.0)
D. setEffect(DELAY, 3, DELAY_TIME, 50.0)

12. Which of the following is not a parameter used with setEffect() envelopes?
A. Start Value
B. Track Number
C. Clip Length
D. Effect

13. What would the following setEffect() function do?
setEffect(1, DISTORTION, DISTO_GAIN, 0, 1, 50, 10)
A. Decrease the volume on track 1 over 50 measures.
B. Decrease the amount of distortion on track 1 over 50 measures.
C. Increase the amount of distortion on track 1 over 10 measures.
D. Increase the volume of track 1 over 10 measures.

14. What does setTempo() allow you to do in EarSketch?
A. Specify the tempo of a song
B. Change the qualities of sound within a project
C. Add a sound to a track
D. Create a drum beat

15. ____ is a quality of sound that determines how high or low it sounds.
A. Transition
B. Pitch
C. Tempo
D. Rhythm

16. Which of these is NOT an example of a transition?
A. Riser
B. Track Dropouts
C. Crash Cymbal
D. Melody Consistency

17. Which of the following would be considered an example of Fair Use?
A. Using an image of a famous painting as your album cover.
B. Creating a parody version of a popular song focused on a social issue.
C. Using a recording of the first three notes of a popular song as an intro to a new song.
D. Performing a cover of a popular song on your guitar and sharing it on social media.

18. Which of the following would be considered sampling?

A. Playing another person’s recorded music in iTunes.
B. Using another person’s recorded music as a soundtrack in a YouTube video.
C. Performing a cover of someone else’s song on your guitar.
D. Using a part of another person’s recorded music in a new work.

When done, you may have some free time at the end of class.