IDMD - Interactive Digital Media Design
Software influences all aspects of contemporary visual culture. This course is an introduction to computer programming within the context of the visual art. Students in this course will learn the fundamentals of computer programming – conditional control structures, iteration, data structures, functions, classes, objects, and event-driven design. We will create projects based on student interest including, but not limited to games, machine-learning inspired art, simulations of physical, biological and social phenomena.
Remote/Hybrid Classroom Applications
In our IDMD classroom we are already using tools and techniques that are naturally adapted to a remote learning format. We will continue using our already established tools and techniques for learning IDMD. We will add to that, a video conferencing solution to complete our toolset needed for remote learning! All applications (except email) are to be run using your Chrome Browser on your laptop.
- ZOOM for IDMD - video conferencing application - join here each day and time IDMD classes are held
- IDMD WEBSITE - lessons, exercises, projects, student-portfolios, references
- Google Classroom - code extracts, worksheet and document submissions, additional materials
- GITHUB repository - code submissions for exercises and projects, published student portfilios
- P5JS Web Editor - web code editor for p5js
- Student Portfolios - Links to Student Porfolios
- IDMD Slack Messaging - Links to IDMD Slack Messaging for Code Extracts etc.
- Bush PORTAL - links for all tools, official assignments, schedules, syllabus, grade rubric
- Conference Appointments:
- EMAIL - check your Bush email when all other forms of communication fails!
2021 Weekly Schedule
- Daily Health Screening before Campus Arrival
- Assigned Spaces Link
- Lunch Assignments & Remote Students
Expectations for School Work
We are all going through some extraordinary times due to the coronavirus. I would like to ask you to be safe and considerate of others. Let us take time to be vigilant about wearing masks, washing hands, not touching our face and avoiding being in large groups. Most of all, be calm about things beyond our control.
- Course Website: IDMD 2021 Website
- Bush Portal: IDMD Portal
- Online textbook: Getting Started with P5JS
- P5JS Basics: Wiki Page for Help Examples and Reference
- Other Course materials: Google Drive IDMD
- Assignment Submissions via Your Github Site
Learning Modes and Typical Student Workflow
Learning by Doing First - Student-Based Asynchronous Workflow
In this mode of learning we will simultaneously start a consolidatded student-paced session spanning multiple P5JS topics, supported by working on visual and creative projects within Paired Programming teams. Subsequently we will use the online text books for a more complete discussion of ideas and creative extensions. We will mostly be using this workflow model, switching to Synchronous in small bursts as directed by your teacher or as needed to support student needs.
Doing by Learning First - Lecture-Based Synchronous Workflow
We will use this method of learning sparingly, reserved for difficult topics that might require a lecture-based instructional unit. The lectures below are designed in that manner and always available as a reference while we live in the world of Asynchronous “Learning by Doing First” model above.
Mini Lesson for newly admitted Upper School Students!
Topics: Installfest, git, github, why p5.js, environment setup, using the reference, digital color, coordinate system
Topics: Programming flow, animation loops, functions, parameters, variables, max, min, sound
Topics: Conditional statements, logical operators, events, mouseX, mouseY, mouesIsPressed, frameCount, random, dist, mousePressed, mouseReleased, max, min
Week of Feb 1 - Review & Code Exercises
Topics: keyPressed events, while and for loops, using text and fonts, using images
Topics: Review for loops, while loops, arrays, return statements, data vis
Topics: Continue for loops, while loops, arrays, return statements, data vis
Topics: Tweening Shaking Timer
- Exercises and Project submissions ahead of comments
- Tweening, Random, Shaking
- Timer based trigger exercise
- Online Book References
- Open your local copy you have previously downloaded to yout laptop. If not download above and open locally.
- Chapetr 9: Functions
- Chapter 11.1 to 11.8: Arrays
Topics: Repl editor, Debugging, Perlin Noise
Topics: 2D & Dynamic Perlin Noise, Sliders, html text, Particles
Topics: Catch-up with Pending assignments & projects
Topics: Recursion, Fractals
Topics: Recursion, Mandelbrot Set
Topics: Objects, Array Lists
Topics: Catching-up on assignments and 1-1 Conferences
- Exercises: All pending assignments due in Student Portfolio
- Class Work: 1-1 Conferences and Final Project Ideas
Topics: FINAL PROJECT WEEK
- Class Work: Work on Final Project and 1-1 Conferences
This course draws from the materials used in the UW Human Center for Design Engineering Master of Science curriculum. Significant credit is also due to the many member founders of the Processing Foundation whose tireless efforts have advanced the cause for open, accessible, and free CS education across the world.