Late 60’s and early 70’s Xero was a major player in the office automation space. Innovative work on user interfaces was happening at Rand Corporation(JOSS, Tablets, GRAIL), Stanford Research Institute (Doug Englebart, Personal Interactive Computing, Mouse etc) and MIT/Lincoln Laboratories (Ivan Sutherland / Sketchpad). Xerox gave Alan Kay and his team at their Palo Alto Research Centre (PARC) free reign to explore human computer interaction. Alan had worked on ARPANET and did a PhD on the FLEX machine, a precursor to a truly personal computer. He conceived the “Dynabook” which conceptually defined a tablet (think iPad, but easier for the user to program and tailor) in 1968!
Amazing things came out of PARC, including:
Object oriented programming for UI and general purposes
Smalltalk (still one of the best, purest, easiest to learn and productive general purpose languages available today)
Keyword syntax facilitating domain / application specific languages
Just in Time Compilation (JIT) and Virtual machine execution of bytecodes allowing systems to be ported easily across hardware
Integrated Development Environment (IDE ) with introspection
Bitmapped displays with graphics and fonts
Image storing state of system allowing easy and instant persist/restore and continuation of work
Model View Controller (MVC) paradigm for separation of domain model, business logic and user interface
Windows, Icons, Mouse and Pointer (WIMP) paradigm with overlapping, resizeable windows and the whole Graphical User Interface
Text, Image and Document editing with What you See is What you Get (WYSIWYG)
Laser printing
Ethernet
We owe these pioneers a major debt of gratitude! Subsequent developments include:
GUIs at Apple (licensed from Xerox) then Ms Windows (Imitated)
Objective C, the major systems language at Apple (Smalltalk ideas and class libraries on top of C) - the precursor of Swift
Object oriented databases
Office suites - Charles Simonyi did Bravo at PARC on the Alto system, the first WYSIWYG document editing system. He later spent 20+ yrs at Microsoft and created Word and Excel
OO in general, Smalltalk being a major influence on Java, Javascript, Ruby, Eiffel, Dart and many other languages. It is a direct ancestor of Squeak, Pharo, Amber and Newspeak
eXtreme & Pair programming (Kent Beck, Ward Cunningham) and aspects of Agile Development
Live programming/ debugging
Test Driven Development (SUnit, Kent Beck)
Agile Visualisation (Roassal)
Moldable Tools (Tudor Girba, GTools)
EToys and Scratch visual programming for children
I saw Smalltalk ideas in the 1981 Byte article, got hands on and seduced in 1991, and we have used it ever since in our products and tools. Capers-Jones 2017 research confirms Smalltalk still offers a 2-3x productivity improvement over mainstream languages. Vive la difference!