SlideShare a Scribd company logo
1 of 40
Download to read offline
The Allure of
Gothic Markup
Simon St. Laurent
York Minster, by GuyHH
DISCLAIMER
•  O’Reilly Media, Inc. bears no responsibility for the
content of this presentation. This presentation in
no way reflects the official views of O’Reilly Media,
Inc. No other O’Reilly employees were involved in
its creation. It exclusively represents the individual
perspective of Simon St.Laurent.
•  I am extremely lucky to have an employer that
allows these kinds of wanderings. You should find
one too, if you don’t have one already.
Ten Years Ago
Montreal
August 5, 2013.
St. Leonard Cohen de Montreal
‘When they
said
“REPENT”
I wonder
what they
meant.’
“The Future”, 1992. Photo by Hyacinthe Rambault.
We Are Fallen Creatures
Night Vigil, York Minster, photo by Catholic Church (England and Wales)
Don’t: Politics and Morality of Tech
John Ruskin, The Brezon and Alps of the Reposoir, seen from Mornex
The Problems Lie Deep
We Are Complicit – I Am Complicit
Electronic Frontier Foundation VersionPhoto by laughingsquid
WHAT HAS GOTHIC TO DO
WITH MARKUP?
Nice pictures, but…
Codex Argenteus, the Bible in Gothic. Photo by
Benutzer Signue, Wikimedia Commons
Ruskin & The Nature of Gothic
•  The Stones of Venice (1851-3): a book on
architecture – evolves into a polemic about social
organization and craft.
Ca D’Oro, Venice. Photo by Kenton Forshee
Savageness
Changefulness
Arches with variations. John Ruskin, The Stones of Venice.
William Morris
•  “it is possible for man to
rejoice in his work, for,
strange as it may seem to us
to-day, there have been times
when he did rejoice in it…
unless man's work once again
becomes a pleasure to him,
the token of which change
will be that beauty is once
again a natural and necessary
accompaniment of productive
labour, all but the worthless
must toil in pain, and
therefore live in pain”
The Nature of Gothic, Kelmscott Press Edition (1892).
Christopher Alexander
•  A Pattern Language (1977), not Design
Patterns (1994).
•  Architect who wants to re-architect and re-orient
architecture.
System-A and System-B
•  Iterative
•  Drawings after
•  Includes builders and
clients at all stages
•  Continuous development
from large features to
small, unknown at start
•  Meets budgets by dropping
features as necessary
•  Cost control through
customization
•  Planned (and corrections)
•  Drawings before
•  Hierarchy of designer to
contractors to customers
•  All features included in
original plan, possibly with
options
•  Meets budgets by dropping
quality or halting
•  Cost control through
standardization
Depth, Not Quantity
•  “The architect-builder... has greater powers but
more limited domain. Any one architect builder
may control no more than twenty houses at a
time, but he will take full responsibility for their
design and construction, and he will work far
more intensely with the individual families, and
with the individual details of their houses. Thus,
in this model of construction, both design and
construction are decentralized....”
The Production of Houses (1985) , 76-7
BUT WHAT HAS THIS TO DO
WITH MARKUP?
You didn’t answer the question!
Markup as Architecture
In virtual world, markup:
•  Creates spaces in which we can talk
•  Builds structures in which we can work
•  Lays out marketplaces in which we shop
•  Offers a canvas on which to decorate
•  Assembles structures into larger groups
XML as Industrialized Data
•  Automate as much as possible.
•  Prioritize predictability.
•  Versioning means remodeling the factory.
•  Standards about industrial collaboration.
•  Human involvement driven to minimum.
•  Contains anarchy by treating it
as allowed but exceptional.
Photo by Urban Garden
Validation
William Holman Hunt, The Scapegoat
We Fear That Work Is This
Ford Madox Brown, Work
Asynchronicity Works This Way
John Everett Millais, Christ in the House of His Parents (The Carpenter's Shop)
Data Transformation Flows
•  Changefulness shifts state.
•  Transformations traditionally
more forgiving than validators.
•  XSLT as classic XML model,
functional programming
broader.
•  Differentiate internal and
external structures.
•  “Data Pachinko”
Pachinko machine photo by limetom.
Douglas Crockford: JSON and
Functional Programming
•  JSON extracts existing syntax from JavaScript
– no invention.
•  Crockford reorients developers toward functional
JavaScript approaches.
•  Practice avoids schemas, uses transformations
from simple to massive.
•  “Don’t be evil” license.
Photo by niallkennedy
Human Transformers
•  Reading as a transformation from “what you gave
me” to “what I want to understand”, not just
“taking in what is there”.
•  Document creation as an especially flexible
transformation.
•  Even automated transformation tools should often
be simpler even than “classic” XSLT 1.0, letting
humans specify direction. CSS selectors a classic
enabling tech, but should be more interfaces.
A FEW RECENT FINDS
After the paper…
John von Neumann
(1951)
Roger Costello: Fine-Grained Validation
•  “how to validate - in an automated fashion - each
item of an XML document and make validation
decisions on a per-item basis rather than a per-
document basis. The items to be validated may be as
fine-grain or as course-grain as desired: the item may
be a single element (or even just the text within a
leaf element) or the item may be an element
composed of many descendent elements. Validation
may be done from the outside in (the root element
to the leaf nodes) or the inside out (the leaf nodes to
the root element).” (7/2013)
Waterfall, Agile, Lean
•  Waterfall: Know problem, figure out solution,
implement.
•  Agile: Know problem, iterate over solutions.
•  Lean: Figure out problem, test solutions.
Minimum Viable Product (MVP)
•  “Test solutions” makes it easy to put people into
a system at least at the outset, for “concierge
options” that make a lot more sense for testing
than complete build out.
The Importance of Wheedling
•  “When a programmer instructs a computer to
reject, or disregard, all input longer than 64
characters, she effectively makes it impossible for
a bureaucrat – however sympathetic – to
accommodate a name that’s longer than she’s
imagined names might be. With a human
bureaucrat, there was always the possibility of
wheedling an exception; machines don’t
wheedle.”
Cory Doctorow, 7/2013. http://boingboing.net/2013/08/05/podcast-teaching-computers.html
SO….
Emphasize Markup
•  Markup as direct access to data.
•  Programming languages shift back –
transformations critical but not necessarily
required.
•  Declarative annotations offer tremendous power
for presentation, hyperlinking, commentary, and
more.
The Promised Land
Ford Madox Brown, An English Autumn Afternoon, Hampstead – Scenery in 1853
The Journey: Setting Out
Tapestry designed by Sir Edward Coley Burne-Jones, William Morris, and John Henry Dearle,
The Arming and Departure of the Knights of the Round Table on the Quest for the Holy Grail
Welcoming: Entry Points
Standen Garden. Photo by UGArdener
Welcoming, Not Overwhelming
Kelmscott Manor, Lechlade, Gloucestershire. Photo by Tim Waters.
Teaching: Get Them First!
Konrad St.Laurent
Designing for Approachability
Mackintosh glass, Scotland Street School Museum. Photo by dalbera
Maximum Welcome
Angels, Jesus College Chapel. Photo by TheRevSteve

More Related Content

Similar to The Allure of Gothic Markup

Design Thinking for Developers
Design Thinking for DevelopersDesign Thinking for Developers
Design Thinking for DevelopersMatthew Banz
 
Software Architecture Clues
Software Architecture CluesSoftware Architecture Clues
Software Architecture CluesRuth Malan
 
Forty Years of Crisis, Ten Years of Agile, Now What?
Forty Years of Crisis, Ten Years of Agile, Now What?Forty Years of Crisis, Ten Years of Agile, Now What?
Forty Years of Crisis, Ten Years of Agile, Now What?Morendil
 
Software Architectures, Week 1 - Monolithic Architectures
Software Architectures, Week 1 - Monolithic ArchitecturesSoftware Architectures, Week 1 - Monolithic Architectures
Software Architectures, Week 1 - Monolithic ArchitecturesAngelos Kapsimanis
 
CityLIS talk, Feb 1st 2016
CityLIS talk, Feb 1st 2016CityLIS talk, Feb 1st 2016
CityLIS talk, Feb 1st 2016benosteen
 
History of Object Orientation in OOP.ppt
History of Object Orientation in OOP.pptHistory of Object Orientation in OOP.ppt
History of Object Orientation in OOP.pptathar549116
 
History of Object Orientation in OOP.ppt
History of Object Orientation in OOP.pptHistory of Object Orientation in OOP.ppt
History of Object Orientation in OOP.pptMuhammad Athar
 
James Coplien - Trygve - October 17, 2016
James Coplien - Trygve - October 17, 2016James Coplien - Trygve - October 17, 2016
James Coplien - Trygve - October 17, 2016Foo Café Copenhagen
 
Interoperability defined by its reason d'être
Interoperability defined by its reason d'êtreInteroperability defined by its reason d'être
Interoperability defined by its reason d'êtreAALForum
 
How2research
How2researchHow2research
How2researchkewuc
 
Emergent Patterns in DevOps
Emergent Patterns in DevOpsEmergent Patterns in DevOps
Emergent Patterns in DevOpsGeorge Miranda
 
Clojure slides
Clojure slidesClojure slides
Clojure slidesmcohen01
 
Visual Architecting
Visual Architecting Visual Architecting
Visual Architecting Ruth Malan
 
User-Modifiable Software: Smalltalk and HyperCard
User-Modifiable Software: Smalltalk and HyperCardUser-Modifiable Software: Smalltalk and HyperCard
User-Modifiable Software: Smalltalk and HyperCardJosh Justice
 
From Galapagos to Twitter: Darwin, Natural Selection, and Web 2.0
From Galapagos to Twitter: Darwin, Natural Selection, and Web 2.0From Galapagos to Twitter: Darwin, Natural Selection, and Web 2.0
From Galapagos to Twitter: Darwin, Natural Selection, and Web 2.0Xavier Llorà
 
Future Interface : What the last 50+ Years of Modern Computing History May Te...
Future Interface : What the last 50+ Years of Modern Computing History May Te...Future Interface : What the last 50+ Years of Modern Computing History May Te...
Future Interface : What the last 50+ Years of Modern Computing History May Te...CA API Management
 
Making sense of messy problems - Systems thinking for interaction designers
Making sense of messy problems - Systems thinking for interaction designersMaking sense of messy problems - Systems thinking for interaction designers
Making sense of messy problems - Systems thinking for interaction designersjohanna kollmann
 
Steve Jurvetson - Disruptive Innovation
Steve Jurvetson - Disruptive InnovationSteve Jurvetson - Disruptive Innovation
Steve Jurvetson - Disruptive InnovationBryan Fox
 
Large Components in the Rearview Mirror
Large Components in the Rearview MirrorLarge Components in the Rearview Mirror
Large Components in the Rearview MirrorMichelle Brush
 

Similar to The Allure of Gothic Markup (20)

Design Thinking for Developers
Design Thinking for DevelopersDesign Thinking for Developers
Design Thinking for Developers
 
Software Architecture Clues
Software Architecture CluesSoftware Architecture Clues
Software Architecture Clues
 
Forty Years of Crisis, Ten Years of Agile, Now What?
Forty Years of Crisis, Ten Years of Agile, Now What?Forty Years of Crisis, Ten Years of Agile, Now What?
Forty Years of Crisis, Ten Years of Agile, Now What?
 
Software Architectures, Week 1 - Monolithic Architectures
Software Architectures, Week 1 - Monolithic ArchitecturesSoftware Architectures, Week 1 - Monolithic Architectures
Software Architectures, Week 1 - Monolithic Architectures
 
CityLIS talk, Feb 1st 2016
CityLIS talk, Feb 1st 2016CityLIS talk, Feb 1st 2016
CityLIS talk, Feb 1st 2016
 
History of Object Orientation in OOP.ppt
History of Object Orientation in OOP.pptHistory of Object Orientation in OOP.ppt
History of Object Orientation in OOP.ppt
 
History of Object Orientation in OOP.ppt
History of Object Orientation in OOP.pptHistory of Object Orientation in OOP.ppt
History of Object Orientation in OOP.ppt
 
James Coplien - Trygve - October 17, 2016
James Coplien - Trygve - October 17, 2016James Coplien - Trygve - October 17, 2016
James Coplien - Trygve - October 17, 2016
 
Interoperability defined by its reason d'être
Interoperability defined by its reason d'êtreInteroperability defined by its reason d'être
Interoperability defined by its reason d'être
 
How2research
How2researchHow2research
How2research
 
Emergent Patterns in DevOps
Emergent Patterns in DevOpsEmergent Patterns in DevOps
Emergent Patterns in DevOps
 
Clojure slides
Clojure slidesClojure slides
Clojure slides
 
Visual Architecting
Visual Architecting Visual Architecting
Visual Architecting
 
User-Modifiable Software: Smalltalk and HyperCard
User-Modifiable Software: Smalltalk and HyperCardUser-Modifiable Software: Smalltalk and HyperCard
User-Modifiable Software: Smalltalk and HyperCard
 
From Galapagos to Twitter: Darwin, Natural Selection, and Web 2.0
From Galapagos to Twitter: Darwin, Natural Selection, and Web 2.0From Galapagos to Twitter: Darwin, Natural Selection, and Web 2.0
From Galapagos to Twitter: Darwin, Natural Selection, and Web 2.0
 
Future Interface : What the last 50+ Years of Modern Computing History May Te...
Future Interface : What the last 50+ Years of Modern Computing History May Te...Future Interface : What the last 50+ Years of Modern Computing History May Te...
Future Interface : What the last 50+ Years of Modern Computing History May Te...
 
Making sense of messy problems - Systems thinking for interaction designers
Making sense of messy problems - Systems thinking for interaction designersMaking sense of messy problems - Systems thinking for interaction designers
Making sense of messy problems - Systems thinking for interaction designers
 
Steve Jurvetson - Disruptive Innovation
Steve Jurvetson - Disruptive InnovationSteve Jurvetson - Disruptive Innovation
Steve Jurvetson - Disruptive Innovation
 
My Design Theory
My Design TheoryMy Design Theory
My Design Theory
 
Large Components in the Rearview Mirror
Large Components in the Rearview MirrorLarge Components in the Rearview Mirror
Large Components in the Rearview Mirror
 

Recently uploaded

Scanning the Internet for External Cloud Exposures via SSL Certs
Scanning the Internet for External Cloud Exposures via SSL CertsScanning the Internet for External Cloud Exposures via SSL Certs
Scanning the Internet for External Cloud Exposures via SSL CertsRizwan Syed
 
Training state-of-the-art general text embedding
Training state-of-the-art general text embeddingTraining state-of-the-art general text embedding
Training state-of-the-art general text embeddingZilliz
 
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...Integration and Automation in Practice: CI/CD in Mule Integration and Automat...
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...Patryk Bandurski
 
Are Multi-Cloud and Serverless Good or Bad?
Are Multi-Cloud and Serverless Good or Bad?Are Multi-Cloud and Serverless Good or Bad?
Are Multi-Cloud and Serverless Good or Bad?Mattias Andersson
 
Dev Dives: Streamline document processing with UiPath Studio Web
Dev Dives: Streamline document processing with UiPath Studio WebDev Dives: Streamline document processing with UiPath Studio Web
Dev Dives: Streamline document processing with UiPath Studio WebUiPathCommunity
 
Beyond Boundaries: Leveraging No-Code Solutions for Industry Innovation
Beyond Boundaries: Leveraging No-Code Solutions for Industry InnovationBeyond Boundaries: Leveraging No-Code Solutions for Industry Innovation
Beyond Boundaries: Leveraging No-Code Solutions for Industry InnovationSafe Software
 
Story boards and shot lists for my a level piece
Story boards and shot lists for my a level pieceStory boards and shot lists for my a level piece
Story boards and shot lists for my a level piececharlottematthew16
 
What's New in Teams Calling, Meetings and Devices March 2024
What's New in Teams Calling, Meetings and Devices March 2024What's New in Teams Calling, Meetings and Devices March 2024
What's New in Teams Calling, Meetings and Devices March 2024Stephanie Beckett
 
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmaticsKotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmaticscarlostorres15106
 
"Federated learning: out of reach no matter how close",Oleksandr Lapshyn
"Federated learning: out of reach no matter how close",Oleksandr Lapshyn"Federated learning: out of reach no matter how close",Oleksandr Lapshyn
"Federated learning: out of reach no matter how close",Oleksandr LapshynFwdays
 
Commit 2024 - Secret Management made easy
Commit 2024 - Secret Management made easyCommit 2024 - Secret Management made easy
Commit 2024 - Secret Management made easyAlfredo García Lavilla
 
Bun (KitWorks Team Study 노별마루 발표 2024.4.22)
Bun (KitWorks Team Study 노별마루 발표 2024.4.22)Bun (KitWorks Team Study 노별마루 발표 2024.4.22)
Bun (KitWorks Team Study 노별마루 발표 2024.4.22)Wonjun Hwang
 
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)Mark Simos
 
Powerpoint exploring the locations used in television show Time Clash
Powerpoint exploring the locations used in television show Time ClashPowerpoint exploring the locations used in television show Time Clash
Powerpoint exploring the locations used in television show Time Clashcharlottematthew16
 
WordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your BrandWordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your Brandgvaughan
 
Human Factors of XR: Using Human Factors to Design XR Systems
Human Factors of XR: Using Human Factors to Design XR SystemsHuman Factors of XR: Using Human Factors to Design XR Systems
Human Factors of XR: Using Human Factors to Design XR SystemsMark Billinghurst
 
"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr Bagan"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr BaganFwdays
 
Install Stable Diffusion in windows machine
Install Stable Diffusion in windows machineInstall Stable Diffusion in windows machine
Install Stable Diffusion in windows machinePadma Pradeep
 

Recently uploaded (20)

Scanning the Internet for External Cloud Exposures via SSL Certs
Scanning the Internet for External Cloud Exposures via SSL CertsScanning the Internet for External Cloud Exposures via SSL Certs
Scanning the Internet for External Cloud Exposures via SSL Certs
 
Training state-of-the-art general text embedding
Training state-of-the-art general text embeddingTraining state-of-the-art general text embedding
Training state-of-the-art general text embedding
 
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...Integration and Automation in Practice: CI/CD in Mule Integration and Automat...
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...
 
Are Multi-Cloud and Serverless Good or Bad?
Are Multi-Cloud and Serverless Good or Bad?Are Multi-Cloud and Serverless Good or Bad?
Are Multi-Cloud and Serverless Good or Bad?
 
Dev Dives: Streamline document processing with UiPath Studio Web
Dev Dives: Streamline document processing with UiPath Studio WebDev Dives: Streamline document processing with UiPath Studio Web
Dev Dives: Streamline document processing with UiPath Studio Web
 
Beyond Boundaries: Leveraging No-Code Solutions for Industry Innovation
Beyond Boundaries: Leveraging No-Code Solutions for Industry InnovationBeyond Boundaries: Leveraging No-Code Solutions for Industry Innovation
Beyond Boundaries: Leveraging No-Code Solutions for Industry Innovation
 
Story boards and shot lists for my a level piece
Story boards and shot lists for my a level pieceStory boards and shot lists for my a level piece
Story boards and shot lists for my a level piece
 
What's New in Teams Calling, Meetings and Devices March 2024
What's New in Teams Calling, Meetings and Devices March 2024What's New in Teams Calling, Meetings and Devices March 2024
What's New in Teams Calling, Meetings and Devices March 2024
 
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmaticsKotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
 
"Federated learning: out of reach no matter how close",Oleksandr Lapshyn
"Federated learning: out of reach no matter how close",Oleksandr Lapshyn"Federated learning: out of reach no matter how close",Oleksandr Lapshyn
"Federated learning: out of reach no matter how close",Oleksandr Lapshyn
 
Commit 2024 - Secret Management made easy
Commit 2024 - Secret Management made easyCommit 2024 - Secret Management made easy
Commit 2024 - Secret Management made easy
 
E-Vehicle_Hacking_by_Parul Sharma_null_owasp.pptx
E-Vehicle_Hacking_by_Parul Sharma_null_owasp.pptxE-Vehicle_Hacking_by_Parul Sharma_null_owasp.pptx
E-Vehicle_Hacking_by_Parul Sharma_null_owasp.pptx
 
DMCC Future of Trade Web3 - Special Edition
DMCC Future of Trade Web3 - Special EditionDMCC Future of Trade Web3 - Special Edition
DMCC Future of Trade Web3 - Special Edition
 
Bun (KitWorks Team Study 노별마루 발표 2024.4.22)
Bun (KitWorks Team Study 노별마루 발표 2024.4.22)Bun (KitWorks Team Study 노별마루 발표 2024.4.22)
Bun (KitWorks Team Study 노별마루 발표 2024.4.22)
 
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)
 
Powerpoint exploring the locations used in television show Time Clash
Powerpoint exploring the locations used in television show Time ClashPowerpoint exploring the locations used in television show Time Clash
Powerpoint exploring the locations used in television show Time Clash
 
WordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your BrandWordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your Brand
 
Human Factors of XR: Using Human Factors to Design XR Systems
Human Factors of XR: Using Human Factors to Design XR SystemsHuman Factors of XR: Using Human Factors to Design XR Systems
Human Factors of XR: Using Human Factors to Design XR Systems
 
"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr Bagan"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr Bagan
 
Install Stable Diffusion in windows machine
Install Stable Diffusion in windows machineInstall Stable Diffusion in windows machine
Install Stable Diffusion in windows machine
 

The Allure of Gothic Markup

  • 1. The Allure of Gothic Markup Simon St. Laurent York Minster, by GuyHH
  • 2. DISCLAIMER •  O’Reilly Media, Inc. bears no responsibility for the content of this presentation. This presentation in no way reflects the official views of O’Reilly Media, Inc. No other O’Reilly employees were involved in its creation. It exclusively represents the individual perspective of Simon St.Laurent. •  I am extremely lucky to have an employer that allows these kinds of wanderings. You should find one too, if you don’t have one already.
  • 5. St. Leonard Cohen de Montreal ‘When they said “REPENT” I wonder what they meant.’ “The Future”, 1992. Photo by Hyacinthe Rambault.
  • 6. We Are Fallen Creatures Night Vigil, York Minster, photo by Catholic Church (England and Wales)
  • 7. Don’t: Politics and Morality of Tech John Ruskin, The Brezon and Alps of the Reposoir, seen from Mornex
  • 9. We Are Complicit – I Am Complicit Electronic Frontier Foundation VersionPhoto by laughingsquid
  • 10. WHAT HAS GOTHIC TO DO WITH MARKUP? Nice pictures, but… Codex Argenteus, the Bible in Gothic. Photo by Benutzer Signue, Wikimedia Commons
  • 11. Ruskin & The Nature of Gothic •  The Stones of Venice (1851-3): a book on architecture – evolves into a polemic about social organization and craft. Ca D’Oro, Venice. Photo by Kenton Forshee
  • 13. Changefulness Arches with variations. John Ruskin, The Stones of Venice.
  • 14. William Morris •  “it is possible for man to rejoice in his work, for, strange as it may seem to us to-day, there have been times when he did rejoice in it… unless man's work once again becomes a pleasure to him, the token of which change will be that beauty is once again a natural and necessary accompaniment of productive labour, all but the worthless must toil in pain, and therefore live in pain” The Nature of Gothic, Kelmscott Press Edition (1892).
  • 15. Christopher Alexander •  A Pattern Language (1977), not Design Patterns (1994). •  Architect who wants to re-architect and re-orient architecture.
  • 16. System-A and System-B •  Iterative •  Drawings after •  Includes builders and clients at all stages •  Continuous development from large features to small, unknown at start •  Meets budgets by dropping features as necessary •  Cost control through customization •  Planned (and corrections) •  Drawings before •  Hierarchy of designer to contractors to customers •  All features included in original plan, possibly with options •  Meets budgets by dropping quality or halting •  Cost control through standardization
  • 17. Depth, Not Quantity •  “The architect-builder... has greater powers but more limited domain. Any one architect builder may control no more than twenty houses at a time, but he will take full responsibility for their design and construction, and he will work far more intensely with the individual families, and with the individual details of their houses. Thus, in this model of construction, both design and construction are decentralized....” The Production of Houses (1985) , 76-7
  • 18. BUT WHAT HAS THIS TO DO WITH MARKUP? You didn’t answer the question!
  • 19. Markup as Architecture In virtual world, markup: •  Creates spaces in which we can talk •  Builds structures in which we can work •  Lays out marketplaces in which we shop •  Offers a canvas on which to decorate •  Assembles structures into larger groups
  • 20. XML as Industrialized Data •  Automate as much as possible. •  Prioritize predictability. •  Versioning means remodeling the factory. •  Standards about industrial collaboration. •  Human involvement driven to minimum. •  Contains anarchy by treating it as allowed but exceptional. Photo by Urban Garden
  • 22. We Fear That Work Is This Ford Madox Brown, Work
  • 23. Asynchronicity Works This Way John Everett Millais, Christ in the House of His Parents (The Carpenter's Shop)
  • 24. Data Transformation Flows •  Changefulness shifts state. •  Transformations traditionally more forgiving than validators. •  XSLT as classic XML model, functional programming broader. •  Differentiate internal and external structures. •  “Data Pachinko” Pachinko machine photo by limetom.
  • 25. Douglas Crockford: JSON and Functional Programming •  JSON extracts existing syntax from JavaScript – no invention. •  Crockford reorients developers toward functional JavaScript approaches. •  Practice avoids schemas, uses transformations from simple to massive. •  “Don’t be evil” license. Photo by niallkennedy
  • 26. Human Transformers •  Reading as a transformation from “what you gave me” to “what I want to understand”, not just “taking in what is there”. •  Document creation as an especially flexible transformation. •  Even automated transformation tools should often be simpler even than “classic” XSLT 1.0, letting humans specify direction. CSS selectors a classic enabling tech, but should be more interfaces.
  • 27. A FEW RECENT FINDS After the paper…
  • 29. Roger Costello: Fine-Grained Validation •  “how to validate - in an automated fashion - each item of an XML document and make validation decisions on a per-item basis rather than a per- document basis. The items to be validated may be as fine-grain or as course-grain as desired: the item may be a single element (or even just the text within a leaf element) or the item may be an element composed of many descendent elements. Validation may be done from the outside in (the root element to the leaf nodes) or the inside out (the leaf nodes to the root element).” (7/2013)
  • 30. Waterfall, Agile, Lean •  Waterfall: Know problem, figure out solution, implement. •  Agile: Know problem, iterate over solutions. •  Lean: Figure out problem, test solutions. Minimum Viable Product (MVP) •  “Test solutions” makes it easy to put people into a system at least at the outset, for “concierge options” that make a lot more sense for testing than complete build out.
  • 31. The Importance of Wheedling •  “When a programmer instructs a computer to reject, or disregard, all input longer than 64 characters, she effectively makes it impossible for a bureaucrat – however sympathetic – to accommodate a name that’s longer than she’s imagined names might be. With a human bureaucrat, there was always the possibility of wheedling an exception; machines don’t wheedle.” Cory Doctorow, 7/2013. http://boingboing.net/2013/08/05/podcast-teaching-computers.html
  • 33. Emphasize Markup •  Markup as direct access to data. •  Programming languages shift back – transformations critical but not necessarily required. •  Declarative annotations offer tremendous power for presentation, hyperlinking, commentary, and more.
  • 34. The Promised Land Ford Madox Brown, An English Autumn Afternoon, Hampstead – Scenery in 1853
  • 35. The Journey: Setting Out Tapestry designed by Sir Edward Coley Burne-Jones, William Morris, and John Henry Dearle, The Arming and Departure of the Knights of the Round Table on the Quest for the Holy Grail
  • 36. Welcoming: Entry Points Standen Garden. Photo by UGArdener
  • 37. Welcoming, Not Overwhelming Kelmscott Manor, Lechlade, Gloucestershire. Photo by Tim Waters.
  • 38. Teaching: Get Them First! Konrad St.Laurent
  • 39. Designing for Approachability Mackintosh glass, Scotland Street School Museum. Photo by dalbera
  • 40. Maximum Welcome Angels, Jesus College Chapel. Photo by TheRevSteve