Wednesday, March 01, 2006
Augment Java Emulator
Today I'm trying to get an old Java-based terminal emulator that was created for signing into the existing Augment system. The goal is to learn how the existing system works before we clone it onto the web.
On the server-side, the original Augment code is running, but within an emulator as well; the emulator is simulating a PDP-10 computer system, but underneath it is a Xeon using Debian Linux!
Screenshots of emulator:
I'll be playing around with the system the next few weeks, learning it myself and explaining it through this blog to others.
Technorati Tags: hyperscope
On the server-side, the original Augment code is running, but within an emulator as well; the emulator is simulating a PDP-10 computer system, but underneath it is a Xeon using Debian Linux!
Screenshots of emulator:
- Install the Java Augterm yourself
- Read a page on how to use it to connect to the machine
- Read about using Augment
I'll be playing around with the system the next few weeks, learning it myself and explaining it through this blog to others.
Technorati Tags: hyperscope
Introducing the Hyperscope Project
Everything Old is New Again, or, Why You Should Care About Computer History
Imagine the year is 1968: mainframes rule the roost, the concepts of personal computers and collaborative systems are non-existent, and people's conception of the Human Computer Interface are punch cards and teletypes.You're invited to attend a demo in San Francisco, now known as The Mother of All Demos, at which the following is shown for the first time:
- The mouse
- Hypertext
- Collaborative groupware
- Audio and Video Conferencing with computers
- Email
- Windowing
- Outlining
- Compound documents, with text and graphs shown on the same page
- Interactive editing and word processing
- Shared, real-time editing of documents
To paraphrase William Gibson, the future had arrived far ahead of time, it just took 30 years to be evenly distributed.
The system was known as NLS, or oNLine System, and the team showing the demo was headed by Douglas Engelbart.
- View the demo yourself, using Google Video
- Read more about Douglas Engelbart on Wikipedia
- Read more about The Mother of All Demos on Wikipedia
We're going to start small; Douglas and his lab invented a great deal over the many decades of their research.
In the first phase of the Hyperscope project, mapped out to be the following six months, we are going to implement Engelbart and his team's advanced hyperlink system on the web, including some of the user interface of NLS.
In NLS (or Augment, as it was later renamed), a small command bar at the top of the screen could accept commands; below this command bar was the document that was being worked on. Users would type commands into the command bar, something like the command-line of a DOS or Unix terminal, and would use the mouse to click on portions of the document to interact with and operate on.
Some of these commands involved working with structured documents, including creating very rich hyperlinks between documents. In addition, these hyperlinks supported something called ViewSpecs, which made it possible to view the remote linked-to file in many sophisticated ways. I'll be going more into Augment's hyperlink and ViewSpec functionality in future blog posts.
In this first six months, we will be creating the shell of the Augment UI, described above, including the hyperlink, jumping, and viewspec functionality. We will probably be doing this using AJAX and DHTML, possibly using the Dojo Toolkit, so you can run Augment right within your browser without downloading anything. In addition, there will be a server-side component, written in Java or Ruby, that the AJAX/DHTML component will interact with.
The deliverable will be a URL you can go to "run" the Augment/Hyperscope system in your browser; you will be able to view Hyperscope documents, issue Hyperscope commands into the command bar, and use the advanced jumping, linking, and viewing capabilities of Hyperscope.
- Join the Hyperscope Announcement mailing list (low traffic)
- Join the Hyperscope Developers mailing list (higher traffic)
- View the Hyperscope Wiki
Hyperscope is not only about rebuilding Augment on the web as an important historical artifact; Engelbart was so far ahead of his time that there are still ideas in this system that can be incorporated into modern software. In addition, as we bootstrap Augment, we will start using it to build a community within it, using it as a super-charged Wiki. One of Engelbart's important ideas that has not been realized enough is that not only must computers change to accomodate humans, but humans also have the option of growing and learning to become more skilled at collaborative work. We'll put some of these ideas to the test as we build up an Augment/Hyperscope community, using Hyperscope itself to build it.
This first month, March, is about all of us comming up to speed on the original NLS/Augment system, learning how to use devices such as the chord keyset that Engelbart's lab invented, and prototyping small pieces of the system to see what design we will use. I'll be posting small prototypes of various portions here; all of this bootstrapping will be public.
In this first iteration, we will be translating the original NLS/Augment system as faithfully as we can into the browser, without changing it. Once we stabilize the core, we can begin to revisit portions, but for now it's meant to be a clone of the original.
Every week we have a two hour meeting with Engelbart and many of the original implementors, including Jeff Rulifson and Charles Irby. Every few weeks I'll take a question posted here on this blog by someone and ask Douglas Engelbart the question; to ask a question, post a comment to one of these Hyperscope blog posts with the subject QUESTION: added to the beginning; be sure to add your full name so when we blog the response we can give you credit.
Eugene will also be posting audio of the Tuesday meetings on the web; when I get a link for these I will post them here.
Technorati Tags: hyperscope, engelbart
Subscribe to Posts [Atom]