SlideShare a Scribd company logo
1 of 126
Mike Amundsen



The Costs and Benefits of
Building Hypermedia APIs
(with Node.js)



                      Layer 7 Confidential   1
Mike Amundsen
Author
Presenter
Software Explorer
Principal API Architect




                           Layer 7 Confidential   2
OK, let‟s get started…




                     Layer 7 Confidential   3
Theonia
  "a looking at, viewing, beholding”




                        Layer 7 Confidential   4
Theory
 "a looking at, viewing, beholding”




                       Layer 7 Confidential   5
Praxis
                   “doing”




         Layer 7 Confidential   6
Practice
                     “doing”




           Layer 7 Confidential   7
First, a lesson to remember
  from Donald Norman…




                        Layer 7 Confidential   8
Affordances


“The value of a well-designed object,
Is when it has such a rich set of affordances,
That the people who use it,
Can do things with it,
That the designer never imagined.”

- Donald Norman




                                      Layer 7 Confidential   10
Affordances


“The value of a well-designed object,
Is when it has such a rich set of affordances,
That the people who use it,
Can do things with it,
That the designer never imagined.”

- Donald Norman




                                      Layer 7 Confidential   11
Affordances


“The value of a well-designed object,
Is when it has such a rich set of affordances,
That the people who use it,
Can do things with it,
That the designer never imagined.”

- Donald Norman




                                      Layer 7 Confidential   12
Affordances


“The value of a well-designed object,
Is when it has such a rich set of affordances,
That the people who use it,
Can do things with it,
That the designer never imagined.”

- Donald Norman




                                      Layer 7 Confidential   13
Affordances


“The value of a well-designed object,
Is when it has such a rich set of affordances,
That the people who use it,
Can do things with it,
That the designer never imagined.”

- Donald Norman




                                      Layer 7 Confidential   14
Some background…




                   Layer 7 Confidential   15
Affordances

The foundation for perception is ambient,
 ecologically available information.


Affordances are all "action possibilities" latent in
 the environment.




Theory of Affordances, 1979
- James J. Gibson

                                           Layer 7 Confidential   16
Affordances
 Seven Stages of Action




The Design of Everyday Things, 1988
- Donald Norman
                                      Layer 7 Confidential   17
Affordances
Knowledge (“head” vs. “world”)
                   Knowledge in the
   Property                                    Knowledge in the Head
                       World
                  Learning not required.
                      Interpretation
                                              Requires learning, which
                 substitutes for learning.
                                                  can be considerable.
                    How easy it is to
                                              Learning is made easier if
                 interpret information is
   Learning                                        there is meaning of
                   the world depends
                                             structure to the material (or
                     upon how well it
                                               if there is a good mental
                     exploits natural
                                                         model).
                      mappings and
                       constraints.
                 Tends to be slowed up
  Efficiency     by the need to find and
                                                 Can be very efficient
    of use        interpret the external
                       information.

 Ease of use
    at first               High                            Low
  encounter
April 17, 2012                 APIs to Affordances : WS-REST 2012        18
                                                                              Layer 7 Confidential   18
Affordances

 "Hypermedia is defined by the presence of application
 control information embedded within, or as a layer above,
 the presentation of information“ (2001)
 “When I say [Hypermedia], I mean the simultaneous
 presentation of information and controls such that the
 information becomes the affordance through which the user
 obtains choices and selects actions” (2008)


Architectural Styles and the Design
of Network-based Software, 2001
- Roy T. Fielding

                                                Layer 7 Confidential   19
Affordances

 "Hypermedia is defined by the presence of application
 control information embedded within, or as a layer above,
 the presentation of information“ (2001)
 “When I say [Hypermedia], I mean the simultaneous
 presentation of information and controls such that the
 information becomes the affordance through which the user
 obtains choices and selects actions” (2008)


Architectural Styles and the Design
of Network-based Software, 2001
- Roy T. Fielding

                                                Layer 7 Confidential   20
Affordances




Affordances
   make
Hypermedia
 possible.



                Layer 7 Confidential   21
Affordances




      Hypermedia
     can provide a
Rich Set of Affordances




                     Layer 7 Confidential   22
Maze+XML



       Design #1:
A big pile of Affordances




                      Layer 7 Confidential   23
Maze+XML

 Maze+XML media type
 First design in late 2010, registered w/ IANA 2011
 “…an XML data format for sharing maze state information
 between clients and servers. It can be used to implement
 simple mazes, adventure games, and other related data.”
 Read-only navigational links
 Nine link identifiers:
 collection, maze, start, exit, current,
 north, south, east, west




                                                 Layer 7 Confidential   24
Maze+XML
Message




           Layer 7 Confidential   25
Maze+XML
Server




          Layer 7 Confidential   26
Maze+XML
Client




          Layer 7 Confidential   27
Maze+XML
Client




          Layer 7 Confidential   28
Maze+XML
Client




          Layer 7 Confidential   29
Maze+XML
Client Code




               Layer 7 Confidential   30
Maze+XML




In the wild…




                Layer 7 Confidential   31
Maze+XML

 Darrel Miller
 “A good example of using link relations to convey
 domain specific semantics.”
 “Has been a good test bed for trying to develop a UI
 transparently that tracks the state of the user agent as it
 navigates between representations.”




                                                  Layer 7 Confidential   32
Maze+XML
Darrel Miller – C#




                      Layer 7 Confidential   33
Maze+XML

 Yannick Loiseau
 “I can say that a non-restful architecture would have been a
 lot harder to deal with in bash, because hypermedia
 obviously made the maze exploration really easy”
 “I think that Link headers would be even
 easier to deal with…”




                                                 Layer 7 Confidential   34
Maze+XML
Yannick Loiseau - Python




                            Layer 7 Confidential   35
Maze+XML
Yannick Loiseau - Bash




                          Layer 7 Confidential   36
Maze+XML
 Characteristics
 - Read-Only navigational links
 - Limited set of identifiers
 - Domain specific

 Benefits
 - Simple, direct design
 - Easy to create servers/clients
 - M2M works when algorithm is available

 Costs
 - Limited reach
 - M2M clients challenge evolvability

                                            Layer 7 Confidential   37
H-Factors




“Pardon me, did you say „links‟?”




                           Layer 7 Confidential   38
H-Factors

“The H Factor of a media-type is a measure of the
 level of hypermedia support within that media-type.”
“H Factor values can be used to compare and
 contrast media types in order to aid in selecting the
 proper media-type(s) for your
 implementation.”


REST: From Research to Practice :
Hypermedia Types, 2011
- Mike Amundsen

                                          Layer 7 Confidential   39
H-Factors
Analyzing Media Types




                        Layer 7 Confidential   40
H-Factors
Analyzing Media Types




                        Layer 7 Confidential   41
H-Factors
Analyzing Media Types




                        Layer 7 Confidential   42
H-Factors

There are five LINK Factors
 (LO, LE, LT, LI, LN)
There are four CONTROL Factors
 (CR, CU, CM, CL)




                                  Layer 7 Confidential   43
H-Factors

There are five LINK Factors
 (LO, LE, LT, LI, LN)
There are four CONTROL Factors
 (CR, CU, CM, CL)




                                  Layer 7 Confidential   44
H-Factors
Linking
 Outbound Links (LO)




                        Layer 7 Confidential   45
H-Factors
Linking
 Outbound Links (LO)
 Embedded Links (LE)




                        Layer 7 Confidential   46
H-Factors
Linking
 Outbound Links (LO)
 Embedded Links (LE)
 Templated Links (LT)




                         Layer 7 Confidential   47
H-Factors
Linking
 Outbound Links (LO)
 Embedded Links (LE)
 Templated Links (LT)
 Idempotent Links (LI)




                          Layer 7 Confidential   48
H-Factors
Linking
 Outbound Links (LO)
 Embedded Links (LE)
 Templated Links (LT)
 Idempotent Links (LI)
 Non-Idempotent Links (LN)




                              Layer 7 Confidential   49
H-Factors

There are five LINK Factors
 (LO, LE, LT, LI, LN)
There are four CONTROL Factors
 (CR, CU, CM, CL)




                                  Layer 7 Confidential   50
H-Factors
Control
 Request Controls (CR)




                          Layer 7 Confidential   51
H-Factors
Control
 Request Controls (CR)
 Update Controls (CU)




                          Layer 7 Confidential   52
H-Factors
Control
 Request Controls (CR)
 Update Controls (CU)
 Method Controls (CM)




                          Layer 7 Confidential   53
H-Factors
Control
 Request Controls (CR)
 Update Controls (CU)
 Method Controls (CM)
 Link Controls (CL)




                          Layer 7 Confidential   54
H-Factors

A pre-defined collection of H-Factors is called a
 “Media Type”
Each media type has it’s own “H-Factor” signature.




                                          Layer 7 Confidential   55
H-Factors




H-Factors document
  the Affordances
       of the
    Media Type



                     Layer 7 Confidential   56
H-Factors




“OK, media types, affordances, I see…




                             Layer 7 Confidential   57
Collection+JSON




         Design #2:
A read/write hypermedia type




                       Layer 7 Confidential   58
Collection+JSON

 Collection+JSON media type
 First designs in early 2011, registered w/ IANA mid 2011
 “…a JSON-based read/write hypermedia-type designed to
 support management and querying of simple collections.”
 It’s Atom w/ LT + templated writes
 Very limited link identifiers
 - collection, item, templates, query




                                                Layer 7 Confidential   59
Collection+JSON
Message




                Layer 7 Confidential   60
Collection+JSON
Message




                Layer 7 Confidential   61
Collection+JSON
Message




                Layer 7 Confidential   62
Collection+JSON
Message




                Layer 7 Confidential   63
Collection+JSON
Message




                Layer 7 Confidential   64
Collection+JSON
Server




               Layer 7 Confidential   65
Collection+JSON
Server




               Layer 7 Confidential   66
Collection+JSON
Server




               Layer 7 Confidential   67
Collection+JSON
Client Code




                    Layer 7 Confidential   68
Collection+JSON
Client Code




                    Layer 7 Confidential   69
Collection+JSON
Client Code




                    Layer 7 Confidential   70
Collection+JSON
Client App




                   Layer 7 Confidential   71
Collection+JSON
Client App




                   Layer 7 Confidential   72
Collection+JSON




In the wild…




               Layer 7 Confidential   73
Collection+JSON

 Nokia Research - Live Mixed Reality - Vlad Stribu
 “[Collection+JSON] … allows us to develop authoring tools
 that have the ability to self-adapt the user interface to the
 usage context.”




                                                   Layer 7 Confidential   74
Collection+JSON

 Nokia Research - Live Mixed Reality - Vlad Stribu
 “Collection+JSON was close enough to what we were
 looking for…”
 “Most important factor that influenced our decision was the
 community around this format…”




                                                 Layer 7 Confidential   75
Collection+JSON

 CloudApp – Larry Marburger
 “CloudApp allows you to share images, links, music, videos
 and files.”
 “[Due to developer team changes] we had some setbacks
 with the Mac app and subsequently the API. We just started
 working with another developer who's making amazing
 progress.”




                                               Layer 7 Confidential   76
Collection+JSON

 ember.js – Yehuda Katz
 “A framework for creating ambitious applications.”
 “By default, it's somewhat repetitive, but that can be
 addressed…”
 “It was straight-forward to extend it with features I needed”
 “I am starting to feel like with the number of extensions, I
 should consider [creating] my own media type.”




                                                    Layer 7 Confidential   77
Collection+JSON
 Characteristics
 - Read/Write w/ Templates
 - Small set of link identifiers
 - General “List Domain” handler

 Benefits
 - Limited design means simple parser
 - Servers easy, clients harder
 - Built-in support for custom domain annotations

 Costs
 - Domain mapping is more difficult
 - M2M clients limited to pre-declared vocabulary

                                                      Layer 7 Confidential   78
Affordance Aspects




“So, are all affordances essentially
             the same?”




                            Layer 7 Confidential   79
Affordance Aspects

“For the purposes of applying affordances to
 hypermedia, there are four important aspects
 to consider”




                                         Layer 7 Confidential   80
Affordance Aspects

Safe
The HTTP protocol supports a number of "safe"
 actions such as HEAD, and GET.




                                       Layer 7 Confidential   81
Affordance Aspects

Safe
The HTTP protocol supports a number of "safe"
 actions such as HEAD, and GET.
The HTTP methods PUT, POST, and DELETE are
 categorized as "unsafe" actions.




                                       Layer 7 Confidential   82
Affordance Aspects

Idempotent
When an HTML:FORM element has the METHOD
 property set to "get" it represents an idempotent
 action.




                                          Layer 7 Confidential   83
Affordance Aspects

Idempotent
When an HTML:FORM element has the METHOD
 property set to "get" it represents an idempotent
 action.
When the same property is set to "post" the
 affordance represents a non-idempotent action.




                                          Layer 7 Confidential   84
Affordance Aspects

Mutability
HTML:FORM affords mutability




                                  Layer 7 Confidential   85
Affordance Aspects

Mutability
HTML:FORM affords mutability
HTML:LINK is immutable




                                   Layer 7 Confidential   86
Affordance Aspects

Transclusion
HTML:IMG affords transclusion




                                   Layer 7 Confidential   87
Affordance Aspects

Transclusion
HTML:IMG affords transclusion
HTML:A does not




                                   Layer 7 Confidential   88
Affordance Aspects

However, this single affordance is not
very usable.




                                Layer 7 Confidential   89
Affordance Aspects




Media types
 should be
  usable



              Layer 7 Confidential   90
Affordance Aspects




Messages
should be
 usable



             Layer 7 Confidential   91
Affordance Aspects




  APIs
should be
 usable



             Layer 7 Confidential   92
ALPS for HTML




          Design #3:
Aspects, Factors, Abstractions




                        Layer 7 Confidential   93
ALPS for HTML

 ALPS profile URI
 First designs in early 2011 (not registered)
 “The purpose of Application-Level Profile Semantics (ALPS)
 is to document the application-level semantics of a particular
 implementation.”
 “The example profile here contains details
 on customizing the XHTML media type
 for a specific application domain:
 Micro-blogging.”




                                                 Layer 7 Confidential   94
ALPS for HTML

 ALPS profile URI
 Multiple parties building their own client or server
 applications without seeing each other's work or accessing a
 running "reference" implementation.
 Developers are expected to rely on the constraints and
 definitions found in this document (and the referenced
 RFCs) as the sole instruction.




                                                    Layer 7 Confidential   95
ALPS for HTML
Messages




                Layer 7 Confidential   96
ALPS for HTML
Messages




                Layer 7 Confidential   97
ALPS for HTML
Messages




                Layer 7 Confidential   98
ALPS for HTML
Server Code




                   Layer 7 Confidential   99
ALPS for HTML
Client Code




                  Layer 7 Confidential   100
ALPS for HTML
Client App




                 Layer 7 Confidential   101
ALPS for HTML
Client Bot




                 Layer 7 Confidential   102
ALPS for HTML
Client Bot




                 Layer 7 Confidential   103
ALPS for HTML
Client Bot




                 Layer 7 Confidential   104
ALPS for HTML




“In the wild…”




                 Layer 7 Confidential   105
ALPS for HTML

Rstat.us – Carol Nichols
 “There are two things that make rstat.us special: simplicity
 and openness.”
 “[S]ince we already have a full-functioning end-user facing
 site, the ALPS microblogging spec means adding a few
 attributes rather than having to maintain a totally separate
 API interface.”
 “The current way of
 presenting the ALPS
 spec is [too] flat.”



                                                 Layer 7 Confidential   106
ALPS for HTML

Rstat.us – Carol Nichols




                               Layer 7 Confidential   107
ALPS for HTML

Rstat.us – Carol Nichols




                               Layer 7 Confidential   108
ALPS for HTML
 Characteristics
 - Domain Semantics Only
 - Media-type agnostic

 Benefits
 - Focused on problem domain
 - Treats “pages” as the “API”

 Costs
 - Very abstract model
 - Tough to document
 - Seems “over complex” esp. for M2M cases



                                                 Layer 7 Confidential   109
ALPS for HTML




“If HTML is not the only media-type
            we need…”




                           Layer 7 Confidential   110
ALPS for HTML




“How do you choose?”




                   Layer 7 Confidential   111
Methodology




Mapping your domain to HTTP




                     Layer 7 Confidential   112
Methodology

Designing messages is the primary work
Focus on mapping to payloads, not identifiers
Survey existing media types first
If you can’t find a suitable H-Factor signature
 match, consider designing your own.
Pro Tip: you can always find a match.



                                          Layer 7 Confidential   113
Methodology

Start with a format (XML, JSON, HTML, etc.)
You might need to support more than one
Don’t assume you can “cross-map” formats easily
Pro Tip: you almost always need to support more
 than one.




                                       Layer 7 Confidential   114
Methodology

Select your other design elements as needed




                                      Layer 7 Confidential   115
Methodology

Represent State, not Objects
Remember both data and transitions
Craft lots of messages
Pro Tip: you can never have enough messages




                                      Layer 7 Confidential   116
Methodology

When you are sure you have:
The proper format
The right H-Factor signature
The correct mapping of domain to messages
Sufficent message examples
Then, and only then…



                                     Layer 7 Confidential   117
Methodology




You can start writing
     the code




                        Layer 7 Confidential   118
Methodology




Because…




             Layer 7 Confidential   119
Methodology




  The code is only
the implementation




                     Layer 7 Confidential   120
Methodology




  The code is only
the implementation

The media type is
   the design.


                     Layer 7 Confidential   121
Methodology




And if you get the design
         right...




                       Layer 7 Confidential   122
Methodology




Your users will be able
     to do things




                      Layer 7 Confidential   123
Methodology




Your users will be able
     to do things




                      Layer 7 Confidential   124
Methodology




Your users will be able
     to do things
 you never imagined




                      Layer 7 Confidential   125
Mike Amundsen



The Costs and Benefits of
Building Hypermedia APIs
(with Node.js)

      @mamund


                      Layer 7 Confidential   126

More Related Content

Similar to The Cost and Benefits of Building Hypermedia APIs (with Node.js) from QconSF

"Sun Open Source Universe" by Vassilis Boulogiorgos @ eLiberatica 2008
"Sun Open Source Universe" by Vassilis Boulogiorgos @ eLiberatica 2008"Sun Open Source Universe" by Vassilis Boulogiorgos @ eLiberatica 2008
"Sun Open Source Universe" by Vassilis Boulogiorgos @ eLiberatica 2008eLiberatica
 
Gephi icwsm-tutorial
Gephi icwsm-tutorialGephi icwsm-tutorial
Gephi icwsm-tutorialcsedays
 
Data-Intensive Text Processing with MapReduce
Data-Intensive Text Processing  with MapReduce Data-Intensive Text Processing  with MapReduce
Data-Intensive Text Processing with MapReduce George Ang
 
Data-Intensive Text Processing with MapReduce
Data-Intensive Text Processing with MapReduceData-Intensive Text Processing with MapReduce
Data-Intensive Text Processing with MapReduceGeorge Ang
 
Ml pluss ejan2013
Ml pluss ejan2013Ml pluss ejan2013
Ml pluss ejan2013CS, NcState
 
Creating Documentation Your Users Will Love
Creating Documentation Your Users Will LoveCreating Documentation Your Users Will Love
Creating Documentation Your Users Will LoveEna Arel
 
NYC Meetup November 15, 2012
NYC Meetup November 15, 2012NYC Meetup November 15, 2012
NYC Meetup November 15, 2012NuoDB
 
Perspectives on Open
Perspectives on OpenPerspectives on Open
Perspectives on OpenTim O'Reilly
 
Translating Open Source Value to the Cloud
Translating Open Source Value to the CloudTranslating Open Source Value to the Cloud
Translating Open Source Value to the CloudGordon Haff
 
User-Modifiable Software: Smalltalk and HyperCard
User-Modifiable Software: Smalltalk and HyperCardUser-Modifiable Software: Smalltalk and HyperCard
User-Modifiable Software: Smalltalk and HyperCardJosh Justice
 
The Internet of Things. How it Works. Why it Matters.
The Internet of Things. How it Works. Why it Matters.The Internet of Things. How it Works. Why it Matters.
The Internet of Things. How it Works. Why it Matters.Laurie Lamberth
 
Introducing MongoDB into your Organization
Introducing MongoDB into your OrganizationIntroducing MongoDB into your Organization
Introducing MongoDB into your OrganizationMongoDB
 
The value of a platform approach for ECM
The value of a platform approach for ECMThe value of a platform approach for ECM
The value of a platform approach for ECMNuxeo
 
Big data - Key Enablers, Drivers & Challenges
Big data - Key Enablers, Drivers & ChallengesBig data - Key Enablers, Drivers & Challenges
Big data - Key Enablers, Drivers & ChallengesShilpi Sharma
 
Informix Update New Features 11.70.xC1+
Informix Update New Features 11.70.xC1+Informix Update New Features 11.70.xC1+
Informix Update New Features 11.70.xC1+IBM Sverige
 
Defrag Keynote 2012: The Arab Spring of Software
Defrag Keynote 2012: The Arab Spring of SoftwareDefrag Keynote 2012: The Arab Spring of Software
Defrag Keynote 2012: The Arab Spring of SoftwareLauren Cooney
 
The Arab Spring of Software: Developers are the New Kingmakers
The Arab Spring of Software: Developers are the New KingmakersThe Arab Spring of Software: Developers are the New Kingmakers
The Arab Spring of Software: Developers are the New KingmakersDonnie Berkholz
 
Android development training programme Day 1
Android development training programme Day 1Android development training programme Day 1
Android development training programme Day 1DHIRAJ PRAVIN
 

Similar to The Cost and Benefits of Building Hypermedia APIs (with Node.js) from QconSF (20)

Digital Collaboration SGI 27_09_09
Digital Collaboration SGI 27_09_09Digital Collaboration SGI 27_09_09
Digital Collaboration SGI 27_09_09
 
"Sun Open Source Universe" by Vassilis Boulogiorgos @ eLiberatica 2008
"Sun Open Source Universe" by Vassilis Boulogiorgos @ eLiberatica 2008"Sun Open Source Universe" by Vassilis Boulogiorgos @ eLiberatica 2008
"Sun Open Source Universe" by Vassilis Boulogiorgos @ eLiberatica 2008
 
Gephi icwsm-tutorial
Gephi icwsm-tutorialGephi icwsm-tutorial
Gephi icwsm-tutorial
 
Data-Intensive Text Processing with MapReduce
Data-Intensive Text Processing  with MapReduce Data-Intensive Text Processing  with MapReduce
Data-Intensive Text Processing with MapReduce
 
Data-Intensive Text Processing with MapReduce
Data-Intensive Text Processing with MapReduceData-Intensive Text Processing with MapReduce
Data-Intensive Text Processing with MapReduce
 
Ml pluss ejan2013
Ml pluss ejan2013Ml pluss ejan2013
Ml pluss ejan2013
 
Creating Documentation Your Users Will Love
Creating Documentation Your Users Will LoveCreating Documentation Your Users Will Love
Creating Documentation Your Users Will Love
 
NYC Meetup November 15, 2012
NYC Meetup November 15, 2012NYC Meetup November 15, 2012
NYC Meetup November 15, 2012
 
Perspectives on Open
Perspectives on OpenPerspectives on Open
Perspectives on Open
 
Translating Open Source Value to the Cloud
Translating Open Source Value to the CloudTranslating Open Source Value to the Cloud
Translating Open Source Value to the Cloud
 
User-Modifiable Software: Smalltalk and HyperCard
User-Modifiable Software: Smalltalk and HyperCardUser-Modifiable Software: Smalltalk and HyperCard
User-Modifiable Software: Smalltalk and HyperCard
 
The Internet of Things. How it Works. Why it Matters.
The Internet of Things. How it Works. Why it Matters.The Internet of Things. How it Works. Why it Matters.
The Internet of Things. How it Works. Why it Matters.
 
Microservices
MicroservicesMicroservices
Microservices
 
Introducing MongoDB into your Organization
Introducing MongoDB into your OrganizationIntroducing MongoDB into your Organization
Introducing MongoDB into your Organization
 
The value of a platform approach for ECM
The value of a platform approach for ECMThe value of a platform approach for ECM
The value of a platform approach for ECM
 
Big data - Key Enablers, Drivers & Challenges
Big data - Key Enablers, Drivers & ChallengesBig data - Key Enablers, Drivers & Challenges
Big data - Key Enablers, Drivers & Challenges
 
Informix Update New Features 11.70.xC1+
Informix Update New Features 11.70.xC1+Informix Update New Features 11.70.xC1+
Informix Update New Features 11.70.xC1+
 
Defrag Keynote 2012: The Arab Spring of Software
Defrag Keynote 2012: The Arab Spring of SoftwareDefrag Keynote 2012: The Arab Spring of Software
Defrag Keynote 2012: The Arab Spring of Software
 
The Arab Spring of Software: Developers are the New Kingmakers
The Arab Spring of Software: Developers are the New KingmakersThe Arab Spring of Software: Developers are the New Kingmakers
The Arab Spring of Software: Developers are the New Kingmakers
 
Android development training programme Day 1
Android development training programme Day 1Android development training programme Day 1
Android development training programme Day 1
 

More from CA API Management

Api architectures for the modern enterprise
Api architectures for the modern enterpriseApi architectures for the modern enterprise
Api architectures for the modern enterpriseCA API Management
 
Mastering Digital Channels with APIs
Mastering Digital Channels with APIsMastering Digital Channels with APIs
Mastering Digital Channels with APIsCA API Management
 
Takeaways from API Security Breaches Webinar
Takeaways from API Security Breaches WebinarTakeaways from API Security Breaches Webinar
Takeaways from API Security Breaches WebinarCA API Management
 
API Design Methodology - Mike Amundsen, Director of API Architecture, API Aca...
API Design Methodology - Mike Amundsen, Director of API Architecture, API Aca...API Design Methodology - Mike Amundsen, Director of API Architecture, API Aca...
API Design Methodology - Mike Amundsen, Director of API Architecture, API Aca...CA API Management
 
Liberating the API Economy with Scale-Free Networks - Mike Amundsen, Director...
Liberating the API Economy with Scale-Free Networks - Mike Amundsen, Director...Liberating the API Economy with Scale-Free Networks - Mike Amundsen, Director...
Liberating the API Economy with Scale-Free Networks - Mike Amundsen, Director...CA API Management
 
API360 – A How-To Guide for Enterprise APIs - Learn how to position your ente...
API360 – A How-To Guide for Enterprise APIs - Learn how to position your ente...API360 – A How-To Guide for Enterprise APIs - Learn how to position your ente...
API360 – A How-To Guide for Enterprise APIs - Learn how to position your ente...CA API Management
 
API Monetization: Unlock the Value of Your Data
API Monetization: Unlock the Value of Your DataAPI Monetization: Unlock the Value of Your Data
API Monetization: Unlock the Value of Your DataCA API Management
 
Revisiting Geddes' Outlook Tower - Mike Amundsen, Director of API Architectur...
Revisiting Geddes' Outlook Tower - Mike Amundsen, Director of API Architectur...Revisiting Geddes' Outlook Tower - Mike Amundsen, Director of API Architectur...
Revisiting Geddes' Outlook Tower - Mike Amundsen, Director of API Architectur...CA API Management
 
Managing Identity by Giving Up Control - Scott Morrison, SVP & Distinguished ...
Managing Identity by Giving Up Control - Scott Morrison, SVP & Distinguished ...Managing Identity by Giving Up Control - Scott Morrison, SVP & Distinguished ...
Managing Identity by Giving Up Control - Scott Morrison, SVP & Distinguished ...CA API Management
 
Enabling the Multi-Device Universe
Enabling the Multi-Device UniverseEnabling the Multi-Device Universe
Enabling the Multi-Device UniverseCA API Management
 
Building APIs That Last for Decades - Irakli Nadareishvili, Director of API S...
Building APIs That Last for Decades - Irakli Nadareishvili, Director of API S...Building APIs That Last for Decades - Irakli Nadareishvili, Director of API S...
Building APIs That Last for Decades - Irakli Nadareishvili, Director of API S...CA API Management
 
The Art of API Design - Ronnie Mitra, Director of API Design, API Academy at ...
The Art of API Design - Ronnie Mitra, Director of API Design, API Academy at ...The Art of API Design - Ronnie Mitra, Director of API Design, API Academy at ...
The Art of API Design - Ronnie Mitra, Director of API Design, API Academy at ...CA API Management
 
APIs Fueling the Connected Car Opportunity - Scott Morrison, SVP & Distinguis...
APIs Fueling the Connected Car Opportunity - Scott Morrison, SVP & Distinguis...APIs Fueling the Connected Car Opportunity - Scott Morrison, SVP & Distinguis...
APIs Fueling the Connected Car Opportunity - Scott Morrison, SVP & Distinguis...CA API Management
 
Adapting to Digital Change: Use APIs to Delight Customers & Win
Adapting to Digital Change: Use APIs to Delight Customers & WinAdapting to Digital Change: Use APIs to Delight Customers & Win
Adapting to Digital Change: Use APIs to Delight Customers & WinCA API Management
 
Balancing Security & Developer Enablement in Enterprise Mobility - Jaime Ryan...
Balancing Security & Developer Enablement in Enterprise Mobility - Jaime Ryan...Balancing Security & Developer Enablement in Enterprise Mobility - Jaime Ryan...
Balancing Security & Developer Enablement in Enterprise Mobility - Jaime Ryan...CA API Management
 
5 steps end to end security consumer apps
5 steps end to end security consumer apps5 steps end to end security consumer apps
5 steps end to end security consumer appsCA API Management
 
Best Practices You Must Apply to Secure Your APIs - Scott Morrison, SVP & Dis...
Best Practices You Must Apply to Secure Your APIs - Scott Morrison, SVP & Dis...Best Practices You Must Apply to Secure Your APIs - Scott Morrison, SVP & Dis...
Best Practices You Must Apply to Secure Your APIs - Scott Morrison, SVP & Dis...CA API Management
 
Drones, Phones & Pwns the Promise & Dangers of IoT APIs: Use APIs to Securely...
Drones, Phones & Pwns the Promise & Dangers of IoT APIs: Use APIs to Securely...Drones, Phones & Pwns the Promise & Dangers of IoT APIs: Use APIs to Securely...
Drones, Phones & Pwns the Promise & Dangers of IoT APIs: Use APIs to Securely...CA API Management
 
Gartner AADI Summit Sydney 2014 Implementing the Layer 7 API Management Pla...
Gartner AADI Summit Sydney 2014   Implementing the Layer 7 API Management Pla...Gartner AADI Summit Sydney 2014   Implementing the Layer 7 API Management Pla...
Gartner AADI Summit Sydney 2014 Implementing the Layer 7 API Management Pla...CA API Management
 
Using APIs to Create an Omni-Channel Retail Experience
Using APIs to Create an Omni-Channel Retail ExperienceUsing APIs to Create an Omni-Channel Retail Experience
Using APIs to Create an Omni-Channel Retail ExperienceCA API Management
 

More from CA API Management (20)

Api architectures for the modern enterprise
Api architectures for the modern enterpriseApi architectures for the modern enterprise
Api architectures for the modern enterprise
 
Mastering Digital Channels with APIs
Mastering Digital Channels with APIsMastering Digital Channels with APIs
Mastering Digital Channels with APIs
 
Takeaways from API Security Breaches Webinar
Takeaways from API Security Breaches WebinarTakeaways from API Security Breaches Webinar
Takeaways from API Security Breaches Webinar
 
API Design Methodology - Mike Amundsen, Director of API Architecture, API Aca...
API Design Methodology - Mike Amundsen, Director of API Architecture, API Aca...API Design Methodology - Mike Amundsen, Director of API Architecture, API Aca...
API Design Methodology - Mike Amundsen, Director of API Architecture, API Aca...
 
Liberating the API Economy with Scale-Free Networks - Mike Amundsen, Director...
Liberating the API Economy with Scale-Free Networks - Mike Amundsen, Director...Liberating the API Economy with Scale-Free Networks - Mike Amundsen, Director...
Liberating the API Economy with Scale-Free Networks - Mike Amundsen, Director...
 
API360 – A How-To Guide for Enterprise APIs - Learn how to position your ente...
API360 – A How-To Guide for Enterprise APIs - Learn how to position your ente...API360 – A How-To Guide for Enterprise APIs - Learn how to position your ente...
API360 – A How-To Guide for Enterprise APIs - Learn how to position your ente...
 
API Monetization: Unlock the Value of Your Data
API Monetization: Unlock the Value of Your DataAPI Monetization: Unlock the Value of Your Data
API Monetization: Unlock the Value of Your Data
 
Revisiting Geddes' Outlook Tower - Mike Amundsen, Director of API Architectur...
Revisiting Geddes' Outlook Tower - Mike Amundsen, Director of API Architectur...Revisiting Geddes' Outlook Tower - Mike Amundsen, Director of API Architectur...
Revisiting Geddes' Outlook Tower - Mike Amundsen, Director of API Architectur...
 
Managing Identity by Giving Up Control - Scott Morrison, SVP & Distinguished ...
Managing Identity by Giving Up Control - Scott Morrison, SVP & Distinguished ...Managing Identity by Giving Up Control - Scott Morrison, SVP & Distinguished ...
Managing Identity by Giving Up Control - Scott Morrison, SVP & Distinguished ...
 
Enabling the Multi-Device Universe
Enabling the Multi-Device UniverseEnabling the Multi-Device Universe
Enabling the Multi-Device Universe
 
Building APIs That Last for Decades - Irakli Nadareishvili, Director of API S...
Building APIs That Last for Decades - Irakli Nadareishvili, Director of API S...Building APIs That Last for Decades - Irakli Nadareishvili, Director of API S...
Building APIs That Last for Decades - Irakli Nadareishvili, Director of API S...
 
The Art of API Design - Ronnie Mitra, Director of API Design, API Academy at ...
The Art of API Design - Ronnie Mitra, Director of API Design, API Academy at ...The Art of API Design - Ronnie Mitra, Director of API Design, API Academy at ...
The Art of API Design - Ronnie Mitra, Director of API Design, API Academy at ...
 
APIs Fueling the Connected Car Opportunity - Scott Morrison, SVP & Distinguis...
APIs Fueling the Connected Car Opportunity - Scott Morrison, SVP & Distinguis...APIs Fueling the Connected Car Opportunity - Scott Morrison, SVP & Distinguis...
APIs Fueling the Connected Car Opportunity - Scott Morrison, SVP & Distinguis...
 
Adapting to Digital Change: Use APIs to Delight Customers & Win
Adapting to Digital Change: Use APIs to Delight Customers & WinAdapting to Digital Change: Use APIs to Delight Customers & Win
Adapting to Digital Change: Use APIs to Delight Customers & Win
 
Balancing Security & Developer Enablement in Enterprise Mobility - Jaime Ryan...
Balancing Security & Developer Enablement in Enterprise Mobility - Jaime Ryan...Balancing Security & Developer Enablement in Enterprise Mobility - Jaime Ryan...
Balancing Security & Developer Enablement in Enterprise Mobility - Jaime Ryan...
 
5 steps end to end security consumer apps
5 steps end to end security consumer apps5 steps end to end security consumer apps
5 steps end to end security consumer apps
 
Best Practices You Must Apply to Secure Your APIs - Scott Morrison, SVP & Dis...
Best Practices You Must Apply to Secure Your APIs - Scott Morrison, SVP & Dis...Best Practices You Must Apply to Secure Your APIs - Scott Morrison, SVP & Dis...
Best Practices You Must Apply to Secure Your APIs - Scott Morrison, SVP & Dis...
 
Drones, Phones & Pwns the Promise & Dangers of IoT APIs: Use APIs to Securely...
Drones, Phones & Pwns the Promise & Dangers of IoT APIs: Use APIs to Securely...Drones, Phones & Pwns the Promise & Dangers of IoT APIs: Use APIs to Securely...
Drones, Phones & Pwns the Promise & Dangers of IoT APIs: Use APIs to Securely...
 
Gartner AADI Summit Sydney 2014 Implementing the Layer 7 API Management Pla...
Gartner AADI Summit Sydney 2014   Implementing the Layer 7 API Management Pla...Gartner AADI Summit Sydney 2014   Implementing the Layer 7 API Management Pla...
Gartner AADI Summit Sydney 2014 Implementing the Layer 7 API Management Pla...
 
Using APIs to Create an Omni-Channel Retail Experience
Using APIs to Create an Omni-Channel Retail ExperienceUsing APIs to Create an Omni-Channel Retail Experience
Using APIs to Create an Omni-Channel Retail Experience
 

The Cost and Benefits of Building Hypermedia APIs (with Node.js) from QconSF