SlideShare uma empresa Scribd logo
1 de 70
Baixar para ler offline
The future is mostly static
Or how we are reinventing the web again
Juho Vepsäläinen
What to expect
1. Introduction
2. Content Management Systems (CMSs)
3. Static Site Generation (SSG)
4. Related work
5. Research
1
Introduction
Key points from the history of the web
• 1985 - First Content Management System (CMS) called FileNet is
invented
2
Key points from the history of the web
• 1985 - First Content Management System (CMS) called FileNet is
invented
• 1989 - First HTML browser comes available
2
Key points from the history of the web
• 1985 - First Content Management System (CMS) called FileNet is
invented
• 1989 - First HTML browser comes available
• 1992 - Tim Berners-Lee invents the World Wide Web (www) [3]
2
Key points from the history of the web
• 1985 - First Content Management System (CMS) called FileNet is
invented
• 1989 - First HTML browser comes available
• 1992 - Tim Berners-Lee invents the World Wide Web (www) [3]
• ca. 1995 - First graphical editors (MS Frontpage etc.) emerge for
creation of websites
2
Key points from the history of the web
• 1985 - First Content Management System (CMS) called FileNet is
invented
• 1989 - First HTML browser comes available
• 1992 - Tim Berners-Lee invents the World Wide Web (www) [3]
• ca. 1995 - First graphical editors (MS Frontpage etc.) emerge for
creation of websites
• 1995 - JavaScript is developed by Brendan Eich
2
Key points from the history of the web
• 1985 - First Content Management System (CMS) called FileNet is
invented
• 1989 - First HTML browser comes available
• 1992 - Tim Berners-Lee invents the World Wide Web (www) [3]
• ca. 1995 - First graphical editors (MS Frontpage etc.) emerge for
creation of websites
• 1995 - JavaScript is developed by Brendan Eich
• 2002 - The first Single Page Applications (SPAs) emerge
2
Key points from the history of the web
• 1985 - First Content Management System (CMS) called FileNet is
invented
• 1989 - First HTML browser comes available
• 1992 - Tim Berners-Lee invents the World Wide Web (www) [3]
• ca. 1995 - First graphical editors (MS Frontpage etc.) emerge for
creation of websites
• 1995 - JavaScript is developed by Brendan Eich
• 2002 - The first Single Page Applications (SPAs) emerge
• 2015 - Jamstack is specified by Matt Biilmann [8]
2
Key points from the history of the web
• 1985 - First Content Management System (CMS) called FileNet is
invented
• 1989 - First HTML browser comes available
• 1992 - Tim Berners-Lee invents the World Wide Web (www) [3]
• ca. 1995 - First graphical editors (MS Frontpage etc.) emerge for
creation of websites
• 1995 - JavaScript is developed by Brendan Eich
• 2002 - The first Single Page Applications (SPAs) emerge
• 2015 - Jamstack is specified by Matt Biilmann [8]
• 2019 - Islands architecture is formalized [16]
2
Key points from the history of the web
• 1985 - First Content Management System (CMS) called FileNet is
invented
• 1989 - First HTML browser comes available
• 1992 - Tim Berners-Lee invents the World Wide Web (www) [3]
• ca. 1995 - First graphical editors (MS Frontpage etc.) emerge for
creation of websites
• 1995 - JavaScript is developed by Brendan Eich
• 2002 - The first Single Page Applications (SPAs) emerge
• 2015 - Jamstack is specified by Matt Biilmann [8]
• 2019 - Islands architecture is formalized [16]
• 2021 - The idea of Transitional Web Applications (TWAs) is
proposed [7]
2
Clients and a server [8]
3
Content Management Systems
(CMSs)
Roles in CMSs [18]
4
What is a CMS? [2]
5
Pros and cons
Pros
• Enables collaboration across
disciplines
Cons
6
Pros and cons
Pros
• Enables collaboration across
disciplines
• Allows developers to save
time by using extensions
Cons
6
Pros and cons
Pros
• Enables collaboration across
disciplines
• Allows developers to save
time by using extensions
• Many major players exist in
the ecosystem
Cons
6
Pros and cons
Pros
• Enables collaboration across
disciplines
• Allows developers to save
time by using extensions
• Many major players exist in
the ecosystem
Cons
• Often requires a server
(something to maintain)
6
Pros and cons
Pros
• Enables collaboration across
disciplines
• Allows developers to save
time by using extensions
• Many major players exist in
the ecosystem
Cons
• Often requires a server
(something to maintain)
• Not trivial to understand
6
Pros and cons
Pros
• Enables collaboration across
disciplines
• Allows developers to save
time by using extensions
• Many major players exist in
the ecosystem
Cons
• Often requires a server
(something to maintain)
• Not trivial to understand
• Comes sometimes with
unnecessary complexity
6
Architecture of a headless CMS [1, 11]
7
Static Site Generation (SSG)
What is SSG? [10]
SSG is a system consisting of the following:
1. A templating language for website layout and theming.
8
What is SSG? [10]
SSG is a system consisting of the following:
1. A templating language for website layout and theming.
2. A markup language for content creation (e.g., Markdown).
8
What is SSG? [10]
SSG is a system consisting of the following:
1. A templating language for website layout and theming.
2. A markup language for content creation (e.g., Markdown).
3. A local development server to preview and test the site before
building.
8
What is SSG? [10]
SSG is a system consisting of the following:
1. A templating language for website layout and theming.
2. A markup language for content creation (e.g., Markdown).
3. A local development server to preview and test the site before
building.
4. A compile process that builds the final site files into HTML, CSS,
and JavaScript [4]
8
Building blocks of a Jamstack website [17]
9
Traditional web compared to Jamstack [12]
10
Pros and cons
Pros
• Fast page load time [13, 4]
Cons
11
Pros and cons
Pros
• Fast page load time [13, 4]
• Efficient scalability (through
CDNs for example) and
resiliency [13]
Cons
11
Pros and cons
Pros
• Fast page load time [13, 4]
• Efficient scalability (through
CDNs for example) and
resiliency [13]
• Availability and security [13, 4]
Cons
11
Pros and cons
Pros
• Fast page load time [13, 4]
• Efficient scalability (through
CDNs for example) and
resiliency [13]
• Availability and security [13, 4]
• Automatic versioning [4]
Cons
11
Pros and cons
Pros
• Fast page load time [13, 4]
• Efficient scalability (through
CDNs for example) and
resiliency [13]
• Availability and security [13, 4]
• Automatic versioning [4]
• Ease of hosting [10]
Cons
11
Pros and cons
Pros
• Fast page load time [13, 4]
• Efficient scalability (through
CDNs for example) and
resiliency [13]
• Availability and security [13, 4]
• Automatic versioning [4]
• Ease of hosting [10]
Cons
• Tooling is highly developer
oriented
11
Pros and cons
Pros
• Fast page load time [13, 4]
• Efficient scalability (through
CDNs for example) and
resiliency [13]
• Availability and security [13, 4]
• Automatic versioning [4]
• Ease of hosting [10]
Cons
• Tooling is highly developer
oriented
• Potentially high
recompilation cost
11
Pros and cons
Pros
• Fast page load time [13, 4]
• Efficient scalability (through
CDNs for example) and
resiliency [13]
• Availability and security [13, 4]
• Automatic versioning [4]
• Ease of hosting [10]
Cons
• Tooling is highly developer
oriented
• Potentially high
recompilation cost
• Static by definition
(difficulties in dynamic use
cases)
11
Related work
Edge computing [15]
12
Server-side rendering (SSR) vs. Single Page apps (SPA) vs. SSG
[14]
Feature SSR SPA SSG
Pre-rendered HTML Yes No Yes
Updates without refresh No Yes Possible
Supports forms Yes Yes Ext. service
Offline support in modern
browsers
No Yes Possible
13
Transitional web applications (TWAs) [7]
• In October 2021, Rich Harris proposed the idea of TWAs [7]
14
Transitional web applications (TWAs) [7]
• In October 2021, Rich Harris proposed the idea of TWAs [7]
• By his definition, TWAs mix ideas from SPAs and the traditional
web
14
Transitional web applications (TWAs) [7]
• In October 2021, Rich Harris proposed the idea of TWAs [7]
• By his definition, TWAs mix ideas from SPAs and the traditional
web
• TWAs utilize SSR for fast initial loading times
14
Transitional web applications (TWAs) [7]
• In October 2021, Rich Harris proposed the idea of TWAs [7]
• By his definition, TWAs mix ideas from SPAs and the traditional
web
• TWAs utilize SSR for fast initial loading times
• TWAs are resilient as they work without JavaScript by default
14
Transitional web applications (TWAs) [7]
• In October 2021, Rich Harris proposed the idea of TWAs [7]
• By his definition, TWAs mix ideas from SPAs and the traditional
web
• TWAs utilize SSR for fast initial loading times
• TWAs are resilient as they work without JavaScript by default
• TWAs provide consistent experience and accessibility as a
built-in feature
14
Progressive enhancement in a nutshell (2008) [6]
15
Disappearing frameworks [5]
• According to Ryan Carniato [5], disappearing frameworks come
with almost a zero cost and disappear from an application
16
Disappearing frameworks [5]
• According to Ryan Carniato [5], disappearing frameworks come
with almost a zero cost and disappear from an application
• The starting point forms a contrast to the current breed of
frameworks that load upfront and rely on expensive hydration
for SSR
16
Disappearing frameworks [5]
• According to Ryan Carniato [5], disappearing frameworks come
with almost a zero cost and disappear from an application
• The starting point forms a contrast to the current breed of
frameworks that load upfront and rely on expensive hydration
for SSR
• Changing the fundamental viewpoint allows for new
architectures to emerge and it’s consistent with the idea of TWAs
16
Disappearing frameworks [5]
• According to Ryan Carniato [5], disappearing frameworks come
with almost a zero cost and disappear from an application
• The starting point forms a contrast to the current breed of
frameworks that load upfront and rely on expensive hydration
for SSR
• Changing the fundamental viewpoint allows for new
architectures to emerge and it’s consistent with the idea of TWAs
• On a related note, my own solution called Sidewind implements
the idea and comes with a novel pattern for hydration
16
Islands architecture [9]
17
Research
Research questions
1. What are the main benefits and limitations of CMSs and SSGs?
18
Research questions
1. What are the main benefits and limitations of CMSs and SSGs?
2. Is it possible to address the limitations of SSGs while keeping
the benefits?
18
Research questions
1. What are the main benefits and limitations of CMSs and SSGs?
2. Is it possible to address the limitations of SSGs while keeping
the benefits?
3. What are the means in which SSGs could address their
limitations compared to CMSs?
18
Research plan
• By nature, a constructive approach (design science) fits the
problem well
19
Research plan
• By nature, a constructive approach (design science) fits the
problem well
• Besides literature review, the idea is to:
19
Research plan
• By nature, a constructive approach (design science) fits the
problem well
• Besides literature review, the idea is to:
1. Interview practitioners and tool authors to understand how they
view the field
19
Research plan
• By nature, a constructive approach (design science) fits the
problem well
• Besides literature review, the idea is to:
1. Interview practitioners and tool authors to understand how they
view the field
2. Construct a model of what SSGs with a high amount of dynamism
could look like
19
Research plan
• By nature, a constructive approach (design science) fits the
problem well
• Besides literature review, the idea is to:
1. Interview practitioners and tool authors to understand how they
view the field
2. Construct a model of what SSGs with a high amount of dynamism
could look like
3. Implement a tool to try out the ideas in practice (Gustwind, in
progress)
19
Contribution to web engineering
1. Increased understanding of the current state of the art
20
Contribution to web engineering
1. Increased understanding of the current state of the art
2. Understanding of what SSG could look like when combined with
ideas and constraints from the CMS world
20
Contribution to web engineering
1. Increased understanding of the current state of the art
2. Understanding of what SSG could look like when combined with
ideas and constraints from the CMS world
3. Creation of tooling for the next generation of web developers to
bridge the gap between SSGs and CMSs
20
Time for your questions
20
References i
J. Attardi.
Introduction to netlify cms.
In Using Gatsby and Netlify CMS, pages 1–12. Springer, 2020.
C. Benevolo and S. Negri.
Evaluation of content management systems (cms): a supply
analysis.
Electronic Journal of Information Systems Evaluation,
10(1):pp9–22, 2007.
T. Berners-Lee, R. Cailliau, J.-F. Groff, and B. Pollermann.
World-wide web: the information universe.
Internet Research, 1992.
References ii
R. Camden and B. Rinaldi.
Working with Static Sites: Bringing the Power of Simplicity to
Modern Sites.
” O’Reilly Media, Inc.”, 2017.
R. Carniato.
Understanding transitional javascript apps, Nov 2021.
A. Gustafson, L. Overkamp, P. Brosset, S. V. Prater, M. Wills, and
E. PenzeyMoog.
Understanding progressive enhancement, Oct 2008.
R. Harris.
Have single-page apps ruined the web? | transitional apps with
rich harris, nytimes, Oct 2021.
References iii
S. Kumar.
A review on client-server based applications and research
opportunity.
International Journal of Recent Scientific Research,
10(7):33857–3386, 2019.
J. Miller.
Islands architecture, 2020.
K. Newson.
Tools and workflows for collaborating on static website
projects.
Code4Lib Journal, (38), 2017.
E. O. Obaseki et al.
Micro-frontends for Web Content Management Systems.
PhD thesis, Covenant University, 2021.
References iv
S. Peltonen, L. Mezzalira, and D. Taibi.
Motivations, benefits, and issues for adopting micro-frontends:
a multivocal literature review.
Information and Software Technology, 136:106571, 2021.
H. Petersen.
From static and dynamic websites to static site generators.
university of TARTU, Institute of Computer Science, 2016.
T. Pöyry.
Next.js ja muut isomorfiset sovelluskehykset.
2021.
W. Shi, J. Cao, Q. Zhang, Y. Li, and L. Xu.
Edge computing: Vision and challenges.
IEEE internet of things journal, 3(5):637–646, 2016.
References v
T. P. team.
Islands architecture, Oct 2021.
J. Väänänen.
Jamstack–dynaamisesti toimiva staattinen verkkosivusto.
2019.
A. Yermolenko and Y. Golchevskiy.
Developing web content management systems–from the past to
the future.
In SHS Web of Conferences, volume 110. EDP Sciences, 2021.

Mais conteúdo relacionado

Mais procurados

PR-355: Masked Autoencoders Are Scalable Vision Learners
PR-355: Masked Autoencoders Are Scalable Vision LearnersPR-355: Masked Autoencoders Are Scalable Vision Learners
PR-355: Masked Autoencoders Are Scalable Vision LearnersJinwon Lee
 
Introduction to deep learning
Introduction to deep learningIntroduction to deep learning
Introduction to deep learningJunaid Bhat
 
Chain-of-thought Prompting.pptx
Chain-of-thought Prompting.pptxChain-of-thought Prompting.pptx
Chain-of-thought Prompting.pptxNeethaSherra1
 
Intel® Open Image Denoise: Optimized CPU Denoising | SIGGRAPH 2019 Technical ...
Intel® Open Image Denoise: Optimized CPU Denoising | SIGGRAPH 2019 Technical ...Intel® Open Image Denoise: Optimized CPU Denoising | SIGGRAPH 2019 Technical ...
Intel® Open Image Denoise: Optimized CPU Denoising | SIGGRAPH 2019 Technical ...Intel® Software
 
Mobile Synchronization Patterns for Large Volumes of Data
Mobile Synchronization Patterns for Large Volumes of DataMobile Synchronization Patterns for Large Volumes of Data
Mobile Synchronization Patterns for Large Volumes of DataOutSystems
 
Developing a Testing Strategy for DevOps Success
Developing a Testing Strategy for DevOps SuccessDeveloping a Testing Strategy for DevOps Success
Developing a Testing Strategy for DevOps SuccessDevOps.com
 
PR-386: Light Field Networks: Neural Scene Representations with Single-Evalua...
PR-386: Light Field Networks: Neural Scene Representations with Single-Evalua...PR-386: Light Field Networks: Neural Scene Representations with Single-Evalua...
PR-386: Light Field Networks: Neural Scene Representations with Single-Evalua...Hyeongmin Lee
 
Quantum Internet By Professor Lili Saghafi
Quantum Internet By Professor Lili SaghafiQuantum Internet By Professor Lili Saghafi
Quantum Internet By Professor Lili SaghafiProfessor Lili Saghafi
 
Weighted Blended Order Independent Transparency
Weighted Blended Order Independent TransparencyWeighted Blended Order Independent Transparency
Weighted Blended Order Independent Transparencyzokweiron
 
2019 Testim Webinar: Automation Test Strategy and Design for Agile Teams
2019 Testim Webinar: Automation Test Strategy and Design for Agile Teams2019 Testim Webinar: Automation Test Strategy and Design for Agile Teams
2019 Testim Webinar: Automation Test Strategy and Design for Agile TeamsTristanLombard1
 
那些 Functional Programming 教我的事
那些 Functional Programming 教我的事那些 Functional Programming 教我的事
那些 Functional Programming 教我的事Wen-Tien Chang
 
[2020 CVPR Efficient DET paper review]
[2020 CVPR Efficient DET paper review][2020 CVPR Efficient DET paper review]
[2020 CVPR Efficient DET paper review]taeseon ryu
 
Quantum Computation simplified.pptx
Quantum Computation simplified.pptxQuantum Computation simplified.pptx
Quantum Computation simplified.pptxSundarappanKathiresa
 
Launching a BPT Process on Entity Update
Launching a BPT Process on Entity UpdateLaunching a BPT Process on Entity Update
Launching a BPT Process on Entity UpdateOutSystems
 
OutSystems Tips and Tricks
OutSystems Tips and TricksOutSystems Tips and Tricks
OutSystems Tips and TricksOutSystems
 
PR-217: EfficientDet: Scalable and Efficient Object Detection
PR-217: EfficientDet: Scalable and Efficient Object DetectionPR-217: EfficientDet: Scalable and Efficient Object Detection
PR-217: EfficientDet: Scalable and Efficient Object DetectionJinwon Lee
 
"Quantizing Deep Networks for Efficient Inference at the Edge," a Presentatio...
"Quantizing Deep Networks for Efficient Inference at the Edge," a Presentatio..."Quantizing Deep Networks for Efficient Inference at the Edge," a Presentatio...
"Quantizing Deep Networks for Efficient Inference at the Edge," a Presentatio...Edge AI and Vision Alliance
 
Distributed Locking in Kubernetes
Distributed Locking in KubernetesDistributed Locking in Kubernetes
Distributed Locking in KubernetesRafał Leszko
 
Licentierea Software
Licentierea SoftwareLicentierea Software
Licentierea Softwaredianaifrim
 

Mais procurados (20)

PR-355: Masked Autoencoders Are Scalable Vision Learners
PR-355: Masked Autoencoders Are Scalable Vision LearnersPR-355: Masked Autoencoders Are Scalable Vision Learners
PR-355: Masked Autoencoders Are Scalable Vision Learners
 
Introduction to deep learning
Introduction to deep learningIntroduction to deep learning
Introduction to deep learning
 
Chain-of-thought Prompting.pptx
Chain-of-thought Prompting.pptxChain-of-thought Prompting.pptx
Chain-of-thought Prompting.pptx
 
Intel® Open Image Denoise: Optimized CPU Denoising | SIGGRAPH 2019 Technical ...
Intel® Open Image Denoise: Optimized CPU Denoising | SIGGRAPH 2019 Technical ...Intel® Open Image Denoise: Optimized CPU Denoising | SIGGRAPH 2019 Technical ...
Intel® Open Image Denoise: Optimized CPU Denoising | SIGGRAPH 2019 Technical ...
 
Mobile Synchronization Patterns for Large Volumes of Data
Mobile Synchronization Patterns for Large Volumes of DataMobile Synchronization Patterns for Large Volumes of Data
Mobile Synchronization Patterns for Large Volumes of Data
 
Developing a Testing Strategy for DevOps Success
Developing a Testing Strategy for DevOps SuccessDeveloping a Testing Strategy for DevOps Success
Developing a Testing Strategy for DevOps Success
 
PR-386: Light Field Networks: Neural Scene Representations with Single-Evalua...
PR-386: Light Field Networks: Neural Scene Representations with Single-Evalua...PR-386: Light Field Networks: Neural Scene Representations with Single-Evalua...
PR-386: Light Field Networks: Neural Scene Representations with Single-Evalua...
 
Quantum Internet By Professor Lili Saghafi
Quantum Internet By Professor Lili SaghafiQuantum Internet By Professor Lili Saghafi
Quantum Internet By Professor Lili Saghafi
 
Weighted Blended Order Independent Transparency
Weighted Blended Order Independent TransparencyWeighted Blended Order Independent Transparency
Weighted Blended Order Independent Transparency
 
2019 Testim Webinar: Automation Test Strategy and Design for Agile Teams
2019 Testim Webinar: Automation Test Strategy and Design for Agile Teams2019 Testim Webinar: Automation Test Strategy and Design for Agile Teams
2019 Testim Webinar: Automation Test Strategy and Design for Agile Teams
 
那些 Functional Programming 教我的事
那些 Functional Programming 教我的事那些 Functional Programming 教我的事
那些 Functional Programming 教我的事
 
[2020 CVPR Efficient DET paper review]
[2020 CVPR Efficient DET paper review][2020 CVPR Efficient DET paper review]
[2020 CVPR Efficient DET paper review]
 
Quantum Computation simplified.pptx
Quantum Computation simplified.pptxQuantum Computation simplified.pptx
Quantum Computation simplified.pptx
 
Launching a BPT Process on Entity Update
Launching a BPT Process on Entity UpdateLaunching a BPT Process on Entity Update
Launching a BPT Process on Entity Update
 
OutSystems Tips and Tricks
OutSystems Tips and TricksOutSystems Tips and Tricks
OutSystems Tips and Tricks
 
PR-217: EfficientDet: Scalable and Efficient Object Detection
PR-217: EfficientDet: Scalable and Efficient Object DetectionPR-217: EfficientDet: Scalable and Efficient Object Detection
PR-217: EfficientDet: Scalable and Efficient Object Detection
 
Open shift 4-update
Open shift 4-updateOpen shift 4-update
Open shift 4-update
 
"Quantizing Deep Networks for Efficient Inference at the Edge," a Presentatio...
"Quantizing Deep Networks for Efficient Inference at the Edge," a Presentatio..."Quantizing Deep Networks for Efficient Inference at the Edge," a Presentatio...
"Quantizing Deep Networks for Efficient Inference at the Edge," a Presentatio...
 
Distributed Locking in Kubernetes
Distributed Locking in KubernetesDistributed Locking in Kubernetes
Distributed Locking in Kubernetes
 
Licentierea Software
Licentierea SoftwareLicentierea Software
Licentierea Software
 

Semelhante a The future is mostly static

Static Site Generators - Developing Websites in Low-resource Condition
Static Site Generators - Developing Websites in Low-resource ConditionStatic Site Generators - Developing Websites in Low-resource Condition
Static Site Generators - Developing Websites in Low-resource ConditionIWMW
 
JavaScript frameworks of tomorrow
JavaScript frameworks of tomorrowJavaScript frameworks of tomorrow
JavaScript frameworks of tomorrowJuho Vepsäläinen
 
Cincom Smalltalk: Present, Future & Smalltalk Advocacy
Cincom Smalltalk: Present, Future & Smalltalk AdvocacyCincom Smalltalk: Present, Future & Smalltalk Advocacy
Cincom Smalltalk: Present, Future & Smalltalk AdvocacyESUG
 
Cms & wordpress theme development 2011
Cms & wordpress theme development 2011Cms & wordpress theme development 2011
Cms & wordpress theme development 2011Dave Wallace
 
The Kubernetes WebLogic revival (part 1)
The Kubernetes WebLogic revival (part 1)The Kubernetes WebLogic revival (part 1)
The Kubernetes WebLogic revival (part 1)Simon Haslam
 
Fundamentals of Web
Fundamentals of WebFundamentals of Web
Fundamentals of WebSabir Haque
 
Training presentation.pptx
Training presentation.pptxTraining presentation.pptx
Training presentation.pptxNishchaiyaBayla1
 
Asp.Net 3 5 Part 1
Asp.Net 3 5 Part 1Asp.Net 3 5 Part 1
Asp.Net 3 5 Part 1asim78
 
Azure enterprise integration platform
Azure enterprise integration platformAzure enterprise integration platform
Azure enterprise integration platformMichael Stephenson
 
Stay productive while slicing up the monolith
Stay productive while slicing up the monolithStay productive while slicing up the monolith
Stay productive while slicing up the monolithMarkus Eisele
 
IWMW 1999: Browser management
IWMW 1999: Browser managementIWMW 1999: Browser management
IWMW 1999: Browser managementIWMW
 
Stay productive while slicing up the monolith
Stay productive while slicing up the monolithStay productive while slicing up the monolith
Stay productive while slicing up the monolithMarkus Eisele
 
Web-Development-ppt (1).pptx
Web-Development-ppt (1).pptxWeb-Development-ppt (1).pptx
Web-Development-ppt (1).pptxRaihanUddin57
 
Web-Development-ppt.pptx
Web-Development-ppt.pptxWeb-Development-ppt.pptx
Web-Development-ppt.pptxEleenaJha
 

Semelhante a The future is mostly static (20)

The future is mostly static
The future is mostly staticThe future is mostly static
The future is mostly static
 
Static Site Generators - Developing Websites in Low-resource Condition
Static Site Generators - Developing Websites in Low-resource ConditionStatic Site Generators - Developing Websites in Low-resource Condition
Static Site Generators - Developing Websites in Low-resource Condition
 
JavaScript frameworks of tomorrow
JavaScript frameworks of tomorrowJavaScript frameworks of tomorrow
JavaScript frameworks of tomorrow
 
Transforming the web into a real application platform
Transforming the web into a real application platformTransforming the web into a real application platform
Transforming the web into a real application platform
 
Cincom Smalltalk: Present, Future & Smalltalk Advocacy
Cincom Smalltalk: Present, Future & Smalltalk AdvocacyCincom Smalltalk: Present, Future & Smalltalk Advocacy
Cincom Smalltalk: Present, Future & Smalltalk Advocacy
 
Quick introduction to Qwik
Quick introduction to QwikQuick introduction to Qwik
Quick introduction to Qwik
 
9 10 july2020
9 10 july20209 10 july2020
9 10 july2020
 
Cms & wordpress theme development 2011
Cms & wordpress theme development 2011Cms & wordpress theme development 2011
Cms & wordpress theme development 2011
 
The Kubernetes WebLogic revival (part 1)
The Kubernetes WebLogic revival (part 1)The Kubernetes WebLogic revival (part 1)
The Kubernetes WebLogic revival (part 1)
 
Fundamentals of Web
Fundamentals of WebFundamentals of Web
Fundamentals of Web
 
Training presentation.pptx
Training presentation.pptxTraining presentation.pptx
Training presentation.pptx
 
Web Development
Web DevelopmentWeb Development
Web Development
 
Web Standards
Web StandardsWeb Standards
Web Standards
 
Asp.Net 3 5 Part 1
Asp.Net 3 5 Part 1Asp.Net 3 5 Part 1
Asp.Net 3 5 Part 1
 
Azure enterprise integration platform
Azure enterprise integration platformAzure enterprise integration platform
Azure enterprise integration platform
 
Stay productive while slicing up the monolith
Stay productive while slicing up the monolithStay productive while slicing up the monolith
Stay productive while slicing up the monolith
 
IWMW 1999: Browser management
IWMW 1999: Browser managementIWMW 1999: Browser management
IWMW 1999: Browser management
 
Stay productive while slicing up the monolith
Stay productive while slicing up the monolithStay productive while slicing up the monolith
Stay productive while slicing up the monolith
 
Web-Development-ppt (1).pptx
Web-Development-ppt (1).pptxWeb-Development-ppt (1).pptx
Web-Development-ppt (1).pptx
 
Web-Development-ppt.pptx
Web-Development-ppt.pptxWeb-Development-ppt.pptx
Web-Development-ppt.pptx
 

Mais de Juho Vepsäläinen

Web application development - The past, the present, the future
Web application development - The past, the present, the futureWeb application development - The past, the present, the future
Web application development - The past, the present, the futureJuho Vepsäläinen
 
ECMAScript - From an idea to a major standard
ECMAScript - From an idea to a major standardECMAScript - From an idea to a major standard
ECMAScript - From an idea to a major standardJuho Vepsäläinen
 
Web application development - The past, the present, the future
Web application development - The past, the present, the futureWeb application development - The past, the present, the future
Web application development - The past, the present, the futureJuho Vepsäläinen
 
Survive JavaScript - Strategies and Tricks
Survive JavaScript - Strategies and TricksSurvive JavaScript - Strategies and Tricks
Survive JavaScript - Strategies and TricksJuho Vepsäläinen
 
bongaus.fi - Spotting Service Powered by Django
bongaus.fi - Spotting Service Powered by Djangobongaus.fi - Spotting Service Powered by Django
bongaus.fi - Spotting Service Powered by DjangoJuho Vepsäläinen
 
Static Websites - The Final Frontier
Static Websites - The Final FrontierStatic Websites - The Final Frontier
Static Websites - The Final FrontierJuho Vepsäläinen
 

Mais de Juho Vepsäläinen (9)

Web application development - The past, the present, the future
Web application development - The past, the present, the futureWeb application development - The past, the present, the future
Web application development - The past, the present, the future
 
ECMAScript - From an idea to a major standard
ECMAScript - From an idea to a major standardECMAScript - From an idea to a major standard
ECMAScript - From an idea to a major standard
 
Web application development - The past, the present, the future
Web application development - The past, the present, the futureWeb application development - The past, the present, the future
Web application development - The past, the present, the future
 
Survive JavaScript - Strategies and Tricks
Survive JavaScript - Strategies and TricksSurvive JavaScript - Strategies and Tricks
Survive JavaScript - Strategies and Tricks
 
Speccer
SpeccerSpeccer
Speccer
 
bongaus.fi - Spotting Service Powered by Django
bongaus.fi - Spotting Service Powered by Djangobongaus.fi - Spotting Service Powered by Django
bongaus.fi - Spotting Service Powered by Django
 
Bootstrap vs. Skeleton
Bootstrap vs. SkeletonBootstrap vs. Skeleton
Bootstrap vs. Skeleton
 
Static Websites - The Final Frontier
Static Websites - The Final FrontierStatic Websites - The Final Frontier
Static Websites - The Final Frontier
 
Intro to HTML5 Canvas
Intro to HTML5 CanvasIntro to HTML5 Canvas
Intro to HTML5 Canvas
 

Último

GraphSummit Madrid - Product Vision and Roadmap - Luis Salvador Neo4j
GraphSummit Madrid - Product Vision and Roadmap - Luis Salvador Neo4jGraphSummit Madrid - Product Vision and Roadmap - Luis Salvador Neo4j
GraphSummit Madrid - Product Vision and Roadmap - Luis Salvador Neo4jNeo4j
 
[ CNCF Q1 2024 ] Intro to Continuous Profiling and Grafana Pyroscope.pdf
[ CNCF Q1 2024 ] Intro to Continuous Profiling and Grafana Pyroscope.pdf[ CNCF Q1 2024 ] Intro to Continuous Profiling and Grafana Pyroscope.pdf
[ CNCF Q1 2024 ] Intro to Continuous Profiling and Grafana Pyroscope.pdfSteve Caron
 
Effectively Troubleshoot 9 Types of OutOfMemoryError
Effectively Troubleshoot 9 Types of OutOfMemoryErrorEffectively Troubleshoot 9 Types of OutOfMemoryError
Effectively Troubleshoot 9 Types of OutOfMemoryErrorTier1 app
 
Pros and Cons of Selenium In Automation Testing_ A Comprehensive Assessment.pdf
Pros and Cons of Selenium In Automation Testing_ A Comprehensive Assessment.pdfPros and Cons of Selenium In Automation Testing_ A Comprehensive Assessment.pdf
Pros and Cons of Selenium In Automation Testing_ A Comprehensive Assessment.pdfkalichargn70th171
 
Keeping your build tool updated in a multi repository world
Keeping your build tool updated in a multi repository worldKeeping your build tool updated in a multi repository world
Keeping your build tool updated in a multi repository worldRoberto Pérez Alcolea
 
The Role of IoT and Sensor Technology in Cargo Cloud Solutions.pptx
The Role of IoT and Sensor Technology in Cargo Cloud Solutions.pptxThe Role of IoT and Sensor Technology in Cargo Cloud Solutions.pptx
The Role of IoT and Sensor Technology in Cargo Cloud Solutions.pptxRTS corp
 
What’s New in VictoriaMetrics: Q1 2024 Updates
What’s New in VictoriaMetrics: Q1 2024 UpdatesWhat’s New in VictoriaMetrics: Q1 2024 Updates
What’s New in VictoriaMetrics: Q1 2024 UpdatesVictoriaMetrics
 
Ronisha Informatics Private Limited Catalogue
Ronisha Informatics Private Limited CatalogueRonisha Informatics Private Limited Catalogue
Ronisha Informatics Private Limited Catalogueitservices996
 
Introduction to Firebase Workshop Slides
Introduction to Firebase Workshop SlidesIntroduction to Firebase Workshop Slides
Introduction to Firebase Workshop Slidesvaideheekore1
 
OpenChain AI Study Group - Europe and Asia Recap - 2024-04-11 - Full Recording
OpenChain AI Study Group - Europe and Asia Recap - 2024-04-11 - Full RecordingOpenChain AI Study Group - Europe and Asia Recap - 2024-04-11 - Full Recording
OpenChain AI Study Group - Europe and Asia Recap - 2024-04-11 - Full RecordingShane Coughlan
 
2024 DevNexus Patterns for Resiliency: Shuffle shards
2024 DevNexus Patterns for Resiliency: Shuffle shards2024 DevNexus Patterns for Resiliency: Shuffle shards
2024 DevNexus Patterns for Resiliency: Shuffle shardsChristopher Curtin
 
2024-04-09 - From Complexity to Clarity - AWS Summit AMS.pdf
2024-04-09 - From Complexity to Clarity - AWS Summit AMS.pdf2024-04-09 - From Complexity to Clarity - AWS Summit AMS.pdf
2024-04-09 - From Complexity to Clarity - AWS Summit AMS.pdfAndrey Devyatkin
 
Leveraging AI for Mobile App Testing on Real Devices | Applitools + Kobiton
Leveraging AI for Mobile App Testing on Real Devices | Applitools + KobitonLeveraging AI for Mobile App Testing on Real Devices | Applitools + Kobiton
Leveraging AI for Mobile App Testing on Real Devices | Applitools + KobitonApplitools
 
Advantages of Cargo Cloud Solutions.pptx
Advantages of Cargo Cloud Solutions.pptxAdvantages of Cargo Cloud Solutions.pptx
Advantages of Cargo Cloud Solutions.pptxRTS corp
 
Zer0con 2024 final share short version.pdf
Zer0con 2024 final share short version.pdfZer0con 2024 final share short version.pdf
Zer0con 2024 final share short version.pdfmaor17
 
Large Language Models for Test Case Evolution and Repair
Large Language Models for Test Case Evolution and RepairLarge Language Models for Test Case Evolution and Repair
Large Language Models for Test Case Evolution and RepairLionel Briand
 
Best Angular 17 Classroom & Online training - Naresh IT
Best Angular 17 Classroom & Online training - Naresh ITBest Angular 17 Classroom & Online training - Naresh IT
Best Angular 17 Classroom & Online training - Naresh ITmanoharjgpsolutions
 
Tech Tuesday Slides - Introduction to Project Management with OnePlan's Work ...
Tech Tuesday Slides - Introduction to Project Management with OnePlan's Work ...Tech Tuesday Slides - Introduction to Project Management with OnePlan's Work ...
Tech Tuesday Slides - Introduction to Project Management with OnePlan's Work ...OnePlan Solutions
 
Understanding Plagiarism: Causes, Consequences and Prevention.pptx
Understanding Plagiarism: Causes, Consequences and Prevention.pptxUnderstanding Plagiarism: Causes, Consequences and Prevention.pptx
Understanding Plagiarism: Causes, Consequences and Prevention.pptxSasikiranMarri
 
SAM Training Session - How to use EXCEL ?
SAM Training Session - How to use EXCEL ?SAM Training Session - How to use EXCEL ?
SAM Training Session - How to use EXCEL ?Alexandre Beguel
 

Último (20)

GraphSummit Madrid - Product Vision and Roadmap - Luis Salvador Neo4j
GraphSummit Madrid - Product Vision and Roadmap - Luis Salvador Neo4jGraphSummit Madrid - Product Vision and Roadmap - Luis Salvador Neo4j
GraphSummit Madrid - Product Vision and Roadmap - Luis Salvador Neo4j
 
[ CNCF Q1 2024 ] Intro to Continuous Profiling and Grafana Pyroscope.pdf
[ CNCF Q1 2024 ] Intro to Continuous Profiling and Grafana Pyroscope.pdf[ CNCF Q1 2024 ] Intro to Continuous Profiling and Grafana Pyroscope.pdf
[ CNCF Q1 2024 ] Intro to Continuous Profiling and Grafana Pyroscope.pdf
 
Effectively Troubleshoot 9 Types of OutOfMemoryError
Effectively Troubleshoot 9 Types of OutOfMemoryErrorEffectively Troubleshoot 9 Types of OutOfMemoryError
Effectively Troubleshoot 9 Types of OutOfMemoryError
 
Pros and Cons of Selenium In Automation Testing_ A Comprehensive Assessment.pdf
Pros and Cons of Selenium In Automation Testing_ A Comprehensive Assessment.pdfPros and Cons of Selenium In Automation Testing_ A Comprehensive Assessment.pdf
Pros and Cons of Selenium In Automation Testing_ A Comprehensive Assessment.pdf
 
Keeping your build tool updated in a multi repository world
Keeping your build tool updated in a multi repository worldKeeping your build tool updated in a multi repository world
Keeping your build tool updated in a multi repository world
 
The Role of IoT and Sensor Technology in Cargo Cloud Solutions.pptx
The Role of IoT and Sensor Technology in Cargo Cloud Solutions.pptxThe Role of IoT and Sensor Technology in Cargo Cloud Solutions.pptx
The Role of IoT and Sensor Technology in Cargo Cloud Solutions.pptx
 
What’s New in VictoriaMetrics: Q1 2024 Updates
What’s New in VictoriaMetrics: Q1 2024 UpdatesWhat’s New in VictoriaMetrics: Q1 2024 Updates
What’s New in VictoriaMetrics: Q1 2024 Updates
 
Ronisha Informatics Private Limited Catalogue
Ronisha Informatics Private Limited CatalogueRonisha Informatics Private Limited Catalogue
Ronisha Informatics Private Limited Catalogue
 
Introduction to Firebase Workshop Slides
Introduction to Firebase Workshop SlidesIntroduction to Firebase Workshop Slides
Introduction to Firebase Workshop Slides
 
OpenChain AI Study Group - Europe and Asia Recap - 2024-04-11 - Full Recording
OpenChain AI Study Group - Europe and Asia Recap - 2024-04-11 - Full RecordingOpenChain AI Study Group - Europe and Asia Recap - 2024-04-11 - Full Recording
OpenChain AI Study Group - Europe and Asia Recap - 2024-04-11 - Full Recording
 
2024 DevNexus Patterns for Resiliency: Shuffle shards
2024 DevNexus Patterns for Resiliency: Shuffle shards2024 DevNexus Patterns for Resiliency: Shuffle shards
2024 DevNexus Patterns for Resiliency: Shuffle shards
 
2024-04-09 - From Complexity to Clarity - AWS Summit AMS.pdf
2024-04-09 - From Complexity to Clarity - AWS Summit AMS.pdf2024-04-09 - From Complexity to Clarity - AWS Summit AMS.pdf
2024-04-09 - From Complexity to Clarity - AWS Summit AMS.pdf
 
Leveraging AI for Mobile App Testing on Real Devices | Applitools + Kobiton
Leveraging AI for Mobile App Testing on Real Devices | Applitools + KobitonLeveraging AI for Mobile App Testing on Real Devices | Applitools + Kobiton
Leveraging AI for Mobile App Testing on Real Devices | Applitools + Kobiton
 
Advantages of Cargo Cloud Solutions.pptx
Advantages of Cargo Cloud Solutions.pptxAdvantages of Cargo Cloud Solutions.pptx
Advantages of Cargo Cloud Solutions.pptx
 
Zer0con 2024 final share short version.pdf
Zer0con 2024 final share short version.pdfZer0con 2024 final share short version.pdf
Zer0con 2024 final share short version.pdf
 
Large Language Models for Test Case Evolution and Repair
Large Language Models for Test Case Evolution and RepairLarge Language Models for Test Case Evolution and Repair
Large Language Models for Test Case Evolution and Repair
 
Best Angular 17 Classroom & Online training - Naresh IT
Best Angular 17 Classroom & Online training - Naresh ITBest Angular 17 Classroom & Online training - Naresh IT
Best Angular 17 Classroom & Online training - Naresh IT
 
Tech Tuesday Slides - Introduction to Project Management with OnePlan's Work ...
Tech Tuesday Slides - Introduction to Project Management with OnePlan's Work ...Tech Tuesday Slides - Introduction to Project Management with OnePlan's Work ...
Tech Tuesday Slides - Introduction to Project Management with OnePlan's Work ...
 
Understanding Plagiarism: Causes, Consequences and Prevention.pptx
Understanding Plagiarism: Causes, Consequences and Prevention.pptxUnderstanding Plagiarism: Causes, Consequences and Prevention.pptx
Understanding Plagiarism: Causes, Consequences and Prevention.pptx
 
SAM Training Session - How to use EXCEL ?
SAM Training Session - How to use EXCEL ?SAM Training Session - How to use EXCEL ?
SAM Training Session - How to use EXCEL ?
 

The future is mostly static

  • 1. The future is mostly static Or how we are reinventing the web again Juho Vepsäläinen
  • 2. What to expect 1. Introduction 2. Content Management Systems (CMSs) 3. Static Site Generation (SSG) 4. Related work 5. Research 1
  • 4. Key points from the history of the web • 1985 - First Content Management System (CMS) called FileNet is invented 2
  • 5. Key points from the history of the web • 1985 - First Content Management System (CMS) called FileNet is invented • 1989 - First HTML browser comes available 2
  • 6. Key points from the history of the web • 1985 - First Content Management System (CMS) called FileNet is invented • 1989 - First HTML browser comes available • 1992 - Tim Berners-Lee invents the World Wide Web (www) [3] 2
  • 7. Key points from the history of the web • 1985 - First Content Management System (CMS) called FileNet is invented • 1989 - First HTML browser comes available • 1992 - Tim Berners-Lee invents the World Wide Web (www) [3] • ca. 1995 - First graphical editors (MS Frontpage etc.) emerge for creation of websites 2
  • 8. Key points from the history of the web • 1985 - First Content Management System (CMS) called FileNet is invented • 1989 - First HTML browser comes available • 1992 - Tim Berners-Lee invents the World Wide Web (www) [3] • ca. 1995 - First graphical editors (MS Frontpage etc.) emerge for creation of websites • 1995 - JavaScript is developed by Brendan Eich 2
  • 9. Key points from the history of the web • 1985 - First Content Management System (CMS) called FileNet is invented • 1989 - First HTML browser comes available • 1992 - Tim Berners-Lee invents the World Wide Web (www) [3] • ca. 1995 - First graphical editors (MS Frontpage etc.) emerge for creation of websites • 1995 - JavaScript is developed by Brendan Eich • 2002 - The first Single Page Applications (SPAs) emerge 2
  • 10. Key points from the history of the web • 1985 - First Content Management System (CMS) called FileNet is invented • 1989 - First HTML browser comes available • 1992 - Tim Berners-Lee invents the World Wide Web (www) [3] • ca. 1995 - First graphical editors (MS Frontpage etc.) emerge for creation of websites • 1995 - JavaScript is developed by Brendan Eich • 2002 - The first Single Page Applications (SPAs) emerge • 2015 - Jamstack is specified by Matt Biilmann [8] 2
  • 11. Key points from the history of the web • 1985 - First Content Management System (CMS) called FileNet is invented • 1989 - First HTML browser comes available • 1992 - Tim Berners-Lee invents the World Wide Web (www) [3] • ca. 1995 - First graphical editors (MS Frontpage etc.) emerge for creation of websites • 1995 - JavaScript is developed by Brendan Eich • 2002 - The first Single Page Applications (SPAs) emerge • 2015 - Jamstack is specified by Matt Biilmann [8] • 2019 - Islands architecture is formalized [16] 2
  • 12. Key points from the history of the web • 1985 - First Content Management System (CMS) called FileNet is invented • 1989 - First HTML browser comes available • 1992 - Tim Berners-Lee invents the World Wide Web (www) [3] • ca. 1995 - First graphical editors (MS Frontpage etc.) emerge for creation of websites • 1995 - JavaScript is developed by Brendan Eich • 2002 - The first Single Page Applications (SPAs) emerge • 2015 - Jamstack is specified by Matt Biilmann [8] • 2019 - Islands architecture is formalized [16] • 2021 - The idea of Transitional Web Applications (TWAs) is proposed [7] 2
  • 13. Clients and a server [8] 3
  • 15. Roles in CMSs [18] 4
  • 16. What is a CMS? [2] 5
  • 17. Pros and cons Pros • Enables collaboration across disciplines Cons 6
  • 18. Pros and cons Pros • Enables collaboration across disciplines • Allows developers to save time by using extensions Cons 6
  • 19. Pros and cons Pros • Enables collaboration across disciplines • Allows developers to save time by using extensions • Many major players exist in the ecosystem Cons 6
  • 20. Pros and cons Pros • Enables collaboration across disciplines • Allows developers to save time by using extensions • Many major players exist in the ecosystem Cons • Often requires a server (something to maintain) 6
  • 21. Pros and cons Pros • Enables collaboration across disciplines • Allows developers to save time by using extensions • Many major players exist in the ecosystem Cons • Often requires a server (something to maintain) • Not trivial to understand 6
  • 22. Pros and cons Pros • Enables collaboration across disciplines • Allows developers to save time by using extensions • Many major players exist in the ecosystem Cons • Often requires a server (something to maintain) • Not trivial to understand • Comes sometimes with unnecessary complexity 6
  • 23. Architecture of a headless CMS [1, 11] 7
  • 25. What is SSG? [10] SSG is a system consisting of the following: 1. A templating language for website layout and theming. 8
  • 26. What is SSG? [10] SSG is a system consisting of the following: 1. A templating language for website layout and theming. 2. A markup language for content creation (e.g., Markdown). 8
  • 27. What is SSG? [10] SSG is a system consisting of the following: 1. A templating language for website layout and theming. 2. A markup language for content creation (e.g., Markdown). 3. A local development server to preview and test the site before building. 8
  • 28. What is SSG? [10] SSG is a system consisting of the following: 1. A templating language for website layout and theming. 2. A markup language for content creation (e.g., Markdown). 3. A local development server to preview and test the site before building. 4. A compile process that builds the final site files into HTML, CSS, and JavaScript [4] 8
  • 29. Building blocks of a Jamstack website [17] 9
  • 30. Traditional web compared to Jamstack [12] 10
  • 31. Pros and cons Pros • Fast page load time [13, 4] Cons 11
  • 32. Pros and cons Pros • Fast page load time [13, 4] • Efficient scalability (through CDNs for example) and resiliency [13] Cons 11
  • 33. Pros and cons Pros • Fast page load time [13, 4] • Efficient scalability (through CDNs for example) and resiliency [13] • Availability and security [13, 4] Cons 11
  • 34. Pros and cons Pros • Fast page load time [13, 4] • Efficient scalability (through CDNs for example) and resiliency [13] • Availability and security [13, 4] • Automatic versioning [4] Cons 11
  • 35. Pros and cons Pros • Fast page load time [13, 4] • Efficient scalability (through CDNs for example) and resiliency [13] • Availability and security [13, 4] • Automatic versioning [4] • Ease of hosting [10] Cons 11
  • 36. Pros and cons Pros • Fast page load time [13, 4] • Efficient scalability (through CDNs for example) and resiliency [13] • Availability and security [13, 4] • Automatic versioning [4] • Ease of hosting [10] Cons • Tooling is highly developer oriented 11
  • 37. Pros and cons Pros • Fast page load time [13, 4] • Efficient scalability (through CDNs for example) and resiliency [13] • Availability and security [13, 4] • Automatic versioning [4] • Ease of hosting [10] Cons • Tooling is highly developer oriented • Potentially high recompilation cost 11
  • 38. Pros and cons Pros • Fast page load time [13, 4] • Efficient scalability (through CDNs for example) and resiliency [13] • Availability and security [13, 4] • Automatic versioning [4] • Ease of hosting [10] Cons • Tooling is highly developer oriented • Potentially high recompilation cost • Static by definition (difficulties in dynamic use cases) 11
  • 41. Server-side rendering (SSR) vs. Single Page apps (SPA) vs. SSG [14] Feature SSR SPA SSG Pre-rendered HTML Yes No Yes Updates without refresh No Yes Possible Supports forms Yes Yes Ext. service Offline support in modern browsers No Yes Possible 13
  • 42. Transitional web applications (TWAs) [7] • In October 2021, Rich Harris proposed the idea of TWAs [7] 14
  • 43. Transitional web applications (TWAs) [7] • In October 2021, Rich Harris proposed the idea of TWAs [7] • By his definition, TWAs mix ideas from SPAs and the traditional web 14
  • 44. Transitional web applications (TWAs) [7] • In October 2021, Rich Harris proposed the idea of TWAs [7] • By his definition, TWAs mix ideas from SPAs and the traditional web • TWAs utilize SSR for fast initial loading times 14
  • 45. Transitional web applications (TWAs) [7] • In October 2021, Rich Harris proposed the idea of TWAs [7] • By his definition, TWAs mix ideas from SPAs and the traditional web • TWAs utilize SSR for fast initial loading times • TWAs are resilient as they work without JavaScript by default 14
  • 46. Transitional web applications (TWAs) [7] • In October 2021, Rich Harris proposed the idea of TWAs [7] • By his definition, TWAs mix ideas from SPAs and the traditional web • TWAs utilize SSR for fast initial loading times • TWAs are resilient as they work without JavaScript by default • TWAs provide consistent experience and accessibility as a built-in feature 14
  • 47. Progressive enhancement in a nutshell (2008) [6] 15
  • 48. Disappearing frameworks [5] • According to Ryan Carniato [5], disappearing frameworks come with almost a zero cost and disappear from an application 16
  • 49. Disappearing frameworks [5] • According to Ryan Carniato [5], disappearing frameworks come with almost a zero cost and disappear from an application • The starting point forms a contrast to the current breed of frameworks that load upfront and rely on expensive hydration for SSR 16
  • 50. Disappearing frameworks [5] • According to Ryan Carniato [5], disappearing frameworks come with almost a zero cost and disappear from an application • The starting point forms a contrast to the current breed of frameworks that load upfront and rely on expensive hydration for SSR • Changing the fundamental viewpoint allows for new architectures to emerge and it’s consistent with the idea of TWAs 16
  • 51. Disappearing frameworks [5] • According to Ryan Carniato [5], disappearing frameworks come with almost a zero cost and disappear from an application • The starting point forms a contrast to the current breed of frameworks that load upfront and rely on expensive hydration for SSR • Changing the fundamental viewpoint allows for new architectures to emerge and it’s consistent with the idea of TWAs • On a related note, my own solution called Sidewind implements the idea and comes with a novel pattern for hydration 16
  • 54. Research questions 1. What are the main benefits and limitations of CMSs and SSGs? 18
  • 55. Research questions 1. What are the main benefits and limitations of CMSs and SSGs? 2. Is it possible to address the limitations of SSGs while keeping the benefits? 18
  • 56. Research questions 1. What are the main benefits and limitations of CMSs and SSGs? 2. Is it possible to address the limitations of SSGs while keeping the benefits? 3. What are the means in which SSGs could address their limitations compared to CMSs? 18
  • 57. Research plan • By nature, a constructive approach (design science) fits the problem well 19
  • 58. Research plan • By nature, a constructive approach (design science) fits the problem well • Besides literature review, the idea is to: 19
  • 59. Research plan • By nature, a constructive approach (design science) fits the problem well • Besides literature review, the idea is to: 1. Interview practitioners and tool authors to understand how they view the field 19
  • 60. Research plan • By nature, a constructive approach (design science) fits the problem well • Besides literature review, the idea is to: 1. Interview practitioners and tool authors to understand how they view the field 2. Construct a model of what SSGs with a high amount of dynamism could look like 19
  • 61. Research plan • By nature, a constructive approach (design science) fits the problem well • Besides literature review, the idea is to: 1. Interview practitioners and tool authors to understand how they view the field 2. Construct a model of what SSGs with a high amount of dynamism could look like 3. Implement a tool to try out the ideas in practice (Gustwind, in progress) 19
  • 62. Contribution to web engineering 1. Increased understanding of the current state of the art 20
  • 63. Contribution to web engineering 1. Increased understanding of the current state of the art 2. Understanding of what SSG could look like when combined with ideas and constraints from the CMS world 20
  • 64. Contribution to web engineering 1. Increased understanding of the current state of the art 2. Understanding of what SSG could look like when combined with ideas and constraints from the CMS world 3. Creation of tooling for the next generation of web developers to bridge the gap between SSGs and CMSs 20
  • 65. Time for your questions 20
  • 66. References i J. Attardi. Introduction to netlify cms. In Using Gatsby and Netlify CMS, pages 1–12. Springer, 2020. C. Benevolo and S. Negri. Evaluation of content management systems (cms): a supply analysis. Electronic Journal of Information Systems Evaluation, 10(1):pp9–22, 2007. T. Berners-Lee, R. Cailliau, J.-F. Groff, and B. Pollermann. World-wide web: the information universe. Internet Research, 1992.
  • 67. References ii R. Camden and B. Rinaldi. Working with Static Sites: Bringing the Power of Simplicity to Modern Sites. ” O’Reilly Media, Inc.”, 2017. R. Carniato. Understanding transitional javascript apps, Nov 2021. A. Gustafson, L. Overkamp, P. Brosset, S. V. Prater, M. Wills, and E. PenzeyMoog. Understanding progressive enhancement, Oct 2008. R. Harris. Have single-page apps ruined the web? | transitional apps with rich harris, nytimes, Oct 2021.
  • 68. References iii S. Kumar. A review on client-server based applications and research opportunity. International Journal of Recent Scientific Research, 10(7):33857–3386, 2019. J. Miller. Islands architecture, 2020. K. Newson. Tools and workflows for collaborating on static website projects. Code4Lib Journal, (38), 2017. E. O. Obaseki et al. Micro-frontends for Web Content Management Systems. PhD thesis, Covenant University, 2021.
  • 69. References iv S. Peltonen, L. Mezzalira, and D. Taibi. Motivations, benefits, and issues for adopting micro-frontends: a multivocal literature review. Information and Software Technology, 136:106571, 2021. H. Petersen. From static and dynamic websites to static site generators. university of TARTU, Institute of Computer Science, 2016. T. Pöyry. Next.js ja muut isomorfiset sovelluskehykset. 2021. W. Shi, J. Cao, Q. Zhang, Y. Li, and L. Xu. Edge computing: Vision and challenges. IEEE internet of things journal, 3(5):637–646, 2016.
  • 70. References v T. P. team. Islands architecture, Oct 2021. J. Väänänen. Jamstack–dynaamisesti toimiva staattinen verkkosivusto. 2019. A. Yermolenko and Y. Golchevskiy. Developing web content management systems–from the past to the future. In SHS Web of Conferences, volume 110. EDP Sciences, 2021.