THE ZIGZAG® KOOLAID® -- BECOMING A BELIEVER, AND WHERE DO WE GO?
Theodor Holm Nelson, Founding Designer, Project Xanadu
Note: "ZigZag" is a registered trademark of Project Xanadu. "LifeDimensions™", "Walkie-Thinky™", "Zzogl™" and "SpiralTime™" are claimed trademarks of Project Xanadu. "Kool-Aid" is a registered trademark of Kraft Foods, Inc. "Lego" is a registered trademark of The Lego Group.
ZigZag is an idea, some working systems, an ideology, a dream, and some possible products which we think may be revolutionary.
The medium-term issue is to decide what products to work on.
The immediate issue (i.e., this paper) is to explain the ideology and the dream. But briefly we'll cover the idea and the systems:
THE IDEA: reduce spreadsheet to connectable cells that can be assembled like Lego blocks. You can build not just just rectangular tables, but acrostics and remarkable shapes, some of which can be very useful.
This is zzstructure.
Zzstructure puts everything in rows and columns that can be traversed with arrow keys-- up, down, left and right. (Also forward, away from the user, and back, toward the user.) This includes text data cells, executable cells to run programs, visualization cells (such as video), and clusters of cells to represent relations.
THE SYSTEMS SO FAR: specific software implementations, mostly with the common interface (KBLANG, Keyboard LANGuage) designed by Nelson and Pam in 1996. Mainly--
- Azz, by Nelson and Pam starting in 1996
- Gzz, by Nelson with Tuomas J. Lukka and team in Finland, 1999-2001.
- Mzz, under development by Mat Korica in Toronto.
- Jozz, a reference prototype under development in Python by Nelson and Josh Juran, currently in Maryland.
- A vivid and beautiful prototype by Rob Smith is at
- zzstructure can replace spreadsheets and tables, making them more general and more flexible
- zzstructure can replace conventional database. (We have been approached by people from W3C, wanting to use it for viewing triplestore databases, but the patens may keep them at bay.)
- zzstructure can replace hierarchies with a more general and flexible structure
- zzstructure can provide an alternative to the PUI (Parc User Interface, also called "the modern GUI"), with many advantages
- zzstructure can be used for a completely different form of application development ("applitude"), with all data maintained in ZigZag, operations in zzcells, input mapping in ZigZag and defining new zzviews.
- zzstructure can be used for scientific visualizations and animations COMBINED with database (see Adam Moore's video at
Starting with the Reference Implementation now in progress, we build a series of versions for different purposes that can be deployed for an entirely new computer world-- not starting over, but--
- providing new rational building blocks
- providing new views and controls over what's there already.
=== === === SOME BIG IDEAS
=== LIFEDIMENSIONS™ DISTRIBUTABLE.
This would be "Quicken for everything", providing a way to keep track of people, places, events, money and their interconnections. Distributed first to the technical community, simple interfaces could be added one at a time for regular users.
This could be an application and/or a web service.
=== SKIN OVER WINDOWS, MAC AND LINUX
This would provide a skin and different appearance, easily turned on and off, for Windows and Mac and Linux.
- rearrange files virtually, not as hierarchies
- rearrange their menus and make macros
- provide customizable interfaces, invoking THEIR software with ZigZag,
APPLITUDE ENGINE-- a completely different system of developing applications. (This worked in developing XanaduSpace.) With all data held in ZigZag, and all presentations as ZigZag views, it's simply easier.
SOME EASY APPLITUDES TO BUILD--
Money log, easier than Quicken => export to Quicken
This will allow people to type with one hand while walking or driving, and hear the result in an earphone.
(To be prototyped on a Raspberry Pi with numerical keypad input and Bluetooth output.)
Extended model: flip into ZigZag itself and use for such applications as dictation.
THE ZZOGL™ VIEW ENGINE (prototyped inside XanaduSpace)
This controls screen views, allowing users to rotate into any combination of dimensions. It makes possible views, and continuities of views, never before seen.
SPIRALTIME™ CLOCK/CALENDAR (prototyped in Japan)
This is a clock/calendar that can be expanded to centuries or narrowed to a second, with annotation of time-slots.
WINDOW TO RELATIONAL DATABASE
This is for someone else to design.
(Also needs input to and from relational database.)
Transaction manager, to and from Quicken
Spreadsheet, to and from Excel
CONNECT TO CONVENTIONAL TEXT AND SPREADSHEET
View zzstructure as text or spreadsheet. Export to and from them.
Visualization of great structures,
e.g. the recent
"TREE OF LIFE" (from Duke U.)
=== === === BIBLIOGRAPHY
=== PREV. ARTICLES OF SPECIAL INTEREST
What's On My Mind
ZigZag home page
(Tutorial) THE CONNECTIONS of ZigZag®
Wikipedia Article: ZigZag (software)
A Cosmology for a Different Computer Universe: Data Model, Mechanisms, Virtual Machine and Visualization Infrastructure
= Some especially good articles from Finland--
A Gentle Introduction to Ted Nelson's ZigZag Structure
GZigZag - A Platform for Cybertext Experiments
Ted Nelson's ZigZag technology
=== STUFF TO WATCH
Ted Nelson on ZigZag® Data Structures
ZigZag® Visible Database-- Adam Moore presents Bioinformatics