[1.0 JS] Introduction to Computational Media
  • Introduction to Computational Media
  • How to Use this Curriculum
  • Submit Feedback
  • Curriculum Extras
    • ๐Ÿ”ฎCurriculum Extras Overview
    • Imposter Syndrome (pt. 1)
      • Imposter Syndrome (pt 2)
    • Timers in p5.js
    • Time Functions: Crazy Clock Mini Project
    • Using Sliders
    • Getting Sound from Mic
    • Sound Recognition with ml5
  • Unit 1: Drawing, Variables, and Random
    • ๐Ÿ”ฎUnit 1 Overview
    • U1LA1.1 p5.js Introduction & Deconstruction
    • U1LA1.2 Line Functions and Parameters
    • U1LA1.3: Rectangles, Ellipses, and Layering
    • U1LA1.4 Various Shapes, Stroke, Weight, Fill
    • ๐Ÿ—ƒ๏ธ๐Ÿ—ƒU1LA1 Mini Project: Taijitu Symbol
    • U1LA2.1 Intro to Variables - System Variables
    • U1LA2.2 Custom Variables in p5.js
    • U1LA2.3 Random Function & Variables
    • ๐Ÿ—ƒ๏ธ๐Ÿ—ƒU1LA2 Mini Project: Custom Emoji pt. 1
    • U1LA.3.1 Intro to Color
    • U1LA3.2: RGB vs HSB Color Modes
    • U1LA3.3 Color Palettes & Design
    • ๐ŸŽจ๐ŸŽจ Unit 1 Final Project: Abstract Album Art
  • Unit 2: Respond & Draw on Canvas
    • ๐Ÿ”ฎUnit 2 Overview
    • U2LA1.1 - Conditionals and if statements
    • U2LA1.2 - Conditionals and if, else if, else statements
    • U2LA1.3 - Logical Operators And/Or
    • ๐Ÿ—ƒ๏ธ๐Ÿ—ƒU2LA1 Mini Project: Make a Traffic Light ๐Ÿšฆ
    • U2LA1.4: Draw with Mouse
    • U2LA1.5: The Map Function
    • U2LA2.1 - Collision with Collide2D
    • U2LA2.2: Mouse Clicks && Shapes As Buttons
    • ๐Ÿ—ƒ๏ธ๐Ÿ—ƒU2LA2 Mini Project: Light Switch Game
    • U2LA3.1: Key Presses && Nested Conditionals
    • ๐ŸŽจ๐ŸŽจ Unit 2 Final Project: Interactive Drawing App
  • Unit 3: Arrays, Loops, Media
    • ๐Ÿ”ฎ๐Ÿ”ฎ Unit 3 Overview
    • U3LA1.1: While Loops
    • U3LA1.2: For Loops Pt 1
    • U3LA1.3: Nested For Loops (For Loops pt 2)
    • ๐Ÿ—ƒ๏ธ๐Ÿ—ƒU3LA1 Mini Project: Wallpaper Design
    • U3LA2.1: Introduction to Arrays
    • U3LA.2.2: Arrays with floor() and random()
    • ๐Ÿ—ƒ๏ธ๐Ÿ—ƒU3LA2 Mini Project 1: Fortune Teller
    • U3LA2.3: Loops and Arrays
    • ๐Ÿ—ƒ๏ธ๐Ÿ—ƒU3LA2 Mini Project 2: Random Starfield
    • U3LA3.1: Preload && Images
    • U3LA3.2: Tint && Image Manipulation
    • ๐Ÿ—ƒ๏ธ๐Ÿ—ƒU3LA2 Mini Project 3: Vision Board
    • U3LA3.3: Images and Arrays with ml5
    • U3LA4.1 Fonts && Text Styling
    • ๐Ÿ—ƒ๏ธ๐Ÿ—ƒU3LA4 Mini Project 4: Typography
    • U3LA5.1: Loading & Playing Sound Files
    • ๐Ÿ—ƒ๏ธ๐Ÿ—ƒU3LA5 Mini Project: Keyboard/Patatap
  • ๐ŸŽจ๐ŸŽจUnit 3 Final Project: Random Meme Generator
  • Unit 4: Motion, Animation, Transformation
    • ๐Ÿ”ฎ๐Ÿ”ฎ Unit 4 Overview
    • U4LA1.1: Intro to Motion with Flipbooks
    • U4LA1.2: Move In All Directions & Make it Bounce
    • ๐Ÿ—ƒ๏ธ๐Ÿ—ƒ U4LA.1: Make a Floating DVD Logo
    • U4LA2.1: Translation Battleship
    • U4LA2.2: Rotations
    • U4LA3.1: Sine & Oscillating Motion
    • U4LA3.2: Cosine & Circular Motion
    • ๐ŸŽจ๐ŸŽจ Unit 4 Final Project: Animated Greeting Card/PSA
  • Unit 5: Functions & Abstraction
    • ๐Ÿ”ฎ๐Ÿ”ฎ Unit 5 Overview
    • U5LA1.1: What is Abstraction?
    • U5LA1.2: Intro to Functions & Function Calls
    • U5LA1.3: Draw with Functions
    • ๐Ÿ—ƒ๏ธ๐Ÿ—ƒ U5LA1 Mini Project: Custom Function Library
    • U5LA2.1: Data Type Scavenger Hunt
    • U5LA2.2: Functions that Return Values
    • U5LA2.3: Functions with Purpose
    • U5LA2.4: Functions with Boolean Returns
    • ๐Ÿ—ƒ๏ธ๐Ÿ—ƒ U5LA2 Mini Project: Build Your Own Challenge
    • ๐Ÿ”ฎ๐Ÿ”ฎ Unit 5 Final Project: Menu of Options
Powered by GitBook
On this page
  • Overview && Teacher Feedback
  • Objectives
  • Prompt
  • Culturally Responsive Best Practices
  • Extensions

Was this helpful?

  1. Unit 5: Functions & Abstraction

๐Ÿ”ฎ Unit 5 Final Project: Menu of Options

How can I showcase what I have learned in this course?

Overview && Teacher Feedback

This final project is special as this is most likely also the end-of-course project! (For speed racers, there are optional units 6 and 7 that exist - please reach out and we can explain.) For that reason, the goal of this course is not just for students to use functions, but for them to showcase everything they've learned so far this year. This is a wildly open-ended project with a lot of different options, and you should absolutely feel like you can suggest other options as well. Anything that interests students - this is their last time (in this course) to shine!

Objectives

Students will be able to:

  • Showcase their understanding of function and abstraction based on Unit 5 lessons in a culminating final project.

  • Integrate programming skills from the duration of the year into a project of their choosing

Prompt

Youโ€™ve reached the end of Unit 5, and itโ€™s time to celebrate all of your learning! Unlike past units where we are interested in specific skills, here, we are looking for a culmination of all that youโ€™ve learned, highlighting functions and abstractions to make sure you are creating efficient, readable programs and minimizing the amount in which you repeat yourself.

Because we have reached the end, rather than have one project we want everyone to work on, we are offering a menu of options. Choose the one that feels right for you and use that to drive your final project time!

Regardless of the option you choose, your project should include:

  • Functions for all major tasks, especially those that are repeated

  • At least one function that returns a value

  • As many prior skills as possible

Your Options:

OPTION 1 Remix a Past Project: You will take a past project, any past project, and remix it to include functions for major and repeated actions and algorithms. You should also incorporate any and all improvements to your project now that you have learned more.

OPTION 2 Create a Stamp Machine: Create a program that will have several functions for different designs and allow the user to stamp and/or draw with them.

OPTION 3 Create Pong: Recreate the vintage arcade game, Pong. If youโ€™ve never played before, you can use this link to give it a try. Your game should include moving balls and paddles (ball should bounce on contact with the paddles) and a way to keep score.

OPTION 4 Make Something Totally New: Talk to your teacher about this one - youโ€™ll need to write up a plan and prove that your new idea fits the criteria of this final project. But itโ€™s possible!

Reflection Prompts:

  • Explain what you chose to create and how functions have improved your program

  • Explain one specific function - how does it work, and why was this an important function to write?

  • What improvements would you like to see for your project?

Culturally Responsive Best Practices

As this challenge is student-driven, it is up to the individual to decide the direction they would like to take it. You can guide students to greater depths of CR-SE thinking with the following suggested levels:

  1. Centered around you, your lived experience, and your contributions

  2. Expands your knowledge by adding concepts or themes that are culturally responsive

  3. Transforms your project into something that allows for diverse perspectives

  4. Makes your project into a powerful tool for social action

Extensions

Because this project takes on a choose-your-own-adventure format, students should be encouraged to find ways to constantly improve their projects and iterate on top of what they have already made. Consider making this a part of their final rubric grade!

Previous๐Ÿ—ƒ U5LA2 Mini Project: Build Your Own Challenge

Last updated 3 years ago

Was this helpful?

๐Ÿ”ฎ