Profile

Cover photo
Ilya Grigorik
Works at Google
Attended University of Waterloo
Lives in San Francisco, California
25,887 followers|36,469,416 views
AboutPostsPhotosYouTube+1's

Stream

Ilya Grigorik

Shared publicly  - 
 
Need to get up to speed on HTTP/2? Good news, I just published updated (and free) HPBN chapter: hpbn.co/http2.

Have feedback/questions? Let me know!
62
82
Carles Pla's profile photoluqman baihaqi's profile photoColin Hawkett's profile photoSite Raiser's profile photo
3 comments
 
+Miša Brežanac yep.. stay tuned. "Second Edition" in the works :)
Add a comment...

Ilya Grigorik

Shared publicly  - 
 
DevTools Timeline now sports built-in frame viewer, plus JavaScript and paint profilers... If you haven't already, check out the article + videos and try it on your own site(s) -- amazing stuff!
We've upgraded the Timeline panel for Chrome DevTools to give developers more insight on their site’s runtime performance.
71
30
Heber López's profile photoBrameshmadhav Srinivasan's profile photoRyan Kirby's profile photoDiogo Cavaco's profile photo
 
Your high quality dev tools markedly improve my life. Thank you.
Add a comment...
 
Sweet, you can debug IE11 (and Spartan, soon) via the Chrome debug protocol (and DevTools): http://bit.ly/1O5jPvX - kudos to the IE team for building and releasing this! 
202
224
Harminder Singh's profile photoBrameshmadhav Srinivasan's profile photoGanapathi Nandur's profile photohamid rad's profile photo
19 comments
 
What! No way! Thats just brilliant!
Add a comment...

Ilya Grigorik

Shared publicly  - 
 
Hard won programming wisdom, courtesy of +Rob Pike...
221
78
Gustavo Franco's profile photoChristopher Blöcker's profile photoWalker Hale IV's profile photoMartín Ferrari's profile photo
15 comments
 
+Tim Mattison​ oh it's not one application, I have many many millions of lines to choose from
Add a comment...

Ilya Grigorik

Shared publicly  - 
 
Fixing the 'Blank Text' problem: http://bit.ly/1af95ho - 29% of pages show blank text. The median blank text time: ~350 ms - ouch. The good news is, CSS font-rendering can fix that.
50
20
Imran Naqvi's profile photoMarri Goodie's profile photoAndrii Trybynenko's profile photonendra mahmud's profile photo
2 comments
 
Great article. This problem drives me crazy in general, though of course especially on mobile.

Thanks for the tip about the histograms. Here on my laptop, usually with a 50Mbps broadband connection, I've been blocked on web fonts 37.2% of the time, with 200ms delay at the 75th percentile. So yeah, improvements welcome :)
Add a comment...

Ilya Grigorik

Shared publicly  - 
 
Termsql converts text from a file or from stdin into SQL table and makes it queryable: http://bit.ly/1DCrXEG  - clever, and handy tool.
71
27
Jeremiah McCann's profile photomonkut h's profile photoMaze Oslo's profile photoSebastian Sadło's profile photo
5 comments
 
Its also possible to use aforementioned q for this in Powershell

ps | ConvertTo-CSV | q "select ProcessName from -"

its far easier however to just use Powershell in majority of cases.

ps | select ProcessName

So in this case it doesn't make sense, but in the case you need some advanced sql syntax like joins etc that are not there in powershell unless user implemented it makes sense to use q a lot.
Add a comment...
In his circles
465 people
Have him in circles
25,887 people
nick cruz's profile photo
Francois Lamotte's profile photo
Rob Azevedo's profile photo
Random Geek's profile photo
Qc Jamil's profile photo
Ronnie  G's profile photo
Alen Jankovic's profile photo
P.NARENDER Reddy's profile photo
Monirul Khan Haidher's profile photo

Ilya Grigorik

Shared publicly  - 
 
~50% of Chrome requests to Google servers run over QUIC.. with 30% fewer rebuffers on YouTube! Exciting stuff.
140
32
Camilo Aguilar's profile photonora nattress's profile photoHan He's profile photoJeremiah McCann's profile photo
3 comments
 
I notice it uses quic from my home network. 
Add a comment...

Ilya Grigorik

Shared publicly  - 
 
Who initiates image downloads? HTML: 80%, CSS: 20%.. yay HTTP Archive!

Interestingly enough, ~50% of fetches are initiated by the preload scanner, which tells us that the doc parser is frequently blocked due to blocking scripts (doh)... Hooray for preload scanners!
Internet Explorer emits a handy X-Download-Initiator header that describes the type of resource being fetched, what triggered it, plus some other metadata - see MSDN blog post. With a big of regex gymnastics, we can figure out how and why the image requests are initiated... SELECT initiator, reason, cnt, ROUND(ratio*100,2) AS percent, ROUND(byteRatio*100,2) as bytePercent FROM ( SELECT initiator, reason, count(initiator) as cnt, R...
37
12
Isa Timur's profile photoGabriel Preda's profile photo
Add a comment...

Ilya Grigorik

Shared publicly  - 
 
Friendly reminder... Chrome 42 (next stable) will mark SHA-1 signed certs with a validation date >2015 as insecure! Open Canary, load your site, and if you get the red X.. now's the time to update those certs!
94
30
Bruno Vernay's profile photoKenichi Suzuki's profile photoTimur Gaskarov's profile photoGaurav Sehrawat's profile photo
13 comments
 
+Andreas Koll Wow, that is about the least intuitive thing to click to find a permalink, but it works, thanks!!  (Not for comments, but at least for posts!)
Add a comment...

Ilya Grigorik

Shared publicly  - 
 
Ruby HTTP/2 server (http://bit.ly/1aUfhMY ) + Wireshark = weekend fun!
63
8
666c6176696f 73696c7661's profile photoPablo Carrera Estrada's profile photoKenny Meyer's profile photoAmr Morsy's profile photo
4 comments
 
what, no IPV6?  Just kiddin' ....
Add a comment...

Ilya Grigorik

Shared publicly  - 
 
Reading Akamai's latest "State of the Internet Report": 4.4 billion people (50M in US) are not yet online... Yikes, that's a lot! We've got work to do.
35
6
Pietro Catanese's profile photoJeroen Wiert Pluimers's profile photoDimitar Siljanovski's profile photoSite Raiser's profile photo
5 comments
 
Something like Google Fiber (once it's everywhere) could provide free internet access to everyone that can't otherwise afford it.
Add a comment...

Ilya Grigorik

Shared publicly  - 
 
Great summary of Facebook's paper on large-scale performance analysis... In particular, the concept + insights on "request slack" are really interesting.
This paper appeared in OSDI'14, and is authored by Michael Chow, University of Michigan; David Meisner, Facebook, Inc.; Jason Flinn, University of Michigan; Daniel Peek, Facebook, Inc.; Thomas F. Wenisch, University of Michig...
49
18
Raghava Nellaturu's profile photoVũ Trần Huy's profile photo
Add a comment...
People
In his circles
465 people
Have him in circles
25,887 people
nick cruz's profile photo
Francois Lamotte's profile photo
Rob Azevedo's profile photo
Random Geek's profile photo
Qc Jamil's profile photo
Ronnie  G's profile photo
Alen Jankovic's profile photo
P.NARENDER Reddy's profile photo
Monirul Khan Haidher's profile photo
Work
Occupation
Developer Advocate
Employment
  • Google
    Developer Advocate, 2012 - present
  • Google
    Engineering Manager, Google Analytics, 2011 - 2012
  • PostRank Inc.
    CTO / Founder, 2007 - 2011
Places
Map of the places this user has livedMap of the places this user has livedMap of the places this user has lived
Currently
San Francisco, California
Previously
Waterloo, ON, Canada - Minsk, Belarus
Contact Information
Home
Email
Story
Tagline
Developer Advocate - Make the Web Fast & Google Chrome.
Introduction
Developer Advocate @ Google, working on everything web performance related: best practices, protocols, standards, browser performance...
Education
  • University of Waterloo
    Computer Science, 2002 - 2007
Basic Information
Gender
Male
Links
Contributor to
Ilya Grigorik's +1's are the things they like, agree with, or want to recommend.
Optimizing Web Font Rendering Performance
www.igvita.com

A hands-on look at how to measure web font latencies and optimize their use: transfer latencies, time of initial fetch, and interaction with

Optimizing NGINX TLS Time To First Byte (TTTFB)
www.igvita.com

TLS is not slow, it's unoptimized. A hands-on tour of optimizing nginx to deliver one-RTT Time To First Byte (TTFB) with TLS.

Measuring network performance with Resource Timing API
googledevelopers.blogspot.com

By Ilya Grigorik, Developer Advocate and Web Performance Engineer Network performance is a critical factor in delivering a fast and responsi

Configuring & Optimizing WebSocket Compression
www.igvita.com

Crash course on optimizing WebSocket compression: a look under the hood of Deflate compression and how to configure it for best performance.

Counter-Surveillance
www.tbray.org

Surveillance on the Internet is pervasive and well-funded; it constitutes a planetary-scale attack on people who need the Net. The IETF is g

Chromium Blog: Making the web faster with SPDY and HTTP/2
blog.chromium.org

accessibility (1); benchmarks (1); beta (1); blink (1); chrome apps (3); Chrome Frame (1); chrome web store (26); chromeframe (3); chromeos

Optimizing TLS Record Size & Buffering Latency
www.igvita.com

TLS record size can have significant impact on the page load time performance of your application: keep record size small!

IISpeed reloaded: Announcing 1.1.0
blog.iispeed.com

We are happy to announce IISpeed 1.1.0, which brings cutting edge WPO technology to Microsoft's IIS web server. IISpeed 1.1 is build on top

Retrospective: High Performance Browser Networking
www.igvita.com

A (quantified self) retrospective on what it took to write High Performance Browser Networking, and lessons learned along the way.

Automating DPR switching with Client-Hints
www.igvita.com

Client-Hints automates DPR switching without requiring any modifications of our existing HTML and CSS markup. How? Simple and battle-tested

Chromium Blog: Experimenting with QUIC
blog.chromium.org

At Google, we're always working to make the web faster. The SPDY protocol, which is now the foundation of the upcoming HTTP 2.0 protocol, is

HTTP Archive + BigQuery = Web Performance Answers
www.igvita.com

HTTP Archive is a treasure trove of web performance data... and it's now available as a public dataset on BigQuery! Find answers to all of y

Chromium Blog: Building efficient apps and extensions with push messaging
blog.chromium.org

Event pages keep apps and extensions efficient by allowing them to respond to a variety of events such as timers or navigation to a particul

Deploying WebP via Accept Content Negotiation
www.igvita.com

A hands-on look at how to configure Nginx to transparently deliver and cache WebP assets via Accept negotiation.

How to make clouds with CSS 3D - Clicktorelease
www.clicktorelease.com

Introduction. This tutorial will try to guide you through the steps to create a 3D-like, billboard-based clouds. There are a few advanced to

plusone-button
www.google.com

Add +1 to your pages to help your site stand out. Let visitors recommend your content on Google Search and share it on Google+. Customize yo

Minimalist for Everything [Beta]
chrome.google.com

You live in webapps. Make them yours