SlideShare ist ein Scribd-Unternehmen logo
1 von 71
Downloaden Sie, um offline zu lesen
Font Performance
Performance Architect @Etsy
Paul Calvano
@paulcalvano
Font Performance
Performance Architect @Etsy
Paul Calvano
@paulcalvano
Font Performance
Performance Architect @Etsy
Paul Calvano
@paulcalvano
Performance Architect @Etsy
Paul Calvano
@paulcalvano
5
6
7
8
HTML (248 bytes) CSS (2 KB) Font (18 KB)
9
This entire
game is
enclosed in a
258 KB font
https://www.coderelay.io/fontemon.html
Over 20% of
websites use more
font bytes
… to style text!
11
12
70% of font downloads occur before FCP
85% occur before LCP
13
Request Priorities in Chrome
● Tight Mode:
○ Initial loading phase
○ Constrains loading lower priority
resources until scripts in <head> are
processed
● Document, CSS and Fonts have the highest
priority
● Requests at the same priority level are
prioritized at the order they are discovered.
https://docs.google.com/document/d/1bCDuq9H1ih9
iNjgzyAL0gpwNFiEP4TZS-YLRp_RuMlc/edit
https://httparchive.org
15
How the HTTP Archive Works
● httparchive.org
○ Monthly trends
○ Discussion forum
○ Web Almanac
Chrome UX Report
~18.5 million URLs
16
https://almanac.httparchive.org
17
https://har.fyi
18
https://xkcd.com/356/
19
https://webpagetest.httparchive.org/result/
240214_MxE2_30NUA/
20
https://www.speedcurve.com/blog/performance-budgets/
21
Perf Budget graphs should
look boring !
22
23
Additional Font: 134 KB
Latin Subset: 60 KB
Update from font vendor: 27 KB
24
https://tools.paulcalvano.com/wpt-font-analysis/
25
26
Glyph Occurrences
Codepoint
27
28
Font Loading Strategies for WebPerf
29
More on Font Performance techniques:
https://www.zachleat.com/web/fonts/
https://web.dev/articles/optimize-webfont-loading
https://web.dev/articles/font-best-practices
● Reduce Font weight
○ WOFF2 = Better compression
○ Smaller fonts
○ Subset fonts
○ Compress OTF and TTF fonts
● Use less fonts.
○ Avoid using too many fonts
○ Avoid unused preloaded fonts
● Cache fonts on CDN and Browser
○ Ensure TTLs are high
● Avoid Third Party Fonts
○ Preconnect if you must
● Load Important fonts early
○ Preload fonts that are required for rendering
● Prioritize readable text
○ Font-Display:swap
○ Avoid preloading if you don’t need to
Font Weight
30
WOFF2 is supported on all modern browsers
31
… and provides better compression, resulting in smaller font sizes
32
83%
WOFF2 Usage
11%
WOFF Usage
● WOFF2 offers better compression compared to WOFF.
● TTF fonts are often used for icons but need to be compressed.
● OTF and EOT fonts also require compression, but are rarely used anymore.
Font Compression
33
243 KB
● WOFF and WOFF2 are compressed
formats. Use them when you can.
● TTF fonts are not compressed. They need
to be compressed with Gzip or Brotli.
● This site loaded 730 KB of fonts
uncompressed. Gzip would have reduced it
by 43%.
https://tools.paulcalvano.com/compression-tester
34
Font Subsetting Opportunities
35
36
pyftsubset SourceSansPro-Regular.ttf 
--flavor=woff2 
--unicodes="U+0020-007E,U+00A9,U+00AE" 
--output-file=SourceSansPro-Regular-subset.woff2
37
Source: 1972 glyphs, 242 KB
Output: 132 glyphs, 8 KB
38
39
40
41
pyftsubset KiaSignatureRegular.woff 
--flavor=woff2 
--unicodes="U+0020-
007E,U+00A9,U+00AE,U+2122,U+201C-021D,U+D55D,U+ADC0"

--output-file=KiaSignatureRegular_subset.woff2
42
Source: 15190 glyphs, 966 KB
Output: 104 glyphs, 10 KB
● Subsetting each font file to use latin
character, plus a few extra unicode
characters reduces the font from 966 KB to
10KB
● Especially when supporting languages with
larger character sets, it’s better to have a few
regional font files instead of one very large
font file.
43
https://fontdrop.info/
Underutilized Fonts
44
45
46
https://developer.chrome.com/docs/devtools/css-overview
47
48
75 KB fa-brands-400 fonts.
Contains 459 glyphs
Used to style 5 characters
49
Should be compressed or
serve as woff2
459 glyphs, 5 used
1855 glyphs, 2 used
Unused Preloads
Later in page load:
● UltimateTeam-Icons24.woff: 32KB, 223 glyphs, 1 used
● CruffSans-Bold.ttf: 142 KB, not compressed, 879 glyphs, 1 used
● … and more!
Preloading Fonts
50
Preloading Fonts
51
Small number of
font files
Moderate font
sizes
● Numerous font requests
● Large font files
● Unnecessary font files (ie, unused)
● Font-Display:Swap
52
● This site loads 4 Roboto Fonts
(Light, Regular, Medium and
Bold)
● They are preloading WOFF2,
WOFF and TTF formats.
● This results in long delays in page
rendering due to excessive font
downloads.
● Eliminating WOFF and TTF
preloads would help
53
● The TTF on this site is
compressed, but
contains 16,193 glyphs
● 14 WOFF2 fonts are
preloaded
● All of them have more
glyphs than needed
● Some of these fonts
(especially the 700
weight ones) are used
to style a few chars
● Font-Display:swap is
used, so preloading
the fonts is wasteful
54
55
56
57
Third Party Fonts
58
59
https://www.tunetheweb.com/blog/should-you-self-host-google-fonts/
60
61
https://www.tunetheweb.com/blog/should-you-self-host-google-fonts/
62
Subsetting Google Fonts
https://developers.google.com/fonts/docs/getting_started#specifying_script_subsets
https://fonts.googleapis.com/css?family=Roboto
https://fonts.googleapis.com/css?family=Roboto&display=swap
https://fonts.googleapis.com/css?family=Roboto&display=swap&subset=cyrillic
https://fonts.googleapis.com/css?family=Roboto&display=swap&text=hello
Third Party Fonts
63
64
https://product.webpagetest.org/experiments
Caching
65
66
● Cache as much as possible
● Cache as long as possible
● Cache as close to your users as possible.
3 Rules for Caching Content
Caching
67
cache-control: max-age=31536000
cache-control: max-age=31536000, immutable
cache-control: no-store
cache-control: max-age=60
cache-control: max-age=3600, must-revalidate
68
69
● Font assets rarely
change, and when
they do you can easily
change their URL.
● Long TTLs should be
configured for the
browser and CDN.
● Avoid no-cache and
must-revalidate
directives, since that
will result in a round
trip to validate the
cache entry
70
● WebPageTest
○ https://webpagetest.org
○ https://product.webpagetest.org/experiments
● Speedcurve
○ https://speedcurve.com
● Font Analyzer
○ https://tools.paulcalvano.com/wpt-font-analysis/
● Compression Tester
○ https://tools.paulcalvano.com/compression-tester
● Font Drop
○ https://fontdrop.info
● Font Subset Tools
○ https://fonttools.readthedocs.io/en/latest/subset/
○ https://github.com/zachleat/glyphhanger
● DevTools - CSS Overview
○ https://developer.chrome.com/docs/devtools/css-overview
Questions?
Performance Architect @Etsy
Paul Calvano
@paulcalvano

Weitere ähnliche Inhalte

Ähnlich wie Font Performance - NYC WebPerf Meetup April '24

CSS @font-face : Personalized fonts
CSS @font-face : Personalized fontsCSS @font-face : Personalized fonts
CSS @font-face : Personalized fontsYves Van Goethem
 
The type revolutionary's cookbook
The type revolutionary's cookbookThe type revolutionary's cookbook
The type revolutionary's cookbookFour Kitchens
 
The state of web typography
The state of web typographyThe state of web typography
The state of web typographyFour Kitchens
 
44CON London 2015 - Reverse engineering and exploiting font rasterizers: the ...
44CON London 2015 - Reverse engineering and exploiting font rasterizers: the ...44CON London 2015 - Reverse engineering and exploiting font rasterizers: the ...
44CON London 2015 - Reverse engineering and exploiting font rasterizers: the ...44CON
 
OSDC 2016 - Ingesting Logs with Style by Pere Urbon-Bayes
OSDC 2016 - Ingesting Logs with Style by Pere Urbon-BayesOSDC 2016 - Ingesting Logs with Style by Pere Urbon-Bayes
OSDC 2016 - Ingesting Logs with Style by Pere Urbon-BayesNETWAYS
 
Your Inner Sysadmin - MidwestPHP 2015
Your Inner Sysadmin - MidwestPHP 2015Your Inner Sysadmin - MidwestPHP 2015
Your Inner Sysadmin - MidwestPHP 2015Chris Tankersley
 
What happens when firefox crashes?
What happens when firefox crashes?What happens when firefox crashes?
What happens when firefox crashes?Erik Rose
 
Your Inner Sysadmin - Tutorial (SunshinePHP 2015)
Your Inner Sysadmin - Tutorial (SunshinePHP 2015)Your Inner Sysadmin - Tutorial (SunshinePHP 2015)
Your Inner Sysadmin - Tutorial (SunshinePHP 2015)Chris Tankersley
 
A rough guide to JavaScript Performance
A rough guide to JavaScript PerformanceA rough guide to JavaScript Performance
A rough guide to JavaScript Performanceallmarkedup
 
You Can Work on the Web Patform! (GOSIM 2023)
You Can Work on the Web Patform! (GOSIM 2023)You Can Work on the Web Patform! (GOSIM 2023)
You Can Work on the Web Patform! (GOSIM 2023)Igalia
 
AddisDev Meetup ii: Golang and Flow-based Programming
AddisDev Meetup ii: Golang and Flow-based ProgrammingAddisDev Meetup ii: Golang and Flow-based Programming
AddisDev Meetup ii: Golang and Flow-based ProgrammingSamuel Lampa
 
Mix10 final snook_ds15
Mix10 final snook_ds15Mix10 final snook_ds15
Mix10 final snook_ds15Jonathan Snook
 
The Type We Want (MIX10)
The Type We Want (MIX10)The Type We Want (MIX10)
The Type We Want (MIX10)Jonathan Snook
 
Bitmovin Low Latency CMAF Presentation_Streaming Media East by Paul MacDougall
Bitmovin Low Latency CMAF Presentation_Streaming Media East by Paul MacDougallBitmovin Low Latency CMAF Presentation_Streaming Media East by Paul MacDougall
Bitmovin Low Latency CMAF Presentation_Streaming Media East by Paul MacDougallBitmovin Inc
 
Making drupal beautiful with web fonts
Making drupal beautiful with web fontsMaking drupal beautiful with web fonts
Making drupal beautiful with web fontsFour Kitchens
 

Ähnlich wie Font Performance - NYC WebPerf Meetup April '24 (20)

CSS @font-face : Personalized fonts
CSS @font-face : Personalized fontsCSS @font-face : Personalized fonts
CSS @font-face : Personalized fonts
 
Web fonts
Web fontsWeb fonts
Web fonts
 
The type revolutionary's cookbook
The type revolutionary's cookbookThe type revolutionary's cookbook
The type revolutionary's cookbook
 
The state of web typography
The state of web typographyThe state of web typography
The state of web typography
 
44CON London 2015 - Reverse engineering and exploiting font rasterizers: the ...
44CON London 2015 - Reverse engineering and exploiting font rasterizers: the ...44CON London 2015 - Reverse engineering and exploiting font rasterizers: the ...
44CON London 2015 - Reverse engineering and exploiting font rasterizers: the ...
 
OSDC 2016 - Ingesting Logs with Style by Pere Urbon-Bayes
OSDC 2016 - Ingesting Logs with Style by Pere Urbon-BayesOSDC 2016 - Ingesting Logs with Style by Pere Urbon-Bayes
OSDC 2016 - Ingesting Logs with Style by Pere Urbon-Bayes
 
The Trouble With Type
The Trouble With TypeThe Trouble With Type
The Trouble With Type
 
Your Inner Sysadmin - MidwestPHP 2015
Your Inner Sysadmin - MidwestPHP 2015Your Inner Sysadmin - MidwestPHP 2015
Your Inner Sysadmin - MidwestPHP 2015
 
What happens when firefox crashes?
What happens when firefox crashes?What happens when firefox crashes?
What happens when firefox crashes?
 
Metarefresh
MetarefreshMetarefresh
Metarefresh
 
Your Inner Sysadmin - Tutorial (SunshinePHP 2015)
Your Inner Sysadmin - Tutorial (SunshinePHP 2015)Your Inner Sysadmin - Tutorial (SunshinePHP 2015)
Your Inner Sysadmin - Tutorial (SunshinePHP 2015)
 
A rough guide to JavaScript Performance
A rough guide to JavaScript PerformanceA rough guide to JavaScript Performance
A rough guide to JavaScript Performance
 
Win ff1.0.0.en
Win ff1.0.0.enWin ff1.0.0.en
Win ff1.0.0.en
 
Audio and Video Streaming
Audio and Video StreamingAudio and Video Streaming
Audio and Video Streaming
 
You Can Work on the Web Patform! (GOSIM 2023)
You Can Work on the Web Patform! (GOSIM 2023)You Can Work on the Web Patform! (GOSIM 2023)
You Can Work on the Web Patform! (GOSIM 2023)
 
AddisDev Meetup ii: Golang and Flow-based Programming
AddisDev Meetup ii: Golang and Flow-based ProgrammingAddisDev Meetup ii: Golang and Flow-based Programming
AddisDev Meetup ii: Golang and Flow-based Programming
 
Mix10 final snook_ds15
Mix10 final snook_ds15Mix10 final snook_ds15
Mix10 final snook_ds15
 
The Type We Want (MIX10)
The Type We Want (MIX10)The Type We Want (MIX10)
The Type We Want (MIX10)
 
Bitmovin Low Latency CMAF Presentation_Streaming Media East by Paul MacDougall
Bitmovin Low Latency CMAF Presentation_Streaming Media East by Paul MacDougallBitmovin Low Latency CMAF Presentation_Streaming Media East by Paul MacDougall
Bitmovin Low Latency CMAF Presentation_Streaming Media East by Paul MacDougall
 
Making drupal beautiful with web fonts
Making drupal beautiful with web fontsMaking drupal beautiful with web fonts
Making drupal beautiful with web fonts
 

Mehr von Paul Calvano

NY WebPerf Sept '22 - Performance Mistakes - An HTTP Archive Deep Dive
NY WebPerf Sept '22 - Performance Mistakes - An HTTP Archive Deep DiveNY WebPerf Sept '22 - Performance Mistakes - An HTTP Archive Deep Dive
NY WebPerf Sept '22 - Performance Mistakes - An HTTP Archive Deep DivePaul Calvano
 
Lazy Load '22 - Performance Mistakes - An HTTP Archive Deep Dive
Lazy Load  '22 - Performance Mistakes - An HTTP Archive Deep DiveLazy Load  '22 - Performance Mistakes - An HTTP Archive Deep Dive
Lazy Load '22 - Performance Mistakes - An HTTP Archive Deep DivePaul Calvano
 
NYC WebPerf Meetup Feb 2020 - Measuring the Adoption of Web Performance Techn...
NYC WebPerf Meetup Feb 2020 - Measuring the Adoption of Web Performance Techn...NYC WebPerf Meetup Feb 2020 - Measuring the Adoption of Web Performance Techn...
NYC WebPerf Meetup Feb 2020 - Measuring the Adoption of Web Performance Techn...Paul Calvano
 
Web Unleashed '19 - Measuring the Adoption of Web Performance Techniques
Web Unleashed '19 - Measuring the Adoption of Web Performance TechniquesWeb Unleashed '19 - Measuring the Adoption of Web Performance Techniques
Web Unleashed '19 - Measuring the Adoption of Web Performance TechniquesPaul Calvano
 
Common Traits of High Performing Websites, BairesWeb - Argentina
Common Traits of High Performing Websites,  BairesWeb  - ArgentinaCommon Traits of High Performing Websites,  BairesWeb  - Argentina
Common Traits of High Performing Websites, BairesWeb - ArgentinaPaul Calvano
 
Common Traits of High Performing Websites, WebPerfDays Amsterdam 07-Nov-2018
Common Traits of High Performing Websites, WebPerfDays Amsterdam 07-Nov-2018Common Traits of High Performing Websites, WebPerfDays Amsterdam 07-Nov-2018
Common Traits of High Performing Websites, WebPerfDays Amsterdam 07-Nov-2018Paul Calvano
 
Real User Measurement Insights, London WebPerf 2018-Nov-06
Real User Measurement Insights, London WebPerf 2018-Nov-06Real User Measurement Insights, London WebPerf 2018-Nov-06
Real User Measurement Insights, London WebPerf 2018-Nov-06Paul Calvano
 
Real User Measurement Insights, NYWebPerf 2018-Aug-09
Real User Measurement Insights, NYWebPerf 2018-Aug-09Real User Measurement Insights, NYWebPerf 2018-Aug-09
Real User Measurement Insights, NYWebPerf 2018-Aug-09Paul Calvano
 
Fluent 2018: Tracking Performance of the Web with HTTP Archive
Fluent 2018: Tracking Performance of the Web with HTTP ArchiveFluent 2018: Tracking Performance of the Web with HTTP Archive
Fluent 2018: Tracking Performance of the Web with HTTP ArchivePaul Calvano
 

Mehr von Paul Calvano (9)

NY WebPerf Sept '22 - Performance Mistakes - An HTTP Archive Deep Dive
NY WebPerf Sept '22 - Performance Mistakes - An HTTP Archive Deep DiveNY WebPerf Sept '22 - Performance Mistakes - An HTTP Archive Deep Dive
NY WebPerf Sept '22 - Performance Mistakes - An HTTP Archive Deep Dive
 
Lazy Load '22 - Performance Mistakes - An HTTP Archive Deep Dive
Lazy Load  '22 - Performance Mistakes - An HTTP Archive Deep DiveLazy Load  '22 - Performance Mistakes - An HTTP Archive Deep Dive
Lazy Load '22 - Performance Mistakes - An HTTP Archive Deep Dive
 
NYC WebPerf Meetup Feb 2020 - Measuring the Adoption of Web Performance Techn...
NYC WebPerf Meetup Feb 2020 - Measuring the Adoption of Web Performance Techn...NYC WebPerf Meetup Feb 2020 - Measuring the Adoption of Web Performance Techn...
NYC WebPerf Meetup Feb 2020 - Measuring the Adoption of Web Performance Techn...
 
Web Unleashed '19 - Measuring the Adoption of Web Performance Techniques
Web Unleashed '19 - Measuring the Adoption of Web Performance TechniquesWeb Unleashed '19 - Measuring the Adoption of Web Performance Techniques
Web Unleashed '19 - Measuring the Adoption of Web Performance Techniques
 
Common Traits of High Performing Websites, BairesWeb - Argentina
Common Traits of High Performing Websites,  BairesWeb  - ArgentinaCommon Traits of High Performing Websites,  BairesWeb  - Argentina
Common Traits of High Performing Websites, BairesWeb - Argentina
 
Common Traits of High Performing Websites, WebPerfDays Amsterdam 07-Nov-2018
Common Traits of High Performing Websites, WebPerfDays Amsterdam 07-Nov-2018Common Traits of High Performing Websites, WebPerfDays Amsterdam 07-Nov-2018
Common Traits of High Performing Websites, WebPerfDays Amsterdam 07-Nov-2018
 
Real User Measurement Insights, London WebPerf 2018-Nov-06
Real User Measurement Insights, London WebPerf 2018-Nov-06Real User Measurement Insights, London WebPerf 2018-Nov-06
Real User Measurement Insights, London WebPerf 2018-Nov-06
 
Real User Measurement Insights, NYWebPerf 2018-Aug-09
Real User Measurement Insights, NYWebPerf 2018-Aug-09Real User Measurement Insights, NYWebPerf 2018-Aug-09
Real User Measurement Insights, NYWebPerf 2018-Aug-09
 
Fluent 2018: Tracking Performance of the Web with HTTP Archive
Fluent 2018: Tracking Performance of the Web with HTTP ArchiveFluent 2018: Tracking Performance of the Web with HTTP Archive
Fluent 2018: Tracking Performance of the Web with HTTP Archive
 

Kürzlich hochgeladen

Call Girls In Saket Delhi 💯Call Us 🔝8264348440🔝
Call Girls In Saket Delhi 💯Call Us 🔝8264348440🔝Call Girls In Saket Delhi 💯Call Us 🔝8264348440🔝
Call Girls In Saket Delhi 💯Call Us 🔝8264348440🔝soniya singh
 
Russian Call girl in Ajman +971563133746 Ajman Call girl Service
Russian Call girl in Ajman +971563133746 Ajman Call girl ServiceRussian Call girl in Ajman +971563133746 Ajman Call girl Service
Russian Call girl in Ajman +971563133746 Ajman Call girl Servicegwenoracqe6
 
₹5.5k {Cash Payment}New Friends Colony Call Girls In [Delhi NIHARIKA] 🔝|97111...
₹5.5k {Cash Payment}New Friends Colony Call Girls In [Delhi NIHARIKA] 🔝|97111...₹5.5k {Cash Payment}New Friends Colony Call Girls In [Delhi NIHARIKA] 🔝|97111...
₹5.5k {Cash Payment}New Friends Colony Call Girls In [Delhi NIHARIKA] 🔝|97111...Diya Sharma
 
On Starlink, presented by Geoff Huston at NZNOG 2024
On Starlink, presented by Geoff Huston at NZNOG 2024On Starlink, presented by Geoff Huston at NZNOG 2024
On Starlink, presented by Geoff Huston at NZNOG 2024APNIC
 
Russian Call Girls in Kolkata Ishita 🤌 8250192130 🚀 Vip Call Girls Kolkata
Russian Call Girls in Kolkata Ishita 🤌  8250192130 🚀 Vip Call Girls KolkataRussian Call Girls in Kolkata Ishita 🤌  8250192130 🚀 Vip Call Girls Kolkata
Russian Call Girls in Kolkata Ishita 🤌 8250192130 🚀 Vip Call Girls Kolkataanamikaraghav4
 
Chennai Call Girls Porur Phone 🍆 8250192130 👅 celebrity escorts service
Chennai Call Girls Porur Phone 🍆 8250192130 👅 celebrity escorts serviceChennai Call Girls Porur Phone 🍆 8250192130 👅 celebrity escorts service
Chennai Call Girls Porur Phone 🍆 8250192130 👅 celebrity escorts servicesonalikaur4
 
Pune Airport ( Call Girls ) Pune 6297143586 Hot Model With Sexy Bhabi Ready...
Pune Airport ( Call Girls ) Pune  6297143586  Hot Model With Sexy Bhabi Ready...Pune Airport ( Call Girls ) Pune  6297143586  Hot Model With Sexy Bhabi Ready...
Pune Airport ( Call Girls ) Pune 6297143586 Hot Model With Sexy Bhabi Ready...tanu pandey
 
Moving Beyond Twitter/X and Facebook - Social Media for local news providers
Moving Beyond Twitter/X and Facebook - Social Media for local news providersMoving Beyond Twitter/X and Facebook - Social Media for local news providers
Moving Beyond Twitter/X and Facebook - Social Media for local news providersDamian Radcliffe
 
Low Rate Call Girls Kolkata Avani 🤌 8250192130 🚀 Vip Call Girls Kolkata
Low Rate Call Girls Kolkata Avani 🤌  8250192130 🚀 Vip Call Girls KolkataLow Rate Call Girls Kolkata Avani 🤌  8250192130 🚀 Vip Call Girls Kolkata
Low Rate Call Girls Kolkata Avani 🤌 8250192130 🚀 Vip Call Girls Kolkataanamikaraghav4
 
Russian Call Girls in Kolkata Samaira 🤌 8250192130 🚀 Vip Call Girls Kolkata
Russian Call Girls in Kolkata Samaira 🤌  8250192130 🚀 Vip Call Girls KolkataRussian Call Girls in Kolkata Samaira 🤌  8250192130 🚀 Vip Call Girls Kolkata
Russian Call Girls in Kolkata Samaira 🤌 8250192130 🚀 Vip Call Girls Kolkataanamikaraghav4
 
Enjoy Night⚡Call Girls Dlf City Phase 3 Gurgaon >༒8448380779 Escort Service
Enjoy Night⚡Call Girls Dlf City Phase 3 Gurgaon >༒8448380779 Escort ServiceEnjoy Night⚡Call Girls Dlf City Phase 3 Gurgaon >༒8448380779 Escort Service
Enjoy Night⚡Call Girls Dlf City Phase 3 Gurgaon >༒8448380779 Escort ServiceDelhi Call girls
 
How is AI changing journalism? (v. April 2024)
How is AI changing journalism? (v. April 2024)How is AI changing journalism? (v. April 2024)
How is AI changing journalism? (v. April 2024)Damian Radcliffe
 
Call Girls In Sukhdev Vihar Delhi 💯Call Us 🔝8264348440🔝
Call Girls In Sukhdev Vihar Delhi 💯Call Us 🔝8264348440🔝Call Girls In Sukhdev Vihar Delhi 💯Call Us 🔝8264348440🔝
Call Girls In Sukhdev Vihar Delhi 💯Call Us 🔝8264348440🔝soniya singh
 
Russian Call girls in Dubai +971563133746 Dubai Call girls
Russian  Call girls in Dubai +971563133746 Dubai  Call girlsRussian  Call girls in Dubai +971563133746 Dubai  Call girls
Russian Call girls in Dubai +971563133746 Dubai Call girlsstephieert
 
Networking in the Penumbra presented by Geoff Huston at NZNOG
Networking in the Penumbra presented by Geoff Huston at NZNOGNetworking in the Penumbra presented by Geoff Huston at NZNOG
Networking in the Penumbra presented by Geoff Huston at NZNOGAPNIC
 
Radiant Call girls in Dubai O56338O268 Dubai Call girls
Radiant Call girls in Dubai O56338O268 Dubai Call girlsRadiant Call girls in Dubai O56338O268 Dubai Call girls
Radiant Call girls in Dubai O56338O268 Dubai Call girlsstephieert
 

Kürzlich hochgeladen (20)

Call Girls In Saket Delhi 💯Call Us 🔝8264348440🔝
Call Girls In Saket Delhi 💯Call Us 🔝8264348440🔝Call Girls In Saket Delhi 💯Call Us 🔝8264348440🔝
Call Girls In Saket Delhi 💯Call Us 🔝8264348440🔝
 
Russian Call girl in Ajman +971563133746 Ajman Call girl Service
Russian Call girl in Ajman +971563133746 Ajman Call girl ServiceRussian Call girl in Ajman +971563133746 Ajman Call girl Service
Russian Call girl in Ajman +971563133746 Ajman Call girl Service
 
₹5.5k {Cash Payment}New Friends Colony Call Girls In [Delhi NIHARIKA] 🔝|97111...
₹5.5k {Cash Payment}New Friends Colony Call Girls In [Delhi NIHARIKA] 🔝|97111...₹5.5k {Cash Payment}New Friends Colony Call Girls In [Delhi NIHARIKA] 🔝|97111...
₹5.5k {Cash Payment}New Friends Colony Call Girls In [Delhi NIHARIKA] 🔝|97111...
 
Rohini Sector 22 Call Girls Delhi 9999965857 @Sabina Saikh No Advance
Rohini Sector 22 Call Girls Delhi 9999965857 @Sabina Saikh No AdvanceRohini Sector 22 Call Girls Delhi 9999965857 @Sabina Saikh No Advance
Rohini Sector 22 Call Girls Delhi 9999965857 @Sabina Saikh No Advance
 
On Starlink, presented by Geoff Huston at NZNOG 2024
On Starlink, presented by Geoff Huston at NZNOG 2024On Starlink, presented by Geoff Huston at NZNOG 2024
On Starlink, presented by Geoff Huston at NZNOG 2024
 
Russian Call Girls in Kolkata Ishita 🤌 8250192130 🚀 Vip Call Girls Kolkata
Russian Call Girls in Kolkata Ishita 🤌  8250192130 🚀 Vip Call Girls KolkataRussian Call Girls in Kolkata Ishita 🤌  8250192130 🚀 Vip Call Girls Kolkata
Russian Call Girls in Kolkata Ishita 🤌 8250192130 🚀 Vip Call Girls Kolkata
 
Chennai Call Girls Porur Phone 🍆 8250192130 👅 celebrity escorts service
Chennai Call Girls Porur Phone 🍆 8250192130 👅 celebrity escorts serviceChennai Call Girls Porur Phone 🍆 8250192130 👅 celebrity escorts service
Chennai Call Girls Porur Phone 🍆 8250192130 👅 celebrity escorts service
 
Pune Airport ( Call Girls ) Pune 6297143586 Hot Model With Sexy Bhabi Ready...
Pune Airport ( Call Girls ) Pune  6297143586  Hot Model With Sexy Bhabi Ready...Pune Airport ( Call Girls ) Pune  6297143586  Hot Model With Sexy Bhabi Ready...
Pune Airport ( Call Girls ) Pune 6297143586 Hot Model With Sexy Bhabi Ready...
 
Moving Beyond Twitter/X and Facebook - Social Media for local news providers
Moving Beyond Twitter/X and Facebook - Social Media for local news providersMoving Beyond Twitter/X and Facebook - Social Media for local news providers
Moving Beyond Twitter/X and Facebook - Social Media for local news providers
 
Rohini Sector 26 Call Girls Delhi 9999965857 @Sabina Saikh No Advance
Rohini Sector 26 Call Girls Delhi 9999965857 @Sabina Saikh No AdvanceRohini Sector 26 Call Girls Delhi 9999965857 @Sabina Saikh No Advance
Rohini Sector 26 Call Girls Delhi 9999965857 @Sabina Saikh No Advance
 
Rohini Sector 6 Call Girls Delhi 9999965857 @Sabina Saikh No Advance
Rohini Sector 6 Call Girls Delhi 9999965857 @Sabina Saikh No AdvanceRohini Sector 6 Call Girls Delhi 9999965857 @Sabina Saikh No Advance
Rohini Sector 6 Call Girls Delhi 9999965857 @Sabina Saikh No Advance
 
Low Rate Call Girls Kolkata Avani 🤌 8250192130 🚀 Vip Call Girls Kolkata
Low Rate Call Girls Kolkata Avani 🤌  8250192130 🚀 Vip Call Girls KolkataLow Rate Call Girls Kolkata Avani 🤌  8250192130 🚀 Vip Call Girls Kolkata
Low Rate Call Girls Kolkata Avani 🤌 8250192130 🚀 Vip Call Girls Kolkata
 
Russian Call Girls in Kolkata Samaira 🤌 8250192130 🚀 Vip Call Girls Kolkata
Russian Call Girls in Kolkata Samaira 🤌  8250192130 🚀 Vip Call Girls KolkataRussian Call Girls in Kolkata Samaira 🤌  8250192130 🚀 Vip Call Girls Kolkata
Russian Call Girls in Kolkata Samaira 🤌 8250192130 🚀 Vip Call Girls Kolkata
 
Enjoy Night⚡Call Girls Dlf City Phase 3 Gurgaon >༒8448380779 Escort Service
Enjoy Night⚡Call Girls Dlf City Phase 3 Gurgaon >༒8448380779 Escort ServiceEnjoy Night⚡Call Girls Dlf City Phase 3 Gurgaon >༒8448380779 Escort Service
Enjoy Night⚡Call Girls Dlf City Phase 3 Gurgaon >༒8448380779 Escort Service
 
How is AI changing journalism? (v. April 2024)
How is AI changing journalism? (v. April 2024)How is AI changing journalism? (v. April 2024)
How is AI changing journalism? (v. April 2024)
 
Call Girls In Sukhdev Vihar Delhi 💯Call Us 🔝8264348440🔝
Call Girls In Sukhdev Vihar Delhi 💯Call Us 🔝8264348440🔝Call Girls In Sukhdev Vihar Delhi 💯Call Us 🔝8264348440🔝
Call Girls In Sukhdev Vihar Delhi 💯Call Us 🔝8264348440🔝
 
Russian Call girls in Dubai +971563133746 Dubai Call girls
Russian  Call girls in Dubai +971563133746 Dubai  Call girlsRussian  Call girls in Dubai +971563133746 Dubai  Call girls
Russian Call girls in Dubai +971563133746 Dubai Call girls
 
Call Girls In South Ex 📱 9999965857 🤩 Delhi 🫦 HOT AND SEXY VVIP 🍎 SERVICE
Call Girls In South Ex 📱  9999965857  🤩 Delhi 🫦 HOT AND SEXY VVIP 🍎 SERVICECall Girls In South Ex 📱  9999965857  🤩 Delhi 🫦 HOT AND SEXY VVIP 🍎 SERVICE
Call Girls In South Ex 📱 9999965857 🤩 Delhi 🫦 HOT AND SEXY VVIP 🍎 SERVICE
 
Networking in the Penumbra presented by Geoff Huston at NZNOG
Networking in the Penumbra presented by Geoff Huston at NZNOGNetworking in the Penumbra presented by Geoff Huston at NZNOG
Networking in the Penumbra presented by Geoff Huston at NZNOG
 
Radiant Call girls in Dubai O56338O268 Dubai Call girls
Radiant Call girls in Dubai O56338O268 Dubai Call girlsRadiant Call girls in Dubai O56338O268 Dubai Call girls
Radiant Call girls in Dubai O56338O268 Dubai Call girls
 

Font Performance - NYC WebPerf Meetup April '24