[Note: This course was held as announced below. Here is the list of
participants.]
I.S.I. Foundation, Villa Gualino, Turin, Italy
June 26--30, 2000
Knowledge Structuring:
The Substance of Information Technology
Prof. Tommaso Toffoli, Boston University (tt@bu.edu)
A condensed course (five days, nine two-hour lectures) for
student and researchers in
- Computer Science and Engineering
- Information Technology
- Information Sciences (documentation, library management, etc.)
- Communication Sciences (mass media, distance learning, etc.)
- Sociology
- Business Management
This course aims to provide a unifying rationale for the vast array of
concepts and techniques of today's information technology: Why are we doing
all of this and where do the single pieces fit in the overall picture? This
unifying theme is Knowledge Structuring, an adaptive necessity for
business organizations, social institutions, and---not the least---human
individuals.
Lectures of a more conceptual nature (afternoons) will alternate with
lectures of a more technical contents (mornings). Early afternoons will be
available for hands-on practice.
Prerequisites: Computer literacy, some exposure to
programming. Strong interest in issues of computer and society. Ease to move
back and forth between conceptual and pragmatic levels of discourse.
(This is a very condensed version of a one-term course originally
developed for Carnegie Mellon University, School of Computer Science, and
Boston University, Electrical and Computer Engineering Department, and
targeted at Master of Science students in Information Technology.)
Summary of lessons
- Introduction: Knowledge and knowledge
structuring: a natural sphere of action for the computer and the Internet
-
Semantic tagging: indexing and cataloging; hypertext, markup schemes; XML and all that
-
Fundamental idea #1: Surface structure vs deep representation
- Information capacity vs computation
capacity. Standards in information encoding and knowledge transmission
-
Fundamental idea #2: Scripting: a self outside of our self.
The way to talk to a computer
-
On the engineering of intention and rationale; hierarchy, modularity, encapsulation; objects
- Fundamental idea #3: To model is to
understand. Just-in-time models. Expert systems
-
Ownership and privacy issues
- Fundamental idea #4: Knowledge structuring
as adaptation: lessons from evolution. The individual and the organization
are different organisms and thrive on different forms of knowledge
- Knowledge and knowledge structuring
- Examples of knowledge structuring activities.
- Knowledge is possession of useful models of the world.
- The acquisition of knowledge on the part of a system (an individual or an
organization) is inherently a process of modification of the system
itself, entailing pain and expense.
How can we organize knowledge so that the system can achieve large
functional enhancements through reasonably small structural
modifications? This is the underlying theme of the course.
- In the planning of knowledge artifacts, the nature of the intended
recipient is an essential design component; different systems require
different information-structuring strategies.
- Semantic tagging: indexing and cataloging,
hypertext, markup; XML and all that. Applets.
- Citations, keywords, catalog cards. Conventional databases.
- From typesetting to just-in-time Internet publishing.
- Structured markup languages: SGML, XML. One map can say different things
to different travelers.
- What happens when passive annotations are replaced by objects capable of
action?
- Fundamental idea #1: Surface structure vs deep representation
- Both in nature and in engineering, complex objects are fabricated from a
recipe ("how to make it"), not from a picture ("what the
finished product looks like").
- Limits of the WYSIWYG ("What you see is what you get") interface;
literate use of the computer requires even the layman to be, on a humble
scale, a prototyping designer, and thus be comfortable with moving up and
down between surface structure and deep representation.
- The "split-screen" metaphor as a modern alternative to WYSIWYG: you edit
the design plans in one window; the computer shows you in real time
the resulting product in another window. Pedagogical and technical
advantages of this approach.
- Information capacity vs computation capacity. Standards in information encoding and knowledge transmission
- Tradeoffs between storage, communication, and processing. Compression schemes.
- Fungibility of information channel capacity. Fungibility of processing capacity.
- Hierarchical storage and caching. Search engines. Just-in-time computation.
- Language and literacy. The birth of international standards.
- Languages, romanization, and transliteration. ASCII and Unicode.
- UNIX and Windows; the WWW Consortium. Graphic file formats. HTML.
- Most standards go extinct; a good document is able to "jump hosts".
- Human individuals as incompatible operating systems; ways to help make
their knowledge interchangeable.
- The "informal records" alternative to semantic tagging: examples,
advantages and costs.
- Fundamental idea #2: Scripting: a self outside of
our self. The way to talk to a computer
- Scripting as the natural way to externalize and share "how to".
- The dual nature of a script: an editable, passive object,
and a real-time, active recipe.
- Existing scripting languages. Desiderata for better ones.
- Giving orders, documenting, making dependencies explicit, expressing
intention. The UNIX "make" discipline.
- Documentation: after or before the fact?
- Scripting as a tool for cultural transmission.
- On the engineering of intention and rationale; hierarchy, modularity, encapsulation; objects
- From lines of comments to lines of code.
- Goals and reasons are vital elements of
maintainable design; can we begin to automate their handling?
- What kinds of knowledge-structuring efforts will this require?
(Cf. automated typesetting, program compilation, object-oriented discipline,
VHDL.)
- The problem with monolithic constructions: they are old as soon as they are
born.
- Artificial intelligence vs externally-supported human intelligence.
- Do we have to die 100%? The art of picking (and pickling) one's brain.
- From Simula to Java. Nonlocalized computing.
- Fundamental idea #3: To model is to
understand. Just-in-time models
- Various kinds of models. Conceptual models; simulation models. Knowledge
representation schemes.
- Statistics vs mechanism as a basis for prediction.
- Object databases, enterprise modeling, and decision support systems.
- Various forms of capturing and reusing expertise: expert systems,
systems for experts, expertise on demand.
- Custom integration of independently-developed expertise resources.
- Ownership and privacy issues
- Accessibility and copyability of information. Property rights; pay-per-use;
open source.
- Web pages are public but volatile; can I "memorize" them? And to what
extent do I own my memories?
- Knowledge structuring adds value; who owns this value?
- The knowledge that benefits one may be a threat to others.
- Privacy; protection from view vs protection from trampling.
- Cryptography: algorithmic and physical pieces of armory.
- Fundamental idea #4: Knowledge structuring as adaptation: lessons from evolution.
- Competition, sociality, and symbiosis. Multiple levels of adaptation.
- Where is the knowledge located? The Chinese room paradox.
- The individual and the organization are different organisms and thrive
on different forms of knowledge.
- The support of corporate knowledge. A company's nervous system. Distributed
knowledge.
- The individual's many roles. Long-term structuring vs knowledge
prototyping.
- What knowledge functions can corporate enterprise outsource to the
individual?
- Support and enhancement of the capabilities of the individual. Personal
knowledge structuring. "The best way to learn something is to write a book about it".
- External parameters and symmetry breaking; standardization and
innovation.
- Knowledge structuring is a valuable and expensive process; it deserves
a thought.