151
1 Innovation Content Operations User Experience Building Single Page Apps with React Headless CMS, and GraphQL Russ Danner, VP of Products Crafter Software February 2020

Innovation...GraphQL generally improves performance over REST by reducing the number of calls but be aware of the cost of your GraphQL calls. Remember not all GraphQL enabled systems

  • Upload
    others

  • View
    4

  • Download
    0

Embed Size (px)

Citation preview

Page 1: Innovation...GraphQL generally improves performance over REST by reducing the number of calls but be aware of the cost of your GraphQL calls. Remember not all GraphQL enabled systems

1

Innovation

Content

Operations

User Experience

Building Single Page Apps with React

Headless CMS, and GraphQL

Russ Danner, VP of Products Crafter Software February 2020

Page 2: Innovation...GraphQL generally improves performance over REST by reducing the number of calls but be aware of the cost of your GraphQL calls. Remember not all GraphQL enabled systems

1997- 2001: Industrial Process Control, Specialty steel alloys 2001 - 2008: Development, Architecture, Management in the publishing industry 2008 - 2013: WCM Practice Director, Consulting firm 2013 - Present: Vice President of Products, CMS Company (Crafter Software)

Russ Danner Vice President, Products Crafter Software

Page 3: Innovation...GraphQL generally improves performance over REST by reducing the number of calls but be aware of the cost of your GraphQL calls. Remember not all GraphQL enabled systems

Content

Page 4: Innovation...GraphQL generally improves performance over REST by reducing the number of calls but be aware of the cost of your GraphQL calls. Remember not all GraphQL enabled systems
Page 5: Innovation...GraphQL generally improves performance over REST by reducing the number of calls but be aware of the cost of your GraphQL calls. Remember not all GraphQL enabled systems
Page 6: Innovation...GraphQL generally improves performance over REST by reducing the number of calls but be aware of the cost of your GraphQL calls. Remember not all GraphQL enabled systems
Page 7: Innovation...GraphQL generally improves performance over REST by reducing the number of calls but be aware of the cost of your GraphQL calls. Remember not all GraphQL enabled systems
Page 8: Innovation...GraphQL generally improves performance over REST by reducing the number of calls but be aware of the cost of your GraphQL calls. Remember not all GraphQL enabled systems
Page 9: Innovation...GraphQL generally improves performance over REST by reducing the number of calls but be aware of the cost of your GraphQL calls. Remember not all GraphQL enabled systems
Page 10: Innovation...GraphQL generally improves performance over REST by reducing the number of calls but be aware of the cost of your GraphQL calls. Remember not all GraphQL enabled systems

Modern Web Applications

Page 11: Innovation...GraphQL generally improves performance over REST by reducing the number of calls but be aware of the cost of your GraphQL calls. Remember not all GraphQL enabled systems
Page 12: Innovation...GraphQL generally improves performance over REST by reducing the number of calls but be aware of the cost of your GraphQL calls. Remember not all GraphQL enabled systems
Page 13: Innovation...GraphQL generally improves performance over REST by reducing the number of calls but be aware of the cost of your GraphQL calls. Remember not all GraphQL enabled systems
Page 14: Innovation...GraphQL generally improves performance over REST by reducing the number of calls but be aware of the cost of your GraphQL calls. Remember not all GraphQL enabled systems
Page 15: Innovation...GraphQL generally improves performance over REST by reducing the number of calls but be aware of the cost of your GraphQL calls. Remember not all GraphQL enabled systems
Page 16: Innovation...GraphQL generally improves performance over REST by reducing the number of calls but be aware of the cost of your GraphQL calls. Remember not all GraphQL enabled systems
Page 17: Innovation...GraphQL generally improves performance over REST by reducing the number of calls but be aware of the cost of your GraphQL calls. Remember not all GraphQL enabled systems
Page 18: Innovation...GraphQL generally improves performance over REST by reducing the number of calls but be aware of the cost of your GraphQL calls. Remember not all GraphQL enabled systems
Page 19: Innovation...GraphQL generally improves performance over REST by reducing the number of calls but be aware of the cost of your GraphQL calls. Remember not all GraphQL enabled systems
Page 20: Innovation...GraphQL generally improves performance over REST by reducing the number of calls but be aware of the cost of your GraphQL calls. Remember not all GraphQL enabled systems
Page 21: Innovation...GraphQL generally improves performance over REST by reducing the number of calls but be aware of the cost of your GraphQL calls. Remember not all GraphQL enabled systems

Relies on API calls for data Fine. But don’t trivialize the server

01

Page 22: Innovation...GraphQL generally improves performance over REST by reducing the number of calls but be aware of the cost of your GraphQL calls. Remember not all GraphQL enabled systems

Relies on API calls for data Fine. But don’t trivialize the server

01

For public facing websites, SEO remains a _MAJOR_ concern

01

Page 23: Innovation...GraphQL generally improves performance over REST by reducing the number of calls but be aware of the cost of your GraphQL calls. Remember not all GraphQL enabled systems

Relies on API calls for data Fine. But don’t trivialize the server

01

For public facing websites, SEO remains a _MAJOR_ concern

01

The number of framework variants and options along with the high rate of innovation and change is great! And also TERRIBLE!

Page 24: Innovation...GraphQL generally improves performance over REST by reducing the number of calls but be aware of the cost of your GraphQL calls. Remember not all GraphQL enabled systems

GraphQL

Page 25: Innovation...GraphQL generally improves performance over REST by reducing the number of calls but be aware of the cost of your GraphQL calls. Remember not all GraphQL enabled systems
Page 26: Innovation...GraphQL generally improves performance over REST by reducing the number of calls but be aware of the cost of your GraphQL calls. Remember not all GraphQL enabled systems

GraphQL is ...

A Query Language An Alternative to REST

An API Gateway All of the above

Page 27: Innovation...GraphQL generally improves performance over REST by reducing the number of calls but be aware of the cost of your GraphQL calls. Remember not all GraphQL enabled systems
Page 28: Innovation...GraphQL generally improves performance over REST by reducing the number of calls but be aware of the cost of your GraphQL calls. Remember not all GraphQL enabled systems
Page 29: Innovation...GraphQL generally improves performance over REST by reducing the number of calls but be aware of the cost of your GraphQL calls. Remember not all GraphQL enabled systems
Page 30: Innovation...GraphQL generally improves performance over REST by reducing the number of calls but be aware of the cost of your GraphQL calls. Remember not all GraphQL enabled systems

Content

Page 31: Innovation...GraphQL generally improves performance over REST by reducing the number of calls but be aware of the cost of your GraphQL calls. Remember not all GraphQL enabled systems
Page 32: Innovation...GraphQL generally improves performance over REST by reducing the number of calls but be aware of the cost of your GraphQL calls. Remember not all GraphQL enabled systems
Page 33: Innovation...GraphQL generally improves performance over REST by reducing the number of calls but be aware of the cost of your GraphQL calls. Remember not all GraphQL enabled systems
Page 34: Innovation...GraphQL generally improves performance over REST by reducing the number of calls but be aware of the cost of your GraphQL calls. Remember not all GraphQL enabled systems
Page 35: Innovation...GraphQL generally improves performance over REST by reducing the number of calls but be aware of the cost of your GraphQL calls. Remember not all GraphQL enabled systems
Page 36: Innovation...GraphQL generally improves performance over REST by reducing the number of calls but be aware of the cost of your GraphQL calls. Remember not all GraphQL enabled systems
Page 37: Innovation...GraphQL generally improves performance over REST by reducing the number of calls but be aware of the cost of your GraphQL calls. Remember not all GraphQL enabled systems
Page 38: Innovation...GraphQL generally improves performance over REST by reducing the number of calls but be aware of the cost of your GraphQL calls. Remember not all GraphQL enabled systems

Standard data access “query language” 01

Page 39: Innovation...GraphQL generally improves performance over REST by reducing the number of calls but be aware of the cost of your GraphQL calls. Remember not all GraphQL enabled systems

Standard data access “query language” 01

Discoverability enables tooling 01

Page 40: Innovation...GraphQL generally improves performance over REST by reducing the number of calls but be aware of the cost of your GraphQL calls. Remember not all GraphQL enabled systems

Standard data access “query language” 01

Discoverability enables tooling 01

No Need to Version APIs

Page 41: Innovation...GraphQL generally improves performance over REST by reducing the number of calls but be aware of the cost of your GraphQL calls. Remember not all GraphQL enabled systems

Standard data access “query language” 01

Discoverability enables tooling 01

No Need to Version APIs

Quickly build and roll out an integrated API gateway

Page 42: Innovation...GraphQL generally improves performance over REST by reducing the number of calls but be aware of the cost of your GraphQL calls. Remember not all GraphQL enabled systems

Standard data access “query language” 01

Discoverability enables tooling 01

No Need to Version APIs

Quickly build and roll out an integrated API gateway

The rules bring predictability

Page 43: Innovation...GraphQL generally improves performance over REST by reducing the number of calls but be aware of the cost of your GraphQL calls. Remember not all GraphQL enabled systems
Page 44: Innovation...GraphQL generally improves performance over REST by reducing the number of calls but be aware of the cost of your GraphQL calls. Remember not all GraphQL enabled systems

No inherent security 01

Page 45: Innovation...GraphQL generally improves performance over REST by reducing the number of calls but be aware of the cost of your GraphQL calls. Remember not all GraphQL enabled systems

No inherent security 01

The rules bring limitation 01

Page 46: Innovation...GraphQL generally improves performance over REST by reducing the number of calls but be aware of the cost of your GraphQL calls. Remember not all GraphQL enabled systems

No inherent security 01

The rules bring limitation 01

GraphQL is NOT always the right API semantics for the job

Page 47: Innovation...GraphQL generally improves performance over REST by reducing the number of calls but be aware of the cost of your GraphQL calls. Remember not all GraphQL enabled systems

No inherent security 01

The rules bring limitation 01

GraphQL is NOT always the right API semantics for the job

You have to be aware of the performance overhead introduced by GraphQL

Page 48: Innovation...GraphQL generally improves performance over REST by reducing the number of calls but be aware of the cost of your GraphQL calls. Remember not all GraphQL enabled systems

CMS Content Management Systems

Page 49: Innovation...GraphQL generally improves performance over REST by reducing the number of calls but be aware of the cost of your GraphQL calls. Remember not all GraphQL enabled systems
Page 50: Innovation...GraphQL generally improves performance over REST by reducing the number of calls but be aware of the cost of your GraphQL calls. Remember not all GraphQL enabled systems

Do You Love Your CMS? Show of Hands

Page 51: Innovation...GraphQL generally improves performance over REST by reducing the number of calls but be aware of the cost of your GraphQL calls. Remember not all GraphQL enabled systems

Almost Everyone Shares a Common Opinion

Page 52: Innovation...GraphQL generally improves performance over REST by reducing the number of calls but be aware of the cost of your GraphQL calls. Remember not all GraphQL enabled systems

Legacy CMS CMS

● Page dominant

● Database centric architecture

● Language, framework specific

● Traditional deployment models

The architecture is the problem

Page 53: Innovation...GraphQL generally improves performance over REST by reducing the number of calls but be aware of the cost of your GraphQL calls. Remember not all GraphQL enabled systems

Headless CMS Architecture

Is Headless CMS the Ultimate Cure?

Page 54: Innovation...GraphQL generally improves performance over REST by reducing the number of calls but be aware of the cost of your GraphQL calls. Remember not all GraphQL enabled systems

Headless CMS Architecture

Better Support For Multi-Channel: Check

Page 55: Innovation...GraphQL generally improves performance over REST by reducing the number of calls but be aware of the cost of your GraphQL calls. Remember not all GraphQL enabled systems

Headless CMS Architecture

Let’s Developers Modern Tech: Check

Page 56: Innovation...GraphQL generally improves performance over REST by reducing the number of calls but be aware of the cost of your GraphQL calls. Remember not all GraphQL enabled systems

Headless CMS Architecture

Much Greater Dev Speed & Flexibility: Check

Page 57: Innovation...GraphQL generally improves performance over REST by reducing the number of calls but be aware of the cost of your GraphQL calls. Remember not all GraphQL enabled systems

Headless CMS

Architecturally Speaking ...

Page 58: Innovation...GraphQL generally improves performance over REST by reducing the number of calls but be aware of the cost of your GraphQL calls. Remember not all GraphQL enabled systems
Page 59: Innovation...GraphQL generally improves performance over REST by reducing the number of calls but be aware of the cost of your GraphQL calls. Remember not all GraphQL enabled systems

Headless CMS Architecture

Backend Architecture & Scale issues: Unknown

Page 60: Innovation...GraphQL generally improves performance over REST by reducing the number of calls but be aware of the cost of your GraphQL calls. Remember not all GraphQL enabled systems

Headless CMS Architecture

Content is Still Siloed per Environment: Fail

Page 61: Innovation...GraphQL generally improves performance over REST by reducing the number of calls but be aware of the cost of your GraphQL calls. Remember not all GraphQL enabled systems

Headless CMS Architecture

DevOps Integration Doesn’t Exist: Fail

Page 62: Innovation...GraphQL generally improves performance over REST by reducing the number of calls but be aware of the cost of your GraphQL calls. Remember not all GraphQL enabled systems

Is Headless ALWAYS the RIGHT answer?

Do You Really Need React to Build a Marketing Landing Page?

Page 63: Innovation...GraphQL generally improves performance over REST by reducing the number of calls but be aware of the cost of your GraphQL calls. Remember not all GraphQL enabled systems

Most Headless CMS Platforms Lack Visual Authoring Tools

Page 64: Innovation...GraphQL generally improves performance over REST by reducing the number of calls but be aware of the cost of your GraphQL calls. Remember not all GraphQL enabled systems

Typical Headless Content Authoring Experience

Page 65: Innovation...GraphQL generally improves performance over REST by reducing the number of calls but be aware of the cost of your GraphQL calls. Remember not all GraphQL enabled systems

Headless CMS: Where’s the Beef?

Page 66: Innovation...GraphQL generally improves performance over REST by reducing the number of calls but be aware of the cost of your GraphQL calls. Remember not all GraphQL enabled systems

Typical Headless CMS To the Rescue?

● Poor authoring support

○ In-context preview and editing

○ Drag and drop

● No marketing tool support

● Only partially addresses CI/CD Concerns

Headless CMS sacrifices content authoring in favor of

ease of development. Innovation improves, but not

enough and at too high a cost.

Page 67: Innovation...GraphQL generally improves performance over REST by reducing the number of calls but be aware of the cost of your GraphQL calls. Remember not all GraphQL enabled systems
Page 68: Innovation...GraphQL generally improves performance over REST by reducing the number of calls but be aware of the cost of your GraphQL calls. Remember not all GraphQL enabled systems

SPAs are amazing but the don’t eliminate the server and they have SEO problems

01

Page 69: Innovation...GraphQL generally improves performance over REST by reducing the number of calls but be aware of the cost of your GraphQL calls. Remember not all GraphQL enabled systems

SPAs are amazing but the don’t eliminate the server and they have SEO problems

01

GraphQL is awesome but it has limitations and I need to know my GraphQL backend implementation

01

Page 70: Innovation...GraphQL generally improves performance over REST by reducing the number of calls but be aware of the cost of your GraphQL calls. Remember not all GraphQL enabled systems

SPAs are amazing but the don’t eliminate the server and they have SEO problems

01

GraphQL is awesome but it has limitations and I need to know my GraphQL backend implementation

01

Headless CMS makes CMS better for developers but I still have scalability and devops issues and now my authors are going to hate the CMS?

Page 71: Innovation...GraphQL generally improves performance over REST by reducing the number of calls but be aware of the cost of your GraphQL calls. Remember not all GraphQL enabled systems
Page 72: Innovation...GraphQL generally improves performance over REST by reducing the number of calls but be aware of the cost of your GraphQL calls. Remember not all GraphQL enabled systems

Anyone Know of Solutions for These? Show of Hands

Page 73: Innovation...GraphQL generally improves performance over REST by reducing the number of calls but be aware of the cost of your GraphQL calls. Remember not all GraphQL enabled systems

SPAs

Page 74: Innovation...GraphQL generally improves performance over REST by reducing the number of calls but be aware of the cost of your GraphQL calls. Remember not all GraphQL enabled systems
Page 75: Innovation...GraphQL generally improves performance over REST by reducing the number of calls but be aware of the cost of your GraphQL calls. Remember not all GraphQL enabled systems

Only works for sites with a predefined structure. Not great for true drag-n-drop builds with nesting.

01

Page 76: Innovation...GraphQL generally improves performance over REST by reducing the number of calls but be aware of the cost of your GraphQL calls. Remember not all GraphQL enabled systems

Only works for sites with a predefined structure. Not great for true drag-n-drop builds with nesting.

01

Only works for relatively small sites. Even if you work around the full site build issue for page edits, a common component edit will force a full render.

01

Page 77: Innovation...GraphQL generally improves performance over REST by reducing the number of calls but be aware of the cost of your GraphQL calls. Remember not all GraphQL enabled systems

Only works for sites with a predefined structure. Not great for true drag-n-drop builds with nesting.

01

Only works for relatively small sites. Even if you work around the full site build issue for page edits, a common component edit will force a full render.

01

It’s no good for personalization and other dynamic features

Page 78: Innovation...GraphQL generally improves performance over REST by reducing the number of calls but be aware of the cost of your GraphQL calls. Remember not all GraphQL enabled systems

Only works for sites with a predefined structure. Not great for true drag-n-drop builds with nesting.

01

Only works for relatively small sites. Even if you work around the full site build issue for page edits, a common component edit will force a full render.

01

It’s no good for personalization and other dynamic features

Search. Once you start introducing server — you have server.

Page 79: Innovation...GraphQL generally improves performance over REST by reducing the number of calls but be aware of the cost of your GraphQL calls. Remember not all GraphQL enabled systems
Page 80: Innovation...GraphQL generally improves performance over REST by reducing the number of calls but be aware of the cost of your GraphQL calls. Remember not all GraphQL enabled systems
Page 81: Innovation...GraphQL generally improves performance over REST by reducing the number of calls but be aware of the cost of your GraphQL calls. Remember not all GraphQL enabled systems

Server Side Render is Awesome. - It scales for larger sites - Provides SEO benefits - Supports search and other powerful interactions - Supports personalization

But it requires a server. Sorry. :)

01

Page 82: Innovation...GraphQL generally improves performance over REST by reducing the number of calls but be aware of the cost of your GraphQL calls. Remember not all GraphQL enabled systems

Headless CMS

Page 83: Innovation...GraphQL generally improves performance over REST by reducing the number of calls but be aware of the cost of your GraphQL calls. Remember not all GraphQL enabled systems
Page 84: Innovation...GraphQL generally improves performance over REST by reducing the number of calls but be aware of the cost of your GraphQL calls. Remember not all GraphQL enabled systems
Page 85: Innovation...GraphQL generally improves performance over REST by reducing the number of calls but be aware of the cost of your GraphQL calls. Remember not all GraphQL enabled systems
Page 86: Innovation...GraphQL generally improves performance over REST by reducing the number of calls but be aware of the cost of your GraphQL calls. Remember not all GraphQL enabled systems
Page 87: Innovation...GraphQL generally improves performance over REST by reducing the number of calls but be aware of the cost of your GraphQL calls. Remember not all GraphQL enabled systems
Page 88: Innovation...GraphQL generally improves performance over REST by reducing the number of calls but be aware of the cost of your GraphQL calls. Remember not all GraphQL enabled systems
Page 89: Innovation...GraphQL generally improves performance over REST by reducing the number of calls but be aware of the cost of your GraphQL calls. Remember not all GraphQL enabled systems
Page 90: Innovation...GraphQL generally improves performance over REST by reducing the number of calls but be aware of the cost of your GraphQL calls. Remember not all GraphQL enabled systems
Page 91: Innovation...GraphQL generally improves performance over REST by reducing the number of calls but be aware of the cost of your GraphQL calls. Remember not all GraphQL enabled systems

Headless+ addresses development and authoring issues but not all headless+ CMS platforms are created equal. Challenges with DevOps, DevContentOps and the CI/CD automation still exist.

01

Page 92: Innovation...GraphQL generally improves performance over REST by reducing the number of calls but be aware of the cost of your GraphQL calls. Remember not all GraphQL enabled systems

A “Perfect” Fit

Page 93: Innovation...GraphQL generally improves performance over REST by reducing the number of calls but be aware of the cost of your GraphQL calls. Remember not all GraphQL enabled systems
Page 94: Innovation...GraphQL generally improves performance over REST by reducing the number of calls but be aware of the cost of your GraphQL calls. Remember not all GraphQL enabled systems
Page 95: Innovation...GraphQL generally improves performance over REST by reducing the number of calls but be aware of the cost of your GraphQL calls. Remember not all GraphQL enabled systems

Where SEO is not a concern. GO FOR IT. 01

Page 96: Innovation...GraphQL generally improves performance over REST by reducing the number of calls but be aware of the cost of your GraphQL calls. Remember not all GraphQL enabled systems

Where SEO is not a concern. GO FOR IT. 01

Manage the builds scripts as content 01

Page 97: Innovation...GraphQL generally improves performance over REST by reducing the number of calls but be aware of the cost of your GraphQL calls. Remember not all GraphQL enabled systems

Where SEO is not a concern. GO FOR IT. 01

Where SEO is a concern. Accept the server 01

Manage the builds scripts as content 01

Page 98: Innovation...GraphQL generally improves performance over REST by reducing the number of calls but be aware of the cost of your GraphQL calls. Remember not all GraphQL enabled systems

Where SEO is not a concern. GO FOR IT. 01

Where SEO is a concern. Accept the server

01

SPAs are a lot of effort to create. Are you getting the leverage? Make sure your getting the leverage — If not, use simple markup.

Manage the builds scripts as content 01

Page 99: Innovation...GraphQL generally improves performance over REST by reducing the number of calls but be aware of the cost of your GraphQL calls. Remember not all GraphQL enabled systems

Where SEO is not a concern. GO FOR IT. 01

Where SEO is a concern. Accept the server

01

SPAs are a lot of effort to create. Are you getting the leverage? Make sure your getting the leverage — If not, use simple markup.

Manage the builds scripts as content 01

If authors want a high degree of control to assemble the application with drag and drop plan extra time to think this through end to end

Page 100: Innovation...GraphQL generally improves performance over REST by reducing the number of calls but be aware of the cost of your GraphQL calls. Remember not all GraphQL enabled systems

Beware the deletes and renames in the schema 01

Page 101: Innovation...GraphQL generally improves performance over REST by reducing the number of calls but be aware of the cost of your GraphQL calls. Remember not all GraphQL enabled systems

Think through security and personalization. Do you need it? Where is it applied?

01

Beware the deletes and renames in the schema 01

Page 102: Innovation...GraphQL generally improves performance over REST by reducing the number of calls but be aware of the cost of your GraphQL calls. Remember not all GraphQL enabled systems

Think through security and personalization. Do you need it? Where is it applied?

01

Don’t force it. If you have a data retrieval or mutation that doesn’t fit… USE REST. You’re still a cool kid.

01

Beware the deletes and renames in the schema 01

Page 103: Innovation...GraphQL generally improves performance over REST by reducing the number of calls but be aware of the cost of your GraphQL calls. Remember not all GraphQL enabled systems

Think through security and personalization. Do you need it? Where is it applied?

01

Don’t force it. If you have a data retrieval or mutation that doesn’t fit… USE REST. You’re still a cool kid.

01

Realize that without transformations some amount of the backing store’s structure abstractions will leak through in the query response.

Beware the deletes and renames in the schema 01

Page 104: Innovation...GraphQL generally improves performance over REST by reducing the number of calls but be aware of the cost of your GraphQL calls. Remember not all GraphQL enabled systems

Think through security and personalization. Do you need it? Where is it applied?

01

Don’t force it. If you have a data retrieval or mutation that doesn’t fit… USE REST. You’re still a cool kid.

01

Realize that without transformations some amount of the backing store’s structure abstractions will leak through in the query response.

GraphQL generally improves performance over REST by reducing the number of calls but be aware of the cost of your GraphQL calls.

Beware the deletes and renames in the schema 01

Page 105: Innovation...GraphQL generally improves performance over REST by reducing the number of calls but be aware of the cost of your GraphQL calls. Remember not all GraphQL enabled systems

Think through security and personalization. Do you need it? Where is it applied?

01

Don’t force it. If you have a data retrieval or mutation that doesn’t fit… USE REST. You’re still a cool kid.

01

Realize that without transformations some amount of the backing store’s structure abstractions will leak through in the query response.

GraphQL generally improves performance over REST by reducing the number of calls but be aware of the cost of your GraphQL calls.

Remember not all GraphQL enabled systems are equal. Some are offer more control, better performance and better plugability than others.

Beware the deletes and renames in the schema 01

Page 106: Innovation...GraphQL generally improves performance over REST by reducing the number of calls but be aware of the cost of your GraphQL calls. Remember not all GraphQL enabled systems

Headless Only CMS is great for simple use cases like fixed content in a mobile application. “Strings in a app”

01

Page 107: Innovation...GraphQL generally improves performance over REST by reducing the number of calls but be aware of the cost of your GraphQL calls. Remember not all GraphQL enabled systems

Gatsby is a great option for simple, small, developer centric sites that don’t mind a CI/CD process as part of workflow

01

Headless Only CMS is great for simple use cases like fixed content in a mobile application. “Strings in a app”

01

Page 108: Innovation...GraphQL generally improves performance over REST by reducing the number of calls but be aware of the cost of your GraphQL calls. Remember not all GraphQL enabled systems

Gatsby is a great option for simple, small, developer centric sites that don’t mind a CI/CD process as part of workflow

01

Once authors are in play on a day to day basis you need a headless+ authoring experience

01

Headless Only CMS is great for simple use cases like fixed content in a mobile application. “Strings in a app”

01

Page 109: Innovation...GraphQL generally improves performance over REST by reducing the number of calls but be aware of the cost of your GraphQL calls. Remember not all GraphQL enabled systems

Gatsby is a great option for simple, small, developer centric sites that don’t mind a CI/CD process as part of workflow

01

Once authors are in play on a day to day basis you need a headless+ authoring experience

01

You need to think about DevContentOps. How will production content flow back from production to lower environments? How will code flow forward from lower environments up to production

Headless Only CMS is great for simple use cases like fixed content in a mobile application. “Strings in a app”

01

Page 110: Innovation...GraphQL generally improves performance over REST by reducing the number of calls but be aware of the cost of your GraphQL calls. Remember not all GraphQL enabled systems

Gatsby is a great option for simple, small, developer centric sites that don’t mind a CI/CD process as part of workflow

01

Once authors are in play on a day to day basis you need a headless+ authoring experience

01

You need to think about DevContentOps. How will production content flow back from production to lower environments? How will code flow forward from lower environments up to production

Your Source Code management and version history is modern an integrated with your CI/CD. Is your content repository?

Headless Only CMS is great for simple use cases like fixed content in a mobile application. “Strings in a app”

01

Page 111: Innovation...GraphQL generally improves performance over REST by reducing the number of calls but be aware of the cost of your GraphQL calls. Remember not all GraphQL enabled systems

Gatsby is a great option for simple, small, developer centric sites that don’t mind a CI/CD process as part of workflow

01

Once authors are in play on a day to day basis you need a headless+ authoring experience

01

You need to think about DevContentOps. How will production content flow back from production to lower environments? How will code flow forward from lower environments up to production

Your Source Code management and version history is modern an integrated with your CI/CD. Is your content repository?

Look for a CMS that can scale in a serverless and stateless fashion but that can still do dynamic content.

Headless Only CMS is great for simple use cases like fixed content in a mobile application. “Strings in a app”

01

Page 112: Innovation...GraphQL generally improves performance over REST by reducing the number of calls but be aware of the cost of your GraphQL calls. Remember not all GraphQL enabled systems
Page 113: Innovation...GraphQL generally improves performance over REST by reducing the number of calls but be aware of the cost of your GraphQL calls. Remember not all GraphQL enabled systems
Page 114: Innovation...GraphQL generally improves performance over REST by reducing the number of calls but be aware of the cost of your GraphQL calls. Remember not all GraphQL enabled systems

Git-based repository for full DevContentOps support

Page 115: Innovation...GraphQL generally improves performance over REST by reducing the number of calls but be aware of the cost of your GraphQL calls. Remember not all GraphQL enabled systems

Git-based repository for full DevContentOps support

Native high-performance GraphQL and REST Support

Page 116: Innovation...GraphQL generally improves performance over REST by reducing the number of calls but be aware of the cost of your GraphQL calls. Remember not all GraphQL enabled systems

Git-based repository for full DevContentOps support

Native high-performance GraphQL and REST Support

Headless+ Incontext authoring support

Page 117: Innovation...GraphQL generally improves performance over REST by reducing the number of calls but be aware of the cost of your GraphQL calls. Remember not all GraphQL enabled systems

Git-based repository for full DevContentOps support

Native high-performance GraphQL and REST Support

Headless+ Incontext authoring support

Serverless & Statemess Content Delivery

Page 118: Innovation...GraphQL generally improves performance over REST by reducing the number of calls but be aware of the cost of your GraphQL calls. Remember not all GraphQL enabled systems

Questions

Page 119: Innovation...GraphQL generally improves performance over REST by reducing the number of calls but be aware of the cost of your GraphQL calls. Remember not all GraphQL enabled systems

craftersoftware.com | craftercms.org

Page 120: Innovation...GraphQL generally improves performance over REST by reducing the number of calls but be aware of the cost of your GraphQL calls. Remember not all GraphQL enabled systems

Slides Cut Due to Time

Page 121: Innovation...GraphQL generally improves performance over REST by reducing the number of calls but be aware of the cost of your GraphQL calls. Remember not all GraphQL enabled systems
Page 122: Innovation...GraphQL generally improves performance over REST by reducing the number of calls but be aware of the cost of your GraphQL calls. Remember not all GraphQL enabled systems
Page 123: Innovation...GraphQL generally improves performance over REST by reducing the number of calls but be aware of the cost of your GraphQL calls. Remember not all GraphQL enabled systems
Page 124: Innovation...GraphQL generally improves performance over REST by reducing the number of calls but be aware of the cost of your GraphQL calls. Remember not all GraphQL enabled systems
Page 125: Innovation...GraphQL generally improves performance over REST by reducing the number of calls but be aware of the cost of your GraphQL calls. Remember not all GraphQL enabled systems
Page 126: Innovation...GraphQL generally improves performance over REST by reducing the number of calls but be aware of the cost of your GraphQL calls. Remember not all GraphQL enabled systems
Page 127: Innovation...GraphQL generally improves performance over REST by reducing the number of calls but be aware of the cost of your GraphQL calls. Remember not all GraphQL enabled systems
Page 128: Innovation...GraphQL generally improves performance over REST by reducing the number of calls but be aware of the cost of your GraphQL calls. Remember not all GraphQL enabled systems

128

Customer Experience Leaders are Winning

Page 129: Innovation...GraphQL generally improves performance over REST by reducing the number of calls but be aware of the cost of your GraphQL calls. Remember not all GraphQL enabled systems
Page 130: Innovation...GraphQL generally improves performance over REST by reducing the number of calls but be aware of the cost of your GraphQL calls. Remember not all GraphQL enabled systems
Page 131: Innovation...GraphQL generally improves performance over REST by reducing the number of calls but be aware of the cost of your GraphQL calls. Remember not all GraphQL enabled systems
Page 132: Innovation...GraphQL generally improves performance over REST by reducing the number of calls but be aware of the cost of your GraphQL calls. Remember not all GraphQL enabled systems
Page 133: Innovation...GraphQL generally improves performance over REST by reducing the number of calls but be aware of the cost of your GraphQL calls. Remember not all GraphQL enabled systems
Page 134: Innovation...GraphQL generally improves performance over REST by reducing the number of calls but be aware of the cost of your GraphQL calls. Remember not all GraphQL enabled systems
Page 135: Innovation...GraphQL generally improves performance over REST by reducing the number of calls but be aware of the cost of your GraphQL calls. Remember not all GraphQL enabled systems
Page 136: Innovation...GraphQL generally improves performance over REST by reducing the number of calls but be aware of the cost of your GraphQL calls. Remember not all GraphQL enabled systems

Who is Using React Show of Hands

Page 137: Innovation...GraphQL generally improves performance over REST by reducing the number of calls but be aware of the cost of your GraphQL calls. Remember not all GraphQL enabled systems
Page 138: Innovation...GraphQL generally improves performance over REST by reducing the number of calls but be aware of the cost of your GraphQL calls. Remember not all GraphQL enabled systems
Page 139: Innovation...GraphQL generally improves performance over REST by reducing the number of calls but be aware of the cost of your GraphQL calls. Remember not all GraphQL enabled systems

Based on 20 Year-old Architecture Common Challenges for Marketing

Legacy CMS Solutions

Content freezes

due to DevOps

Page 140: Innovation...GraphQL generally improves performance over REST by reducing the number of calls but be aware of the cost of your GraphQL calls. Remember not all GraphQL enabled systems

Legacy CMS Solutions

Design restrictions

Development is

difficult, slow,

expensive

Content freezes

due to DevOps

Based on 20 Year-old Architecture Common Challenges for Marketing

Page 141: Innovation...GraphQL generally improves performance over REST by reducing the number of calls but be aware of the cost of your GraphQL calls. Remember not all GraphQL enabled systems

Legacy CMS Solutions

Design restrictions

Development is

difficult, slow,

expensive

Content freezes

due to DevOps

Global authoring is

a problem.

Versioning is weak

Auditing is weak

Based on 20 Year-old Architecture Common Challenges for Marketing

Page 142: Innovation...GraphQL generally improves performance over REST by reducing the number of calls but be aware of the cost of your GraphQL calls. Remember not all GraphQL enabled systems

Legacy CMS Solutions

Design restrictions

Development is

difficult, slow,

expensive

Content freezes

due to DevOps

Global authoring is

a problem.

Versioning is weak

Auditing is weak

Based on 20 Year-old Architecture Common Challenges for Marketing

Redesigns are

difficult because

we have to migrate

or double publish

Page 143: Innovation...GraphQL generally improves performance over REST by reducing the number of calls but be aware of the cost of your GraphQL calls. Remember not all GraphQL enabled systems

Legacy CMS Solutions

Not designed for

multi-channel

Based on 20 Year-old Architecture Common Challenges for DevOps

Page 144: Innovation...GraphQL generally improves performance over REST by reducing the number of calls but be aware of the cost of your GraphQL calls. Remember not all GraphQL enabled systems

Legacy CMS Solutions

Restrictive

development

frameworks

Not Designed for

multi-channel

Based on 20 Year-old Architecture Common Challenges for DevOps

Page 145: Innovation...GraphQL generally improves performance over REST by reducing the number of calls but be aware of the cost of your GraphQL calls. Remember not all GraphQL enabled systems

Legacy CMS Solutions

Restrictive

development

frameworks

Not designed for

multi-channel

Don’t fit in to

modern

development

process

Based on 20 Year-old Architecture Common Challenges for DevOps

Page 146: Innovation...GraphQL generally improves performance over REST by reducing the number of calls but be aware of the cost of your GraphQL calls. Remember not all GraphQL enabled systems

Legacy CMS Solutions

Are difficult to

scale, distribute

and operate

Based on 20 Year-old Architecture Common Challenges for DevOps

Restrictive

development

frameworks

Not designed for

multi-channel

Don’t fit in to

modern

development

process

Page 147: Innovation...GraphQL generally improves performance over REST by reducing the number of calls but be aware of the cost of your GraphQL calls. Remember not all GraphQL enabled systems
Page 148: Innovation...GraphQL generally improves performance over REST by reducing the number of calls but be aware of the cost of your GraphQL calls. Remember not all GraphQL enabled systems
Page 149: Innovation...GraphQL generally improves performance over REST by reducing the number of calls but be aware of the cost of your GraphQL calls. Remember not all GraphQL enabled systems

Where SEO is not a concern. GO FOR IT. 01

Where SEO is a concern. Accept the server

01

SPAs are a lot of effort to create. Are you getting the leverage? Make sure your getting the leverage — If not, use simple markup.

Manage the builds scripts as content 01

If authors want a high degree of control to assemble the application with drag and drop plan extra time to think this through end to end

Your routing, data retrieval and state management for websites is non-trivial. Take time to think it through

Page 150: Innovation...GraphQL generally improves performance over REST by reducing the number of calls but be aware of the cost of your GraphQL calls. Remember not all GraphQL enabled systems

Dynamic Routing

Page 151: Innovation...GraphQL generally improves performance over REST by reducing the number of calls but be aware of the cost of your GraphQL calls. Remember not all GraphQL enabled systems

Late Binding Templates and Components