# \[PY] Intro to Computational Media 2.0

## \[PY] Intro to Computational Media 2.0

- [Curriculum Overview](https://cs4all-icm.gitbook.io/py-intro-to-computational-media-2.0/curriculum-overview.md): A NYS Computing Standard-Aligned Introductory High School Computing Curriculum in the Python version of Processing.
- [How to Use this Curriculum](https://cs4all-icm.gitbook.io/py-intro-to-computational-media-2.0/how-to-use-this-curriculum.md): A brief overview on how to read the resources
- [Leave Us Feedback](https://cs4all-icm.gitbook.io/py-intro-to-computational-media-2.0/leave-us-feedback.md)
- [Curriculum Extras Overview](https://cs4all-icm.gitbook.io/py-intro-to-computational-media-2.0/curriculum-extras/curriculum-extras-overview.md): Extra and optional lessons for the Introduction to Computational Media Curriculum
- [Imposter Syndrome (pt. 1)](https://cs4all-icm.gitbook.io/py-intro-to-computational-media-2.0/curriculum-extras/imposter-syndrome-pt.-1.md): What is Imposter Syndrome, and how can I combat it?
- [Imposter Syndrome (pt. 2)](https://cs4all-icm.gitbook.io/py-intro-to-computational-media-2.0/curriculum-extras/imposter-syndrome-pt.-1/imposter-syndrome-pt.-2.md): How can we design applications to combat imposter syndrome?
- [Timers in Processing.py](https://cs4all-icm.gitbook.io/py-intro-to-computational-media-2.0/curriculum-extras/timers-in-processing.py.md): How can I create simple timers using Processing.py functionality?
- [Time Functions: Crazy Clock Mini Project](https://cs4all-icm.gitbook.io/py-intro-to-computational-media-2.0/curriculum-extras/time-functions-crazy-clock-mini-project.md): How can I get data from functions that track time?
- [Pathfinding Algorithms and Facial Scanning](https://cs4all-icm.gitbook.io/py-intro-to-computational-media-2.0/curriculum-extras/pathfinding-algorithms-and-facial-scanning.md): How does code relate to real-life scenarios and social implications of computing?
- [Playing with Pixels](https://cs4all-icm.gitbook.io/py-intro-to-computational-media-2.0/curriculum-extras/playing-with-pixels.md): How can I utilize the pixel values on a canvas to create interactive work?
- [Unit 1 Overview](https://cs4all-icm.gitbook.io/py-intro-to-computational-media-2.0/unit-1-draw-and-draw-with-functions/unit-1-overview.md)
- [U1LA1.1: Processing.py Introduction & Deconstruction](https://cs4all-icm.gitbook.io/py-intro-to-computational-media-2.0/unit-1-draw-and-draw-with-functions/u1la1.1-processing.py-introduction-and-deconstruction.md): How can we break down a robot into basic shapes in Processing.py?
- [U1LA1.2 Line Functions and Parameters](https://cs4all-icm.gitbook.io/py-intro-to-computational-media-2.0/unit-1-draw-and-draw-with-functions/u1la1.2-line-functions-and-parameters.md): How do the parameters of function effect positioning on the Processing.py canvas?
- [U1LA1.3: Rectangles, Ellipses, and Layering](https://cs4all-icm.gitbook.io/py-intro-to-computational-media-2.0/unit-1-draw-and-draw-with-functions/u1la1.3-rectangles-ellipses-and-layering.md): How can we use shape functions to create images?
- [U1LA1.4: Other Shapes & Styling](https://cs4all-icm.gitbook.io/py-intro-to-computational-media-2.0/unit-1-draw-and-draw-with-functions/u1la1.4-other-shapes-and-styling.md): How can we use shape functions to create images?
- [U1LA1 Mini Project: Taijitu Symbol](https://cs4all-icm.gitbook.io/py-intro-to-computational-media-2.0/unit-1-draw-and-draw-with-functions/u1la1-mini-project-taijitu-symbol.md): How can code be used as a creative and expressive medium?
- [U1LA2.1: Intro to Color with RGB and HSB](https://cs4all-icm.gitbook.io/py-intro-to-computational-media-2.0/unit-1-draw-and-draw-with-functions/u1la2.1-intro-to-color-with-rgb-and-hsb.md): How do color values work in my code?
- [EXTRA: Color & Data Storage](https://cs4all-icm.gitbook.io/py-intro-to-computational-media-2.0/unit-1-draw-and-draw-with-functions/extra-color-and-data-storage.md): An optional, extra lesson on different ways to represent color that will connect HEX with RGB. Fantastic AP CSP prep!
- [EXTRA: Color Palette Practice](https://cs4all-icm.gitbook.io/py-intro-to-computational-media-2.0/unit-1-draw-and-draw-with-functions/extra-color-palette-practice.md): An optional, extra lesson on creating color palettes to practice design skills as well as calling colors.
- [U1LA3.1: Introducing Variables](https://cs4all-icm.gitbook.io/py-intro-to-computational-media-2.0/unit-1-draw-and-draw-with-functions/u1la3.1-introducing-variables.md): How can I use variables to store data and control values in a program?
- [U1LA3.2: Creating Custom Variables](https://cs4all-icm.gitbook.io/py-intro-to-computational-media-2.0/unit-1-draw-and-draw-with-functions/u1la3.2-creating-custom-variables.md): How can I create my own variables to hold values in Python
- [U1LA4.1: What is Abstraction?](https://cs4all-icm.gitbook.io/py-intro-to-computational-media-2.0/unit-1-draw-and-draw-with-functions/u1la4.1-what-is-abstraction.md): What is abstraction, and how does it relate to my code?
- [U1LA4.2: Intro to Functions and Function Calls](https://cs4all-icm.gitbook.io/py-intro-to-computational-media-2.0/unit-1-draw-and-draw-with-functions/u1la4.2-intro-to-functions-and-function-calls.md): What do functions look like in code?
- [U1LA4.3: Draw with Functions](https://cs4all-icm.gitbook.io/py-intro-to-computational-media-2.0/unit-1-draw-and-draw-with-functions/u1la4.3-draw-with-functions.md): How can I create a function that will draw a design?
- [U1LA4.4: Using the Random Function](https://cs4all-icm.gitbook.io/py-intro-to-computational-media-2.0/unit-1-draw-and-draw-with-functions/u1la4.4-using-the-random-function.md): How can I use randomness in my code?
- [U1LA4 Mini Project: Custom Emoji](https://cs4all-icm.gitbook.io/py-intro-to-computational-media-2.0/unit-1-draw-and-draw-with-functions/u1la4-mini-project-custom-emoji.md): How can I create a function for a custom emoji?
- [U1LA5.1: Your Custom Function Library](https://cs4all-icm.gitbook.io/py-intro-to-computational-media-2.0/unit-1-draw-and-draw-with-functions/u1la5.1-your-custom-function-library.md): How can I create a library to store my custom functions?
- [Unit 1 Final Project: Abstract Album Art](https://cs4all-icm.gitbook.io/py-intro-to-computational-media-2.0/unit-1-draw-and-draw-with-functions/unit-1-final-project-abstract-album-art.md): How can I use my skills in Processing.py to convey a specific mood or theme?
- [Unit 2 Overview](https://cs4all-icm.gitbook.io/py-intro-to-computational-media-2.0/unit-2-respond-and-draw-on-canvas/unit-2-overview.md)
- [U2LA1.1: Conditionals and If Statements](https://cs4all-icm.gitbook.io/py-intro-to-computational-media-2.0/unit-2-respond-and-draw-on-canvas/u2la1.1-conditionals-and-if-statements.md): How can we add conditional statements to make our programs more interactive?
- [U2LA1.2: Conditionals and if, elif, and else statements](https://cs4all-icm.gitbook.io/py-intro-to-computational-media-2.0/unit-2-respond-and-draw-on-canvas/u2la1.2-conditionals-and-if-elif-and-else-statements.md): How can we write multiple conditions to our code?
- [U2LA1.3: Logical Operators And/Or](https://cs4all-icm.gitbook.io/py-intro-to-computational-media-2.0/unit-2-respond-and-draw-on-canvas/u2la1.3-logical-operators-and-or.md): How can logical operators make more specific and complex conditionals?
- [U2LA1 Mini Project: Make a Traffic Light](https://cs4all-icm.gitbook.io/py-intro-to-computational-media-2.0/unit-2-respond-and-draw-on-canvas/u2la1-mini-project-make-a-traffic-light.md): How can I use conditional logic to create a responsive program?
- [U2LA2.1: Draw with Mouse](https://cs4all-icm.gitbook.io/py-intro-to-computational-media-2.0/unit-2-respond-and-draw-on-canvas/u2la2.1-draw-with-mouse.md): How can I use built-in variables to create a program that lets the user draw?
- [U2LA2.2: The Map Function](https://cs4all-icm.gitbook.io/py-intro-to-computational-media-2.0/unit-2-respond-and-draw-on-canvas/u2la2.2-the-map-function.md): How can the map function help me control a range of values?
- [U2LA3.1: Data Type Scavenger Hunt](https://cs4all-icm.gitbook.io/py-intro-to-computational-media-2.0/unit-2-respond-and-draw-on-canvas/u2la3.1-data-type-scavenger-hunt.md): What are the different types of data used in Python?
- [U2LA3.2: Functions that Return Values](https://cs4all-icm.gitbook.io/py-intro-to-computational-media-2.0/unit-2-respond-and-draw-on-canvas/u2la3.2-functions-that-return-values.md): How can I write functions that take in numeric inputs and return a value?
- [U2LA3.3: Functions with Purpose](https://cs4all-icm.gitbook.io/py-intro-to-computational-media-2.0/unit-2-respond-and-draw-on-canvas/u2la3.3-functions-with-purpose.md): How can I abstract processes for clarity and reuse?
- [U2LA4.1: Collision Functions and Libraries](https://cs4all-icm.gitbook.io/py-intro-to-computational-media-2.0/unit-2-respond-and-draw-on-canvas/u2la4.1-collision-functions-and-libraries.md): What visual cues tell me where my mouse is?
- [U2LA4.2: Mouse Clicks and Shapes as Buttons](https://cs4all-icm.gitbook.io/py-intro-to-computational-media-2.0/unit-2-respond-and-draw-on-canvas/u2la4.2-mouse-clicks-and-shapes-as-buttons.md): How can I use mouse clicks in Processing.py?
- [U2LA2 Mini Project: Light Switch Game](https://cs4all-icm.gitbook.io/py-intro-to-computational-media-2.0/unit-2-respond-and-draw-on-canvas/u2la2-mini-project-light-switch-game.md): Unit 2 Mini Project Light Switch Game
- [U2LA5.1: Key Presses and Nested Conditionals](https://cs4all-icm.gitbook.io/py-intro-to-computational-media-2.0/unit-2-respond-and-draw-on-canvas/u2la5.1-key-presses-and-nested-conditionals.md): How can I use key presses to control elements of my program?
- [Unit 2 Final Project: Interactive Drawing App](https://cs4all-icm.gitbook.io/py-intro-to-computational-media-2.0/unit-2-respond-and-draw-on-canvas/unit-2-final-project-interactive-drawing-app.md): How can I use my skills in Processing.py to create an interactive drawing application?
- [Unit 3 Overview](https://cs4all-icm.gitbook.io/py-intro-to-computational-media-2.0/unit-3-loops-arrays-media/unit-3-overview.md)
- [U3LA1.1: While Loops](https://cs4all-icm.gitbook.io/py-intro-to-computational-media-2.0/unit-3-loops-arrays-media/u3la1.1-while-loops.md): How can we use iteration to abstract artwork?
- [U3LA1.2: For Loops Pt. 1](https://cs4all-icm.gitbook.io/py-intro-to-computational-media-2.0/unit-3-loops-arrays-media/u3la1.2-for-loops-pt.-1.md): How can we use iteration to abstract artwork?
- [U3LA1.3: Nested For Loops (For Loops Pt 2)](https://cs4all-icm.gitbook.io/py-intro-to-computational-media-2.0/unit-3-loops-arrays-media/u3la1.3-nested-for-loops-for-loops-pt-2.md): How can we use iteration to abstract artwork?
- [U3LA1 Mini Project: Wallpaper Design](https://cs4all-icm.gitbook.io/py-intro-to-computational-media-2.0/unit-3-loops-arrays-media/u3la1-mini-project-wallpaper-design.md): How can sounds, images, and fonts be combined and manipulated with code?
- [U3LA2.1: Introduction to Lists](https://cs4all-icm.gitbook.io/py-intro-to-computational-media-2.0/unit-3-loops-arrays-media/u3la2.1-introduction-to-lists.md): How can lists help us simplify code?
- [U3LA2.2: Random Values from Lists](https://cs4all-icm.gitbook.io/py-intro-to-computational-media-2.0/unit-3-loops-arrays-media/u3la2.2-random-values-from-lists.md): How can lists help us simplify code?
- [U3LA2 Mini Project 1: Fortune Teller](https://cs4all-icm.gitbook.io/py-intro-to-computational-media-2.0/unit-3-loops-arrays-media/u3la2-mini-project-1-fortune-teller.md): How can lists help us simplify code?
- [U3LA2.3: Loops and Lists](https://cs4all-icm.gitbook.io/py-intro-to-computational-media-2.0/unit-3-loops-arrays-media/u3la2.3-loops-and-lists.md): How can lists help us simplify cold?
- [U3LA2.4: Updating and Deleting from Lists](https://cs4all-icm.gitbook.io/py-intro-to-computational-media-2.0/unit-3-loops-arrays-media/u3la2.4-updating-and-deleting-from-lists.md): How can I manage data in my list?
- [🤓 U3LA2 Mini Project 2: CodeWars List Challenges](https://cs4all-icm.gitbook.io/py-intro-to-computational-media-2.0/unit-3-loops-arrays-media/u3la2-mini-project-2-codewars-list-challenges.md): How can I use lists and loops to solve code challenges?
- [U3LA3.1: Loading Images](https://cs4all-icm.gitbook.io/py-intro-to-computational-media-2.0/unit-3-loops-arrays-media/u3la3.1-loading-images.md): How can I load images and display them in my program?
- [U3LA3 Mini Project: Vision Board](https://cs4all-icm.gitbook.io/py-intro-to-computational-media-2.0/unit-3-loops-arrays-media/u3la3-mini-project-vision-board.md): How can I use images to create a virtual vision board project?
- [Unit 3 Final Project: Random Meme Generator](https://cs4all-icm.gitbook.io/py-intro-to-computational-media-2.0/unit-3-loops-arrays-media/unit-3-final-project-random-meme-generator.md): How can memes be created by code?
- [Unit 4 Overview](https://cs4all-icm.gitbook.io/py-intro-to-computational-media-2.0/unit-4-motion-objects-transformation/unit-4-overview.md)
- [U4LA1.1: Intro to Motion with Flipbooks](https://cs4all-icm.gitbook.io/py-intro-to-computational-media-2.0/unit-4-motion-objects-transformation/u4la1.1-intro-to-motion-with-flipbooks.md): How can I move a shape on the x axis?
- [U4LA1.2: Move in All Directions and Make it Bounce](https://cs4all-icm.gitbook.io/py-intro-to-computational-media-2.0/unit-4-motion-objects-transformation/u4la1.2-move-in-all-directions-and-make-it-bounce.md): How can I make objects move in different directions?
- [U4LA2.1: Introduction to Classes and Objects](https://cs4all-icm.gitbook.io/py-intro-to-computational-media-2.0/unit-4-motion-objects-transformation/u4la2.1-introduction-to-classes-and-objects.md): How can I use a class to construct multiples of an object?
- [U4LA2.2: Reading and Updating Object Properties](https://cs4all-icm.gitbook.io/py-intro-to-computational-media-2.0/unit-4-motion-objects-transformation/u4la2.2-reading-and-updating-object-properties.md): How can I read and update properties/attributes of an object?
- [U4LA2.3: Methods Off Canvas](https://cs4all-icm.gitbook.io/py-intro-to-computational-media-2.0/unit-4-motion-objects-transformation/u4la2.3-methods-off-canvas.md): How can I add methods to a class to give more functionality to my objects?
- [U4LA2.4: Objects on Canvas](https://cs4all-icm.gitbook.io/py-intro-to-computational-media-2.0/unit-4-motion-objects-transformation/u4la2.4-objects-on-canvas.md): How can I use classes and objects with the Processing.py library?
- [U4LA2 Mini Project: Build a Tamagotchi](https://cs4all-icm.gitbook.io/py-intro-to-computational-media-2.0/unit-4-motion-objects-transformation/u4la2-mini-project-build-a-tamagotchi.md): How can I use Classes/Objects on canvas to build a digital pet?
- [U4LA3.1: Creating Many Objects](https://cs4all-icm.gitbook.io/py-intro-to-computational-media-2.0/unit-4-motion-objects-transformation/u4la3.1-creating-many-objects.md): How can I use Classes, lists, and for loops to generate many objects?
- [🗃 Optional U4LA3 Mini Project: Rebuild with Objects](https://cs4all-icm.gitbook.io/py-intro-to-computational-media-2.0/unit-4-motion-objects-transformation/optional-u4la3-mini-project-rebuild-with-objects.md): How can I rebuild a prior project using object oriented programming?
- [U4LA4.1: Translation Battleship](https://cs4all-icm.gitbook.io/py-intro-to-computational-media-2.0/unit-4-motion-objects-transformation/u4la4.1-translation-battleship.md): How can I move the canvas origin to effect the position of shapes?
- [U4LA4.2: Rotations](https://cs4all-icm.gitbook.io/py-intro-to-computational-media-2.0/unit-4-motion-objects-transformation/u4la4.2-rotations.md): How can I make objects rotate?
- [U4LA5.1: Sine and Oscillating Motion](https://cs4all-icm.gitbook.io/py-intro-to-computational-media-2.0/unit-4-motion-objects-transformation/u4la5.1-sine-and-oscillating-motion.md): How can I draw with trigonometric functions in Processing.py?
- [U4LA5.2: Cosine and Circular Motion](https://cs4all-icm.gitbook.io/py-intro-to-computational-media-2.0/unit-4-motion-objects-transformation/u4la5.2-cosine-and-circular-motion.md): How can I use cosine to create circular motion?
- [Unit 4 Final Project: Animated Greeting Card or PSA](https://cs4all-icm.gitbook.io/py-intro-to-computational-media-2.0/unit-4-motion-objects-transformation/unit-4-final-project-animated-greeting-card-or-psa.md): How can I showcase my skills in an animated program?
- [Unit 5 Overview](https://cs4all-icm.gitbook.io/py-intro-to-computational-media-2.0/unit-5-final-project/unit-5-overview.md): \[🚧 UNDER CONSTRUCTION 🚧]
- [Course Final Project Guide](https://cs4all-icm.gitbook.io/py-intro-to-computational-media-2.0/unit-5-final-project/course-final-project-guide.md): These are instructions for the course final project - other sections of Unit 5 represent optional modules that you can use or not use based on time.
