Soumettre la recherche
Mettre en ligne
Taking the Hype out of Hypermedia
•
0 j'aime
•
582 vues
R
ryanlemmer
Suivre
Slides for my talk @ RubyFuza 2012
Lire moins
Lire la suite
Technologie
Business
Signaler
Partager
Signaler
Partager
1 sur 49
Télécharger maintenant
Télécharger pour lire hors ligne
Recommandé
Real-time search in Drupal with Elasticsearch @Moldcamp
Real-time search in Drupal with Elasticsearch @Moldcamp
Alexei Gorobets
SDKs, the good the bad the ugly - Japan
SDKs, the good the bad the ugly - Japan
tristansokol
Do more with less code in serverless
Do more with less code in serverless
jeromevdl
Learning to Build Distributed Systems the Hard Way
Learning to Build Distributed Systems the Hard Way
Theo Hultberg
Cutting Edge Data Processing with PHP & XQuery
Cutting Edge Data Processing with PHP & XQuery
William Candillon
GlueCon 2016 - Threading in JavaScript
GlueCon 2016 - Threading in JavaScript
Jonathan Baker
Cloud Adoption in Regulated Financial Services - SID328 - re:Invent 2017
Cloud Adoption in Regulated Financial Services - SID328 - re:Invent 2017
Amazon Web Services
Being in a State of REST
Being in a State of REST
Aslam Khan
Recommandé
Real-time search in Drupal with Elasticsearch @Moldcamp
Real-time search in Drupal with Elasticsearch @Moldcamp
Alexei Gorobets
SDKs, the good the bad the ugly - Japan
SDKs, the good the bad the ugly - Japan
tristansokol
Do more with less code in serverless
Do more with less code in serverless
jeromevdl
Learning to Build Distributed Systems the Hard Way
Learning to Build Distributed Systems the Hard Way
Theo Hultberg
Cutting Edge Data Processing with PHP & XQuery
Cutting Edge Data Processing with PHP & XQuery
William Candillon
GlueCon 2016 - Threading in JavaScript
GlueCon 2016 - Threading in JavaScript
Jonathan Baker
Cloud Adoption in Regulated Financial Services - SID328 - re:Invent 2017
Cloud Adoption in Regulated Financial Services - SID328 - re:Invent 2017
Amazon Web Services
Being in a State of REST
Being in a State of REST
Aslam Khan
TSAR (TimeSeries AggregatoR) Tech Talk
TSAR (TimeSeries AggregatoR) Tech Talk
Anirudh Todi
Tsar tech talk
Tsar tech talk
Anirudh Todi
201410 2 fiware-orion-contextbroker
201410 2 fiware-orion-contextbroker
FIWARE
Server-Side Push: Comet, Web Sockets come of age (OSCON 2013)
Server-Side Push: Comet, Web Sockets come of age (OSCON 2013)
Brian Sam-Bodden
Is writing performant code too expensive?
Is writing performant code too expensive?
Tomasz Kowalczewski
Domain Driven Design
Domain Driven Design
Pascal Larocque
elasticsearch - advanced features in practice
elasticsearch - advanced features in practice
Jano Suchal
Deep Dive on MySQL Databases on Amazon RDS (DAT322) - AWS re:Invent 2018
Deep Dive on MySQL Databases on Amazon RDS (DAT322) - AWS re:Invent 2018
Amazon Web Services
FIWARE Developers Week_ Introduction to Managing Context Information at Large...
FIWARE Developers Week_ Introduction to Managing Context Information at Large...
FIWARE
Hexagonal at Scale, with DDD and microservices! - Voxxed Days microservices 2...
Hexagonal at Scale, with DDD and microservices! - Voxxed Days microservices 2...
Cyrille Martraire
codebits 2009 HTML5 JS APIs
codebits 2009 HTML5 JS APIs
Remy Sharp
DSL - expressive syntax on top of a clean semantic model
DSL - expressive syntax on top of a clean semantic model
Debasish Ghosh
An Introduction to Windows PowerShell
An Introduction to Windows PowerShell
Dale Lane
Alfresco 2019 DevCon lightning talk alan davis
Alfresco 2019 DevCon lightning talk alan davis
Alan Davis
Micro app-framework - NodeLive Boston
Micro app-framework - NodeLive Boston
Michael Dawson
Micro app-framework
Micro app-framework
Michael Dawson
Modernize Your Threat Detection and Remediation Process Using Cloud Services
Modernize Your Threat Detection and Remediation Process Using Cloud Services
Amazon Web Services
Building the an End-to-End ASP.NET MVC 4, Entity Framework, HTML5, jQuery app...
Building the an End-to-End ASP.NET MVC 4, Entity Framework, HTML5, jQuery app...
Dan Wahlin
Matteo Collina | Take your HTTP server to Ludicrous Speed | Codmeotion Madrid...
Matteo Collina | Take your HTTP server to Ludicrous Speed | Codmeotion Madrid...
Codemotion
CQRS and Event Sourcing in the AWS Cloud
CQRS and Event Sourcing in the AWS Cloud
Gunnar Wrobel
Partners Life - Insurer Innovation Award 2024
Partners Life - Insurer Innovation Award 2024
The Digital Insurer
🐬 The future of MySQL is Postgres 🐘
🐬 The future of MySQL is Postgres 🐘
RTylerCroy
Contenu connexe
Similaire à Taking the Hype out of Hypermedia
TSAR (TimeSeries AggregatoR) Tech Talk
TSAR (TimeSeries AggregatoR) Tech Talk
Anirudh Todi
Tsar tech talk
Tsar tech talk
Anirudh Todi
201410 2 fiware-orion-contextbroker
201410 2 fiware-orion-contextbroker
FIWARE
Server-Side Push: Comet, Web Sockets come of age (OSCON 2013)
Server-Side Push: Comet, Web Sockets come of age (OSCON 2013)
Brian Sam-Bodden
Is writing performant code too expensive?
Is writing performant code too expensive?
Tomasz Kowalczewski
Domain Driven Design
Domain Driven Design
Pascal Larocque
elasticsearch - advanced features in practice
elasticsearch - advanced features in practice
Jano Suchal
Deep Dive on MySQL Databases on Amazon RDS (DAT322) - AWS re:Invent 2018
Deep Dive on MySQL Databases on Amazon RDS (DAT322) - AWS re:Invent 2018
Amazon Web Services
FIWARE Developers Week_ Introduction to Managing Context Information at Large...
FIWARE Developers Week_ Introduction to Managing Context Information at Large...
FIWARE
Hexagonal at Scale, with DDD and microservices! - Voxxed Days microservices 2...
Hexagonal at Scale, with DDD and microservices! - Voxxed Days microservices 2...
Cyrille Martraire
codebits 2009 HTML5 JS APIs
codebits 2009 HTML5 JS APIs
Remy Sharp
DSL - expressive syntax on top of a clean semantic model
DSL - expressive syntax on top of a clean semantic model
Debasish Ghosh
An Introduction to Windows PowerShell
An Introduction to Windows PowerShell
Dale Lane
Alfresco 2019 DevCon lightning talk alan davis
Alfresco 2019 DevCon lightning talk alan davis
Alan Davis
Micro app-framework - NodeLive Boston
Micro app-framework - NodeLive Boston
Michael Dawson
Micro app-framework
Micro app-framework
Michael Dawson
Modernize Your Threat Detection and Remediation Process Using Cloud Services
Modernize Your Threat Detection and Remediation Process Using Cloud Services
Amazon Web Services
Building the an End-to-End ASP.NET MVC 4, Entity Framework, HTML5, jQuery app...
Building the an End-to-End ASP.NET MVC 4, Entity Framework, HTML5, jQuery app...
Dan Wahlin
Matteo Collina | Take your HTTP server to Ludicrous Speed | Codmeotion Madrid...
Matteo Collina | Take your HTTP server to Ludicrous Speed | Codmeotion Madrid...
Codemotion
CQRS and Event Sourcing in the AWS Cloud
CQRS and Event Sourcing in the AWS Cloud
Gunnar Wrobel
Similaire à Taking the Hype out of Hypermedia
(20)
TSAR (TimeSeries AggregatoR) Tech Talk
TSAR (TimeSeries AggregatoR) Tech Talk
Tsar tech talk
Tsar tech talk
201410 2 fiware-orion-contextbroker
201410 2 fiware-orion-contextbroker
Server-Side Push: Comet, Web Sockets come of age (OSCON 2013)
Server-Side Push: Comet, Web Sockets come of age (OSCON 2013)
Is writing performant code too expensive?
Is writing performant code too expensive?
Domain Driven Design
Domain Driven Design
elasticsearch - advanced features in practice
elasticsearch - advanced features in practice
Deep Dive on MySQL Databases on Amazon RDS (DAT322) - AWS re:Invent 2018
Deep Dive on MySQL Databases on Amazon RDS (DAT322) - AWS re:Invent 2018
FIWARE Developers Week_ Introduction to Managing Context Information at Large...
FIWARE Developers Week_ Introduction to Managing Context Information at Large...
Hexagonal at Scale, with DDD and microservices! - Voxxed Days microservices 2...
Hexagonal at Scale, with DDD and microservices! - Voxxed Days microservices 2...
codebits 2009 HTML5 JS APIs
codebits 2009 HTML5 JS APIs
DSL - expressive syntax on top of a clean semantic model
DSL - expressive syntax on top of a clean semantic model
An Introduction to Windows PowerShell
An Introduction to Windows PowerShell
Alfresco 2019 DevCon lightning talk alan davis
Alfresco 2019 DevCon lightning talk alan davis
Micro app-framework - NodeLive Boston
Micro app-framework - NodeLive Boston
Micro app-framework
Micro app-framework
Modernize Your Threat Detection and Remediation Process Using Cloud Services
Modernize Your Threat Detection and Remediation Process Using Cloud Services
Building the an End-to-End ASP.NET MVC 4, Entity Framework, HTML5, jQuery app...
Building the an End-to-End ASP.NET MVC 4, Entity Framework, HTML5, jQuery app...
Matteo Collina | Take your HTTP server to Ludicrous Speed | Codmeotion Madrid...
Matteo Collina | Take your HTTP server to Ludicrous Speed | Codmeotion Madrid...
CQRS and Event Sourcing in the AWS Cloud
CQRS and Event Sourcing in the AWS Cloud
Dernier
Partners Life - Insurer Innovation Award 2024
Partners Life - Insurer Innovation Award 2024
The Digital Insurer
🐬 The future of MySQL is Postgres 🐘
🐬 The future of MySQL is Postgres 🐘
RTylerCroy
Tata AIG General Insurance Company - Insurer Innovation Award 2024
Tata AIG General Insurance Company - Insurer Innovation Award 2024
The Digital Insurer
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
apidays
Strategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a Fresher
Remote DBA Services
2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...
Martijn de Jong
Top 5 Benefits OF Using Muvi Live Paywall For Live Streams
Top 5 Benefits OF Using Muvi Live Paywall For Live Streams
Roshan Dwivedi
MINDCTI Revenue Release Quarter One 2024
MINDCTI Revenue Release Quarter One 2024
MIND CTI
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
Edi Saputra
AWS Community Day CPH - Three problems of Terraform
AWS Community Day CPH - Three problems of Terraform
Andrey Devyatkin
Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)
wesley chun
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
apidays
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
?#DUbAI#??##{{(☎️+971_581248768%)**%*]'#abortion pills for sale in dubai@
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
DianaGray10
Data Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt Robison
Anna Loughnan Colquhoun
Why Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire business
panagenda
TrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
TrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
TrustArc
Top 10 Most Downloaded Games on Play Store in 2024
Top 10 Most Downloaded Games on Play Store in 2024
SynarionITSolutions
Boost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivity
Principled Technologies
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc
Dernier
(20)
Partners Life - Insurer Innovation Award 2024
Partners Life - Insurer Innovation Award 2024
🐬 The future of MySQL is Postgres 🐘
🐬 The future of MySQL is Postgres 🐘
Tata AIG General Insurance Company - Insurer Innovation Award 2024
Tata AIG General Insurance Company - Insurer Innovation Award 2024
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
Strategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a Fresher
2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...
Top 5 Benefits OF Using Muvi Live Paywall For Live Streams
Top 5 Benefits OF Using Muvi Live Paywall For Live Streams
MINDCTI Revenue Release Quarter One 2024
MINDCTI Revenue Release Quarter One 2024
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
AWS Community Day CPH - Three problems of Terraform
AWS Community Day CPH - Three problems of Terraform
Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Data Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt Robison
Why Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire business
TrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
TrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
Top 10 Most Downloaded Games on Play Store in 2024
Top 10 Most Downloaded Games on Play Store in 2024
Boost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivity
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
Taking the Hype out of Hypermedia
1.
TAKING THE HYPE
OUT OF HYPERMEDIA ryan.lemmer@factor10.com // @ryanlemmer // GMT+2
2.
BUILDING UI
3.
TEMPLATE DRIVEN
4.
TEMPLATE DRIVEN <table>
<tr> <td> <%= @cart.total %> </td> ... </tr> </table>
5.
DATA + TEMPLATE
DRIVEN
6.
DATA + TEMPLATE
DRIVEN { total: 987, discount: 10, ... }
7.
DATA + TEMPLATE
DRIVEN AJAX GET /cart/1 { total: 987, discount: 10, ... }
8.
CONSISTENCY
9.
CONSISTENCY
10.
CONSISTENCY
11.
CONSISTENCY
12.
(LACK OF) CONSISTENCY
... MAKES TESTABILITY TOUGH
13.
TESTABILITY to test, you
need a (nice) handle on the situation
14.
TESTABILITY to test, you
need a (nice) handle on the situation # capybara it "signs me in" do within("#session") do fill_in 'Login', :with => 'boo@hoo.com' fill_in 'Password', :with => 'secrat(sic)' end click_link 'Sign in' end
15.
INTERACTIONS
16.
INTERACTIONS
17.
INTERACTIONS
18.
INTERACTIONS
19.
IMPLICIT INTERACTIONS
20.
IMPLICIT INTERACTIONS def
update_item_qty @item = @cart.items.find(params[:id]) if @item.update_attributes(:quantity => params[:qty]) redirect_to(@item) else render "edit" end end
21.
LAY OF THE
LAND
22.
LAY OF THE
LAND
23.
LAY OF THE
LAND
24.
LAY OF THE
LAND
25.
HYPERMEDIA DRIVEN
26.
HYPERMEDIA DRIVEN {
data: { total: 987, discount: 10, ... }, links: { {rel: “checkout” uri: “...”} }
27.
HYPERMEDIA DRIVEN {
after /checkout data: { total: 987, discount: 10, ... }, { links: { data: { {rel: “checkout” total: 987, uri: “...”} discount: 10, } ... }, links: {} }
28.
HYPERMEDIA DSL
29.
HYPERMEDIA DSL
GET /cart/12312312
30.
HYPERMEDIA DSL
GET /cart/12312312 POST /cart/12312312
31.
HYPERMEDIA
32.
HYPERMEDIA
33.
HYPERMEDIA only for “open”
carts
34.
HYPERMEDIA+STATEMACHINE
35.
HYPERMEDIA+STATEMACHINE
NEXT STEP ??
36.
HYPERMEDIA+STATEMACHINE
resource state machine NEXT STEP ??
37.
HYPERMEDIA+STATEMACHINE
resource state machine only checkout if cart is “open” NEXT STEP ??
38.
EXPLICIT INTERACTIONS
39.
EXPLICIT INTERACTIONS
SERVER SIDE INTERACTION LAYER
40.
EXPLICIT INTERACTIONS
SERVER SIDE HATEOAS INTERACTION LAYER
41.
INTERACTION LAYER
42.
INTERACTION LAYER
HYPERMEDIA “FLOW” “STRUCTURE”
43.
AND CONSISTENCY?
44.
AND CONSISTENCY?
remove then RELOAD
45.
AND CONSISTENCY?
remove then RELOAD
46.
ARCHITECTURE
47.
ARCHITECTURE
48.
WHAT’S NEXT? * Smart
Hypermedia clients * Hypermedia Types => (HTML Forms, ATOM, ...) * machine-to-machine API’s => dynamic, executable
49.
THANKS aslam
khan andreas brink lennart ohlsson @factor10
Télécharger maintenant