speedy app: frontend performance considerations
DESCRIPTION
Execution time in the backend is not all there is to the speed of a web application. In this talk, we'll look at the basic enhancements we can make to get an applications that truly feels snappy!TRANSCRIPT
![Page 1: Speedy App: Frontend Performance Considerations](https://reader036.vdocuments.us/reader036/viewer/2022081403/55610726d8b42a7f138b45dc/html5/thumbnails/1.jpg)
![Page 2: Speedy App: Frontend Performance Considerations](https://reader036.vdocuments.us/reader036/viewer/2022081403/55610726d8b42a7f138b45dc/html5/thumbnails/2.jpg)
![Page 3: Speedy App: Frontend Performance Considerations](https://reader036.vdocuments.us/reader036/viewer/2022081403/55610726d8b42a7f138b45dc/html5/thumbnails/3.jpg)
![Page 4: Speedy App: Frontend Performance Considerations](https://reader036.vdocuments.us/reader036/viewer/2022081403/55610726d8b42a7f138b45dc/html5/thumbnails/4.jpg)
![Page 5: Speedy App: Frontend Performance Considerations](https://reader036.vdocuments.us/reader036/viewer/2022081403/55610726d8b42a7f138b45dc/html5/thumbnails/5.jpg)
![Page 6: Speedy App: Frontend Performance Considerations](https://reader036.vdocuments.us/reader036/viewer/2022081403/55610726d8b42a7f138b45dc/html5/thumbnails/6.jpg)
![Page 7: Speedy App: Frontend Performance Considerations](https://reader036.vdocuments.us/reader036/viewer/2022081403/55610726d8b42a7f138b45dc/html5/thumbnails/7.jpg)
![Page 8: Speedy App: Frontend Performance Considerations](https://reader036.vdocuments.us/reader036/viewer/2022081403/55610726d8b42a7f138b45dc/html5/thumbnails/8.jpg)
![Page 9: Speedy App: Frontend Performance Considerations](https://reader036.vdocuments.us/reader036/viewer/2022081403/55610726d8b42a7f138b45dc/html5/thumbnails/9.jpg)
![Page 10: Speedy App: Frontend Performance Considerations](https://reader036.vdocuments.us/reader036/viewer/2022081403/55610726d8b42a7f138b45dc/html5/thumbnails/10.jpg)
![Page 11: Speedy App: Frontend Performance Considerations](https://reader036.vdocuments.us/reader036/viewer/2022081403/55610726d8b42a7f138b45dc/html5/thumbnails/11.jpg)
![Page 12: Speedy App: Frontend Performance Considerations](https://reader036.vdocuments.us/reader036/viewer/2022081403/55610726d8b42a7f138b45dc/html5/thumbnails/12.jpg)
![Page 13: Speedy App: Frontend Performance Considerations](https://reader036.vdocuments.us/reader036/viewer/2022081403/55610726d8b42a7f138b45dc/html5/thumbnails/13.jpg)
![Page 14: Speedy App: Frontend Performance Considerations](https://reader036.vdocuments.us/reader036/viewer/2022081403/55610726d8b42a7f138b45dc/html5/thumbnails/14.jpg)
HTTP/1.1 200 OKContent-Type: text/html; charset=UTF-8Last-Modified: Wed, 23 Feb 2011 12:23:32 GTMContent-Length: 453
GET /nelm.io/pierreHTTP/1.1HOST: nelm.io
![Page 15: Speedy App: Frontend Performance Considerations](https://reader036.vdocuments.us/reader036/viewer/2022081403/55610726d8b42a7f138b45dc/html5/thumbnails/15.jpg)
HTTP/1.1 200 OKContent-Type: text/html; charset=UTF-8Last-Modified: Thu, 3 Mar 2011 12:23:32 GTMContent-Length: 453
GET /nelm.io/pierreHTTP/1.1HOST: nelm.io
![Page 16: Speedy App: Frontend Performance Considerations](https://reader036.vdocuments.us/reader036/viewer/2022081403/55610726d8b42a7f138b45dc/html5/thumbnails/16.jpg)
HTTP/1.1 200 OKContent-Type: text/html; charset=UTF-8Last-Modified: Thu, 3 Mar 2011 12:23:32 GTM Content-Length: 453
GET /nelm.io/pierreHTTP/1.1HOST: nelm.io
![Page 17: Speedy App: Frontend Performance Considerations](https://reader036.vdocuments.us/reader036/viewer/2022081403/55610726d8b42a7f138b45dc/html5/thumbnails/17.jpg)
GET /nelm.io/pierreHTTP/1.1HOST: nelm.ioIf-Modified-Since: Thu, 3 Mar 2011 12:23:32 GTM
HTTP/1.1 304 Not ModifiedContent-Type: text/html; charset=UTF-8Last-Modified: Wed, 23 Feb 2011 12:23:32 GTM
![Page 18: Speedy App: Frontend Performance Considerations](https://reader036.vdocuments.us/reader036/viewer/2022081403/55610726d8b42a7f138b45dc/html5/thumbnails/18.jpg)
GET /nelm.io/pierreHTTP/1.1HOST: nelm.ioIf-Modified-Since: Thu, 3 Mar 2011 12:23:32 GTM
HTTP/1.1 304 Not ModifiedContent-Type: text/html; charset=UTF-8Last-Modified: Thu, 3 Mar 2011 12:23:32 GTM
![Page 19: Speedy App: Frontend Performance Considerations](https://reader036.vdocuments.us/reader036/viewer/2022081403/55610726d8b42a7f138b45dc/html5/thumbnails/19.jpg)
![Page 20: Speedy App: Frontend Performance Considerations](https://reader036.vdocuments.us/reader036/viewer/2022081403/55610726d8b42a7f138b45dc/html5/thumbnails/20.jpg)
![Page 21: Speedy App: Frontend Performance Considerations](https://reader036.vdocuments.us/reader036/viewer/2022081403/55610726d8b42a7f138b45dc/html5/thumbnails/21.jpg)
![Page 22: Speedy App: Frontend Performance Considerations](https://reader036.vdocuments.us/reader036/viewer/2022081403/55610726d8b42a7f138b45dc/html5/thumbnails/22.jpg)
![Page 23: Speedy App: Frontend Performance Considerations](https://reader036.vdocuments.us/reader036/viewer/2022081403/55610726d8b42a7f138b45dc/html5/thumbnails/23.jpg)
![Page 24: Speedy App: Frontend Performance Considerations](https://reader036.vdocuments.us/reader036/viewer/2022081403/55610726d8b42a7f138b45dc/html5/thumbnails/24.jpg)
![Page 25: Speedy App: Frontend Performance Considerations](https://reader036.vdocuments.us/reader036/viewer/2022081403/55610726d8b42a7f138b45dc/html5/thumbnails/25.jpg)
![Page 26: Speedy App: Frontend Performance Considerations](https://reader036.vdocuments.us/reader036/viewer/2022081403/55610726d8b42a7f138b45dc/html5/thumbnails/26.jpg)
![Page 27: Speedy App: Frontend Performance Considerations](https://reader036.vdocuments.us/reader036/viewer/2022081403/55610726d8b42a7f138b45dc/html5/thumbnails/27.jpg)
![Page 28: Speedy App: Frontend Performance Considerations](https://reader036.vdocuments.us/reader036/viewer/2022081403/55610726d8b42a7f138b45dc/html5/thumbnails/28.jpg)
<img src="data:image/gif;base64,R0lGODlhEAAOALMAAOazToeH h0tLS/7LZv/0jvb29t/f3//Ub//ge8WSLf/rhf/3kdbW1mxsbP/ 5UUde0ECwLJoExKcppV0aCcGCmTIHEIUEqjgaORCMxIC6e0Ccgu Ww6aFjsVMkkIr7g77ZKPJjPZqIyd7sJAgVGoEGv2xsBxqNgYPj" width="16" height="14" alt="Play">
![Page 29: Speedy App: Frontend Performance Considerations](https://reader036.vdocuments.us/reader036/viewer/2022081403/55610726d8b42a7f138b45dc/html5/thumbnails/29.jpg)
![Page 30: Speedy App: Frontend Performance Considerations](https://reader036.vdocuments.us/reader036/viewer/2022081403/55610726d8b42a7f138b45dc/html5/thumbnails/30.jpg)
![Page 31: Speedy App: Frontend Performance Considerations](https://reader036.vdocuments.us/reader036/viewer/2022081403/55610726d8b42a7f138b45dc/html5/thumbnails/31.jpg)
![Page 32: Speedy App: Frontend Performance Considerations](https://reader036.vdocuments.us/reader036/viewer/2022081403/55610726d8b42a7f138b45dc/html5/thumbnails/32.jpg)
![Page 33: Speedy App: Frontend Performance Considerations](https://reader036.vdocuments.us/reader036/viewer/2022081403/55610726d8b42a7f138b45dc/html5/thumbnails/33.jpg)
![Page 34: Speedy App: Frontend Performance Considerations](https://reader036.vdocuments.us/reader036/viewer/2022081403/55610726d8b42a7f138b45dc/html5/thumbnails/34.jpg)
![Page 35: Speedy App: Frontend Performance Considerations](https://reader036.vdocuments.us/reader036/viewer/2022081403/55610726d8b42a7f138b45dc/html5/thumbnails/35.jpg)
![Page 36: Speedy App: Frontend Performance Considerations](https://reader036.vdocuments.us/reader036/viewer/2022081403/55610726d8b42a7f138b45dc/html5/thumbnails/36.jpg)
HTTP/1.1 200 OKContent-Type: application/x-javascriptLast-Modified: Wed, 23 Feb 2011 17:23:32 GTMExpires: Wed, 23 Feb 2011 19:23:32 GTM
![Page 37: Speedy App: Frontend Performance Considerations](https://reader036.vdocuments.us/reader036/viewer/2022081403/55610726d8b42a7f138b45dc/html5/thumbnails/37.jpg)
HTTP/1.1 200 OKContent-Type: application/x-javascriptLast-Modified: Thu, 3 Mar 2011 12:23:32 GTMExpires: Thu, 3 Mar 2011 14:23:32 GTM
![Page 38: Speedy App: Frontend Performance Considerations](https://reader036.vdocuments.us/reader036/viewer/2022081403/55610726d8b42a7f138b45dc/html5/thumbnails/38.jpg)
HTTP/1.1 200 OKContent-Type: application/x-javascriptLast-Modified: Thu, 3 Mar 2011 12:23:32 GTM Expires: Thu, 3 Mar 2021 14:23:32 GTM
![Page 39: Speedy App: Frontend Performance Considerations](https://reader036.vdocuments.us/reader036/viewer/2022081403/55610726d8b42a7f138b45dc/html5/thumbnails/39.jpg)
![Page 40: Speedy App: Frontend Performance Considerations](https://reader036.vdocuments.us/reader036/viewer/2022081403/55610726d8b42a7f138b45dc/html5/thumbnails/40.jpg)
![Page 41: Speedy App: Frontend Performance Considerations](https://reader036.vdocuments.us/reader036/viewer/2022081403/55610726d8b42a7f138b45dc/html5/thumbnails/41.jpg)
HTTP/1.1 200 OKContent-Type: application/x-javascriptLast-Modified: Thu, 3 Mar 2011 12:23:32 GTMCache-Control: max-age=315360000
![Page 42: Speedy App: Frontend Performance Considerations](https://reader036.vdocuments.us/reader036/viewer/2022081403/55610726d8b42a7f138b45dc/html5/thumbnails/42.jpg)
HTTP/1.1 200 OKContent-Type: application/x-javascriptLast-Modified: Thu, 3 Mar 2011 12:23:32 GTM Cache-Control: max-age=315360000
![Page 43: Speedy App: Frontend Performance Considerations](https://reader036.vdocuments.us/reader036/viewer/2022081403/55610726d8b42a7f138b45dc/html5/thumbnails/43.jpg)
HTTP/1.1 200 OKContent-Type: application/x-javascriptLast-Modified: Thu, 3 Mar 2011 12:23:32 GTMCache-Control: max-age=315360000
![Page 44: Speedy App: Frontend Performance Considerations](https://reader036.vdocuments.us/reader036/viewer/2022081403/55610726d8b42a7f138b45dc/html5/thumbnails/44.jpg)
![Page 45: Speedy App: Frontend Performance Considerations](https://reader036.vdocuments.us/reader036/viewer/2022081403/55610726d8b42a7f138b45dc/html5/thumbnails/45.jpg)
![Page 46: Speedy App: Frontend Performance Considerations](https://reader036.vdocuments.us/reader036/viewer/2022081403/55610726d8b42a7f138b45dc/html5/thumbnails/46.jpg)
<FilesMatch "\.(gif|jpg|js|css)"> ExpiresDefault "access plus 10 years"</FilesMatch>
![Page 47: Speedy App: Frontend Performance Considerations](https://reader036.vdocuments.us/reader036/viewer/2022081403/55610726d8b42a7f138b45dc/html5/thumbnails/47.jpg)
![Page 48: Speedy App: Frontend Performance Considerations](https://reader036.vdocuments.us/reader036/viewer/2022081403/55610726d8b42a7f138b45dc/html5/thumbnails/48.jpg)
![Page 49: Speedy App: Frontend Performance Considerations](https://reader036.vdocuments.us/reader036/viewer/2022081403/55610726d8b42a7f138b45dc/html5/thumbnails/49.jpg)
![Page 50: Speedy App: Frontend Performance Considerations](https://reader036.vdocuments.us/reader036/viewer/2022081403/55610726d8b42a7f138b45dc/html5/thumbnails/50.jpg)
![Page 51: Speedy App: Frontend Performance Considerations](https://reader036.vdocuments.us/reader036/viewer/2022081403/55610726d8b42a7f138b45dc/html5/thumbnails/51.jpg)
![Page 52: Speedy App: Frontend Performance Considerations](https://reader036.vdocuments.us/reader036/viewer/2022081403/55610726d8b42a7f138b45dc/html5/thumbnails/52.jpg)
HTTP/1.1 200 OKContent-Type: text/html; charset=UTF-8Last-Modified: Thu, 3 Mar 2011 12:23:32 GTMContent-Length: 453Content-Encoding: gzip
GET /nelm.io/pierreHTTP/1.1HOST: nelm.ioAccept-Encoding: gzip,deflate
![Page 53: Speedy App: Frontend Performance Considerations](https://reader036.vdocuments.us/reader036/viewer/2022081403/55610726d8b42a7f138b45dc/html5/thumbnails/53.jpg)
![Page 54: Speedy App: Frontend Performance Considerations](https://reader036.vdocuments.us/reader036/viewer/2022081403/55610726d8b42a7f138b45dc/html5/thumbnails/54.jpg)
![Page 55: Speedy App: Frontend Performance Considerations](https://reader036.vdocuments.us/reader036/viewer/2022081403/55610726d8b42a7f138b45dc/html5/thumbnails/55.jpg)
![Page 56: Speedy App: Frontend Performance Considerations](https://reader036.vdocuments.us/reader036/viewer/2022081403/55610726d8b42a7f138b45dc/html5/thumbnails/56.jpg)
![Page 57: Speedy App: Frontend Performance Considerations](https://reader036.vdocuments.us/reader036/viewer/2022081403/55610726d8b42a7f138b45dc/html5/thumbnails/57.jpg)
![Page 58: Speedy App: Frontend Performance Considerations](https://reader036.vdocuments.us/reader036/viewer/2022081403/55610726d8b42a7f138b45dc/html5/thumbnails/58.jpg)
![Page 59: Speedy App: Frontend Performance Considerations](https://reader036.vdocuments.us/reader036/viewer/2022081403/55610726d8b42a7f138b45dc/html5/thumbnails/59.jpg)
![Page 60: Speedy App: Frontend Performance Considerations](https://reader036.vdocuments.us/reader036/viewer/2022081403/55610726d8b42a7f138b45dc/html5/thumbnails/60.jpg)
![Page 61: Speedy App: Frontend Performance Considerations](https://reader036.vdocuments.us/reader036/viewer/2022081403/55610726d8b42a7f138b45dc/html5/thumbnails/61.jpg)
![Page 62: Speedy App: Frontend Performance Considerations](https://reader036.vdocuments.us/reader036/viewer/2022081403/55610726d8b42a7f138b45dc/html5/thumbnails/62.jpg)
![Page 63: Speedy App: Frontend Performance Considerations](https://reader036.vdocuments.us/reader036/viewer/2022081403/55610726d8b42a7f138b45dc/html5/thumbnails/63.jpg)
![Page 64: Speedy App: Frontend Performance Considerations](https://reader036.vdocuments.us/reader036/viewer/2022081403/55610726d8b42a7f138b45dc/html5/thumbnails/64.jpg)
HTTP/1.1 200 OKContent-Type: text/html; charset=UTF-8Last-Modified: Wed, 23 Feb 2011 12:23:32 GTMContent-Length: 453Content-Encoding: gzipVary: Accept-Encoding
![Page 65: Speedy App: Frontend Performance Considerations](https://reader036.vdocuments.us/reader036/viewer/2022081403/55610726d8b42a7f138b45dc/html5/thumbnails/65.jpg)
HTTP/1.1 200 OKContent-Type: text/html; charset=UTF-8Last-Modified: Thu, 3 Mar 2011 12:23:32 GTMContent-Length: 453Content-Encoding: gzipVary: Accept-Encoding
![Page 66: Speedy App: Frontend Performance Considerations](https://reader036.vdocuments.us/reader036/viewer/2022081403/55610726d8b42a7f138b45dc/html5/thumbnails/66.jpg)
![Page 67: Speedy App: Frontend Performance Considerations](https://reader036.vdocuments.us/reader036/viewer/2022081403/55610726d8b42a7f138b45dc/html5/thumbnails/67.jpg)
![Page 68: Speedy App: Frontend Performance Considerations](https://reader036.vdocuments.us/reader036/viewer/2022081403/55610726d8b42a7f138b45dc/html5/thumbnails/68.jpg)
As of February 2010, estimates of IE6's global market share ranged from 10-20%. Nonetheless, IE6 continues to maintain a plurality or even majority presence in the browser market of certain countries, notably China and South Korea.
- Wikipedia
![Page 69: Speedy App: Frontend Performance Considerations](https://reader036.vdocuments.us/reader036/viewer/2022081403/55610726d8b42a7f138b45dc/html5/thumbnails/69.jpg)
![Page 70: Speedy App: Frontend Performance Considerations](https://reader036.vdocuments.us/reader036/viewer/2022081403/55610726d8b42a7f138b45dc/html5/thumbnails/70.jpg)
Vary: *Cache-Control: private
![Page 71: Speedy App: Frontend Performance Considerations](https://reader036.vdocuments.us/reader036/viewer/2022081403/55610726d8b42a7f138b45dc/html5/thumbnails/71.jpg)
Vary: *Cache-Control: private
![Page 72: Speedy App: Frontend Performance Considerations](https://reader036.vdocuments.us/reader036/viewer/2022081403/55610726d8b42a7f138b45dc/html5/thumbnails/72.jpg)
![Page 73: Speedy App: Frontend Performance Considerations](https://reader036.vdocuments.us/reader036/viewer/2022081403/55610726d8b42a7f138b45dc/html5/thumbnails/73.jpg)
![Page 74: Speedy App: Frontend Performance Considerations](https://reader036.vdocuments.us/reader036/viewer/2022081403/55610726d8b42a7f138b45dc/html5/thumbnails/74.jpg)
![Page 75: Speedy App: Frontend Performance Considerations](https://reader036.vdocuments.us/reader036/viewer/2022081403/55610726d8b42a7f138b45dc/html5/thumbnails/75.jpg)
![Page 76: Speedy App: Frontend Performance Considerations](https://reader036.vdocuments.us/reader036/viewer/2022081403/55610726d8b42a7f138b45dc/html5/thumbnails/76.jpg)
![Page 77: Speedy App: Frontend Performance Considerations](https://reader036.vdocuments.us/reader036/viewer/2022081403/55610726d8b42a7f138b45dc/html5/thumbnails/77.jpg)
![Page 78: Speedy App: Frontend Performance Considerations](https://reader036.vdocuments.us/reader036/viewer/2022081403/55610726d8b42a7f138b45dc/html5/thumbnails/78.jpg)
![Page 79: Speedy App: Frontend Performance Considerations](https://reader036.vdocuments.us/reader036/viewer/2022081403/55610726d8b42a7f138b45dc/html5/thumbnails/79.jpg)
![Page 80: Speedy App: Frontend Performance Considerations](https://reader036.vdocuments.us/reader036/viewer/2022081403/55610726d8b42a7f138b45dc/html5/thumbnails/80.jpg)
![Page 81: Speedy App: Frontend Performance Considerations](https://reader036.vdocuments.us/reader036/viewer/2022081403/55610726d8b42a7f138b45dc/html5/thumbnails/81.jpg)
![Page 82: Speedy App: Frontend Performance Considerations](https://reader036.vdocuments.us/reader036/viewer/2022081403/55610726d8b42a7f138b45dc/html5/thumbnails/82.jpg)
![Page 83: Speedy App: Frontend Performance Considerations](https://reader036.vdocuments.us/reader036/viewer/2022081403/55610726d8b42a7f138b45dc/html5/thumbnails/83.jpg)
![Page 84: Speedy App: Frontend Performance Considerations](https://reader036.vdocuments.us/reader036/viewer/2022081403/55610726d8b42a7f138b45dc/html5/thumbnails/84.jpg)
![Page 85: Speedy App: Frontend Performance Considerations](https://reader036.vdocuments.us/reader036/viewer/2022081403/55610726d8b42a7f138b45dc/html5/thumbnails/85.jpg)
![Page 86: Speedy App: Frontend Performance Considerations](https://reader036.vdocuments.us/reader036/viewer/2022081403/55610726d8b42a7f138b45dc/html5/thumbnails/86.jpg)
document.write
![Page 87: Speedy App: Frontend Performance Considerations](https://reader036.vdocuments.us/reader036/viewer/2022081403/55610726d8b42a7f138b45dc/html5/thumbnails/87.jpg)
![Page 88: Speedy App: Frontend Performance Considerations](https://reader036.vdocuments.us/reader036/viewer/2022081403/55610726d8b42a7f138b45dc/html5/thumbnails/88.jpg)
![Page 89: Speedy App: Frontend Performance Considerations](https://reader036.vdocuments.us/reader036/viewer/2022081403/55610726d8b42a7f138b45dc/html5/thumbnails/89.jpg)
![Page 90: Speedy App: Frontend Performance Considerations](https://reader036.vdocuments.us/reader036/viewer/2022081403/55610726d8b42a7f138b45dc/html5/thumbnails/90.jpg)
![Page 91: Speedy App: Frontend Performance Considerations](https://reader036.vdocuments.us/reader036/viewer/2022081403/55610726d8b42a7f138b45dc/html5/thumbnails/91.jpg)
![Page 92: Speedy App: Frontend Performance Considerations](https://reader036.vdocuments.us/reader036/viewer/2022081403/55610726d8b42a7f138b45dc/html5/thumbnails/92.jpg)
![Page 93: Speedy App: Frontend Performance Considerations](https://reader036.vdocuments.us/reader036/viewer/2022081403/55610726d8b42a7f138b45dc/html5/thumbnails/93.jpg)
![Page 94: Speedy App: Frontend Performance Considerations](https://reader036.vdocuments.us/reader036/viewer/2022081403/55610726d8b42a7f138b45dc/html5/thumbnails/94.jpg)
width: expression(document.body.clientWitdh < 600 ? “600px” : “auto”);min-width: 600px;
![Page 95: Speedy App: Frontend Performance Considerations](https://reader036.vdocuments.us/reader036/viewer/2022081403/55610726d8b42a7f138b45dc/html5/thumbnails/95.jpg)
![Page 96: Speedy App: Frontend Performance Considerations](https://reader036.vdocuments.us/reader036/viewer/2022081403/55610726d8b42a7f138b45dc/html5/thumbnails/96.jpg)
![Page 97: Speedy App: Frontend Performance Considerations](https://reader036.vdocuments.us/reader036/viewer/2022081403/55610726d8b42a7f138b45dc/html5/thumbnails/97.jpg)
![Page 98: Speedy App: Frontend Performance Considerations](https://reader036.vdocuments.us/reader036/viewer/2022081403/55610726d8b42a7f138b45dc/html5/thumbnails/98.jpg)
![Page 99: Speedy App: Frontend Performance Considerations](https://reader036.vdocuments.us/reader036/viewer/2022081403/55610726d8b42a7f138b45dc/html5/thumbnails/99.jpg)
![Page 100: Speedy App: Frontend Performance Considerations](https://reader036.vdocuments.us/reader036/viewer/2022081403/55610726d8b42a7f138b45dc/html5/thumbnails/100.jpg)
![Page 101: Speedy App: Frontend Performance Considerations](https://reader036.vdocuments.us/reader036/viewer/2022081403/55610726d8b42a7f138b45dc/html5/thumbnails/101.jpg)
![Page 102: Speedy App: Frontend Performance Considerations](https://reader036.vdocuments.us/reader036/viewer/2022081403/55610726d8b42a7f138b45dc/html5/thumbnails/102.jpg)
![Page 103: Speedy App: Frontend Performance Considerations](https://reader036.vdocuments.us/reader036/viewer/2022081403/55610726d8b42a7f138b45dc/html5/thumbnails/103.jpg)
![Page 104: Speedy App: Frontend Performance Considerations](https://reader036.vdocuments.us/reader036/viewer/2022081403/55610726d8b42a7f138b45dc/html5/thumbnails/104.jpg)
![Page 105: Speedy App: Frontend Performance Considerations](https://reader036.vdocuments.us/reader036/viewer/2022081403/55610726d8b42a7f138b45dc/html5/thumbnails/105.jpg)
![Page 106: Speedy App: Frontend Performance Considerations](https://reader036.vdocuments.us/reader036/viewer/2022081403/55610726d8b42a7f138b45dc/html5/thumbnails/106.jpg)
![Page 107: Speedy App: Frontend Performance Considerations](https://reader036.vdocuments.us/reader036/viewer/2022081403/55610726d8b42a7f138b45dc/html5/thumbnails/107.jpg)
![Page 108: Speedy App: Frontend Performance Considerations](https://reader036.vdocuments.us/reader036/viewer/2022081403/55610726d8b42a7f138b45dc/html5/thumbnails/108.jpg)
![Page 109: Speedy App: Frontend Performance Considerations](https://reader036.vdocuments.us/reader036/viewer/2022081403/55610726d8b42a7f138b45dc/html5/thumbnails/109.jpg)
![Page 110: Speedy App: Frontend Performance Considerations](https://reader036.vdocuments.us/reader036/viewer/2022081403/55610726d8b42a7f138b45dc/html5/thumbnails/110.jpg)
![Page 111: Speedy App: Frontend Performance Considerations](https://reader036.vdocuments.us/reader036/viewer/2022081403/55610726d8b42a7f138b45dc/html5/thumbnails/111.jpg)
![Page 112: Speedy App: Frontend Performance Considerations](https://reader036.vdocuments.us/reader036/viewer/2022081403/55610726d8b42a7f138b45dc/html5/thumbnails/112.jpg)
![Page 113: Speedy App: Frontend Performance Considerations](https://reader036.vdocuments.us/reader036/viewer/2022081403/55610726d8b42a7f138b45dc/html5/thumbnails/113.jpg)
![Page 114: Speedy App: Frontend Performance Considerations](https://reader036.vdocuments.us/reader036/viewer/2022081403/55610726d8b42a7f138b45dc/html5/thumbnails/114.jpg)
![Page 115: Speedy App: Frontend Performance Considerations](https://reader036.vdocuments.us/reader036/viewer/2022081403/55610726d8b42a7f138b45dc/html5/thumbnails/115.jpg)
![Page 116: Speedy App: Frontend Performance Considerations](https://reader036.vdocuments.us/reader036/viewer/2022081403/55610726d8b42a7f138b45dc/html5/thumbnails/116.jpg)
![Page 117: Speedy App: Frontend Performance Considerations](https://reader036.vdocuments.us/reader036/viewer/2022081403/55610726d8b42a7f138b45dc/html5/thumbnails/117.jpg)
![Page 118: Speedy App: Frontend Performance Considerations](https://reader036.vdocuments.us/reader036/viewer/2022081403/55610726d8b42a7f138b45dc/html5/thumbnails/118.jpg)
![Page 119: Speedy App: Frontend Performance Considerations](https://reader036.vdocuments.us/reader036/viewer/2022081403/55610726d8b42a7f138b45dc/html5/thumbnails/119.jpg)
![Page 120: Speedy App: Frontend Performance Considerations](https://reader036.vdocuments.us/reader036/viewer/2022081403/55610726d8b42a7f138b45dc/html5/thumbnails/120.jpg)
![Page 121: Speedy App: Frontend Performance Considerations](https://reader036.vdocuments.us/reader036/viewer/2022081403/55610726d8b42a7f138b45dc/html5/thumbnails/121.jpg)
HTTP/1.1 200 OKLast-Modified:[...]ETag: 10f24bc-4ab-457e1c1f
GET /nelm.io/foo.jsHOST: nelm.io
GET /nelm.io/foo.jsHOST: nelm.ioIf-Modified-Since: [...]If-None-Match: 10f24bc-4ab-457e1c1f
HTTP/1.1 304 Not Modified
![Page 122: Speedy App: Frontend Performance Considerations](https://reader036.vdocuments.us/reader036/viewer/2022081403/55610726d8b42a7f138b45dc/html5/thumbnails/122.jpg)
HTTP/1.1 200 OKETag: 10f24bc-4ab-457e1c1f
GET /nelm.io/foo.jsHOST: nelm.io
GET /nelm.io/foo.jsHOST: nelm.ioIf-Modified-Since: [...]If-None-Match: 10f24bc-4ab-457e1c1f
HTTP/1.1 304 Not Modified
![Page 123: Speedy App: Frontend Performance Considerations](https://reader036.vdocuments.us/reader036/viewer/2022081403/55610726d8b42a7f138b45dc/html5/thumbnails/123.jpg)
HTTP/1.1 200 OKETag: 10f24bc-4ab-457e1c1f
GET /nelm.io/foo.jsHOST: nelm.io
HTTP/1.1 304 Not Modified
GET /nelm.io/foo.jsHOST: nelm.ioIf-None-Match: 10f24bc-4ab-457e1c1f
![Page 124: Speedy App: Frontend Performance Considerations](https://reader036.vdocuments.us/reader036/viewer/2022081403/55610726d8b42a7f138b45dc/html5/thumbnails/124.jpg)
HTTP/1.1 200 OKETag: 10f24bc-4ab-457e1c1f
GET /nelm.io/foo.jsHOST: nelm.io
GET /nelm.io/foo.jsHOST: nelm.ioIf-None-Match: 10f24bc-4ab-457e1c1f
HTTP/1.1 304 Not Modified
![Page 125: Speedy App: Frontend Performance Considerations](https://reader036.vdocuments.us/reader036/viewer/2022081403/55610726d8b42a7f138b45dc/html5/thumbnails/125.jpg)
HTTP/1.1 200 OKETag: 10f24bc-4ab-457e1c1f
![Page 126: Speedy App: Frontend Performance Considerations](https://reader036.vdocuments.us/reader036/viewer/2022081403/55610726d8b42a7f138b45dc/html5/thumbnails/126.jpg)
![Page 127: Speedy App: Frontend Performance Considerations](https://reader036.vdocuments.us/reader036/viewer/2022081403/55610726d8b42a7f138b45dc/html5/thumbnails/127.jpg)
![Page 128: Speedy App: Frontend Performance Considerations](https://reader036.vdocuments.us/reader036/viewer/2022081403/55610726d8b42a7f138b45dc/html5/thumbnails/128.jpg)
![Page 129: Speedy App: Frontend Performance Considerations](https://reader036.vdocuments.us/reader036/viewer/2022081403/55610726d8b42a7f138b45dc/html5/thumbnails/129.jpg)
![Page 130: Speedy App: Frontend Performance Considerations](https://reader036.vdocuments.us/reader036/viewer/2022081403/55610726d8b42a7f138b45dc/html5/thumbnails/130.jpg)
![Page 131: Speedy App: Frontend Performance Considerations](https://reader036.vdocuments.us/reader036/viewer/2022081403/55610726d8b42a7f138b45dc/html5/thumbnails/131.jpg)
![Page 132: Speedy App: Frontend Performance Considerations](https://reader036.vdocuments.us/reader036/viewer/2022081403/55610726d8b42a7f138b45dc/html5/thumbnails/132.jpg)
![Page 133: Speedy App: Frontend Performance Considerations](https://reader036.vdocuments.us/reader036/viewer/2022081403/55610726d8b42a7f138b45dc/html5/thumbnails/133.jpg)
![Page 134: Speedy App: Frontend Performance Considerations](https://reader036.vdocuments.us/reader036/viewer/2022081403/55610726d8b42a7f138b45dc/html5/thumbnails/134.jpg)
![Page 135: Speedy App: Frontend Performance Considerations](https://reader036.vdocuments.us/reader036/viewer/2022081403/55610726d8b42a7f138b45dc/html5/thumbnails/135.jpg)
![Page 136: Speedy App: Frontend Performance Considerations](https://reader036.vdocuments.us/reader036/viewer/2022081403/55610726d8b42a7f138b45dc/html5/thumbnails/136.jpg)
![Page 137: Speedy App: Frontend Performance Considerations](https://reader036.vdocuments.us/reader036/viewer/2022081403/55610726d8b42a7f138b45dc/html5/thumbnails/137.jpg)
![Page 138: Speedy App: Frontend Performance Considerations](https://reader036.vdocuments.us/reader036/viewer/2022081403/55610726d8b42a7f138b45dc/html5/thumbnails/138.jpg)
![Page 139: Speedy App: Frontend Performance Considerations](https://reader036.vdocuments.us/reader036/viewer/2022081403/55610726d8b42a7f138b45dc/html5/thumbnails/139.jpg)
![Page 140: Speedy App: Frontend Performance Considerations](https://reader036.vdocuments.us/reader036/viewer/2022081403/55610726d8b42a7f138b45dc/html5/thumbnails/140.jpg)
![Page 141: Speedy App: Frontend Performance Considerations](https://reader036.vdocuments.us/reader036/viewer/2022081403/55610726d8b42a7f138b45dc/html5/thumbnails/141.jpg)
![Page 142: Speedy App: Frontend Performance Considerations](https://reader036.vdocuments.us/reader036/viewer/2022081403/55610726d8b42a7f138b45dc/html5/thumbnails/142.jpg)
![Page 143: Speedy App: Frontend Performance Considerations](https://reader036.vdocuments.us/reader036/viewer/2022081403/55610726d8b42a7f138b45dc/html5/thumbnails/143.jpg)
![Page 144: Speedy App: Frontend Performance Considerations](https://reader036.vdocuments.us/reader036/viewer/2022081403/55610726d8b42a7f138b45dc/html5/thumbnails/144.jpg)