Maneuverable Web Architecture
Michael T. Nygard - Cognitect
Thursday, October 17, 13
Maneuverable Web Architecture Michael T. Nygard - Cognitect - - PowerPoint PPT Presentation
Maneuverable Web Architecture Michael T. Nygard - Cognitect Thursday, October 17, 13 Thesis Thursday, October 17, 13 Thesis Agile dev works at micro scale Thursday, October 17, 13 Thesis Agile dev works at micro scale Wont
Michael T. Nygard - Cognitect
Thursday, October 17, 13
Thursday, October 17, 13
✤ Agile dev works at micro scale
Thursday, October 17, 13
✤ Agile dev works at micro scale ✤ Won’t create macro scale agility
Thursday, October 17, 13
Thursday, October 17, 13
✤ Fighter pilot ✤ Air combat
✤ Military theorist
Thursday, October 17, 13
Thursday, October 17, 13
Thursday, October 17, 13
Thursday, October 17, 13
Thursday, October 17, 13
Thursday, October 17, 13
Thursday, October 17, 13
Thursday, October 17, 13
Thursday, October 17, 13
Thursday, October 17, 13
Thursday, October 17, 13
Thursday, October 17, 13
Thursday, October 17, 13
Thursday, October 17, 13
Note how orientation shapes observation, shapes decision, shapes action, and in turn is shaped by the feedback and
Also note how the entire loop (not just orientation) is an ongoing many-sided implicit cross-referencing process
From The Essence of Winning and Losing, John R. Boyd, January 1996.
Feed Forward
Observations Decision (Hypothesis)
Action (Test)
Cultural Traditions
Genetic Heritage
New Information Previous Experience
Analyses & Synthesis
Feed Forward Feed Forward
Implicit Guidance & Control Implicit Guidance & Control Unfolding Interaction With Environment Unfolding Interaction With Environment Feedback Feedback Outside Information Unfolding Circumstances
Observe Orient Decide Act
Defense and the National Interest, http://www.d-n-i.net, 2006
Thursday, October 17, 13
Thursday, October 17, 13
Thursday, October 17, 13
Thursday, October 17, 13
✤ Plurality ✤ Break monoliths ✤ Use URIs with abandon ✤ c.f. “Architecture Without an End State” ✤ Augment upstream ✤ Contextualize downstream
Thursday, October 17, 13
Thursday, October 17, 13
Thursday, October 17, 13
Thursday, October 17, 13
✤ Dynamic
✤ Script addressable
Thursday, October 17, 13
Ref Value at TN
Thursday, October 17, 13
Ref Value at TN Value at TN+1
Thursday, October 17, 13
Thursday, October 17, 13
Thursday, October 17, 13
Thursday, October 17, 13
✤ Perpetual string: store strings forever. ✤ URL is SHA-256 hash of string. ✤ Use for scripts, legal text. ✤ Edit the script, get a new URL
Thursday, October 17, 13
Thursday, October 17, 13
Thursday, October 17, 13
Add
Thursday, October 17, 13
Add
Thursday, October 17, 13
Thursday, October 17, 13
User ID Sent on Warning ID Bounced? Token Expiration Card ID User ID User Email
Thursday, October 17, 13
Thursday, October 17, 13
Registration At
Provide URLs for script Script Engine
get URL Lead time
Reminder script Much later: invoke reminder script creates Perpetual string
Template Mailer
Thursday, October 17, 13
✤ Every service issues
✤ No restrictions on
catalog ID
Thursday, October 17, 13
catalog ID client ID
F: client → catalog
Thursday, October 17, 13
User Ledger Cart Dept.
Address Book Wish List
Concierge
Company
Thursday, October 17, 13
✤ IDs all issued by
✤ Relationships
Catalog
Company
Item SKU
Microsite Prize Pool
Thursday, October 17, 13
Thursday, October 17, 13
✤ Required for use without
permission
✤ Protect from overload ✤ Allow cut off of maluser ✤ Important for operational
safety and authorization
Client Query Catalog Policy Proxy
F: client → catalog
client ID catalog ID
gateway
trusted untrusted Thursday, October 17, 13
✤ Also applies to outcalls
Payment Processor gateway The Collector
trusted untrusted
Thursday, October 17, 13
Wrong
Thursday, October 17, 13
Wrong
Right - call side
correctly.
Thursday, October 17, 13
Right - call side
correctly. Right - response side
Thursday, October 17, 13
✤ Separate query from action ✤ Never deploy together ✤ Tell, don’t ask ✤ Unbundle parameters
Thursday, October 17, 13
Thursday, October 17, 13
Thursday, October 17, 13