DistOS 2014W Lecture 5

From Soma-notes
Jump to navigation Jump to search

The Mother of all Demos (Jan. 21)

Introduction

Anil set the theme of the discussion for the week: to try and understand what the early visionaries/researchers wanted the computer to be and what it has become. Putting this in other words, what was considered fundamental those days and where do those stand today? It is to be noted that features that were easier to implement using simple mechanisms were carried forward whereas the ones which demanded more complex systems or the one which were found out to add not much value in the near feature were pegged down in the order. In the same context, the following observations were made: (1) truly distributed computational infrastructure really makes sense only when we have something to distribute (2) use cases drive the large distributed systems, a good example is The Web. Another key observation from Anil was that there was always a Utopian aspect to the early systems be it NLS, ARPANET or Alto; security aspects were never considered essential in those systems, as they were assumed to operate in a trusted environment.


Operating system
The software that turns the computer you have into the one you want (Anil)
  • What sort of computer did we want to have?
  • What sort of abstractions did they want to be easy? Hard?
  • What could we build with the internet (not just WAN, but also LAN)?
  • Most dreams people had of their computers smacked into the wall of reality.

MOAD review in groups

  • Chorded keyboard unfortunately obscure, partly because the attendees disagreed with the long-term investment of training the user.
  • View control → hyperlinking system, but in a lightweight (more like nanoweight) markup language.
  • Ad-hoc ticketing system
  • Ad-hoc messaging system
    • Used on a time-sharing systme with shared storage,
  • Primitive revision control system
  • Different vocabulary:
    • Bug and bug smear (mouse and trail)
    • Point rather than click

Class review

  • Engelbart died on July 2, 2013.
  • Engelbart himself called it an “online system”, rather than offline composition of code using card punchers as was common in the day.
  • “The Mother of all demos” is a nickname for Engelbart's 1968 computer demonstration at the JCC in San Francisco. Engelbart had a vision of utilizing computers to augment human intelligence.
  • What became of the tech:
    • Chorded keyboards:
      • Exist but obscure
    • Pre-ARPANET network:
      • Time-sharing mainframe
      • 13 workstations
      • Telephone and television circuit
    • Mouse
      • “I sometimes apologize for calling it a mouse”
    • Collaborative document editing integrated with screen sharing
    • Videoconferencing
      • Part of the vision, but more for the demo at the time,
    • Hyperlinks
      • The web on a mainframe
    • Languages
      • Metalanguages
        • “Part and parcel of their entire vision of augmenting human intelligence.”
        • You must teach the computer about the language you are using.
        • They were the use case. It was almost designed more for augmenting programmer intelligence rather than human intelligence.
      • It was normal for the time to build new languages (domain-specific) for new systems. Nowadays, we standardize on one but develop large APIs, at the expense of conciseness. We look for short-term benefits; we minimize programmer effort.
      • Compiler compiler
    • Freeze-pane
    • Folding—Zoomable UI (ZUI)
      • Lots of systems do it, but not the default
      • Much easier to just present everything.
    • Technologies that required further investment got left behind.
      • New languages used to be created all the time, whereas now it`s been standardized.
      • The mouse got picked up quickly, but hyperlinks only got picked up later on.
  • The NLS had little to no security
    • There was a minimal notion of a user
    • There was a utopian aspect. Meanwhile, the Mac had no utopian aspect. Data exchange was through floppies. Any network was small, local, ad-hoc, and among trusted peers.
    • The system wasn't envisioned to scale up to masses of people who didn't trust each other.
    • How do you enforce secrecy.
  • Part of the reason for lack of adoption of some of the tech was hardware. We can posit that a bigger reason would be infrastructure.
  • Differentiate usability of system from usability of vision
    • What was missing was the polish, the ‘sexiness’, and the intuitiveness of later systems like the Apple II and the Lisa.
    • The usability of the later Alto is still less than commercial systems.
      • The word processor was modal, which is apt to confuse unmotivated and untrained users.
  • In the context of the Mother of All Demos, the Alto doesn't seem entirely revolutionary. Xerox PARC raided his team. They almost had a GUI; rather they had what we call today a virtual console, with a few things above.
  • What happens with visionaries that present a big vision is that the spectators latch onto specific aspects.
  • To be comfortable with not adopting the vision, one must ostracize the visionary. People pay attention to things that fit into their world view.
  • Use cases of networking have changed little, though the means did
  • Fundamentally a resource-sharing system; everything is shared, unlike later systems where you would need to explicitly do so. Resources shared fundamentally sense to share: documents, printers, etc.
  • Resource sharing was never enough. Information-sharing was the focus.
  • Other interesting ideas in this work:
    • "His idea included seeing computing devices as a means to communicate and retrieve information, rather than just crunch numbers. This idea is represented in NLS”On-Line system”.
    • Engelbart thought of 3D scrolling (scrolling as in user movement/navigation in,, for instance, a browser), whereas we still limit scrolling to 2D.
  • Some information about NLS system:
    • 1) NLS was a revolutionary computer collaboration system from the 1960s.
    • 2) Designed by Douglas Engelbart and implemented by researchers at the Augmentation Research Center (ARC) at the Stanford Research Institute (SRI).
    • 3) The NLS system was the first to employ the practical use of :
      • a) hypertext links
      • b) the mouse
      • c) raster-scan video monitors
      • d) information organized by relevance
      • e) screen windowing
      • f) presentation programs
      • g) other modern computing concepts

Alto review

  • Fundamentally a personal computer
  • Applications:
    • Drawing program with curves and arcs for drawing
    • Hardware design tools (mostly logic boards)
    • Time server
  • Less designed for reading than the NLS. More designed around paper. Xerox had a laser printer, and you would read what you printed. Hypertext was deprioritized, unlike the NLS vision had focused on what could not be expressed on paper.
  • Xerox had almost an obsession with making documents print beautifully.


Alto vs NLS

Application Alto NLS
Text Processing
Drawing (Graphics)
Programming Environments
Documentation
Email (Communication)
Reading
WYSIWYG
Hardware Design

NLS and Alto both had text processing, drawing, programming environments, some form of email (communication). Alto had WYSIWYG everything.

Alto not built on a mainframe. NLS 'resource sharing' was based around the mainframe. So essentially, NLS didn`t have resource sharing since it was just one machine (i.e., it`s all shared). Alto had the idea of sharing via the network (i.e., printer server).

Alto focused a lot less on 'hypertext' and less on navigating deep information. It was designed around the idea of paper. It implemented existing metaphors and adapted them to the PC. Alto people came from a culture that really valued printed paper. It is important and interesting to make a note of technology that falls away or becomes obsolete.