TU 5510 : Hypermedia Programming



A. Introduction

TU 5510 is an theme and project-oriented exploration of the development of tools using scripted, hyper/multimedia programming environments. Its goal is to introduce students to various elements of high-level design and development of programs and their interfaces with a particular emphsis on user-interaction and instruction.

B. Class Structure

Students will work either in teams or individually to develop projects using one of a number of development environments. The seminar will meet regularly as a group to hold one of a set of topical discussions on issues relating to the development of their projects. These themes will include:

  1. Selecting the Proper Tool
  2. Data Structures
  3. Program Flow
  4. Knowledge Representation/Helping the User
  5. Interactivity
  6. Hypertext/Hypermediad
  7. Using Metaphors
  8. On-screen Design
  9. Formal Evaluation/Rapid Prototyping
  10. Final Presentations, wrapup.
Classes will be broken up into pairs. The first of the pair will consist of:

In the second of the pair, project teams or individuals will work on developing programmatic representations of the theme to be presented in the following class session. In addition, the week's reading will be dicussed and questions answered regarding the themes or project development.

C. Projects 

At each session, each group will show their ideas and understanding of the topical theme by demonstrating the incarnation of those ideas in their project. The object of the seminar is the development of working prototypes of a project that reflects an understanding of the issues discussed in class and in the reading/viewing list. Each week's work should be viewed as cumulative, and should build on the final project, which will be submitted for final evaluation.

Students will also be required to submit:

    
  1. A project proposal. This will describe the intended project, its purpose and intended audience, a rough sketch of the project functionality, and the enviroment in which it will be developed. This should be submitted electronically (via email to both instructor's mail boxes: bob@ilt.columbia.edu and wern@ilt.columbia.edu) and will be due before the second session.
    
  2. A project log/revision history. This will outline the project's progress: what features are being implemented or discussed, what changes are being made to existing features. This document should be a accurate depiction of the evolution of the project from proposal to functioning prototype. A copy of the updated log will be required every second week on demonstration days.
    
  3. A formative evaluation log. Each project feauture build in response to the thematic discussions must be demonstrated to a member of the target audience. An evaluation of the feature must then be submitted, based on the evaluator's comments. Included in this log should be the reactions of the project group/individual, and any decisions to modify the project. This log should be submitted along with the final project.
    
  4. A functioning prototype of the project. While the degree to which all features of the project have been completed will depend on the complexity of the project, all groups/individuals are expected to submit a working version of their project. This will include adequate documentation and fuctionality that a user unfamiliar with the project will be able to enter it, complete tasks relevant to the intent of the project, and leave it. Interactive models or slide shows will not be accepted as either projects or parts of projects.
    
The final project may be developed in one of a number of environments: Hypercard, Supercard, HTML, Applescript, Director, or Toolbook (if students wish to develop their projects in a DOS/Windows development environment, they must make arrangements with CCIMS to demonstrate their projects in class). Students should obtain clearance for selection of other development enviornments not listed .

 C. Evaluation

Evaluation will be based on: The breakdown of each item as a proportion of the final grade should be viewed as approximate only. Students are strongly encouraged to take the class pass/fail.

 D. Class Location, Time

Classes will take place in 345 Macy, Monday from 5:00 pm to 7:00 pm . Additional classes and field trips may be scheduled.

E. Prerequisites

Students must have completed the TU4036:Hypermedia in Education class or its equivalent. In addition, students should have a high level of comfort with the use of the scripting and or authoring environment of their choice (e.g.: Hypertalk, Supertalk, HTML, Lingo). This course will not teach the specifics of programming (though advice will be given), so students must be prepared to learn what elements of programming they will need to complete their projects. In addition, students should be comfortable with high-level authoring on their choice of platform (e.g., resource editing, the use of external code segments - XCMDs XFCNs). Studets should also be familiar with multimedia authoring tools such as bitmap editors (e.g., Photoshop), digitial sound editors (e.g., Soundedit), digial video editors (e.g., Premiere), and the associated skills of scanning and digitizing. Students who choose to develop in HTML should have a basic understanding of internet communications protocols including Telnet, FTP, Gopher, and Internet Mail.

All students should have access to at least a basic CUNIX electronic mail account and the ability to access it on a regular basis. In addition, since most of class time will be devoted to demonstration of projects and discussion of topical issues, students must have access to a machine for development. For storage of multimedia projects, the CCIMS lab has a number of 44 Mb syquest drives available. Students must purchase their own cartriges for use with these drives. Students may also use up to 40 Megabytes per project on a file server provided by the class. If students elect to store their work in this manner, they must make their own arrangements for transporting their projects when the class is done. Students who intend to incorporate larger volumes of multimedia in their projects must make arrangements for their own high-capacity storage. For students developing HTML documents, links to a web server will be made available.

Here are some books to add to the/a reading list to the course:

Barrett, E. Ed. (1992) Sociomedia. MIT Press. Boston, MA.

Couloris, G. & H. Thimbleby. (1993) HyperProgramming. Addison Wesley. Wokingham, England.

Hines, A. & C. Ragland. (1990) Inside SuperCard. Microsoft. Redmond, WA. [out of date? New SuperCard just issued]

Jerram, P. & M. Cosney. (1993) Multimedia Powertools. Random House/Verbum. NY.

Nix, D & R. Spiro, Eds. (1990) Cognition, Education and Mutlimedia. Erlbaum. NJ

Tufte, E.R. (1990) Envisioning Information. Graphics Press. Cheshire, CT.

Goodman, D. (1993) The Complete AppleScript Handbook

Thimbleby, H (1990) User Interface Design. New York, NY.

Class Outline:

Week 1 - 01/23/95:

  • class/student/faculty introductions
  • distribute syllabus
  • course introduction, syllabus discussion
  • collect email addresses
  • introduce ILT mail system
  • discussion: "Selecting the Proper Tool"

    no reading

    Week 2 - 01/30/95:

  • discussion/exercise (followup):, "Selecting the Proper Tool" - discussion: projects in progress
  • introduction to HTML (optional)
  • course assignment structure, Web page

    reading:

    group activity: discussion of choices leading to tool selection

    Week 3 - 02/06/95:

  • guest speaker Bill Waldman, (tentative) "Principles of Software Design"
  • group meetings

    Week 4 - 02/13/95:

  • reading discussion
  • group activity demonstrations
  • discussion "Data Structures"

    reading:

    Week 5 - 02/20/95: group meetings

    Week 6 - 02/27/95:

    Week 7 - 03/06/95: group meetings

    Week 8 - 03/13/95:

    Week 9 - 03/20/95: group meetings

    Week 10 - 03/27/95:

    Week 11 - 04/03/95: group meetings

    Week 12 - 04/10/95:

    Week 13 - 04/17/95: group meetings

    Week 14 - 04/24/95:

    Week 15 - 05/01/95:

  • group meetings
  • project presentations

    Week 16 - 05/08/95: project presentations