Given by Geoffrey C. Fox at Rice University Tango Tutorial on October 18 1999. Foils prepared October 19 1999
Outside Index
Summary of Material
We describe the technology components that are needed to support distance education and training
|
This model will succeed because it will provide more cost effective and higher quality learning environments |
Greater use of emerging standards such as XML will improve situation |
Outside Index Summary of Material
Rice Tango Training |
Houston October 18 1999 |
Geoffrey Fox |
Syracuse University |
NPAC |
111 College Place Syracuse NY 13244 4100 |
3154432163 |
We describe the technology components that are needed to support distance education and training
|
This model will succeed because it will provide more cost effective and higher quality learning environments |
Greater use of emerging standards such as XML will improve situation |
Pervasive Communication Infrastructure (The Internet) and powerful new software technologies and concepts
|
Can enable education and training with
|
Can also change/enable businesses, research, electronic societies |
Need to implement so that
|
New and rapidly changing Academic Curriculum suggest the use of distance education as it will allow a few experts to deliver instruction to more students and this addresses both
|
Distance Education is technically sound based on web curricula-- both synchronously and asynchronously -- today with very robust clear implementations available over next 2 years |
Both delivery mechanism and identification of knowledge nuggets (such as Internetics or computational science) that are smaller than a traditional degree suggests different approaches to certification
|
Similar arguments for distance training with relative importance of synchronous and asynchronous learning differing by customer group |
Professors |
Students |
Common Shared Books and Such Resources |
Done separately for each class at each university |
Often |
Low |
Quality |
Professor at AVU |
(AnyTown Virtual University) |
with team of authoring specialists |
Outside |
Students |
(dominant clientele) |
Common Shared Books Web based Lecture Material |
and Similar Resources |
Institutions focussing on particular disciplines, teach a given class |
to Students from Universities which provide beds and mentors |
Possible local Students |
INTERNET |
Classes are |
given by |
AVU |
to students |
around |
the state |
(world) |
Taught using Tango since fall 97 over Internet and defense high performance network DREN twice a week from Syracuse
|
Jackson State major HBC University with many computer science graduates |
Do not compete with base courses but offer addon courses with "leading edge" material (Web Technology, modern scientific computing) which give JSU (under)graduates skills that are important in their career
|
Needs guaranteed 30 (audio) to 100 (video) kilobits per second bandwidth
|
NPAC Web Server |
JSU Web Server |
Java Tango Server |
....... |
Share URL's |
Audio Video |
Conferencing Chat Rooms |
White Boards etc. |
Address at JSU of Curriculum Page |
Teacher's View of Curriculum Page |
Student's View of Curriculum Page |
Participants at JSU |
Teacher/Lecturer at NPAC |
....... |
Java Sockets |
HTTP |
Java Control Clients |
All Curricula placed on the Web |
Collaboration means sharing objects |
Web-based Collaboration implies use of Web to share distributed objects accessible through the Web
|
Specify Page |
Receive Identical Page |
Web Site |
Assess and install the rapidly changing hardware and software technology infrastructure |
Design of (possibly new as exploiting new possibilities) curricula |
Authoring of material in curricula |
Managing the material and students response to it including quizzes, grades and administration |
Delivery of the material in a mix of self-paced (asynchronous), traditional (synchronous) or collaborative (interactive) |
Good answers to all these components are pretty clear and these answers will match the evolution of web over next few years
|
Learning is an example of an activity which can be thought of in terms of objects (digital audio streams when you talk, books, homework, science fair exhibits) worked on alone or together -- either between students or students and teacher
|
Collaboration can be synchronous as when individuals talk to each other
|
Or asynchronous when sharing is done at different times |
I post a web page and you look at it later is a basic asynchronous sharing model while writing on a blackboard is hallowed synchronous model in teaching |
All objects can be thought of as web pages as these are rendering of a server side object
|
Shared Multiple List |
Shared Buttons |
Shared Text field |
Shared Checkbox |
Assume teachers, students, engineers, shoppers, salespersons, families teach, learn, collaborate, buy, sell, socialize via electronic versions of traditional human interactions combined with shared objects expressed in XML and rendered as web pages
|
Only shared event model (used in Tango) of sharing (collaboration) is capable of necessary efficiency and customization to each user |
http://www.npac.syr.edu/tango |
Largely Java system enabling collaboration between general client side objects
|
API Enables sharing of events in applications
|
API Enables applications to find out about participants |
Currently ONLY deployed for Netscape version 4.05 and above as uses LiveConnect to connect JavaScript to Java
|
Tango 2.0 is about as good as you can do with current web
|
Tango supports a synchronous shared event model of collaboration |
Tango supports (more than) enough (over 40) applications |
Core Collaboration Capabilities
|
Databases Linkage
|
Office and Authoring Tools
|
Disappointing Use |
General Virtual University Applications
|
Special Virtual University Applications
|
Not Used |
Shared Pointer added to Internet Assistant PowerPoint on the Web |
Illustrates sharing of W3C Object Model internal to documents |
DHTML "Heartbeat" recording shared events in last 60 seconds on application specific "bar" which is locked above all windows -- addresses window clutter |
More Powerful than Java Shared Browser but currently less reliable |
Partly as software newer and |
Partly as DHTML Browser support fragile |
Have some fun with Multi-player games
|
"Other" Applications
|
Obsolete |
Currently most use is of Tango 1.4 which gets s series of minor releases so that now you download Tango 1.4.2.1
|
Available for Experimentation is Tango 2 which has important but evolutionary changes
|
We have a version MicroTango (really an application change -- not a system change) which is aimed at supporting Palmtop devices |
We are designing/prototyping a radically new version "Tango5" built around XML Shared Portals with early prototype January 2000 |
TANGO 1.4 requires browser plug-in |
Compatible with Netscape Communicator 4.06+ and 4.5, 4.61
|
The package has been tested for ~15 months |
Supported browsers: all Netscape 4 versions up to Communicator 4.61 (not v. 4.6 as serious bugs in browser!)
|
N: Netscape Browser |
LD: Local Daemon |
CA: Control Application |
AP: Applet |
LA: Local Application |
CS: Tango Java Server |
DB: Collaboration Database (XML now) |
HTTP: Web Server / Object Broker |
Client |
Client |
Collaboration Server |
Object/Content Server |
Local Daemon's main tasks:
|
The daemon is implemented as a plug-in to Web browsers.
|
Java Tango |
Server |
Netscape Browser |
Tango |
Daemon |
Shared Applet 1 |
Shared Applet 2 |
Shared |
Java/C++/.. |
Application |
Socket Connections |
Client Side Bus |
Netscape's |
LiveConnect |
Typical Client |
Other |
Collaborating |
Clients |
Shared |
JavaScript/ Web Page |
Tango CA |
Central Server is the main communication element.
|
TANGO server is extremely stable and maintenance-free
|
Java applets
|
Local Applications:
|
Daemon provides a mechanism for TANGO components such as Java applets, central server, JavaScript scripts etc. to talk to each other. |
TANGO daemon has been implemented as a plug-in. |
Using LiveConnect mechanisms, each applet residing in the same page with the plug-in may obtain its handle. |
Message passing between plug-in and an applet is achieved by calling appropriate methods of each other |
Session Manager provides TANGO GUI
|
Since TANGO uses central server architecture, there are system scalability concerns. |
System makes careful distinction between event and data distribution pathways
|
For scaleability reasons, the real time multimedia streams are not sent via central server.
|
A blueprint for a truly successful collaboratory system does not exist. Hence:
|
The essence of each collaboratory function must be defined by application and by application only |
TANGO does not define any application protocols |
A session is a group of application instances currently working together in the collaborative mode.
|
In all sessions there is one master user.
|
Master status is dynamically transferable. Floor control allows for both master-master and master-slave relationship
|
TANGO does not restrict the number of concurrent sessions. There may be multiple independent sessions of applications of the same type. |
Messages from one application compatible with application of another type will be distributed transparently. |
NOTE: current model confuses floor control and session ownership. It will be replaced by two distinct mechanisms in version 2.1 |
Currently supported operations:
|
SM implements "intelligent interface" |
SM supports different "privacy" models on the global and "per application" basis |
For each supported mode
|
You can communicate between linked clients to preserve state
|
You can find out list of participants
|
Significant but evolutionary improvement to Tango 1.4 |
Too a lot longer than expected and still in beta stage
|
Capability TI 1.4 TI 2.0 |
Core tools (BV, SB, WBD, Chat, etc.) + + |
Shared dynamic HTML support + + |
Shared Document Object Model + + |
Shared Java applets + + |
Shared Java in pages - + |
Shared JavaBeans - + |
SWING-based interface - + |
User authentication - + |
Personal Identity Module - + |
Capability TI 1.4 TI 2.0 |
Server licensing - + |
File repositories - T2.1 |
Fully-integrated e-mail support - + |
Listserv Support - T2.1 |
"Awareness" service (like AIM) - + |
Site-configurable/customizable interface + + |
Internet Explorer support - T2.1 |
"Out-of-browser" implementation - T2.1 |
Shared visualization - T2.1 |
Shared compute engine + + |
Shared web-linked database + + |
Multi Player Games: Use Chat Rooms and digital VTC to establish context
|
Crisis Management: Again use general tools (including whiteboard) and add shared maps and multimedia situation reports |
Command and Control: Military, Test and Evaluation -- any real time control of complex system
|
Collaborative Computing and Engineering: Here specialized shared objects are CAD, simulation and planning tools |
UpScale Web Commerce Sites with people available to help shoppers and lecture on demand |
Socializing ..... |
Electronic Communities |
CRISIS MANAGEMENT |
PLAY GAMES |
Prepare Data |
disloc proxy |
Post Process |
Generate disloc input |
disloc proxy |
disloc2simplex proxy |
simplex proxy |
compare |
disloc code written in C |
disloc2simplex script written in perl |
simplex code written in C |
Front End: |
Java Applet. |
CORBA client |
Middle Tier: |
distributed objects |
implemented in Java. |
CORBA servers |
Back End: |
computing |
resources |
Iterate |
Collaborative Earthquake Portal |
Results put in Shared Browser |
Collaborative Post Earthquake Analysis |
SV2-Server : Receiving and multi-casting the data, it contains two computation engines: geometry and filter engines.Simulator provides real time data to SV2-server. |
SV2-Client : It consists two parts, a client Manager and a Data Viewer. Data Viewer is implemented using JDK1.2 and Java3D API |
Large Data sets and Control messages are separated (through SV2 Server and Tango respectively) |
Substantial computing is needed on SV2-Server . This computing time is critical to the response time of the whole system. Critical Server portions written in C++. Rest of System Java |
Usually simulator is written in Fortran/C/C++ instead of Java.In SV2, we provide C API for simulator to pass Data to SV2-Server |
Data Viewer 1 |
Data Viewer 2 |
Client |
Manager |
Data Viewer 1 |
Data Viewer 2 |
Client |
Manager |
Tango |
SV2 Server |
Simulator |
Control message |
Data |
SV2 Sample Screen/Window Dumps |
So the students need to learn the material and they may need some sort of help from a teacher or mentor |
In self paced or asynchronous learning, student studies material in his or her own time and essence of this is a web site which may of course be generated from a back-end web-linked database
|
In synchronous learning, teacher selects material from website and delivers it in electronic virtual class rooms
|
In collaborative learning, teachers, assistants, students and the web resource interact in an electronic collaboration system
|
Note systems like Lotus Notes are "just web-linked object brokers" from this point of view (and again should be avoided as not built around modern object models) |
All approaches use basic asynchronous tools such as electronic mail, bulletin boards and searchable repositories |
Can record synchronous sessions for later asynchronous replay |
One need not chose any one approach as can support all of them with a (preferably database back ended) web site linked to a suite of collaboration tools |
Note just as we can link asynchronous--synchronous--collaborative, we can also link education and training
|
Overall Management of a lecture viewed as part of a learning environment built around a Web Resource |
Audio/Video Conferencing |
Chat Rooms and electronic mail for synchronous and asynchronous messages |
Shared Web Pages which can come from a database |
Whiteboard for communicating visual material |
Shared Java applets which can be embedded in web pages to allow interactive lesson components |
API to interface specialized resources -- Planning Tools, GIS Systems, CAD, Visualization .. -- not necessary for training? |
Author Curriculum using NO specialized systems or systems like WebCT that produce HTML or preferably XML
|
Add pointers and other such "WebWisdom" helpful DHTML capabilities (we can provide a filter) |
HTML Pages can be screenfuls (best?) or scrolled |
Put material on Web Server or CDROM; intersperse with other asynchronous resources |
Give your students URL of system |
If desired use registration database |
Set up necessary infrastructure with collection of individual machines and/or class rooms (PC's are best)
|
In a class room, establish proxy server and central machine for audio/video conferencing
|
Test system for
|
Decide on applications e.g. multiple chat rooms (teacher--students, "chitchat", "support") and their control |
So the architecture is that of a set of web accessible distributed objects which are designed to be as modular as possible
|
Initial design will be traditional -- include
|
In order of increasing sophistication; cost; preparation time and presumably also in increasing learning value |
Note "Low-end" can be best solution in a case where curricula material is changing rapidly
|
"Low-end" typified by simple HTML and PowerPoint. Of course hand written notes and postscript are even less sophisticated but these are getting less important. |
"Enhanced Low-end" typified by audio or video over web pages. Not clear how editing is possible/desirable
|
"Medium End" such as WebCT, Campus product from Blackboard LLC (mainly administrative, modest authoring), or Cornell Virtual Workshop where one provides knowledge at different levels of detail, glossaries, quizzes and dynamic instructional nuggets. |
"Traditional High End" such as the classic Multimedia CDROM ( or its web equivalent) prepared by sophisticated authoring tools such as Macromedia Director and with possibly professionally produced videos. |
These will move towards Web Standards using Web Video, Java plus Dynamic HTML and W3C based XML and DOM specification |
Note clear to me if authoring of educational material will differ from that of "ordinary documents"
|
There is no argument about Java the programming language -- there are some issues about Java the user interface builder |
First there are the battles between Sun Netscape and Microsoft which makes Java on the client less robust than Java on the server |
However Java allows to build totally general users interfaces and there appear to be no rules and nothing equivalent to style sheets in HTML/XML. |
Thus it does not seem practical to build cross disability and cross rendering device interfaces for arbitrary Java applet interfaces |
On the other JavaScript and dynamic HTML can do many things that you might have thought one needed Java for |
General Java visual interfaces need languages such as UML to describe interface object model? |
Motivated either by decreased cost or increased quality of learning environment |
Will succeed due to market pressures (it will offer the best product) |
Is technologically possible today and can only get better
|
In structured settings like briefings, lectures etc., support is easier as at fixed times and digital video of secondary importance |
Brainstorming and general "collaboration" technically harder |
"Centers of Excellence" ("Hermits Cave Virtual University") is natural entity to produce and deliver classes
|
University acts as an integrator putting together a set of classes where it may only teach some 20% but acts as a mentor to all |
Important issues as to certification and "natural unit of instruction" (smaller than typical degree) |
So as we have stored all our material in a database, managing it is equivalent to building an administrative support system for the database
|
Web export from database should support Educom's IMS standard for metadata to allow convenient webwide searches of repositories |
One needs special modules that accommodate
|
One needs database technology for
|
One needs web-linked seamless computing to support programming assignments
|
These capabilities are part of effort in Portals for Education and Computing ..... |
Database must archive lessons with LINKED curricula material and multimedia delivery |
LecCorder is integrated hardware & software system and will record live trainings or digitize taped events & publish on web quickly and easily as "foils over audio/video" |
Minimal human intervention |
Java viewer |
Good start but Incomplete -- need
|
Note MPEG, H263, Real Video versions..... |
Buy Blackboard if you can afford it! |
Tango 2 is about as good as you can do with current browsers |
When W3C DOM fully supported and XML is well established, we can evolve Tango and Shared Browser to provide richer interactive shared Web Pages |
Universal Access for different devices (Fully capable and impaired users) from PalmTops to PC's |
Greater use of XML Web components to customize sharing of Web Page components and specify dynamically and flexibly sharing policy |
Integration of asynchronous and Synchronous messaging Services (Tango drivers Pager) |
Integration of Tango and Database backends to provide "Portals to Education" |
Distance Education is technically sound -- both synchronously and asynchronously -- today with very robust clear implementations available over next 2 years |
Separate teaching mentoring and dormitory role of University |
Teaching and grading naturally performed by centers of excellence which need at least an order of magnitude more customers than a single faculty in order to be able to justify investment in course preparation and maintenance |
Continuing Education of growing importance and natural area to attack first -- corporate training is serious competition here and commercial deliverers have advantage? |
Not obvious that will save large amounts of money as students will need more not less mentoring in today's information-overrich world -- quality of educational experience will become more uniform and better |
We are meant to be short of employees trained in many important areas -- in particular computer science |
Syracuse has a few good course but Courses are incomplete and hard to keep up to date..... |
Nationally there is a complete set of excellent courses but most universities cannot offer quality complete program |
Technology for distance education is proven in concept and improving in robustness and functionality |
Networks are increasing in bandwidth ... |
This will lead to much better learning environments and total happiness for students ........ |
There is one minor problem! Existing University Infrastructure and K-12 Establishments will oppose this |
They will accept my courses if given as Syracuse University but not if done through www.webwisdom.org |