API Strategy Workshop - Seoul Presented by Layer 7's Principal API Architect Mike Amundsen

856 views

Published on

ABSTRACT
The first service description format for the Web appeared in 2001.The second didn't arrive until 2007. In 2010 there were less than five known service description formats. As of this writing there are more than a dozen. We’re experience a “Cambrian explosion” of
service description formats!

BONUS: link to Mike's notes on the presentation http://g.mamund.com/follow-v-hold


Why all these new formats? Is there something missing that each
new type tries to fix? Or are these new formats just repeating the
same patterns over and over? This paper 1) explores two main
approaches to service description design (describing functionality
and describing things), 2) reviews key shortcomings of existing
approaches that lead to client applications tightly bound to a single
service instance, 3) offers up a new set of measures for useful service
description, and 4) introduces an alternative format that supports the
key Web principle of follow your nose.

Published in: Technology, Art & Photos
0 Comments
1 Like
Statistics
Notes
  • Be the first to comment

No Downloads
Views
Total views
856
On SlideShare
0
From Embeds
0
Number of Embeds
3
Actions
Shares
0
Downloads
16
Comments
0
Likes
1
Embeds 0
No embeds

No notes for slide

API Strategy Workshop - Seoul Presented by Layer 7's Principal API Architect Mike Amundsen

  1. 1. Follow Your Nose vs. Hold Your Nose Mike Amundsen @mamund @layer7 @CAInc Observations on the state of service description on the Web
  2. 2. The Paper
  3. 3. Observations
  4. 4. Observations ● The Web ● Service Descriptions ● Something Else
  5. 5. The Web
  6. 6. The Web
  7. 7. The Disney Dog Rule "I have just met you and I love you!" - Dug
  8. 8. The Disney Dog Rule "HyperText provides a single user-interface to many large classes of stored information…" - Berners-Lee / Cailliau, 1990
  9. 9. The Disney Dog Rule "HyperText provides a single user-interface to many large classes of stored information…" - Berners-Lee / Cailliau, 1990
  10. 10. The Disney Dog Rule "We propose the implementation of a simple scheme to incorporate several different servers of machine-stored information already available." - Berners-Lee / Cailliau, 1990
  11. 11. The Disney Dog Rule "We propose the implementation of a simple scheme to incorporate several different servers of machine-stored information already available." - Berners-Lee / Cailliau, 1990
  12. 12. The Disney Dog Rule "Squirrel!" - Dug
  13. 13. The Disney Dog Rule "[A] web of nodes in which the user can browse at will." - Berners-Lee / Cailliau, 1990
  14. 14. The Disney Dog Rule "[A] web of nodes in which the user can browse at will." - Berners-Lee / Cailliau, 1990
  15. 15. The Disney Dog Rule "[A]bility for humans and crawlers to follow their noses ... makes for a powerfully simple discovery heuristic" - Ed Summers, 2008
  16. 16. The Disney Dog Rule "[A]bility for humans and crawlers to follow their noses ... makes for a powerfully simple discovery heuristic" - Ed Summers, 2008
  17. 17. Linking
  18. 18. Linking
  19. 19. Linking "[Links are] necessary to connect the data we have into a web, a serious, unbounded web in which one can find all kinds of things." - Tim Berners-Lee, 2006-09
  20. 20. Linking "[Links are] necessary to connect the data we have into a web, a serious, unbounded web in which one can find all kinds of things." - Tim Berners-Lee, 2006-09
  21. 21. Linking
  22. 22. Linking
  23. 23. Linking
  24. 24. The Web ● I love you ● Squirrel ● Power Law
  25. 25. Service Descriptions
  26. 26. Interface Description Language (IDL)
  27. 27. Legacy IDLs
  28. 28. Web IDLs
  29. 29. Web IDLs
  30. 30. On the Web... "The interfaces are defined by the data formats and protocols..." - Tim Berners-Lee 1998
  31. 31. Web IDLs Rarely support multiple formats and almost always use only HTTP.
  32. 32. On the Web... "[A] web of nodes rather than a hierarchical tree is the basic concept behind HyperText." - Berners-Lee/Cailliau, 1990
  33. 33. Web IDLs Almost all Web IDLs define a hierarchy of resources (nodes).
  34. 34. On the Web... "[O]ne can go from one concept to another..." - Berners-Lee/Cailliau, 1990
  35. 35. Web IDLs Clients are led to accept only the pre- defined links from just one service.
  36. 36. Service Description
  37. 37. Service Description
  38. 38. The Web
  39. 39. But there may be something else...
  40. 40. Something Else
  41. 41. Something Else
  42. 42. Something Else
  43. 43. The Solution
  44. 44. The Problem
  45. 45. Modeling the problem domain
  46. 46. The Solution
  47. 47. Serendipity "Web architecture is all about serendipity." - Stu Charlton, 2007
  48. 48. So let's do this...
  49. 49. Describe the domain without specifying format or protocol...
  50. 50. Allow clients and servers to negotiate format and protocols
  51. 51. Describe the domain as a set of nodes, not a hierarchy.
  52. 52. Allow clients and servers to establish their own workflows
  53. 53. Describe the domain as a scale-free network.
  54. 54. Encourage clients and servers to link however they wish.
  55. 55. Something Else ● Open formats and protocols (I love you…) ● Nodes, not hierarchies (Squirrel!) ● Open linking for apps (Power Law)
  56. 56. Application-Level Profile Semantics
  57. 57. Application-Level Profile Semantics
  58. 58. Application-Level Profile Semantics
  59. 59. Application-Level Profile Semantics "I have just met you and I love you!" - Dug
  60. 60. Application-Level Profile Semantics
  61. 61. Application-Level Profile Semantics "Squirrel!" - Dug
  62. 62. Application-Level Profile Semantics
  63. 63. Application-Level Profile Semantics "[Links are] necessary to connect the data we have into a web, a serious, unbounded web in which one can find all kinds of things." - Tim Berners-Lee, 2006-09
  64. 64. So what does this mean?
  65. 65. ALPS Specification Draft
  66. 66. If you build it...
  67. 67. Conclusions ● The Web is great ● Service Descriptions are not the Web ● ALPS describes problem domains for the Web
  68. 68. Let's build Linked Open Apps (LOA)
  69. 69. Follow Your Nose vs. Hold Your Nose Mike Amundsen @mamund @layer7 @CAInc Observations on the state of service description on the Web http://g.mamund.com/follow-v-hold

×