29
Introduction to Interactivity for the Web Ian Graham Tel: 978.4548 Email: [email protected] Web: www.utoronto.ca/ian/talks/

Introduction to Interactivity for the Web

  • Upload
    levana

  • View
    22

  • Download
    0

Embed Size (px)

DESCRIPTION

Introduction to Interactivity for the Web. Ian Graham Tel: 978.4548 Email: [email protected] Web: www.utoronto.ca/ian/talks/. What is Interactivity?. Two facets: Interactivity between person and machine Interactivity between people This talk focuses on the first of these facets. - PowerPoint PPT Presentation

Citation preview

Page 1: Introduction to Interactivity for the Web

Introduction to Interactivity for the Web

Ian GrahamTel: 978.4548

Email: [email protected]

Web: www.utoronto.ca/ian/talks/

Page 2: Introduction to Interactivity for the Web

What is Interactivity?

Two facets: Interactivity between person and

machine Interactivity between people

This talk focuses on the first of these facets

Page 3: Introduction to Interactivity for the Web

Presentation Overview

Description of types of interactivity

Some examples to illustrate types

Questions are encouraged always, at any time, about anything

Lunchtime seminar means…. Have lunch!

Page 4: Introduction to Interactivity for the Web

Interactivity and the Web

Two ways to interact with the Web

Locally -- Interact with your browser

Globally/Remotely -- Interact with something out there

Both have strengths and weaknesses and overlap

Page 5: Introduction to Interactivity for the Web

Simplest: Web Browsing

The standard way we use the Web:

Click on a hypertext link: browser goes out and retrieve a file from somewhere else, and displays it.

Initially the only type of interactivity

Page 6: Introduction to Interactivity for the Web

1. Web Browsing

It is a static interactivity

Sequences are fixed when pages are written

Viewer may choose different paths, but the pages are always the same

Page 7: Introduction to Interactivity for the Web

Browsing and Web Pages

Sd fdsa as dfsaasdf asd asd asd

asdfasd asd tasdf asfd as asdf Sd f

dsa as dfsaasdf asd asd asd

asdfasd asd tasdf asfd as asdf

Sd fdsa as dfsaasdf asd asd asd

asdfasd asd tasdf asfd as asdf Sd f

dsa as dfsaasdf asd asd asd

asdfasd asd tasdf asfd as asdf

Sd fdsa as dfsaasdf asd asd asd

asdfasd asd tasdf asfd as asdf Sd f

dsa as dfsaasdf asd asd asd

asdfasd asd tasdf asfd as asdf

Sd fdsa as dfsaasdf asd asd asd

asdfasd asd tasdf asfd as asdf Sd f

dsa as dfsaasdf asd asd asd

asdfasd asd tasdf asfd as asdf

Sd fdsa as dfsaasdf asd asd asd

asdfasd asd tasdf asfd as asdf Sd f

dsa as dfsaasdf asd asd asd

asdfasd asd tasdf asfd as asdf

Sd fdsa as dfsaasdf asd asd asd

asdfasd asd tasdf asfd as asdf Sd f

dsa as dfsaasdf asd asd asd

asdfasd asd tasdf asfd as asdf

Sd fdsa as dfsaasdf asd asd asd

asdfasd asd tasdf asfd as asdf Sd f

dsa as dfsaasdf asd asd asd

asdfasd asd tasdf asfd as asdf

Web Server

Internet

WebBrowser

Sd fdsa as dfsaasdf asd asd asd

asdfasd asd tasdf asfd as asdf Sd f

HTML/Web pages

E.g: http://www.utoronto.ca

Page 8: Introduction to Interactivity for the Web

Web Browsing

Interactivity can be either remote, or local

Remote -- pages are on a Web server Local -- pages are on a local drive, or CD-

ROM

Either is fine, if the information is static

Page 9: Introduction to Interactivity for the Web

Web Browsing advantages

It works for everyoneCan be local, or remoteCan distribute any type of data file

(HTML, Word documents, PowerPoint, etc.) Requires that the person visiting can

read these data typesBut not terribly interactive.....

Page 10: Introduction to Interactivity for the Web

2. Software on the Server

Interact with software on the Web server HTML forms, clickable images Information sent to server, for processing Server sends back results, based on

information sent.

Not static -- response depends on choices, different for each user

Page 11: Introduction to Interactivity for the Web

Server Software

Internet

WebServer

Sd fdsa as dfsaasdf asd asd asd

asdfasd asd tasdf asfd as asdf Sd f

WebBrowser

Sd fdsa as dfsaasdf asd asd asd

asdfasd asd tasdf asfd as asdf Sd f

dsa as dfsaasdf asd asd asd

asdfasd asd tasdf asfd as asdf

Sd fdsa as dfsaasdf asd asd asd

asdfasd asd tasdf asfd as asdf Sd f

dsa as dfsaasdf asd asd asd

asdfasd asd tasdf asfd as asdf

Sd fdsa as dfsaasdf asd asd asd

asdfasd asd tasdf asfd as asdf Sd f

dsa as dfsaasdf asd asd asd

asdfasd asd tasdf asfd as asdf

Sd fdsa as dfsaasdf asd asd asd

asdfasd asd tasdf asfd as asdf Sd f

dsa as dfsaasdf asd asd asd

asdfasd asd tasdf asfd as asdf

Sd fdsa as dfsaasdf asd asd asd

asdfasd asd tasdf asfd as asdf Sd f

dsa as dfsaasdf asd asd asd

asdfasd asd tasdf asfd as asdf

Sd fdsa as dfsaasdf asd asd asd

asdfasd asd tasdf asfd as asdf Sd f

dsa as dfsaasdf asd asd asd

asdfasd asd tasdf asfd as asdf

Sd fdsa as dfsaasdf asd asd asd

asdfasd asd tasdf asfd as asdf Sd f

dsa as dfsaasdf asd asd asd

asdfasd asd tasdf asfd as asdf

GatewayProgram

database

???

Page 12: Introduction to Interactivity for the Web

Server Software

Often called CGI programs, or Gateway programs.

Gateway between the Web server and “something else”

Page 13: Introduction to Interactivity for the Web

Example Server Programs

http://www.altavista.com ("Beaujolais Nouveau")

http://xxx.lanl.gov/find/cond-mat ( Database search tool )

Page 14: Introduction to Interactivity for the Web

Server Interaction

Interact with complex programs

Dynamically generated HTML pages

Hides resources from user harder to cheat!

Not local -- needs Web server

Page 15: Introduction to Interactivity for the Web

Browser Interaction

Several approaches Scripts in pages -- JavaScript Plugin modules Embedded Java programs

Page 16: Introduction to Interactivity for the Web

Scripting Interaction

Small “script” programs, part of the HTML document, that respond to what the user types in.

Basic interactions supported: interact with images, hypertext links,

forms

Page 17: Introduction to Interactivity for the Web

Scripting Examples

http://library.utoronto.ca

http://www.microsoft.com

Advanced Scripting Information

http://developer.netscape.com/tech/javascript/index.html?content=/docs/examples/javascript.html

http://msdn.microsoft.com/workshop/author/?RLD=70

Page 18: Introduction to Interactivity for the Web

Scripting Advantages

Local interaction Does not need Internet Does not depend on network speed

Disadvantages Local interaction Transparent to reader (can cheat, if

know how)

Page 19: Introduction to Interactivity for the Web

Current Scripting Issues

Netscape / Microsoft Incompatibility

Use two different ways of programming complex scripts “universal” scripts hard, if not impossible

New standards will help a lot

Page 20: Introduction to Interactivity for the Web

Browser Plugins

Special program to interpret data Embedded/installed on user’s computer Special formats otherwise not viewable Allows dynamic interaction with those data

Examples: http://www.utoronto.ca/ian/books/html4ed/chap2/

embed.html http://www.musicface.com

Page 21: Introduction to Interactivity for the Web

Plugin Advantages

Can process/interact with different data Streaming Audio/video Multimedia presentations Spreadsheet data, Virtual Reality

Problems Must install the plugin on all machines

Page 22: Introduction to Interactivity for the Web

Java Programs

A bit like plugins, but actually mobile programs

Download the program, run it locally

Java language makes this safe

Page 23: Introduction to Interactivity for the Web

Some Java Examples

Instructional Tools http://www.dgp.utoronto.ca/people/JamesStewart/applets/

Pure Toyshttp://www.litecom.se/java/rollerboy/

Page 24: Introduction to Interactivity for the Web

Applets -- Plus/Minuses

Run locally, and can be downloaded Can be distributed on CD-ROMS

Can be slow to download, or to run

Java compatibility problems

Page 25: Introduction to Interactivity for the Web

Mixed-Mode Interactivity

JavaScript can interact with Java applets

Java programs can interact with a remote server

Java/JavaScript can interact with plugins

Page 26: Introduction to Interactivity for the Web

Multiple Interaction Levels

WebServer

Browser

Sd fdsa as dfsaasdf asd asd asd

asdfasd asd tasdf asfd as asdf Sd f

dsa as dfsaasdf asd asd asd

asdfasd asd tasdf asfd as asdf

Sd fdsa as dfsaasdf asd asd asd

asdfasd asd tasdf asfd as asdf Sd f

dsa as dfsaasdf asd asd asd

asdfasd asd tasdf asfd as asdf

Sd fdsa as dfsaasdf asd asd asd

asdfasd asd tasdf asfd as asdf Sd f

dsa as dfsaasdf asd asd asd

asdfasd asd tasdf asfd as asdf

Sd fdsa as dfsaasdf asd asd asd

asdfasd asd tasdf asfd as asdf Sd f

dsa as dfsaasdf asd asd asd

asdfasd asd tasdf asfd as asdf

Sd fdsa as dfsaasdf asd asd asd

asdfasd asd tasdf asfd as asdf Sd f

dsa as dfsaasdf asd asd asd

asdfasd asd tasdf asfd as asdf

Sd fdsa as dfsaasdf asd asd asd

asdfasd asd tasdf asfd as asdf Sd f

dsa as dfsaasdf asd asd asd

asdfasd asd tasdf asfd as asdf

Sd fdsa as dfsaasdf asd asd asd

asdfasd asd tasdf asfd as asdf Sd f

dsa as dfsaasdf asd asd asd

asdfasd asd tasdf asfd as asdf

GatewayProgram

database

???

JavaScript

JavaApplet

text

form

Other program

Page 27: Introduction to Interactivity for the Web

Summary

Interactivity on the Browser Script programs (JavaScript) Embedded plugins/objects Java applets

Interactivity on the Server Server programs, interacting with

browser user input mechanisms

Page 28: Introduction to Interactivity for the Web

Summary (2)

Client interactivity can interact with server Increased range of interaction

possibilities

More difficult to do, fewer canned tools

Page 29: Introduction to Interactivity for the Web

Introduction to Interactivity for the Web

Ian GrahamTel: 978.4548

Email: [email protected]

Web: www.utoronto.ca/ian/talks/

The End