Serita Scott Site at The College of New Jersey
HON280 Creative Computing
Home
Syllabus Schedule Our Class Guidelines Modules A and B Module C Alice Evaluations Previous Semesters

Schedule

Creative Computing

Professor: Serita Scott            Office 241 Telephone 771-2982

Office Hours: Monday and Thursday 11:30 to 12:30PM in the lab or by appointment for another time in my office.

Texts:

Learning to Program with Alice, Final Version ISBN: 0-13-187289-3
Wanda P. Dann, Ithaca College
Stephen Cooper St. Joseph's University
Randy Pausch, Carnegie Mellon University

For a free download of Alice software see these websites:

http://www.ithaca.edu/wpdann/Alice/

AND

Web Wizzard's Guide to Dreamweaver ISBN: 0-321-14265-9
James G Lengel

Reference:

Bentley, Peter, and Corne, David. 2002. Creative evolutionary systems. San Diego, CA: Academic Press.

Nilsson, Nils. 1998. Artificial Intelligence: A New Synthesis. Elsevier.

Polk, Thad and Seifert, Colleen. 2001. Cognitive Modeling. MIT Press.

Sandefur, James. 2003. Elementary Mathematical Modeling: A Dynamic Approach. Brooks/Cole.

Ward, Lawrence. 2001. Dynamical Cognitive Science. MIT Press.

 

Course Description

This course explores the frontier of computation, especially in connection to human creativity involving art, music, language,
as well as other forms of human activities and cognition.  Students will have substantial hands-on experience in an integrated
laboratory environment, using computers as a tool and a model.  No prior programming experience is presumed.

 

Notes

1.     The programming language will be Alice.

2.     This course satisfies the Quantitative Reasoning (QR) component of the TCNJ liberal learning.

Learning Goals

Purpose Statement

 

Human creativity has always been one of the most amazing phenomena we experience every day.  It is easily observed in art, music, language, as well as many other forms of human activities, all of which involve human mind and cognition at the heart.  Although such phenomena are purely human creation, it is also becoming more and more common that even these creative activities depend on the use of computers.  More and more arts, music, and writing are created using computers.  At the same

time, researchers are trying to model all sorts of human cognition including creativity, again, using computers.  Thus, it is important for many of us to explore the connection between human creativity and computation.

 

In this liberal learning course, students will develop (1) simple computational tools for creative activities and (2) simple computational models of human cognition.  In both of these areas, the essential skills are the principles of Quantitative Reasoning (QR).  For example, to develop computational tools,  students will analyze the requirements, design a computational representation, implement the design, and evaluate the performance.  On the other hand, to develop computational models, they will analyze the phenomenon, translate it to a computational model, implement the model, and evaluate its behavior.  In order to accomplish these tasks, students must accomplish the QR goals in a systematic manner.  Since human creativity is still a mystery, there will be situations where students will realize various limitations of the computational approach.

 

Content Goals (core concepts, deep understanding, misunderstanding, and technical knowledge)

Understanding of the following concepts, ideas, and interpretations:

1.     Creativity is essential for producing novel objects/ideas that are qualitatively different from previous ones.

2.     Human creativity is an essential aspect of human evolution.

3.     Human creativity can be observed in all areas of human activities.

4.     Computational tools can assist human creativity.

5.     Cognition is an essential component of human creativity. 
Thus, modeling human cognition can be useful for understanding human creativity.

6.     In order to cultivate creativity, learning bias needs to be minimized.

 

Performance Goals (expected outcomes and abilities to be observed as a result of successful learning)

  1. Analyze, design, and use:
  2. Understand and evaluate:
  3. Realize as computer programs (as extended forms of algebraic structure):
  4. Estimate and evaluate the performance of computer programs (as solutions to mathematical problems) with varying parameters.
  5. Recognize various limitations associated with mathematical representation and evaluation of phenomena related to human creativity.
  6. Develop and apply his/her own creativity to the learning process.
  7. Engage actively in individual and group activities in and outside class.
  8. Take initiative to achieve the learning goals.
  9. Learn to evaluate her/his own performance.
  10. Student Assessment

 

Rationale/Plan

This course is expected to facilitate a learning experience through which students can deepen their understanding of the connection between human creativity and computation.  Therefore, students’ assessment must reflect their ability to do so in an appropriate context.  The assessment tools used in this course include: in-class discussion, in-class and take-home assignments, mini project, persentations, self-evaluation, and peer evaluation.  While the actual composition of assessment tools will depend on the instructor, every tool must refer to the learning goals explicitly or implicitly.  For example, an exercise problem will address a certain aspect of human creativity and require students to perform tasks described in the learning goals.  Since exams are limited in terms of the time and the available computational support, it is expected that the course would involve non-exam type assessment tools.

 

11. Overview

The learning activities will directly reflect the learning goals and will be organized to help students perform well on the assessment tools.  The main activities will be in integrated lecture/discussion/lab (two 80-minute sessions per week).  In addition, students are expected to work on approximately 360 minutes of assigned work outside class (per week).

 

Each module consists of integrated lecture/discussion/lab sessions as well as an evaluation workshop at or near the end.  Each lecture/discussion/lab session consists of a short cycle of activities such as the following:

·        Introduction to a unit (background, motivations, overview, etc.)

·        Survey-type exercise, where applicable

·        Computer instruction (environment, new concepts, tools, etc.), where applicable

·        Hands-on exercises with peer and instructor interaction

·        Class discussion of exercises

·        Summary of the important points

·        Self-evaluation, where applicable

 

Module Organization

Module A    Number Systems, Boolean Algebra, and Computer Circuitry

Module B:   Web development with Dreamweaver

Module C:   Computational tools for human creativity and algorithmic problem solving: Alice programming language

Grading Policy

40%    Labs: Probramming assignments and interaction on SOCS Assessments.

20%   Self-evaluations, Peer Ratings, , Class Participation  (based on class discussion,

collaborative group work, and Attendance). This involves the evaluations for all modules.

40% One Objective Exam and Final Alice Showcase Presentation

Schedule for HON 280 Creative Computing

Date
Topics
Concepts & Skills
Presentations - Due Dates
1-24

Introduction
Working with
number systems

Conversions and operations on number systems.
Numerical representations of colors

Special Note: Journal entries are due each week. They will be read on the weekends and credit recorded in the gradebook.
1-28 Operations on number systems Computer storage of positive and negative numbers. One's and two's complement.

Top of syllabus
Number Systems Comments

1-31 Getting started in Dreamweaver Building a local site and publish on UNIX
Working with text.
Formatting Pages
Site Management
Number Systems Worksheets
Dreamweaver Ch1,2,6,7 Comments
2-4 Continue with Dreamweaver
Principles of Sites and HTML
Two's Complement Worksheet
Dreamweaver Ch3,4,5,8 Comments
2-7 Introduce Boolean Algebra
Truth tables and logical operators
Simple website with links - About Me page - Journal entries
Chapters 1,2,6,7 Exercises
2-11 Boolean Algebra and Computer Circuitry
Simplifying computer circuits
Boolean Algebra Slide Exercises
Boolean Algebra Comments
2-14 Finish up with Dreamweaver Site Design
Password protect your course work.
Circuitry Exercises
Modified website with branching story project, and Chapters 3,4,5,8 Exercises.
2-18 Getting Started in Alice Chapter 1
Program Design and Implementation in
Alice Chapter 2
Introduction to Alice.
Explore Alice environment

Top of schedule
Alice Chapters 1 & 2 Comments
Chapters 1, 2, and 3.
It is not necessary to read Ch3 just the Tips and Techniques for Ch 3.

2-21 LAB LAB Proposal and design plan for website
2-25
Group activities in planning and writing and implementing algorithms
Designing and writing algorithms
Read Alice Chapter 4 and Tips and Techniques for Ch. 4.
2-28
Object Oriented Programming in Alice Chapter 4
Classes, objects, methods, parameters
Creating new classes part 1
Class-level methods and Inheritance prt 1
Write an Algorithm.
3-3 LAB LAB
Chapters 1 and 2 Alice assignments posted on website
Algorithms
Alice Chapter 4 Comments
3-6 Interactivity:Events & Event Handling in Alice Chapter 5 Interactive programming
Parameters and event handling methods

Top of schedule
Read Alice Chapter 5 and Tips and Techniques for Chapter 5.

3-17 LAB LAB  
3-20
Preliminary website Showcase
  Chapter 4 Alice asssignments on website
Chapter 5 Comments
3-24
Showcase Website
Self Evaluation and Peer Evaluation of websites
Website Showcase
3-27
Functions and control statements in Alice Chapter 6
Functions
if/else
Boolean functions
Random numbers and random motion
Read Alice Chapter 6 and Tips and Techniques for Chapter 6.
3-31 LAB LAB Chapter 5 Alice assignments on website.
Proposal and Design Document for final Alice Showcase.
Alice Chapter 6 Comments
4-3 Repetitions: definite and indefinite in Alice Chapter 7 Loops (Similar to for loops)
While loop
Events and repetition

Top of schedule
Read Alice Chapter 7 and Tips and Techniques for Chapter 7.
Alice large project proposal and design document

4-7
Review of  Modules A & C
Chapter 6 Alice assignments
Alice Chapter 7 Comments
4-10
Module A&C Objective Evaluation
Multiple choice exam on Alice
and Boolean Algebra
 
4-14
Repetition: Recursion in Alice Chapter 8
Recursions Camera and Animation Controls
Read Alice Chapter 8 and Tips and Techniques for Chapter 8.
4-17 LAB LAB
Chapter 7 Alice assignments
Chapter 8 Alice assignments
Alice Chapter 8 Comments
4-21

Lists and list processing in Alice Chapter 9
and Arrays
Chapter 10.2

Lists
List Search

Arrays and index variables

Read Alice Chapter 9 and Tips and Techniques for Ch. 9.
Read Alice Chapter 10.2
4-24 Variables and more on inheritance and Arrays with index variables in Alice Chapter 10 Creating new classes part 2
Class-level, mutable variables and Inheritance

Top of schedule

Alice Chapter 9 Comments
Read Alice Chapter 10.1 and Tips and Techniques for Ch.10.

4-28

Algorithm Analysis:
Sorting Array Elements


Manipulating arrays
Student dramatization
Examine code for sorts

Chapter 9 Alice assignments.
Alice Chapter 10 Comments

5-1 Dress rehearsal of Alice Showcase  
First Alice showcase and include
Chapter 10 Alice assignments.
Final Alice Schowcase Presentations  
Final Alice Showcase