SlideShare a Scribd company logo
1 of 146
Download to read offline
Practical Responsive
Web Design
Northeast PHP 2013
Jonathan Klein, Performance Engineer
@jonathanklein
Sunday, August 18, 13
Slides, Links
jkle.in/rwd
Sunday, August 18, 13
Some Etsy Stats
Sunday, August 18, 13
Some Etsy Stats
• Handmade marketplace
Sunday, August 18, 13
Some Etsy Stats
• Handmade marketplace
• 1.5 billion page views/month
Sunday, August 18, 13
Some Etsy Stats
• Handmade marketplace
• 1.5 billion page views/month
• Almost $1B in sales last year
Sunday, August 18, 13
Some Etsy Stats
• Handmade marketplace
• 1.5 billion page views/month
• Almost $1B in sales last year
• ~1M lines of PHP
Sunday, August 18, 13
Why Responsive Web
Design?
Sunday, August 18, 13
Main Advantages
Sunday, August 18, 13
Main Advantages
• Maintainability
Sunday, August 18, 13
Main Advantages
• Maintainability
• SEO
Sunday, August 18, 13
Main Advantages
• Maintainability
• SEO
• User Experience
Sunday, August 18, 13
Main Advantages
• Maintainability
• SEO
• User Experience
• Performance
Sunday, August 18, 13
1.6 seconds
Sunday, August 18, 13
Two Assertions
Sunday, August 18, 13
1. RWD isn’t that hard
Sunday, August 18, 13
2. RWD can be fast
Sunday, August 18, 13
The Basics
Sunday, August 18, 13
Building blocks of RWD
/* Greater than 900px wide */
@media screen and (min-width: 56.25em) {...}
/* Retina Display */
@media screen and (min-device-pixel-ratio: 2) {...}
/* You can chain these */
@media screen and (min-width: 56.25em) and (min-
device-pixel-ratio: 2) {...}
Sunday, August 18, 13
Building blocks of RWD
/* Greater than 900px wide */
@media screen and (min-width: 56.25em) {...}
/* Retina Display */
@media screen and (min-device-pixel-ratio: 2) {...}
/* You can chain these */
@media screen and (min-width: 56.25em) and (min-
device-pixel-ratio: 2) {...}
Sunday, August 18, 13
Sunday, August 18, 13
Breakpoints
Sunday, August 18, 13
Sunday, August 18, 13
What Breakpoints to Use?
Sunday, August 18, 13
What Breakpoints to Use?
• Don’t think about devices
Sunday, August 18, 13
What Breakpoints to Use?
• Don’t think about devices
• “Make it look good”
Sunday, August 18, 13
What Breakpoints to Use?
• Don’t think about devices
• “Make it look good”
• Something like 600px, 900px, max
Sunday, August 18, 13
What Breakpoints to Use?
• Don’t think about devices
• “Make it look good”
• Something like 600px, 900px, max
• Divide by 16 to get em’s
Sunday, August 18, 13
Retina Images
Sunday, August 18, 13
Start With the Normal Version
/* Small version of the logo */
.logo {
background-image: url(logo_sm.png);
background-repeat: no-repeat;
background-position: center;
background-size: 230px 50px;
}
Sunday, August 18, 13
Start With the Normal Version
/* Small version of the logo */
.logo {
background-image: url(logo_sm.png);
background-repeat: no-repeat;
background-position: center;
background-size: 230px 50px;
}
Sunday, August 18, 13
High Res Screens
/* Provide a hi-res logo for retina screens */
@media screen and (-webkit-min-device-pixel-ratio: 2) {
.logo {
background-image: url(logo_lg.png);
}
}
Sunday, August 18, 13
High Res Screens
/* Provide a hi-res logo for retina screens */
@media screen and (-webkit-min-device-pixel-ratio: 2) {
.logo {
background-image: url(logo_lg.png);
}
}
Sunday, August 18, 13
RWD In Action
Sunday, August 18, 13
Sunday, August 18, 13
Sunday, August 18, 13
Clean up some CSS
.article {
width: 31%;
min-width:250px;
}
#content .wrapper {
width:auto;
}
#page {
background:none;
}
Sunday, August 18, 13
Make it Responsive
/* Two articles across */
@media screen and (max-width: 850px) {
.article {
width: 46%;
}
}
/* One article across */
@media screen and (max-width: 530px) {
.article {
width: 90%;
}
}
Sunday, August 18, 13
Sunday, August 18, 13
Demo
Sunday, August 18, 13
Performance
Sunday, August 18, 13
A Few Considerations
Sunday, August 18, 13
A Few Considerations
• Extra CSS (minimal)
Sunday, August 18, 13
A Few Considerations
• Extra CSS (minimal)
• Retina Images (ouch)
Sunday, August 18, 13
A Few Considerations
• Extra CSS (minimal)
• Retina Images (ouch)
• Larger images than needed
Sunday, August 18, 13
A Few Considerations
• Extra CSS (minimal)
• Retina Images (ouch)
• Larger images than needed
• Extra Image Requests
Sunday, August 18, 13
A Few Considerations
• Extra CSS (minimal)
• Retina Images (ouch)
• Larger images than needed
• Extra Image Requests
Sunday, August 18, 13
Responsive Images
Sunday, August 18, 13
Three Performance Goals:
Sunday, August 18, 13
Three Performance Goals:
1. Start with a small image
Sunday, August 18, 13
Three Performance Goals:
1. Start with a small image
2. Upgrade to larger size without
downloading both
Sunday, August 18, 13
Three Performance Goals:
1. Start with a small image
2. Upgrade to larger size without
downloading both
3. Unique image URLs (caching)
Sunday, August 18, 13
Automate
Sunday, August 18, 13
Resize on the fly
Sunday, August 18, 13
Resize on the fly
• Based on browser resolution, make the
right image
Sunday, August 18, 13
Resize on the fly
• Based on browser resolution, make the
right image
• Round a bit
Sunday, August 18, 13
Resize on the fly
• Based on browser resolution, make the
right image
• Round a bit
• http://adaptive-images.com
Sunday, August 18, 13
Lossless Compression
Sunday, August 18, 13
Lossless Compression
Sunday, August 18, 13
140 KB
Lossless Compression
Sunday, August 18, 13
140 KB 85 KB
Lossless Compression
Sunday, August 18, 13
140 KB 85 KB
Lossless Compression
• http://www.smushit.com/ysmush.it/
• https://developers.google.com/speed/pagespeed/
Sunday, August 18, 13
• Automate HTML output
• Plan for the future
More Automation
Sunday, August 18, 13
HTML Output (picturefill)
Sunday, August 18, 13
HTML Output (picturefill)
• https://github.com/scottjehl/picturefill
Sunday, August 18, 13
HTML Output (picturefill)
• https://github.com/scottjehl/picturefill
• Mimics proposed <picture> element
Sunday, August 18, 13
HTML Output (picturefill)
• https://github.com/scottjehl/picturefill
• Mimics proposed <picture> element
• < 0.5K JS file
Sunday, August 18, 13
HTML Output (picturefill)
• https://github.com/scottjehl/picturefill
• Mimics proposed <picture> element
• < 0.5K JS file
• Supports all media queries
Sunday, August 18, 13
HTML Output (picturefill)
• https://github.com/scottjehl/picturefill
• Mimics proposed <picture> element
• < 0.5K JS file
• Supports all media queries
• Works across all browsers
Sunday, August 18, 13
<div data-picture data-alt="Interesting Image Alt Text">
<div data-src="small.jpg"></div>
<div data-src="medium.jpg" data-media="(min-width: 400px)"></div>
<div data-src="large.jpg" data-media="(min-width: 800px)"></div>
<div data-src="extralarge.jpg" data-media="(min-width: 1000px)"></div>
<!-- Fallback content for non-JS browsers. Same img src as the initial,
unqualified source element. -->
<noscript>
<img src="small.jpg" alt="Interesting Image Alt Text">
</noscript>
</div>
Sunday, August 18, 13
<div data-picture data-alt="Interesting Image Alt Text">
<div data-src="small.jpg"></div>
<div data-src="medium.jpg" data-media="(min-width: 400px)"></div>
<div data-src="large.jpg" data-media="(min-width: 800px)"></div>
<div data-src="extralarge.jpg" data-media="(min-width: 1000px)"></div>
<!-- Fallback content for non-JS browsers. Same img src as the initial,
unqualified source element. -->
<noscript>
<img src="small.jpg" alt="Interesting Image Alt Text">
</noscript>
</div>
IE 6, 7, 8 get this
Sunday, August 18, 13
How does it do?
Sunday, August 18, 13
How does it do?
✓ Unique image URLs
Sunday, August 18, 13
How does it do?
✓ Unique image URLs
✓ Start with smallest image
Sunday, August 18, 13
How does it do?
✓ Unique image URLs
✓ Start with smallest image
✓ Only one image download
Sunday, August 18, 13
How does it do?
✓ Unique image URLs
✓ Start with smallest image
✓ Only one image download
✓ Fallback for old IE
Sunday, August 18, 13
But that markup...
Sunday, August 18, 13
Plan to Replace
Whatever You Build
Sunday, August 18, 13
Resources for Responsive Imgs
Jason Grigsby:
http://blog.cloudfour.com/responsive-imgs/
http://blog.cloudfour.com/responsive-imgs-part-2/
http://blog.cloudfour.com/responsive-imgs-part-3-future-of-the-img-tag/
http://blog.cloudfour.com/8-guidelines-and-1-rule-for-responsive-images/
http://blog.cloudfour.com/sensible-jumps-in-responsive-image-file-sizes/
Sunday, August 18, 13
Don’t type, click:
jkle.in/rwd
Sunday, August 18, 13
Clown Car Technique
Sunday, August 18, 13
Basics
Sunday, August 18, 13
Basics
• <object> tag
Sunday, August 18, 13
Basics
• <object> tag
• References SVG file
Sunday, August 18, 13
Basics
• <object> tag
• References SVG file
• ...as a DataURI
Sunday, August 18, 13
Basics
• <object> tag
• References SVG file
• ...as a DataURI
• ...URL encoded
Sunday, August 18, 13
Basics
• <object> tag
• References SVG file
• ...as a DataURI
• ...URL encoded
• Wrapping conditional comment
Sunday, August 18, 13
Clowns and Cars
<object data="data:image/svg+xml,%3Csvg
%20viewBox='0%200%20300%20329'%20preserveAspectRatio='xMidYMid
%20meet'%20xmlns='http://www.w3.org/2000/svg'%3E%3Ctitle%3EClown%20Car
%20Technique%3C/title%3E%3Cstyle%3Esvg%7Bbackground-size:
100%25%20100%25;background-repeat:no-repeat;%7D@media%20screen%20and
%20(max-width:400px)%7Bsvg%7Bbackground-image:url(images/small.png);%7D
%7D@media%20screen%20and%20(min-width:401px)%7Bsvg%7Bbackground-
image:url(images/medium.png);%7D%7D@media%20screen%20and%20(min-width:
701px)%7Bsvg%7Bbackground-image:url(images/big.png);%7D%7D@media%20screen
%20and%20(min-width:1001px)%7Bsvg%7Bbackground-image:url(images/
huge.png);%7D%7D%3C/style%3E%3C/svg%3E"
type="image/svg+xml">
<!--[if lte IE 8]>
<img src="images/medium.png" alt="Fallback for IE">
<![endif]-->
</object>
Sunday, August 18, 13
Benefits
Sunday, August 18, 13
Benefits
• All logic in an SVG file
Sunday, August 18, 13
Benefits
• All logic in an SVG file
• One HTTP request
Sunday, August 18, 13
Benefits
• All logic in an SVG file
• One HTTP request
• Management is easy
Sunday, August 18, 13
Benefits
• All logic in an SVG file
• One HTTP request
• Management is easy
• Adapts to browser size automatically
Sunday, August 18, 13
Drawbacks
Sunday, August 18, 13
Drawbacks
• Accessibility
Sunday, August 18, 13
Drawbacks
• Accessibility
• No right-click
Sunday, August 18, 13
Drawbacks
• Accessibility
• No right-click
• Doesn’t work on Android <= 2.3
Sunday, August 18, 13
We Need Something
Better
Sunday, August 18, 13
display:none
Sunday, August 18, 13
<img src="foo.png" style="display:none" />
Sunday, August 18, 13
<img src="foo.png" style="display:none" />
Image is Downloaded
Sunday, August 18, 13
<div style="display:none;">
<img src="foo.png" style="display:none" />
</div>
Sunday, August 18, 13
<div style="display:none;">
<img src="foo.png" style="display:none" />
</div>
Image is Downloaded
Sunday, August 18, 13
<style>
.bg {
background-image: url(foo.png);
width:100px;
height: 100px;
display: none;
}
</style>
<div class="bg"></div>
Sunday, August 18, 13
<style>
.bg {
background-image: url(foo.png);
width:100px;
height: 100px;
display: none;
}
</style>
<div class="bg"></div>
Image is Downloaded
Sunday, August 18, 13
<style>
.bg {
background-image: url(foo.png);
width:100px;
height: 100px;
display: none;
}
</style>
<div style="display:none;">
<div class="bg"></div>
</div>
Sunday, August 18, 13
<style>
.bg {
background-image: url(foo.png);
width:100px;
height: 100px;
display: none;
}
</style>
<div style="display:none;">
<div class="bg"></div>
</div>
Image is NOT Downloaded
Sunday, August 18, 13
<img> with display:none Downloaded
<img> with parent
display:none
Downloaded
background image with
display:none
Downloaded
background image with
parent display:none
Not Downloaded
Sunday, August 18, 13
Workarounds
Sunday, August 18, 13
Handling display:none
Sunday, August 18, 13
Handling display:none
• Start with an empty src, use JS
Sunday, August 18, 13
Handling display:none
• Start with an empty src, use JS
• Server side detection
Sunday, August 18, 13
Handling display:none
• Start with an empty src, use JS
• Server side detection
• Lots more: http://timkadlec.com/
2012/04/media-query-asset-
downloading-results/
Sunday, August 18, 13
Media Query Browser
Support
Sunday, August 18, 13
Sunday, August 18, 13
Fail
Sunday, August 18, 13
Handle IE
Conditional Comments
<!--[if lt IE 9]><![endif]-->
http://adactio.com/journal/4494/
More: http://buildmobile.com/understanding-responsive-web-
design-cross-browser-compatibility/
Sunday, August 18, 13
The Future:
Client Hints
Sunday, August 18, 13
Proposal by Ilya Grigorik
Sunday, August 18, 13
Proposal by Ilya Grigorik
• Client (browser) sends an additional
HTTP Header
Sunday, August 18, 13
Proposal by Ilya Grigorik
• Client (browser) sends an additional
HTTP Header
• CH: dh=598, dw=384, dpr=2.0, t
Sunday, August 18, 13
Proposal by Ilya Grigorik
• Client (browser) sends an additional
HTTP Header
• CH: dh=598, dw=384, dpr=2.0, t
• https://github.com/igrigorik/http-client-hints/
Sunday, August 18, 13
Homework
Sunday, August 18, 13
Sunday, August 18, 13
Find your favorite non-responsive site
Sunday, August 18, 13
Find your favorite non-responsive site
Sunday, August 18, 13
Find your favorite non-responsive site
Save the HTML locally
Sunday, August 18, 13
Find your favorite non-responsive site
Save the HTML locally
Sunday, August 18, 13
Find your favorite non-responsive site
Save the HTML locally
Add some media queries and a breakpoint
Sunday, August 18, 13
Find your favorite non-responsive site
Save the HTML locally
Add some media queries and a breakpoint
Sunday, August 18, 13
Find your favorite non-responsive site
Save the HTML locally
Add some media queries and a breakpoint
Make one retina image and use it
Sunday, August 18, 13
Find your favorite non-responsive site
Save the HTML locally
Add some media queries and a breakpoint
Make one retina image and use it
Sunday, August 18, 13
Congratulations!
Sunday, August 18, 13
• Resize browser window, use console
when you want a breakpoint
• document.body.offsetWidth
• If you must start w/ desktop, use:
• @media screen and (max-width: 900px) {
Some Hints
Sunday, August 18, 13
Sunday, August 18, 13
Synthetic Testing
Sunday, August 18, 13
WebPagetest
• Use Chrome
• Script:
• setviewportsize 400600
• navigate bostonglobe.com
Sunday, August 18, 13
Sunday, August 18, 13
Recap
Sunday, August 18, 13
Takeaways
Sunday, August 18, 13
Takeaways
• Start with small sizes on new sites
Sunday, August 18, 13
Takeaways
• Start with small sizes on new sites
• Use em’s and %’s
Sunday, August 18, 13
Takeaways
• Start with small sizes on new sites
• Use em’s and %’s
• ~3-4 device independent breakpoints
Sunday, August 18, 13
Takeaways
• Start with small sizes on new sites
• Use em’s and %’s
• ~3-4 device independent breakpoints
• Use Responsive Images
Sunday, August 18, 13
Takeaways
• Start with small sizes on new sites
• Use em’s and %’s
• ~3-4 device independent breakpoints
• Use Responsive Images
• Have a fallback plan for IE
Sunday, August 18, 13
Get in Touch
www.etsy.com/careers
jonathan@etsy.com
@jonathanklein
Sunday, August 18, 13

More Related Content

Viewers also liked

PHPDay 2013 - High Performance PHP
PHPDay 2013 - High Performance PHPPHPDay 2013 - High Performance PHP
PHPDay 2013 - High Performance PHPJonathan Klein
 
Northeast PHP - High Performance PHP
Northeast PHP - High Performance PHPNortheast PHP - High Performance PHP
Northeast PHP - High Performance PHPJonathan Klein
 
Scaling PHP to 40 Million Uniques
Scaling PHP to 40 Million UniquesScaling PHP to 40 Million Uniques
Scaling PHP to 40 Million UniquesJonathan Klein
 
Integrating React.js with PHP projects
Integrating React.js with PHP projectsIntegrating React.js with PHP projects
Integrating React.js with PHP projectsIgnacio Martín
 
PHP UK 2017 - Don't Lose Sleep - Secure Your REST
PHP UK 2017 - Don't Lose Sleep - Secure Your RESTPHP UK 2017 - Don't Lose Sleep - Secure Your REST
PHP UK 2017 - Don't Lose Sleep - Secure Your RESTAdam Englander
 
How Slow Load Times Hurt Your Bottom Line (And 17 Things You Can Do to Fix It)
How Slow Load Times Hurt Your Bottom Line (And 17 Things You Can Do to Fix It)How Slow Load Times Hurt Your Bottom Line (And 17 Things You Can Do to Fix It)
How Slow Load Times Hurt Your Bottom Line (And 17 Things You Can Do to Fix It)Tammy Everts
 
How Shopify Scales Rails
How Shopify Scales RailsHow Shopify Scales Rails
How Shopify Scales Railsjduff
 
Improving PHP Application Performance with APC
Improving PHP Application Performance with APCImproving PHP Application Performance with APC
Improving PHP Application Performance with APCvortexau
 

Viewers also liked (8)

PHPDay 2013 - High Performance PHP
PHPDay 2013 - High Performance PHPPHPDay 2013 - High Performance PHP
PHPDay 2013 - High Performance PHP
 
Northeast PHP - High Performance PHP
Northeast PHP - High Performance PHPNortheast PHP - High Performance PHP
Northeast PHP - High Performance PHP
 
Scaling PHP to 40 Million Uniques
Scaling PHP to 40 Million UniquesScaling PHP to 40 Million Uniques
Scaling PHP to 40 Million Uniques
 
Integrating React.js with PHP projects
Integrating React.js with PHP projectsIntegrating React.js with PHP projects
Integrating React.js with PHP projects
 
PHP UK 2017 - Don't Lose Sleep - Secure Your REST
PHP UK 2017 - Don't Lose Sleep - Secure Your RESTPHP UK 2017 - Don't Lose Sleep - Secure Your REST
PHP UK 2017 - Don't Lose Sleep - Secure Your REST
 
How Slow Load Times Hurt Your Bottom Line (And 17 Things You Can Do to Fix It)
How Slow Load Times Hurt Your Bottom Line (And 17 Things You Can Do to Fix It)How Slow Load Times Hurt Your Bottom Line (And 17 Things You Can Do to Fix It)
How Slow Load Times Hurt Your Bottom Line (And 17 Things You Can Do to Fix It)
 
How Shopify Scales Rails
How Shopify Scales RailsHow Shopify Scales Rails
How Shopify Scales Rails
 
Improving PHP Application Performance with APC
Improving PHP Application Performance with APCImproving PHP Application Performance with APC
Improving PHP Application Performance with APC
 

Recently uploaded

How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerThousandEyes
 
[BuildWithAI] Introduction to Gemini.pdf
[BuildWithAI] Introduction to Gemini.pdf[BuildWithAI] Introduction to Gemini.pdf
[BuildWithAI] Introduction to Gemini.pdfSandro Moreira
 
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...DianaGray10
 
Exploring Multimodal Embeddings with Milvus
Exploring Multimodal Embeddings with MilvusExploring Multimodal Embeddings with Milvus
Exploring Multimodal Embeddings with MilvusZilliz
 
"I see eyes in my soup": How Delivery Hero implemented the safety system for ...
"I see eyes in my soup": How Delivery Hero implemented the safety system for ..."I see eyes in my soup": How Delivery Hero implemented the safety system for ...
"I see eyes in my soup": How Delivery Hero implemented the safety system for ...Zilliz
 
EMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWER
EMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWEREMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWER
EMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWERMadyBayot
 
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemkeProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemkeProduct Anonymous
 
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot TakeoffStrategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoffsammart93
 
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...apidays
 
Platformless Horizons for Digital Adaptability
Platformless Horizons for Digital AdaptabilityPlatformless Horizons for Digital Adaptability
Platformless Horizons for Digital AdaptabilityWSO2
 
Six Myths about Ontologies: The Basics of Formal Ontology
Six Myths about Ontologies: The Basics of Formal OntologySix Myths about Ontologies: The Basics of Formal Ontology
Six Myths about Ontologies: The Basics of Formal Ontologyjohnbeverley2021
 
Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...
Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...
Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...Jeffrey Haguewood
 
DBX First Quarter 2024 Investor Presentation
DBX First Quarter 2024 Investor PresentationDBX First Quarter 2024 Investor Presentation
DBX First Quarter 2024 Investor PresentationDropbox
 
Polkadot JAM Slides - Token2049 - By Dr. Gavin Wood
Polkadot JAM Slides - Token2049 - By Dr. Gavin WoodPolkadot JAM Slides - Token2049 - By Dr. Gavin Wood
Polkadot JAM Slides - Token2049 - By Dr. Gavin WoodJuan lago vázquez
 
FWD Group - Insurer Innovation Award 2024
FWD Group - Insurer Innovation Award 2024FWD Group - Insurer Innovation Award 2024
FWD Group - Insurer Innovation Award 2024The Digital Insurer
 
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024Victor Rentea
 
AWS Community Day CPH - Three problems of Terraform
AWS Community Day CPH - Three problems of TerraformAWS Community Day CPH - Three problems of Terraform
AWS Community Day CPH - Three problems of TerraformAndrey Devyatkin
 
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost SavingRepurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost SavingEdi Saputra
 
DEV meet-up UiPath Document Understanding May 7 2024 Amsterdam
DEV meet-up UiPath Document Understanding May 7 2024 AmsterdamDEV meet-up UiPath Document Understanding May 7 2024 Amsterdam
DEV meet-up UiPath Document Understanding May 7 2024 AmsterdamUiPathCommunity
 

Recently uploaded (20)

How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected Worker
 
[BuildWithAI] Introduction to Gemini.pdf
[BuildWithAI] Introduction to Gemini.pdf[BuildWithAI] Introduction to Gemini.pdf
[BuildWithAI] Introduction to Gemini.pdf
 
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
 
Understanding the FAA Part 107 License ..
Understanding the FAA Part 107 License ..Understanding the FAA Part 107 License ..
Understanding the FAA Part 107 License ..
 
Exploring Multimodal Embeddings with Milvus
Exploring Multimodal Embeddings with MilvusExploring Multimodal Embeddings with Milvus
Exploring Multimodal Embeddings with Milvus
 
"I see eyes in my soup": How Delivery Hero implemented the safety system for ...
"I see eyes in my soup": How Delivery Hero implemented the safety system for ..."I see eyes in my soup": How Delivery Hero implemented the safety system for ...
"I see eyes in my soup": How Delivery Hero implemented the safety system for ...
 
EMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWER
EMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWEREMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWER
EMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWER
 
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemkeProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
 
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot TakeoffStrategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
 
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
 
Platformless Horizons for Digital Adaptability
Platformless Horizons for Digital AdaptabilityPlatformless Horizons for Digital Adaptability
Platformless Horizons for Digital Adaptability
 
Six Myths about Ontologies: The Basics of Formal Ontology
Six Myths about Ontologies: The Basics of Formal OntologySix Myths about Ontologies: The Basics of Formal Ontology
Six Myths about Ontologies: The Basics of Formal Ontology
 
Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...
Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...
Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...
 
DBX First Quarter 2024 Investor Presentation
DBX First Quarter 2024 Investor PresentationDBX First Quarter 2024 Investor Presentation
DBX First Quarter 2024 Investor Presentation
 
Polkadot JAM Slides - Token2049 - By Dr. Gavin Wood
Polkadot JAM Slides - Token2049 - By Dr. Gavin WoodPolkadot JAM Slides - Token2049 - By Dr. Gavin Wood
Polkadot JAM Slides - Token2049 - By Dr. Gavin Wood
 
FWD Group - Insurer Innovation Award 2024
FWD Group - Insurer Innovation Award 2024FWD Group - Insurer Innovation Award 2024
FWD Group - Insurer Innovation Award 2024
 
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
 
AWS Community Day CPH - Three problems of Terraform
AWS Community Day CPH - Three problems of TerraformAWS Community Day CPH - Three problems of Terraform
AWS Community Day CPH - Three problems of Terraform
 
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost SavingRepurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
 
DEV meet-up UiPath Document Understanding May 7 2024 Amsterdam
DEV meet-up UiPath Document Understanding May 7 2024 AmsterdamDEV meet-up UiPath Document Understanding May 7 2024 Amsterdam
DEV meet-up UiPath Document Understanding May 7 2024 Amsterdam
 

Practical Responsive Web Design - Northeast PHP 2013