How not to be a headless chicken

A presentation at Jamstack meetup Porto in July 2021 in by Phil Hawksworth

Slide 1

Slide 1

How to not be a headless chicken Tips for embracing decoupled content architectures Phil Hawksworth, Netlify

Slide 2

Slide 2

! @philhawksworth

Slide 3

Slide 3

These slides and links findthat.at/chicken @philhawksworth

Slide 4

Slide 4

Why this talk?

Slide 5

Slide 5

9 years as Technical Director at agencies

Slide 6

Slide 6

Clients

Slide 7

Slide 7

Mo clients, mo problems (Mo clients, mo architectures) @philhawksworth unsplash.com/photos/Bli_WDC2oU0

Slide 8

Slide 8

Old challenges

Slide 9

Slide 9

Timeless challenges

Slide 10

Slide 10

Large investments (Time, money, emotion)

Slide 11

Slide 11

The result

Slide 12

Slide 12

Code smells

Slide 13

Slide 13

CMS smells

Slide 14

Slide 14

@philhawksworth findthat.at/smell

Slide 15

Slide 15

@philhawksworth findthat.at/smell

Slide 16

Slide 16

Who is this talk for?

Slide 17

Slide 17

Not to persuade you that headless CMS are a great choice

Slide 18

Slide 18

Help you recommend a headless CMS to your clients / stakeholders

Slide 19

Slide 19

How to not be a headless chicken Tips for embracing decoupled content architectures Phil Hawksworth, Netlify

Slide 20

Slide 20

Phil Hawksworth Director of Developer Experience, Netlify

Slide 21

Slide 21

@ Phil Hawksworth Director of Developer Experience, Netlify

Slide 22

Slide 22

findthat.at/jamstack/book

Slide 23

Slide 23

findthat.at/interesting

Slide 24

Slide 24

Let’s talk 1 2 The old skool and the shift Objections to overcome 3 A few of the benefits

Slide 25

Slide 25

1 The old skool and the shift @philhawksworth

Slide 26

Slide 26

The magnetic attraction of the monolith @philhawksworth unsplash.com/photos/K6kZi3AmGR8

Slide 27

Slide 27

E L P M I S Y L L U F I T U A E B W HO @philhawksworth

Slide 28

Slide 28

D N O C E S A N O D L HO @philhawksworth

Slide 29

Slide 29

C I G A M E V I S N E P EX THINGS THINGS @philhawksworth

Slide 30

Slide 30

Tight coupling Often not well understood @philhawksworth

Slide 31

Slide 31

A product of evolution @philhawksworth

Slide 32

Slide 32

An evolving product @philhawksworth

Slide 33

Slide 33

Experts required And available for those with the budget @philhawksworth

Slide 34

Slide 34

One-stop-shop @philhawksworth

Slide 35

Slide 35

Looooooooong feature lists @philhawksworth

Slide 36

Slide 36

Industry standard, best in class, enterprise grade, globally recognised, reassuringly expensive @philhawksworth

Slide 37

Slide 37

Nobody ever got fired for choosing [ _______ ] @philhawksworth

Slide 38

Slide 38

Except they did @philhawksworth

Slide 39

Slide 39

Sad agencies @philhawksworth unsplash.com/photos/ulPAVuxITEw

Slide 40

Slide 40

Ability to execute @philhawksworth

Slide 41

Slide 41

The CMS became the biggest obstacle to successful delivery @philhawksworth

Slide 42

Slide 42

I found myself seeking, work arounds and shortcuts @philhawksworth

Slide 43

Slide 43

As did customers @philhawksworth

Slide 44

Slide 44

@philhawksworth

Slide 45

Slide 45

@philhawksworth

Slide 46

Slide 46

@philhawksworth

Slide 47

Slide 47

Workarounds became common and formalised @philhawksworth

Slide 48

Slide 48

Results of workarounds outperformed core platform @philhawksworth

Slide 49

Slide 49

If your CMS does not have an API in 2021, perhaps you shouldn’t be using it — Knut Melvær July 26th 2021 (at about 6:51pm) @philhawksworth

Slide 50

Slide 50

” @philhawksworth

Slide 51

Slide 51

@philhawksworth

Slide 52

Slide 52

2 Objections to overcome @philhawksworth

Slide 53

Slide 53

Moving from a monolithic to a decoupled architecture can be daunting @philhawksworth

Slide 54

Slide 54

All these dependencies add too much risk What if they go away? What if they break? Can they be trusted?

Slide 55

Slide 55

All these dependencies add too much risk Their entire business depends on their continued good standing of this specific service. Their success demands dedicated domain experts. What team would you allocate to each of these capabilities?

Slide 56

Slide 56

Using lots of services will impact performance This is going to run like a dog

Slide 57

Slide 57

Using lots of services will impact performance There is likely to be far more dedicated engineering and infrastructure for each dedicated service than you’d be able to dedicate. A service which is “nearby” isn’t necessarily faster.

Slide 58

Slide 58

We can’t let this content our of our control You’e suggesting we give away the family jewels

Slide 59

Slide 59

We can’t let this content our of our control Each vendor is likely to have more strict and established compliance and regulations than you’d be ready to commit to yourself. Look for certification and compliance when selecting vendors. Decoupling can also mean leveraging first party APIs.

Slide 60

Slide 60

Using these services will lock us in What if we want to make some changes?

Slide 61

Slide 61

Using these services will lock us in Using APIs demands that you have clear delineation and build to defined integrations. You’ll probably have looser coupling and greater flexibility than building everything together in-house.

Slide 62

Slide 62

The headless CMS category is exploding @philhawksworth

Slide 63

Slide 63

3 A few of the benefits @philhawksworth

Slide 64

Slide 64

Decoupling @philhawksworth

Slide 65

Slide 65

Time to market can drastically improve Let alone time to dev environment! @philhawksworth

Slide 66

Slide 66

Your feature roadmap is not in lockstep with a that of the platform @philhawksworth

Slide 67

Slide 67

Your services operated by experts so you can build and differentiate @philhawksworth

Slide 68

Slide 68

The skills you need are widely available @philhawksworth

Slide 69

Slide 69

Front-end code is no longer limited to being a product of a back-end system @philhawksworth

Slide 70

Slide 70

Your results Are back under your control @philhawksworth

Slide 71

Slide 71

To finish @philhawksworth

Slide 72

Slide 72

? U O DO Y Have difficulty providing environments in time for project deadlines? Have frustrations about time to market or the freedom to build what you envisage? @philhawksworth

Slide 73

Slide 73

? U O Y CAN Try this architecture on an internal or ancillary project? Resource a project which would need devs versed in front-end and APIs? @philhawksworth

Slide 74

Slide 74

Courage & confidence @philhawksworth

Slide 75

Slide 75

findthat.at/chicken Thanks @philhawksworth

Slide 76

Slide 76

Jamstack Community Survey 2021 findthat.at/jamstack/survey @philhawksworth

Slide 77

Slide 77

This Wednesday jamstacklondon.com @philhawksworth

Slide 78

Slide 78

findthat.at/chicken Thanks @philhawksworth