SlideShare a Scribd company logo
https://www.flickr.com/photos/9422878@N08/6884612488
AB Testing, Ads & other 3rd-Party Tags
@AndyDavies · London WebPerf · Mar ‘18
AB Testing, Ads and other 3rd party tags - London WebPerf - March 2018
AB Testing, Ads and other 3rd party tags - London WebPerf - March 2018
AB Testing, Ads and other 3rd party tags - London WebPerf - March 2018
Infrastructure and code
managed by someone else
Third-party =
Guy Podjarny, Velocity Santa Clara, 2014
We’re including more and more of them
0
25
50
75
100
125
150
175
200
225
01-Jan-13 01-Jul-13 01-Jan-14 01-Jul-14 01-Jan-15 01-Jul-15 01-Jan-16 01-Jul-16 01-Jan-17 01-Jul-17 01-Jan-1
50th 75th 90th 95th HTTPArchive Jan ’13 to Jan ‘18Percentile
Well… we’ve got plenty of choice!
And we’re told they’re going to make us more money
www.flickr.com/photos/59937401@N07/5856660723
EVERYTHING SHOULD
HAVE VALUE, BECAUSE
EVERYTHING HAS A COST
Tim Kadlec
How can we measure their cost?
1. Test a page in WebPageTest
2. Repeat with selected 3rd-Parties blocked
3. Compare the two results
Requests to
be blocked
Use the filmstrip view to compare visual experience
Use the filmstrip view to compare visual experience
Feed the timings into RUM to understand the business impact
Conversions
(At least three RUM products support ‘What-If’ type analysis)
MedianPageLoadTime(s)
0
2
4
6
8
10
12
14
W
eek
0
W
eek
1
W
eek
2
W
eek
3
W
eek
5
W
eek
5
Android
iOS
3rd-Parties really can cost you money…
MedianPageLoadTime(s)
0
2
4
6
8
10
12
14
W
eek
0
W
eek
1
W
eek
2
W
eek
3
W
eek
5
W
eek
5
Android
iOSRemoved BazaarVoice
for Android visitors
3rd-Parties really can cost you money…
-4s
£+26%
Understand how 3rd-parties affect your key milestones
Working? Useful? Usable?
What’s happening here? Or here?
Analysing activity before firstMeaningfulPaint
AB Testing, Ads and other 3rd party tags - London WebPerf - March 2018
AB Testing, Ads and other 3rd party tags - London WebPerf - March 2018
To get a broader picture of performance…
1. Grab Chrome timelines from HTTPArchive
e.g. https://storage.googleapis.com/httparchive/traces-android-
Dec_15_2017/171215_7X_FFG2.json.gz
2. Analyse with modified version of Jean-Pierre
Vincent’s 3rd-party-cpu-abuser
https://github.com/andydavies/3rd-party-cpu-abuser
3. Aggregate the results
Top 13 CPU consumers before firstMeaningfulPaint - HTTPArchive rank < 5000
Let’s look at testing, using Optimizely as an example
https://www.flickr.com/photos/pinkangelbabe/427255017
Optimizely’s cost varies by implementation
0
1.25
2.5
3.75
5
Duration of script execution before firstMeaningfulPaint (ms)
0 500 1000 1500 2000 2500
Optimizely
(n=110)
Circle size = number occurrences
On the critical rendering path
On the critical rendering path
On the critical rendering path
Improving performance
Reducing number of
• URL Matches
• Experiments
• Plugins (Widgets)
reduces snippet size, download and execution times
Removing jQuery from the bundle and using your own (if you
already have it) can shrink bundle further
Add metrics from Optimizely to Analytics or RUM?
optimizely.get("state").getActiveExperimentIds().length
Some products have documented APIs, why not extract key
metrics and send them to analytics or RUM?
Number of experiments in snippet:
Number of experiments active for this page view:
Object.keys(optimizely.get('data').experiments).length
Use Performance APIs to build a picture
Resource Timing
• When was script requested, how long did it take to fetch, was it
cached?
User Timing
• When did the initial script execute, how long did it take?
LongTasks
• Were there any script elements that took longer that 50ms?
Make sure tests are equivalent from a performance viewpoint
Some things seen in the the wild:
• One variant redirected to a new page, the other didn’t
• Optimised vs unoptimised images
(Can be good reasons why tests can’t be equivalent)
Could you do it server-side or or at CDN level?
https://www.flickr.com/photos/kewl/8475764430
Know how to turn it off in an emergency
https://www.flickr.com/photos/chrysics/4365802409
-150ms
-300ms
£+5%
https://www.flickr.com/photos/gviciano/3128575291
What if I told you…
https://www.flickr.com/photos/gviciano/3128575291
a script loaded async, and even
injected after page load can delay a
page rendering?
…
What was the first request in this navigation?
AB Testing, Ads and other 3rd party tags - London WebPerf - March 2018
Request #61
¯_( )_/¯
beforeUnload event
took 400ms to execute!
cloning DOM triggered
extra network requests
beforeUnload event
handlers took over
1,800ms to execute!!!
The examples aren’t isolated cases
0
3
6
9
12
15
Duration of beforeUnload event handlers (s)
0.0 0.5 1.0 1.5 2.0 2.5 3.0
Moat Ads
(n=481)
TeaLeaf
(n=271)
Not always easy to spot these delays
https://www.flickr.com/photos/fernandosanchez/2441716057
Navigation Timing API excludes beforeUnload
Prompt
for
unload
App
Cache
DNS TCP Request Response Processing onLoadRedirect
unload
Before
Unload
navigation start
Instrument addEventListener?
!(function() {
const callbacks = []
window.addEventListener = (function(_addEventListener){
_addEventListener.call(window, 'beforeunload', function(){
const args = Array.prototype.slice.call(arguments)
let total = -1 * performance.now()
callbacks.forEach(function(callback) {
callback.apply(undefined, args)
})
total += performance.now()
console.info(`total: ${total}`)
})
return function() {
if (arguments[0] === 'beforeunload') {
callbacks.push(arguments[1])
return
}
_addEventListener.apply(this, arguments)
}
})(window.addEventListener)
})() This is just a sketch of an idea - don’t deploy it without improvements!

https://gist.github.com/cvazac/de18cf4d045b01d179d8fdc2902d4997
WebPageTest?
1. WebPageTest script
navigate https://www.game.co.uk/

navigate https://www.game.co.uk/
2. Download Timeline for
step #2
3. Pipe through jq cat timeline.json | jq -r '[.[] |
select(.name=="EventDispatch"
and .args.data.type=="beforeunload")
| .dur] | add / 1000')
DevTools?
https://www.flickr.com/photos/wnieke/4078161933
Do you include adverts?
https://www.flickr.com/photos/helldini/6190516041
https://news.sky.com/story/hackers-behind-a-billion-dodgy-web-adverts-11219278
https://blog.trendmicro.com/trendlabs-security-intelligence/malvertising-campaign-abuses-googles-doubleclick-to-deliver-cryptocurrency-miners
https://discuss.httparchive.org/t/the-performance-impact-of-cryptocurrency-mining-on-the-web/1126/8
https://www.adlightning.com/ad-quality-report
“…41% of the ads tracked exceeded the industry-approved
maximum. Nearly 10% of the ads were larger than 5MB.
Some ads are as large as 30 MBs.”
“…average number of network requests and tracking scripts
per ad was 56:
3.7x greater than the maximum suggested by the IAB.”
“…one third (32%) of the ads were overly processor-
intensive.
The study also found it common for processor-intensive ads,
often video ads, to consume more than 3 seconds of CPU
time to render a single ad within the user’s browser.”
4% of video ads were in Flash format and 19% of in-banner
video ads were auto-play.
https://www.adlightning.com/ad-quality-report
And we wonder why
people use adblockers?
https://www.iab.com/newadportfolio/
Advertisers are trying to improve quality
Performance APIs can help to build a picture (within limits)
Resource Timing
• What was requested and when, how long did it take to fetch, was it
cached?
LongTasks
• Were there any script elements that took longer that 50ms?
But there are still plenty of blind spots
Can some of the security features of the web help?
Content-Security-Policy
Sub-resource Integrity
offer some hope, but tried using them to help a client police ads
last year with limited sucess
https://www.flickr.com/photos/tedmurphy/2875827736/
TagManagers… A blessing or a curse?
https://www.flickr.com/photos/jdhancock/9004372146
Makes it really easy to add new tags
https://www.flickr.com/photos/lantzilla/29842854
Makes it easy to remove them too!
https://www.flickr.com/photos/alesimages/4215559895
Provides a shared source of truth and audit trail
https://www.flickr.com/photos/tim_ellis/3919090513
Help control loading order
https://www.flickr.com/photos/rusty_clark/32889333561
Ultimately it’s about finding the balance
https://www.flickr.com/photos/gilgamesh/183037111
VALUE
COST
EVERYTHING SHOULD
HAVE VALUE, BECAUSE
EVERYTHING HAS A COST
Tim Kadlec
Understand the COST
Establish the VALUEVALUE
COST
https://www.flickr.com/photos/basheertome/4762529213
Thanks!
@AndyDavies
www.slideshare.net/andydavies

More Related Content

What's hot

Souders WPO Web2.0Expo
Souders WPO Web2.0ExpoSouders WPO Web2.0Expo
Souders WPO Web2.0Expo
guest0b3d92d
 
Frontend SPOF
Frontend SPOFFrontend SPOF
Frontend SPOF
Patrick Meenan
 
GDD Japan 2009 - Designing OpenSocial Apps For Speed and Scale
GDD Japan 2009 - Designing OpenSocial Apps For Speed and ScaleGDD Japan 2009 - Designing OpenSocial Apps For Speed and Scale
GDD Japan 2009 - Designing OpenSocial Apps For Speed and Scale
Patrick Chanezon
 
Make JavaScript Faster
Make JavaScript FasterMake JavaScript Faster
Make JavaScript Faster
Steve Souders
 
Front End Development for Back End Developers - vJUG24 2017
Front End Development for Back End Developers - vJUG24 2017Front End Development for Back End Developers - vJUG24 2017
Front End Development for Back End Developers - vJUG24 2017
Matt Raible
 
Page Speed Insights: The Ballad of Improving Performance
Page Speed Insights: The Ballad of Improving PerformancePage Speed Insights: The Ballad of Improving Performance
Page Speed Insights: The Ballad of Improving Performance
James McNulty
 
Design+Performance
Design+PerformanceDesign+Performance
Design+Performance
Steve Souders
 
Predictability for the Web
Predictability for the WebPredictability for the Web
Predictability for the Web
Robert Nyman
 
Edge 2016 service workers and other front end techniques
Edge 2016 service workers and other front end techniquesEdge 2016 service workers and other front end techniques
Edge 2016 service workers and other front end techniques
akamaidevrel
 
JavaScript Libraries: The Big Picture
JavaScript Libraries: The Big PictureJavaScript Libraries: The Big Picture
JavaScript Libraries: The Big Picture
Simon Willison
 
Migrating existing monolith to serverless in 8 steps
Migrating existing monolith to serverless in 8 stepsMigrating existing monolith to serverless in 8 steps
Migrating existing monolith to serverless in 8 steps
Yan Cui
 
Going Node At Netflix
Going Node At NetflixGoing Node At Netflix
Going Node At Netflix
Ryan Anklam
 
Design+Performance Velocity 2015
Design+Performance Velocity 2015Design+Performance Velocity 2015
Design+Performance Velocity 2015
Steve Souders
 
Web Performance in the Age of HTTP2 - Topconf Tallinn 2016 - Holger Bartel
Web Performance in the Age of HTTP2 - Topconf Tallinn 2016 - Holger BartelWeb Performance in the Age of HTTP2 - Topconf Tallinn 2016 - Holger Bartel
Web Performance in the Age of HTTP2 - Topconf Tallinn 2016 - Holger Bartel
Holger Bartel
 
React & The Art of Managing Complexity
React &  The Art of Managing ComplexityReact &  The Art of Managing Complexity
React & The Art of Managing Complexity
Ryan Anklam
 
High Performance Web Components
High Performance Web ComponentsHigh Performance Web Components
High Performance Web Components
Steve Souders
 
High Performance Snippets
High Performance SnippetsHigh Performance Snippets
High Performance Snippets
Steve Souders
 
Browser Wars Episode 1: The Phantom Menace
Browser Wars Episode 1: The Phantom MenaceBrowser Wars Episode 1: The Phantom Menace
Browser Wars Episode 1: The Phantom Menace
Nicholas Zakas
 
Optimizely Developer Showcase
Optimizely Developer ShowcaseOptimizely Developer Showcase
Optimizely Developer Showcase
Optimizely
 
Spring Boot APIs and Angular Apps: Get Hip with JHipster! KCDC 2019
Spring Boot APIs and Angular Apps: Get Hip with JHipster! KCDC 2019Spring Boot APIs and Angular Apps: Get Hip with JHipster! KCDC 2019
Spring Boot APIs and Angular Apps: Get Hip with JHipster! KCDC 2019
Matt Raible
 

What's hot (20)

Souders WPO Web2.0Expo
Souders WPO Web2.0ExpoSouders WPO Web2.0Expo
Souders WPO Web2.0Expo
 
Frontend SPOF
Frontend SPOFFrontend SPOF
Frontend SPOF
 
GDD Japan 2009 - Designing OpenSocial Apps For Speed and Scale
GDD Japan 2009 - Designing OpenSocial Apps For Speed and ScaleGDD Japan 2009 - Designing OpenSocial Apps For Speed and Scale
GDD Japan 2009 - Designing OpenSocial Apps For Speed and Scale
 
Make JavaScript Faster
Make JavaScript FasterMake JavaScript Faster
Make JavaScript Faster
 
Front End Development for Back End Developers - vJUG24 2017
Front End Development for Back End Developers - vJUG24 2017Front End Development for Back End Developers - vJUG24 2017
Front End Development for Back End Developers - vJUG24 2017
 
Page Speed Insights: The Ballad of Improving Performance
Page Speed Insights: The Ballad of Improving PerformancePage Speed Insights: The Ballad of Improving Performance
Page Speed Insights: The Ballad of Improving Performance
 
Design+Performance
Design+PerformanceDesign+Performance
Design+Performance
 
Predictability for the Web
Predictability for the WebPredictability for the Web
Predictability for the Web
 
Edge 2016 service workers and other front end techniques
Edge 2016 service workers and other front end techniquesEdge 2016 service workers and other front end techniques
Edge 2016 service workers and other front end techniques
 
JavaScript Libraries: The Big Picture
JavaScript Libraries: The Big PictureJavaScript Libraries: The Big Picture
JavaScript Libraries: The Big Picture
 
Migrating existing monolith to serverless in 8 steps
Migrating existing monolith to serverless in 8 stepsMigrating existing monolith to serverless in 8 steps
Migrating existing monolith to serverless in 8 steps
 
Going Node At Netflix
Going Node At NetflixGoing Node At Netflix
Going Node At Netflix
 
Design+Performance Velocity 2015
Design+Performance Velocity 2015Design+Performance Velocity 2015
Design+Performance Velocity 2015
 
Web Performance in the Age of HTTP2 - Topconf Tallinn 2016 - Holger Bartel
Web Performance in the Age of HTTP2 - Topconf Tallinn 2016 - Holger BartelWeb Performance in the Age of HTTP2 - Topconf Tallinn 2016 - Holger Bartel
Web Performance in the Age of HTTP2 - Topconf Tallinn 2016 - Holger Bartel
 
React & The Art of Managing Complexity
React &  The Art of Managing ComplexityReact &  The Art of Managing Complexity
React & The Art of Managing Complexity
 
High Performance Web Components
High Performance Web ComponentsHigh Performance Web Components
High Performance Web Components
 
High Performance Snippets
High Performance SnippetsHigh Performance Snippets
High Performance Snippets
 
Browser Wars Episode 1: The Phantom Menace
Browser Wars Episode 1: The Phantom MenaceBrowser Wars Episode 1: The Phantom Menace
Browser Wars Episode 1: The Phantom Menace
 
Optimizely Developer Showcase
Optimizely Developer ShowcaseOptimizely Developer Showcase
Optimizely Developer Showcase
 
Spring Boot APIs and Angular Apps: Get Hip with JHipster! KCDC 2019
Spring Boot APIs and Angular Apps: Get Hip with JHipster! KCDC 2019Spring Boot APIs and Angular Apps: Get Hip with JHipster! KCDC 2019
Spring Boot APIs and Angular Apps: Get Hip with JHipster! KCDC 2019
 

Similar to AB Testing, Ads and other 3rd party tags - London WebPerf - March 2018

Build and Host Real-world Machine Learning Services from Scratch @ pycontw2019
Build and Host Real-world Machine Learning Services from Scratch @ pycontw2019 Build and Host Real-world Machine Learning Services from Scratch @ pycontw2019
Build and Host Real-world Machine Learning Services from Scratch @ pycontw2019
Chun-Yu Tseng
 
Camille chaudet measure camp-tagguing_mobile_apps_june15_v1.0
Camille chaudet   measure camp-tagguing_mobile_apps_june15_v1.0 Camille chaudet   measure camp-tagguing_mobile_apps_june15_v1.0
Camille chaudet measure camp-tagguing_mobile_apps_june15_v1.0
measurecampparis
 
Key projects Data Science and Engineering
Key projects Data Science and EngineeringKey projects Data Science and Engineering
Key projects Data Science and Engineering
Vijayananda Mohire
 
Key projects Data Science and Engineering
Key projects Data Science and EngineeringKey projects Data Science and Engineering
Key projects Data Science and Engineering
Vijayananda Mohire
 
QA Fes 2016. Jacek Okrojek. Website performance from user perspective
QA Fes 2016. Jacek Okrojek. Website performance from user perspectiveQA Fes 2016. Jacek Okrojek. Website performance from user perspective
QA Fes 2016. Jacek Okrojek. Website performance from user perspective
QAFest
 
Why and How SmartNews uses SaaS?
Why and How SmartNews uses SaaS?Why and How SmartNews uses SaaS?
Why and How SmartNews uses SaaS?
Takumi Sakamoto
 
Do we need a bigger dev data culture
Do we need a bigger dev data cultureDo we need a bigger dev data culture
Do we need a bigger dev data culture
Simon Dittlmann
 
Data Science in the Elastic Stack
Data Science in the Elastic StackData Science in the Elastic Stack
Data Science in the Elastic Stack
Rochelle Sonnenberg
 
MeasureCamp IX (London) - 10 JavaScript Concepts for web analysts
MeasureCamp IX (London) - 10 JavaScript Concepts for web analystsMeasureCamp IX (London) - 10 JavaScript Concepts for web analysts
MeasureCamp IX (London) - 10 JavaScript Concepts for web analysts
Simo Ahava
 
Performance Engineering - how to start!
Performance Engineering - how to start!Performance Engineering - how to start!
Performance Engineering - how to start!
Yoav Weiss
 
Gluecon 2017 - GoMake | Flying Dreams: Real-Time Communication from the Edge ...
Gluecon 2017 - GoMake | Flying Dreams: Real-Time Communication from the Edge ...Gluecon 2017 - GoMake | Flying Dreams: Real-Time Communication from the Edge ...
Gluecon 2017 - GoMake | Flying Dreams: Real-Time Communication from the Edge ...
Jonathan Barton
 
Industry Keynote at Large Scale Testing Workshop 2015
Industry Keynote at Large Scale Testing Workshop 2015Industry Keynote at Large Scale Testing Workshop 2015
Industry Keynote at Large Scale Testing Workshop 2015
Wolfgang Gottesheim
 
IDTaskModeTask NameDurationStartFinishAug 20.docx
IDTaskModeTask NameDurationStartFinishAug 20.docxIDTaskModeTask NameDurationStartFinishAug 20.docx
IDTaskModeTask NameDurationStartFinishAug 20.docx
wilcockiris
 
Mobile User Experience: Auto Drive through Performance Metrics
Mobile User Experience:Auto Drive through Performance MetricsMobile User Experience:Auto Drive through Performance Metrics
Mobile User Experience: Auto Drive through Performance Metrics
Andreas Grabner
 
Is your mobile app up to speed softwaresymposium
Is your mobile app up to speed softwaresymposiumIs your mobile app up to speed softwaresymposium
Is your mobile app up to speed softwaresymposium
Doug Sillars
 
Exploring the Google Analytics API
Exploring the Google Analytics APIExploring the Google Analytics API
Exploring the Google Analytics API
Vanessa Sabino
 
Bootiful Development with Spring Boot and Vue - RWX 2018
Bootiful Development with Spring Boot and Vue - RWX 2018Bootiful Development with Spring Boot and Vue - RWX 2018
Bootiful Development with Spring Boot and Vue - RWX 2018
Matt Raible
 
Software Engineering for Startups (University of St Andrews, 2013)
Software Engineering for Startups (University of St Andrews, 2013)Software Engineering for Startups (University of St Andrews, 2013)
Software Engineering for Startups (University of St Andrews, 2013)
RightScale
 
Using Modern Browser APIs to Improve the Performance of Your Web Applications
Using Modern Browser APIs to Improve the Performance of Your Web ApplicationsUsing Modern Browser APIs to Improve the Performance of Your Web Applications
Using Modern Browser APIs to Improve the Performance of Your Web Applications
Nicholas Jansma
 
03 integrate webapisignalr
03 integrate webapisignalr03 integrate webapisignalr
03 integrate webapisignalr
Erhwen Kuo
 

Similar to AB Testing, Ads and other 3rd party tags - London WebPerf - March 2018 (20)

Build and Host Real-world Machine Learning Services from Scratch @ pycontw2019
Build and Host Real-world Machine Learning Services from Scratch @ pycontw2019 Build and Host Real-world Machine Learning Services from Scratch @ pycontw2019
Build and Host Real-world Machine Learning Services from Scratch @ pycontw2019
 
Camille chaudet measure camp-tagguing_mobile_apps_june15_v1.0
Camille chaudet   measure camp-tagguing_mobile_apps_june15_v1.0 Camille chaudet   measure camp-tagguing_mobile_apps_june15_v1.0
Camille chaudet measure camp-tagguing_mobile_apps_june15_v1.0
 
Key projects Data Science and Engineering
Key projects Data Science and EngineeringKey projects Data Science and Engineering
Key projects Data Science and Engineering
 
Key projects Data Science and Engineering
Key projects Data Science and EngineeringKey projects Data Science and Engineering
Key projects Data Science and Engineering
 
QA Fes 2016. Jacek Okrojek. Website performance from user perspective
QA Fes 2016. Jacek Okrojek. Website performance from user perspectiveQA Fes 2016. Jacek Okrojek. Website performance from user perspective
QA Fes 2016. Jacek Okrojek. Website performance from user perspective
 
Why and How SmartNews uses SaaS?
Why and How SmartNews uses SaaS?Why and How SmartNews uses SaaS?
Why and How SmartNews uses SaaS?
 
Do we need a bigger dev data culture
Do we need a bigger dev data cultureDo we need a bigger dev data culture
Do we need a bigger dev data culture
 
Data Science in the Elastic Stack
Data Science in the Elastic StackData Science in the Elastic Stack
Data Science in the Elastic Stack
 
MeasureCamp IX (London) - 10 JavaScript Concepts for web analysts
MeasureCamp IX (London) - 10 JavaScript Concepts for web analystsMeasureCamp IX (London) - 10 JavaScript Concepts for web analysts
MeasureCamp IX (London) - 10 JavaScript Concepts for web analysts
 
Performance Engineering - how to start!
Performance Engineering - how to start!Performance Engineering - how to start!
Performance Engineering - how to start!
 
Gluecon 2017 - GoMake | Flying Dreams: Real-Time Communication from the Edge ...
Gluecon 2017 - GoMake | Flying Dreams: Real-Time Communication from the Edge ...Gluecon 2017 - GoMake | Flying Dreams: Real-Time Communication from the Edge ...
Gluecon 2017 - GoMake | Flying Dreams: Real-Time Communication from the Edge ...
 
Industry Keynote at Large Scale Testing Workshop 2015
Industry Keynote at Large Scale Testing Workshop 2015Industry Keynote at Large Scale Testing Workshop 2015
Industry Keynote at Large Scale Testing Workshop 2015
 
IDTaskModeTask NameDurationStartFinishAug 20.docx
IDTaskModeTask NameDurationStartFinishAug 20.docxIDTaskModeTask NameDurationStartFinishAug 20.docx
IDTaskModeTask NameDurationStartFinishAug 20.docx
 
Mobile User Experience: Auto Drive through Performance Metrics
Mobile User Experience:Auto Drive through Performance MetricsMobile User Experience:Auto Drive through Performance Metrics
Mobile User Experience: Auto Drive through Performance Metrics
 
Is your mobile app up to speed softwaresymposium
Is your mobile app up to speed softwaresymposiumIs your mobile app up to speed softwaresymposium
Is your mobile app up to speed softwaresymposium
 
Exploring the Google Analytics API
Exploring the Google Analytics APIExploring the Google Analytics API
Exploring the Google Analytics API
 
Bootiful Development with Spring Boot and Vue - RWX 2018
Bootiful Development with Spring Boot and Vue - RWX 2018Bootiful Development with Spring Boot and Vue - RWX 2018
Bootiful Development with Spring Boot and Vue - RWX 2018
 
Software Engineering for Startups (University of St Andrews, 2013)
Software Engineering for Startups (University of St Andrews, 2013)Software Engineering for Startups (University of St Andrews, 2013)
Software Engineering for Startups (University of St Andrews, 2013)
 
Using Modern Browser APIs to Improve the Performance of Your Web Applications
Using Modern Browser APIs to Improve the Performance of Your Web ApplicationsUsing Modern Browser APIs to Improve the Performance of Your Web Applications
Using Modern Browser APIs to Improve the Performance of Your Web Applications
 
03 integrate webapisignalr
03 integrate webapisignalr03 integrate webapisignalr
03 integrate webapisignalr
 

More from Andy Davies

Inspecting iOS App Traffic with JavaScript - JSOxford - Jan 2018
Inspecting iOS App Traffic with JavaScript - JSOxford - Jan 2018Inspecting iOS App Traffic with JavaScript - JSOxford - Jan 2018
Inspecting iOS App Traffic with JavaScript - JSOxford - Jan 2018
Andy Davies
 
Selling Performance - Bristol WebPerf Meetup 2017-07-20
Selling Performance - Bristol WebPerf Meetup 2017-07-20Selling Performance - Bristol WebPerf Meetup 2017-07-20
Selling Performance - Bristol WebPerf Meetup 2017-07-20
Andy Davies
 
Speed: The 'Forgotten' Conversion Factor
Speed: The 'Forgotten' Conversion FactorSpeed: The 'Forgotten' Conversion Factor
Speed: The 'Forgotten' Conversion Factor
Andy Davies
 
Building an Appier Web - London Web Standards - Nov 2016
Building an Appier Web -  London Web Standards - Nov 2016Building an Appier Web -  London Web Standards - Nov 2016
Building an Appier Web - London Web Standards - Nov 2016
Andy Davies
 
Building an Appier Web - Velocity Amsterdam 2016
Building an Appier Web - Velocity Amsterdam 2016Building an Appier Web - Velocity Amsterdam 2016
Building an Appier Web - Velocity Amsterdam 2016
Andy Davies
 
The Case for HTTP/2 - GreeceJS - June 2016
The Case for HTTP/2 -  GreeceJS - June 2016The Case for HTTP/2 -  GreeceJS - June 2016
The Case for HTTP/2 - GreeceJS - June 2016
Andy Davies
 
Building an Appier Web - May 2016
Building an Appier Web - May 2016Building an Appier Web - May 2016
Building an Appier Web - May 2016
Andy Davies
 
The Fast, The Slow and The Unconverted - Emerce Conversion 2016
The Fast, The Slow and The Unconverted -  Emerce Conversion 2016The Fast, The Slow and The Unconverted -  Emerce Conversion 2016
The Fast, The Slow and The Unconverted - Emerce Conversion 2016
Andy Davies
 
The Case for HTTP/2 - Internetdagarna 2015 - Stockholm
The Case for HTTP/2  - Internetdagarna 2015 - StockholmThe Case for HTTP/2  - Internetdagarna 2015 - Stockholm
The Case for HTTP/2 - Internetdagarna 2015 - Stockholm
Andy Davies
 
Making Mobile Sites Faster
Making Mobile Sites FasterMaking Mobile Sites Faster
Making Mobile Sites Faster
Andy Davies
 
The Case for HTTP/2 - EpicFEL Sept 2015
The Case for HTTP/2 - EpicFEL Sept 2015The Case for HTTP/2 - EpicFEL Sept 2015
The Case for HTTP/2 - EpicFEL Sept 2015
Andy Davies
 
Speed matters, So why is your site so slow?
Speed matters, So why is your site so slow?Speed matters, So why is your site so slow?
Speed matters, So why is your site so slow?
Andy Davies
 
The Case for HTTP/2
The Case for HTTP/2The Case for HTTP/2
The Case for HTTP/2
Andy Davies
 
HTTP2 is Here!
HTTP2 is Here!HTTP2 is Here!
HTTP2 is Here!
Andy Davies
 
Speed Matters!
Speed Matters!Speed Matters!
Speed Matters!
Andy Davies
 
Speed is Essential for a Great Web Experience
Speed is Essential for a Great Web ExperienceSpeed is Essential for a Great Web Experience
Speed is Essential for a Great Web Experience
Andy Davies
 
The web is too slow
The web is too slow The web is too slow
The web is too slow
Andy Davies
 
Are Today’s Good Practices… Tomorrow’s Performance Anti-Patterns?
Are Today’s Good Practices… Tomorrow’s Performance Anti-Patterns?Are Today’s Good Practices… Tomorrow’s Performance Anti-Patterns?
Are Today’s Good Practices… Tomorrow’s Performance Anti-Patterns?
Andy Davies
 
Http/2 - What's it all about?
Http/2  - What's it all about?Http/2  - What's it all about?
Http/2 - What's it all about?
Andy Davies
 
What does the browser pre-loader do?
What does the browser pre-loader do?What does the browser pre-loader do?
What does the browser pre-loader do?
Andy Davies
 

More from Andy Davies (20)

Inspecting iOS App Traffic with JavaScript - JSOxford - Jan 2018
Inspecting iOS App Traffic with JavaScript - JSOxford - Jan 2018Inspecting iOS App Traffic with JavaScript - JSOxford - Jan 2018
Inspecting iOS App Traffic with JavaScript - JSOxford - Jan 2018
 
Selling Performance - Bristol WebPerf Meetup 2017-07-20
Selling Performance - Bristol WebPerf Meetup 2017-07-20Selling Performance - Bristol WebPerf Meetup 2017-07-20
Selling Performance - Bristol WebPerf Meetup 2017-07-20
 
Speed: The 'Forgotten' Conversion Factor
Speed: The 'Forgotten' Conversion FactorSpeed: The 'Forgotten' Conversion Factor
Speed: The 'Forgotten' Conversion Factor
 
Building an Appier Web - London Web Standards - Nov 2016
Building an Appier Web -  London Web Standards - Nov 2016Building an Appier Web -  London Web Standards - Nov 2016
Building an Appier Web - London Web Standards - Nov 2016
 
Building an Appier Web - Velocity Amsterdam 2016
Building an Appier Web - Velocity Amsterdam 2016Building an Appier Web - Velocity Amsterdam 2016
Building an Appier Web - Velocity Amsterdam 2016
 
The Case for HTTP/2 - GreeceJS - June 2016
The Case for HTTP/2 -  GreeceJS - June 2016The Case for HTTP/2 -  GreeceJS - June 2016
The Case for HTTP/2 - GreeceJS - June 2016
 
Building an Appier Web - May 2016
Building an Appier Web - May 2016Building an Appier Web - May 2016
Building an Appier Web - May 2016
 
The Fast, The Slow and The Unconverted - Emerce Conversion 2016
The Fast, The Slow and The Unconverted -  Emerce Conversion 2016The Fast, The Slow and The Unconverted -  Emerce Conversion 2016
The Fast, The Slow and The Unconverted - Emerce Conversion 2016
 
The Case for HTTP/2 - Internetdagarna 2015 - Stockholm
The Case for HTTP/2  - Internetdagarna 2015 - StockholmThe Case for HTTP/2  - Internetdagarna 2015 - Stockholm
The Case for HTTP/2 - Internetdagarna 2015 - Stockholm
 
Making Mobile Sites Faster
Making Mobile Sites FasterMaking Mobile Sites Faster
Making Mobile Sites Faster
 
The Case for HTTP/2 - EpicFEL Sept 2015
The Case for HTTP/2 - EpicFEL Sept 2015The Case for HTTP/2 - EpicFEL Sept 2015
The Case for HTTP/2 - EpicFEL Sept 2015
 
Speed matters, So why is your site so slow?
Speed matters, So why is your site so slow?Speed matters, So why is your site so slow?
Speed matters, So why is your site so slow?
 
The Case for HTTP/2
The Case for HTTP/2The Case for HTTP/2
The Case for HTTP/2
 
HTTP2 is Here!
HTTP2 is Here!HTTP2 is Here!
HTTP2 is Here!
 
Speed Matters!
Speed Matters!Speed Matters!
Speed Matters!
 
Speed is Essential for a Great Web Experience
Speed is Essential for a Great Web ExperienceSpeed is Essential for a Great Web Experience
Speed is Essential for a Great Web Experience
 
The web is too slow
The web is too slow The web is too slow
The web is too slow
 
Are Today’s Good Practices… Tomorrow’s Performance Anti-Patterns?
Are Today’s Good Practices… Tomorrow’s Performance Anti-Patterns?Are Today’s Good Practices… Tomorrow’s Performance Anti-Patterns?
Are Today’s Good Practices… Tomorrow’s Performance Anti-Patterns?
 
Http/2 - What's it all about?
Http/2  - What's it all about?Http/2  - What's it all about?
Http/2 - What's it all about?
 
What does the browser pre-loader do?
What does the browser pre-loader do?What does the browser pre-loader do?
What does the browser pre-loader do?
 

Recently uploaded

Nashik Call Girls 💯Call Us 🔝 7374876321 🔝 💃 Independent Female Escort Service
Nashik Call Girls 💯Call Us 🔝 7374876321 🔝 💃 Independent Female Escort ServiceNashik Call Girls 💯Call Us 🔝 7374876321 🔝 💃 Independent Female Escort Service
Nashik Call Girls 💯Call Us 🔝 7374876321 🔝 💃 Independent Female Escort Service
sabanasarkari36
 
Call Girls Chennai 📲 8824825030 Chennai Escorts (Tamil Girls) service 24X7
Call Girls Chennai 📲 8824825030 Chennai Escorts (Tamil Girls) service 24X7Call Girls Chennai 📲 8824825030 Chennai Escorts (Tamil Girls) service 24X7
Call Girls Chennai 📲 8824825030 Chennai Escorts (Tamil Girls) service 24X7
vrvipin164
 
Powai Call Girls ☑ +91-9920725232 ☑ Available Hot Girls Aunty Book Now
Powai Call Girls ☑ +91-9920725232 ☑ Available Hot Girls Aunty Book NowPowai Call Girls ☑ +91-9920725232 ☑ Available Hot Girls Aunty Book Now
Powai Call Girls ☑ +91-9920725232 ☑ Available Hot Girls Aunty Book Now
reddyaditi530
 
一比一原版圣托马斯大学毕业证(UST毕业证书)学历如何办理
一比一原版圣托马斯大学毕业证(UST毕业证书)学历如何办理一比一原版圣托马斯大学毕业证(UST毕业证书)学历如何办理
一比一原版圣托马斯大学毕业证(UST毕业证书)学历如何办理
uqbyfm
 
GDE FORUM | Accessibility Testing with Chrome DevTools
GDE FORUM | Accessibility Testing with Chrome DevToolsGDE FORUM | Accessibility Testing with Chrome DevTools
GDE FORUM | Accessibility Testing with Chrome DevTools
Josefine Schaefer
 
🔥Chennai Call Girls 🫱 8824825030 🫲 High Class Chennai Escorts Service Available
🔥Chennai Call Girls 🫱 8824825030 🫲 High Class Chennai Escorts Service Available🔥Chennai Call Girls 🫱 8824825030 🫲 High Class Chennai Escorts Service Available
🔥Chennai Call Girls 🫱 8824825030 🫲 High Class Chennai Escorts Service Available
manalishivani8
 
Call Girls In Mahipalpur 🔥 +91-9711199012🔥High Profile Call Girl Mahipalpur
Call Girls In Mahipalpur 🔥 +91-9711199012🔥High Profile Call Girl MahipalpurCall Girls In Mahipalpur 🔥 +91-9711199012🔥High Profile Call Girl Mahipalpur
Call Girls In Mahipalpur 🔥 +91-9711199012🔥High Profile Call Girl Mahipalpur
alisha panday
 
❣Ramp Model Call Girls Chennai 💯Call Us 🔝 7737669865 🔝💃Independent Chennai Es...
❣Ramp Model Call Girls Chennai 💯Call Us 🔝 7737669865 🔝💃Independent Chennai Es...❣Ramp Model Call Girls Chennai 💯Call Us 🔝 7737669865 🔝💃Independent Chennai Es...
❣Ramp Model Call Girls Chennai 💯Call Us 🔝 7737669865 🔝💃Independent Chennai Es...
tiktokhotymodel
 
Royal-Class Call Girls Goregaon🌹9820252231🌹369+ call girls @₹6K-18K/full nigh...
Royal-Class Call Girls Goregaon🌹9820252231🌹369+ call girls @₹6K-18K/full nigh...Royal-Class Call Girls Goregaon🌹9820252231🌹369+ call girls @₹6K-18K/full nigh...
Royal-Class Call Girls Goregaon🌹9820252231🌹369+ call girls @₹6K-18K/full nigh...
Ak47
 
Call Girls In Chennai 💯Call Us 🔝 8824825030 🔝Independent Chennai Escorts Serv...
Call Girls In Chennai 💯Call Us 🔝 8824825030 🔝Independent Chennai Escorts Serv...Call Girls In Chennai 💯Call Us 🔝 8824825030 🔝Independent Chennai Escorts Serv...
Call Girls In Chennai 💯Call Us 🔝 8824825030 🔝Independent Chennai Escorts Serv...
payalgupta2u
 
Delhi:)) Call Girls In Nehru Place ((9711199012)) Female Escorts In Delhi
Delhi:)) Call Girls In Nehru Place ((9711199012)) Female Escorts In DelhiDelhi:)) Call Girls In Nehru Place ((9711199012)) Female Escorts In Delhi
Delhi:)) Call Girls In Nehru Place ((9711199012)) Female Escorts In Delhi
kajal$L14
 
Call Girls Service Ahmedabad 🔥 7737669865 🔥 Available Nearby Escort Is Live R...
Call Girls Service Ahmedabad 🔥 7737669865 🔥 Available Nearby Escort Is Live R...Call Girls Service Ahmedabad 🔥 7737669865 🔥 Available Nearby Escort Is Live R...
Call Girls Service Ahmedabad 🔥 7737669865 🔥 Available Nearby Escort Is Live R...
annu
 
Call Girls Jabalpur 7742996321 Jabalpur Escorts Service
Call Girls Jabalpur 7742996321 Jabalpur Escorts ServiceCall Girls Jabalpur 7742996321 Jabalpur Escorts Service
Call Girls Jabalpur 7742996321 Jabalpur Escorts Service
DipikaKaurr
 
'Secure and Sustainable Internet Infrastructure for Emerging Technologies'
'Secure and Sustainable Internet Infrastructure for Emerging Technologies''Secure and Sustainable Internet Infrastructure for Emerging Technologies'
'Secure and Sustainable Internet Infrastructure for Emerging Technologies'
APNIC
 
🔥Call Girls Gurgaon 💯Call Us 🔝 9873777170 🔝💃Top Class Call Girl Service Avail...
🔥Call Girls Gurgaon 💯Call Us 🔝 9873777170 🔝💃Top Class Call Girl Service Avail...🔥Call Girls Gurgaon 💯Call Us 🔝 9873777170 🔝💃Top Class Call Girl Service Avail...
🔥Call Girls Gurgaon 💯Call Us 🔝 9873777170 🔝💃Top Class Call Girl Service Avail...
aneeta$L14
 
🚺Chennai Escorts High Class Call Girls Chennai 💯Call Us 🔝 8824825030 🔝💃Top Cl...
🚺Chennai Escorts High Class Call Girls Chennai 💯Call Us 🔝 8824825030 🔝💃Top Cl...🚺Chennai Escorts High Class Call Girls Chennai 💯Call Us 🔝 8824825030 🔝💃Top Cl...
🚺Chennai Escorts High Class Call Girls Chennai 💯Call Us 🔝 8824825030 🔝💃Top Cl...
Escorts service
 
Ethically Aligned Design (Overview - Version 2)
Ethically Aligned Design (Overview - Version 2)Ethically Aligned Design (Overview - Version 2)
Ethically Aligned Design (Overview - Version 2)
prb404
 
Verified Call Girls Chennai 💯Call Us 🔝 8824825030 🔝Independent Chennai Escort...
Verified Call Girls Chennai 💯Call Us 🔝 8824825030 🔝Independent Chennai Escort...Verified Call Girls Chennai 💯Call Us 🔝 8824825030 🔝Independent Chennai Escort...
Verified Call Girls Chennai 💯Call Us 🔝 8824825030 🔝Independent Chennai Escort...
gv636925
 
High Profile Call Girls Bangalore ✔ 9352988975 ✔ Hi I Am Divya Vip Call Girl ...
High Profile Call Girls Bangalore ✔ 9352988975 ✔ Hi I Am Divya Vip Call Girl ...High Profile Call Girls Bangalore ✔ 9352988975 ✔ Hi I Am Divya Vip Call Girl ...
High Profile Call Girls Bangalore ✔ 9352988975 ✔ Hi I Am Divya Vip Call Girl ...
hina sharma$A17
 
VVIP Call Girls Kolkata💯Call Us 🔝 7374876321 🔝 💃 Independent Female Escort Se...
VVIP Call Girls Kolkata💯Call Us 🔝 7374876321 🔝 💃 Independent Female Escort Se...VVIP Call Girls Kolkata💯Call Us 🔝 7374876321 🔝 💃 Independent Female Escort Se...
VVIP Call Girls Kolkata💯Call Us 🔝 7374876321 🔝 💃 Independent Female Escort Se...
graggunno
 

Recently uploaded (20)

Nashik Call Girls 💯Call Us 🔝 7374876321 🔝 💃 Independent Female Escort Service
Nashik Call Girls 💯Call Us 🔝 7374876321 🔝 💃 Independent Female Escort ServiceNashik Call Girls 💯Call Us 🔝 7374876321 🔝 💃 Independent Female Escort Service
Nashik Call Girls 💯Call Us 🔝 7374876321 🔝 💃 Independent Female Escort Service
 
Call Girls Chennai 📲 8824825030 Chennai Escorts (Tamil Girls) service 24X7
Call Girls Chennai 📲 8824825030 Chennai Escorts (Tamil Girls) service 24X7Call Girls Chennai 📲 8824825030 Chennai Escorts (Tamil Girls) service 24X7
Call Girls Chennai 📲 8824825030 Chennai Escorts (Tamil Girls) service 24X7
 
Powai Call Girls ☑ +91-9920725232 ☑ Available Hot Girls Aunty Book Now
Powai Call Girls ☑ +91-9920725232 ☑ Available Hot Girls Aunty Book NowPowai Call Girls ☑ +91-9920725232 ☑ Available Hot Girls Aunty Book Now
Powai Call Girls ☑ +91-9920725232 ☑ Available Hot Girls Aunty Book Now
 
一比一原版圣托马斯大学毕业证(UST毕业证书)学历如何办理
一比一原版圣托马斯大学毕业证(UST毕业证书)学历如何办理一比一原版圣托马斯大学毕业证(UST毕业证书)学历如何办理
一比一原版圣托马斯大学毕业证(UST毕业证书)学历如何办理
 
GDE FORUM | Accessibility Testing with Chrome DevTools
GDE FORUM | Accessibility Testing with Chrome DevToolsGDE FORUM | Accessibility Testing with Chrome DevTools
GDE FORUM | Accessibility Testing with Chrome DevTools
 
🔥Chennai Call Girls 🫱 8824825030 🫲 High Class Chennai Escorts Service Available
🔥Chennai Call Girls 🫱 8824825030 🫲 High Class Chennai Escorts Service Available🔥Chennai Call Girls 🫱 8824825030 🫲 High Class Chennai Escorts Service Available
🔥Chennai Call Girls 🫱 8824825030 🫲 High Class Chennai Escorts Service Available
 
Call Girls In Mahipalpur 🔥 +91-9711199012🔥High Profile Call Girl Mahipalpur
Call Girls In Mahipalpur 🔥 +91-9711199012🔥High Profile Call Girl MahipalpurCall Girls In Mahipalpur 🔥 +91-9711199012🔥High Profile Call Girl Mahipalpur
Call Girls In Mahipalpur 🔥 +91-9711199012🔥High Profile Call Girl Mahipalpur
 
❣Ramp Model Call Girls Chennai 💯Call Us 🔝 7737669865 🔝💃Independent Chennai Es...
❣Ramp Model Call Girls Chennai 💯Call Us 🔝 7737669865 🔝💃Independent Chennai Es...❣Ramp Model Call Girls Chennai 💯Call Us 🔝 7737669865 🔝💃Independent Chennai Es...
❣Ramp Model Call Girls Chennai 💯Call Us 🔝 7737669865 🔝💃Independent Chennai Es...
 
Royal-Class Call Girls Goregaon🌹9820252231🌹369+ call girls @₹6K-18K/full nigh...
Royal-Class Call Girls Goregaon🌹9820252231🌹369+ call girls @₹6K-18K/full nigh...Royal-Class Call Girls Goregaon🌹9820252231🌹369+ call girls @₹6K-18K/full nigh...
Royal-Class Call Girls Goregaon🌹9820252231🌹369+ call girls @₹6K-18K/full nigh...
 
Call Girls In Chennai 💯Call Us 🔝 8824825030 🔝Independent Chennai Escorts Serv...
Call Girls In Chennai 💯Call Us 🔝 8824825030 🔝Independent Chennai Escorts Serv...Call Girls In Chennai 💯Call Us 🔝 8824825030 🔝Independent Chennai Escorts Serv...
Call Girls In Chennai 💯Call Us 🔝 8824825030 🔝Independent Chennai Escorts Serv...
 
Delhi:)) Call Girls In Nehru Place ((9711199012)) Female Escorts In Delhi
Delhi:)) Call Girls In Nehru Place ((9711199012)) Female Escorts In DelhiDelhi:)) Call Girls In Nehru Place ((9711199012)) Female Escorts In Delhi
Delhi:)) Call Girls In Nehru Place ((9711199012)) Female Escorts In Delhi
 
Call Girls Service Ahmedabad 🔥 7737669865 🔥 Available Nearby Escort Is Live R...
Call Girls Service Ahmedabad 🔥 7737669865 🔥 Available Nearby Escort Is Live R...Call Girls Service Ahmedabad 🔥 7737669865 🔥 Available Nearby Escort Is Live R...
Call Girls Service Ahmedabad 🔥 7737669865 🔥 Available Nearby Escort Is Live R...
 
Call Girls Jabalpur 7742996321 Jabalpur Escorts Service
Call Girls Jabalpur 7742996321 Jabalpur Escorts ServiceCall Girls Jabalpur 7742996321 Jabalpur Escorts Service
Call Girls Jabalpur 7742996321 Jabalpur Escorts Service
 
'Secure and Sustainable Internet Infrastructure for Emerging Technologies'
'Secure and Sustainable Internet Infrastructure for Emerging Technologies''Secure and Sustainable Internet Infrastructure for Emerging Technologies'
'Secure and Sustainable Internet Infrastructure for Emerging Technologies'
 
🔥Call Girls Gurgaon 💯Call Us 🔝 9873777170 🔝💃Top Class Call Girl Service Avail...
🔥Call Girls Gurgaon 💯Call Us 🔝 9873777170 🔝💃Top Class Call Girl Service Avail...🔥Call Girls Gurgaon 💯Call Us 🔝 9873777170 🔝💃Top Class Call Girl Service Avail...
🔥Call Girls Gurgaon 💯Call Us 🔝 9873777170 🔝💃Top Class Call Girl Service Avail...
 
🚺Chennai Escorts High Class Call Girls Chennai 💯Call Us 🔝 8824825030 🔝💃Top Cl...
🚺Chennai Escorts High Class Call Girls Chennai 💯Call Us 🔝 8824825030 🔝💃Top Cl...🚺Chennai Escorts High Class Call Girls Chennai 💯Call Us 🔝 8824825030 🔝💃Top Cl...
🚺Chennai Escorts High Class Call Girls Chennai 💯Call Us 🔝 8824825030 🔝💃Top Cl...
 
Ethically Aligned Design (Overview - Version 2)
Ethically Aligned Design (Overview - Version 2)Ethically Aligned Design (Overview - Version 2)
Ethically Aligned Design (Overview - Version 2)
 
Verified Call Girls Chennai 💯Call Us 🔝 8824825030 🔝Independent Chennai Escort...
Verified Call Girls Chennai 💯Call Us 🔝 8824825030 🔝Independent Chennai Escort...Verified Call Girls Chennai 💯Call Us 🔝 8824825030 🔝Independent Chennai Escort...
Verified Call Girls Chennai 💯Call Us 🔝 8824825030 🔝Independent Chennai Escort...
 
High Profile Call Girls Bangalore ✔ 9352988975 ✔ Hi I Am Divya Vip Call Girl ...
High Profile Call Girls Bangalore ✔ 9352988975 ✔ Hi I Am Divya Vip Call Girl ...High Profile Call Girls Bangalore ✔ 9352988975 ✔ Hi I Am Divya Vip Call Girl ...
High Profile Call Girls Bangalore ✔ 9352988975 ✔ Hi I Am Divya Vip Call Girl ...
 
VVIP Call Girls Kolkata💯Call Us 🔝 7374876321 🔝 💃 Independent Female Escort Se...
VVIP Call Girls Kolkata💯Call Us 🔝 7374876321 🔝 💃 Independent Female Escort Se...VVIP Call Girls Kolkata💯Call Us 🔝 7374876321 🔝 💃 Independent Female Escort Se...
VVIP Call Girls Kolkata💯Call Us 🔝 7374876321 🔝 💃 Independent Female Escort Se...
 

AB Testing, Ads and other 3rd party tags - London WebPerf - March 2018