DMST 2100

Technical Foundations

Catalog Description

The course provides the fundamental concepts of digital systems, including study of the number systems and components of computers (hardware and firmware) and how they function to solve problems. Prerequisites: None. 4.000 Credit Hours

Return to Top

Course Overview

This course is an introduction to the basic programmatic literacies involved in creating and manipulating digital media as well as an introduction to interactive media and the principles and processes involved in creating interactive projects. We will discuss the preproduction processes as well as production practices using the open source language Processing. The class will focus on learning basic programming approaches as well as rudimentary programming problem solving. Variables, Functions/Methods, Arrays, Conditional statements, loops, and object-oriented approaches to programming will all be discussed.

Return to Top

Course Objectives

By the end of this course you will:

  • Think critically about interaction and interactivity
  • Have knowledge of the history and future of interaction
  • Consider all facets of HCI in developing your work
  • Understand how computer languages enable deeper access to digital tools
  • Have working knowledge of cutting edge tools for interactive media creation
  • Understand the process of planning and executing interactive work
  • Create meaningful content laden interactive experiences

  • Return to Top


  • The required text for this course is Getting Started with Processing by Reas and Fry available at amazon and other fine online retailers (paperback or e-book)
  • You will need at least 1GB of portable storage (flash or thumb drives, ipod, portable hard drive, etc.)
  • An Email address which you will check daily

  • Return to Top


    This class will combine individual work in the lab with individual and group instruction. Students must come to class prepared to work. Showing up without necessary files or equipment is the same as not attending. Although students may also use their home computers to work on projects, this is not a valid reason to not attend. It will be necessary to work outside of class to complete all projects and assignments. A minimum of eight hours per week of work outside of class is suggested to get an average grade of a C. Computer failure, equipment malfunction, and file corruption are not accepted as excuses for late or unfinished work so BACK UP YOUR WORK. The computer labs are used by many students, so the labs are in high demand. Budget time accordingly as "unavailable computer time" will also not be accepted as an excuse. Participation in all class discussions and critiques as well as constructive use of lab time is considered in the final grade for each project. At any time in the creation process students should be able to produce notes, drawings,charts etc from their sketchbooks, as well as discuss and articulate the nature of their work to their peers as well as to the instructor.

    Attendance is mandatory. Attending class is the responsibility of the student. Lectures and demonstrations may be given or changed without notice and every class will start with professional examples of relevant work so punctuality is essential. An individual who is absent, late or sleeps during class will be responsible for getting the information missed. Students will be allowed two (2) absences without penalty. Any absence in excess of two will result in a 10% grade reduction of the final grade for the course per absence. All absences will be counted. A student who misses 15 minutes or more of a class (late or leave early) is considered absent. A student who sleeps will be considered absent. A student who will acquire absences due to a University sponsored activities must provide necessary documentation from the appropriate office prior to the absence to make any special arrangements for missed work.

    For any absence due to religious beliefs, written notification should be provided in the first two weeks of the quarter; the student is responsible for any missed work. Any special medical or personal problems that occur, where absenteeism will exceed the allowed two, will require verification by a physician or emergency medical association (a letter from Student Affairs merely explains an absence, and will not qualify as an excuse). These situations may require course withdrawal or "Incomplete" status on the final grade. Six absences mandate an automatic grade of "F." Three late arrivals (less than 15 min.) will equal one absence.

    Return to Top


    Grades will consist of the following:

  • Assignments @ 35%
  • Reading Responses @ 5%
  • Project 1 @ 25%
  • Project 2 @ 25%
  • Participation @ 10%
  • Projects and assignments will be graded on the following basis, listed in order of importance.

  • Development, creativity and originality of concept or problem solution
  • Technical development and demonstration of skills
  • Craftsmanship and presentation of work
  • Participation in classroom discussions and critiques in connection with the work
  • Your grade will be calculated according to the following standards:

  • A = Excellent (100-90%)- work pushes far beyond the project stipulations and shows clear evidence of extreme time, dedication, care and thought about the project as evidenced in effective execution of original/thoughtful ideas.
  • B = Good (80-89%)- work exceeds the basic criteria, provides creative solutions to the problems and shows technical proficiency. Student has made the project "theirs" in that they do not need to explain project stipulations before showing the work.
  • C = Average (70-79%)- work fulfills all requirements, does not expand on techniques shown in class, ideas are close derivations of popular culture.
  • D = Unsatisfactory (60-69%)- work might meet basic criteria but in a careless and/or thoughtless way. Technical proficiency is rudimentary and no chances were taken.
  • F = Failure (0-59%)- the work does not meet the basic criteria.
  • Late projects will be penalized a letter grade for every class period they are late. Turning a project in after the beginning of the critique counts as one class day late.

    Return to Top

    Lab Rules

    It is your responsibility to adhere to all rules regarding the use of the DMS labs and equipment. You will be given a sheet stating all rules. Please see Elizabeth Harris in the DMS office if you need a form to access the DMS lab.

    Return to Top


    Solutions to assignments you submit will be your own work. A student who is discovered to have plagiarized another's work will immediately receive a grade of F for the course, and a recommendation for disciplinary action will be forwarded to the Dean of Students.

    Return to Top


    We will be using free open-source software for this class that you will need to install on your laptop. It is your responsibility to work out times when you can use the DMS labs or to make other arrangements for doing your work. Please do not download and/or install trial versions of software or any other onto campus computers.

    Return to Top

    Course Outline

    (The following schedule is open to revision at any point in the quarter.)

    03/22 - Intro to Hardware, HCI, Assignment 1

    03/24 - Intro to Processing, Assignment 2

    03/29 - Variables, If and For, Assignment 3

    03/31 - Response, inputs, Assignment 4

    04/05 - Animating, Assignment 5

    04/07 - Math for movement, Project 1

    04/12 -

    04/14 - Reading Discussion

    04/19 - No Class

    04/21 - Project 1 Critique in Progress

    04/26 - Project 1 Due

    04/28 - Images and Fonts, Assignment 6

    05/03 - Functions and Objects, Assignment 7

    05/05 - Arrays, Project 2

    05/10 - Project 2 proposals due

    05/12 - Libraries, Assignment 8

    05/17 - Reading 2 Discussion

    05/19 - Work Day

    05/24 - Project 2 Critique in progress

    05/26 - Work Day

    06/01 - Final Critique 2pm

    Return to Top



    - Lecture One

  • Processing Website
  • History of Computers, detailed timeline with images.
  • History of HCI by Brad Myers (pdf).
  • Doug Engelbart NLS demo (youtube video)
  • Zork (javascript) <-- homework 1

  • - Lecture Two

  • OpenProcessing Website
  • - Lecture Three

  • Videos from artist Robert Hodgin
  • - Lecture Four

  • The work of artist Marius Watz
  • - Lecture Five

  • The work of artist Jer Thorp
  • The videos of artist Jer Thorp

  • - Lecture Six

  • The work of artist Luke Dubois
  • Hindsight 20/20
  • code examples #1
  • code examples #2
  • more code examples #3

  • - Lecture Seven

  • The work of Casey Reas
  • Process videos of Casey Reas
  • Reading #1
  • Reading #1 missing pages

  • - Lecture Twelve

  • The work of Daniel Shiffman
  • - Lecture Fourteen

  • OpenCV tutorial #1 from Andy Best (this first tutorial is hosted on "Create Digital Motion" a great blog for all things experimental and live video manipulation)
  • OpenCV tutorial #2 from Andy Best
  • a database entry program combined with a particle system
  • simple detection of change from a background image using openCV
  • face detection and tracking using openCV (thats right, its a poop hat)
  • A Sound Example
  • Sound w/ smoking Houses

  • Return to Top