The History of X: Lessons for Software Freedom – Keith Packard
1984 – The Origins of X
- Everything proprietary
- Brian Reid and Paul Asente: V Kernel -> VGTS -> W window system
- Ported to VAXstation 100 at Stanford
- 68k processor, 128k of VRAM
- B&W
- Bob Scheifler started hacking W -> X
- Ported to Unix , made more Unix Friendly (async) renamed X
Unix Workstation Market
- Unix was closed source
- Vendor Unix based on BSD 4.x
- Sun, HP, Digital, Apollo, Tektronix, IBM
- this was when the configure program happened
- VAXstation II
- Color graphics 8bit accelerated
- Sun 3/60
- CPU drew everything on the screen
Early Unix Window System – 85-86
- SunView dominates (actual commerical apps, Ddesktop widgets)
- Digital VMS/US
- Apollo had Domain
- Tektronix demonstrated SmallTalk
- all only ran on their own hardware
X1 – X6
- non-free software
- Used Internally at MIT
- Shared with friends informally
X10 – approx 1986
- Almost usable
- Ported to various workstations
- Distribution was not all free software (had bin blobs)
- Sun port relied on SunView kernel API
- Digital provided binary rendering code
- IBM PC/RT Support completed in source form
Why X11 ?
- X10 had warts
- rendering model was pretty terrible
- External Windows manager without borders
- Other vendors wanted to get involved
- Jim Gettys and Smokey Wallace
- Write X11, release under liberal terms
- Working against Sun
- Displace Sunview
- “Reset the market”
- Digital management agreed
X11 Development 1986-87
- Protocol designed as croos-org team
- Sample implementation done mostly at DEC WRL, collaboration with people at MIT
- Internet not functional enough to property collaborate, done via mail
- Thus most of it happened at MIT
MIT X Consortium
- Hired dev team at MIT
- Funded by consortium
- Members also voted on standards
- Members stopped their on develoment
- Stopped collaboration with non-members
- We knew Richard too well – The GPL’s worst sponsor
- Corp sponsors dedicated to non-free software
X Consortium Standards
- XIE – X Imaging Extensions
- PIX – Phigs Extension for X
- LBX – Low Bandwidth X
- Xinput (version 1)
The workstation vendors were trying to differentiate. They wanted a minimal base to built their stuff on. Standard was frozen for around 15 years. That is why X fell behind other envs as hardware changed.
X11 , NeWs and Postscript
- NeWS – Very slow but cool
- Adobe adapted PostScript interpreter for windows systems – Closed Source
- Merged X11/NeWS server – Closed Source
The Free Unix Desktop
- All the toolkits were closed source
- Sunview -> XView
- OpenView – Xt based toolkit
X Stagnates – ~1992
- Core protocol not allowed to change
- non-members pushed out
- market fragments
Collapse of Unix
- The Decade of Windows
Opening a treasure trove: The Historical Aerial Photography project by Paul Haesler
- Geoscience Australia has inherated an extensive archive of hisorical photography
- 1.2 million images from 1920 – 1990s
- Full coverage of Aus and more (some places more than others)
Historical Archive Projects
- Canonical source of truth is pieces of paper
- Multiple attempts at scanning/transscription. Duplication and compounding of errors
- Some errors in original data
- “Historian” role to sift through and collate into a machine-readable form – usually spreadsheets
- Data Model typically evolves over time – implementation must be flexible and open-minded
What we get
- Flight Line Diagrams (metadata)
- Imagery (data)
- Lots scanned in early 1990s, but low resolution and missing data, some missed
Digitization Pipeline
- Flight line diagram pipeline
- High resolution scans
- Georeferences
- Film pipeline
- Filmstock
- High Resolution scans
- Georeference images
- Georectified images
- Stitched mosaics + Elevation models
Only about 20% of film scanned. Lacking funding and film deteriorating
Other states have similar smaller archives (and other countries)
- Many significantly more mature but may be locked in propitiatory platforms
Stack
- Open Data ( Cc by 4.0)
- Open Standards (TESTful, GeoJSON, STAC)
- Open Source
- PostGreSQL/PostGIS
- Python3: Django REST Framework
- Current Status: API Only. Alpha/proof-of-concept
API
- Search for Flight runs
- Output is GeoJSON
Coming Next
- Scanning and georeferencing (need $$$)
- Data entry/management tools – no spreadsheets
- Refs to other archives, federated search
- Integration with TerriaJS/National Map
- Full STAC once standardized