Sign in with Twitter

Username:

Making web fast @google.

333 Following   7,491 Followers   327 Tweets

Joined Twitter 3/8/14


@_OscarDOM @g33konaut who's the expert on this.
4/17
2020
Related: https://t.co/S7x7uh86bOGreat anecdote on user perception of waiting: "When Houston airport moved baggage claim *further* from arrivals, c… https://t.co/k1zWvZJUPI @robertnyman Congrats!! 🥂How to use Mac's split view: (Useful for working in two programs side by side.) 1. Click & hold the green "full-sc… https://t.co/ewCwsFMrFk
4/14
2020
Wikipedia has an API for searching for articles about things/places near a particular location. Docs (& where thi… https://t.co/PpeLMSjha1
4/11
2020
@AntonioVolpon touché. thanks for pointing this out - there's now ticket out to fix this.Free books on reliability (from Google SRE): - Site Reliability Engineering: How Google Runs Production Systems… https://t.co/jWDcB3AlRg
4/7
2020
📖New blog post: Fix an overloaded server (aka "My server is on fire what should I do?") https://t.co/iHrzflXP9m https://t.co/NCRHjaWGdJ
4/1
2020
@hdjirdeh Congrats!!
3/31
2020
@cramforce Work productivity = 0 today, but I think I successfully cancelled multiple Large Gatherings of Old People. Worth it.
3/13
2020
@benschwarz @fox Congrats!!
3/12
2020
DOM Change Breakpoints Use case: Identifying why a DOM node or subtree was modified. When the breakpoint is hit,… https://t.co/cbUrfG1hA9
3/11
2020
New LightWallet feature: firstPartyHostnames API: firstPartyHostnames: undefined | Array<string> - Use this to ov… https://t.co/7pMLDuDK34
3/10
2020
How to recursively expand the DOM tree in DevTools (& save yourself some clicking) Note: This may take a couple se… https://t.co/xgpuHnHDE4
3/6
2020
📊Example of "Per function" vs. "Per block" code coverage (New in Chrome DevTools 80) "Per block" is more granular… https://t.co/ZU1TyjBRzQ
3/5
2020
"Animated GIFs are huge" stats will never stop boggling my mind. Data from @colinbendell article:… https://t.co/ZTdLrgncht
3/4
2020
@sergeybedritsky @addyosmani imgproxy is great. I’ll add a mention to it in the article. I think at the time those… https://t.co/Ta2PdgTW0O
2/27
2020
📊Regex Lookarounds Cheatsheet Lookarounds use what comes before/after a string to decide whether it is a match. S… https://t.co/tox3e5iO1U
2/17
2020
Great doc on the sources of variance in Lighthouse scores: https://t.co/GdESsJfOsZ via @patrickhulce & @cjamcl https://t.co/GtkgGrPXaY
2/14
2020
Here's @katiehempenius on the value of performance budgets. Listen to the full episode at: https://t.co/xN9AMprunn https://t.co/HPrVEHvqpF
Retweeted by Katie Hempenius @ThomasBrodhead Oof. That's definitely a typo. Thanks for pointing this out. I just opened a PR to fix this: https://t.co/Ka0wOM3CEJ
2/13
2020
@mustafa_elnagar @____lighthouse @ChromeDevTools There's probably variance in the performance of that particular UR… https://t.co/zIGXSDSx2J
2/12
2019
Note on why this works: By default, in JS the wildcard '.' doesn't match the newline char. So the `.*(something).*`… https://t.co/gIPDfhhpSsLately I’ve been wishing that you could use regexes with browser ctrl+F. This isn't quite that - but it works prett… https://t.co/ATSajYMrp2
12/17
2019
There are 370 million(!) registered domains. That works out to 1 for every ~20 people (though I doubt that they ar… https://t.co/78d4cbNAnS
12/16
2019
Keep a process running after ssh logout (without tmux): $ nohup <COMMAND> & Example: $ nohup node script.js & 👉… https://t.co/KDv3BguxxA
12/12
2019
@rrinat The “gross” was mostly tongue-in-cheek. That being said I probably would still consider it a tiny bit of a… https://t.co/qubpTNqNrJOops, my ES6 terminology needs some work. This is actually an example of the object literal shorthand syntax rather… https://t.co/yQCqRGTi39Gross ES6 hack that I’m digging: Use this: console.log({catName}); To replace manually labeling variables when de… https://t.co/j2fFfHRxt5
11/22
2019
Get Chrome User Experience Report (CrUX) data without writing any SQL: 👉 https://t.co/tcvotPn8Z9 (CrUX = A datase… https://t.co/ElYF0DrKrP
11/19
2019
This quote has been stuck in my head all week: “Civilization advances by extending the number of important operati… https://t.co/nNWoBlm9uk.@katiehempenius and I are hosting an upcoming #AskChrome session about the Web Almanac! Check it out at… https://t.co/KcPaOn4Md2
Retweeted by Katie Hempenius
11/15
2019
Great article on the relationship b/w power consumption & page content. TLDR; To minimize power consumption "let t… https://t.co/8Winx43h1T
11/5
2019
@gilberto_cocchi + @JoshStodola Yeah I'd love to see a file size breakdown of animated-only GIFs - unfortunately I… https://t.co/GDR484tjElIt appears that 62% of GIFs on the web are... tracking pixels. 😭😭😭(I had thought they were all dog videos.) Addit… https://t.co/twN0DKDPZB
10/29
2019
@simevidas In theory, yes; in practice, I think it still needs a bit more time for the tooling to catch up. IMO a m… https://t.co/kfbBpnmloH
10/22
2019
Re: "Meaningful Content" A less TLDR; explanation of FMP is that it is: "the paint that follows the biggest layout… https://t.co/FIiQBCk0gjTLDR; of Paint Metrics - First Paint (FP): when *anything visually different than before* is rendered - First Con… https://t.co/1SBih90mfG
10/21
2019
@benschwarz 😂 don't tempt me - if you could solidly adhere the wheels to the couch that sounds like great fun. nah,… https://t.co/bXY043J2Uu
10/19
2019
Learn about Web Performance on ep 52 of Real Talk JavaScript w/ Katie Hempenius 👉https://t.co/3t0YearnKU cc… https://t.co/WNJiPPINkD
Retweeted by Katie Hempenius4th Party Content: - Occurs when 3rd party content loads content from a 4th party. - This chain can go on forever (… https://t.co/iGkycNPXcz
10/9
2019
Audit the runtime performance of your ESLint rules: $ TIMING=1 eslint This sets eslint's "TIMING" environmental v… https://t.co/3bga7v47qm
9/30
2019
(By the awesome @patmeenan)🎞How to generate a video that compares the performance of two sites: 1. Go to https://t.co/MbP6FcaP6M 2. Visual Co… https://t.co/Q4RkcqfjUT
9/26
2019
📗 Basic image manipulation using Thumbor: https://t.co/ZQ4OgdyqQd This includes a demo server so you can go strai… https://t.co/YqOzDGlnmJ
9/24
2019
@JamesWee_ @reCAPTCHA @addyosmani Oh wow. Thanks for pointing this out. I’ll see if something can be done about this.
9/6
2019
4/ Also, it's kind of sobering to realize that if we're not bumping into these sorts of constraints as a society, i… https://t.co/HCm43tj3ib3/ In the long-term, it will enable cool new things. But as humans, we will still find complaint w/ the cool new th… https://t.co/6oPz1jP12H2/ Life is greedy & there's no precedent for humans being satisfied by new resources or capacities. (Remember broad… https://t.co/slM6xq1oC2My *opinion* on 5G: 1/ I think 5G is important because it *enables* new technologies/use cases (e.g. self-driving… https://t.co/qZ72eZfbTY
8/25
2019
Blog post on how Layer 3 issues impacted web performance at Trivago: "we began testing this “first mile” of CDN to… https://t.co/cwqFXExyzX @tbaldauf Whoa, that's really interesting. Thank you for writing up that blog post! @JoaquimLey @dalmaer Depends on carrier, but yeah, still a thing (I think bc they want you to buy $$$ plan where it… https://t.co/av1ZjfwDHY
8/23
2019
SMS messages work out to ~$1400/MB. 🤯🤯🤯 To put that in perspective, at those prices, loading the average webpage w… https://t.co/C8jKs5WWtw @AnkitJainOAJ Yep, LightWallet is merged into Lighthouse. But you won't see it in the Lighthouse report unless you'… https://t.co/SCSErVikoF @ericlaw @ChromiumDev FWIW I think in some cases this can be explained by “the most performant image is the one alr… https://t.co/iM0pZPPksz
8/22
2019
One more anecdote: Over 10 runs, Wikipedia's Time to First Byte (TTFB) varied by *under a millisecond* (12.7-13.5m… https://t.co/vLHhJfhSyi3/ For contrast, here's an example of a different site. The medians are in the same ballpark, but the standard devi… https://t.co/jDxbARBDi32/ For example, these are the results of running traces on Twitter dot com. Over 10 runs, the standard deviation fo… https://t.co/FAjKXvHfeO1/ After aggressively perf tracing the internet, I have the following hot take: Performance timing metrics aren't… https://t.co/ofFNYpZbJvTbh the most difficult problem in computer science is getting legal approval to open-source an empty repo.🤣 ... 🎉🎉… https://t.co/71p6SrluHs
8/21
2019
Aaand it’s here! Learn all about wrangling third-party JS 👉 💡 What&why: https://t.co/6twvQEpisX 🛠 DevTools tips&t… https://t.co/ujT11tfJQF
Retweeted by Katie Hempenius
8/15
2019
👇 New https://t.co/f74Xe0gfbI content on image CDNs. Image CDNs make it easy to create performant, highly optimized… https://t.co/RvfFacx5Hp
8/14
2019
Interesting repo on how GitHub determines which languages are used in a project: https://t.co/WDNejN03wr TLDR; ev… https://t.co/k2wAX4IV98*Non-awkwardly* navigate a performance trace // Obviously a mouse works too, but I've been finding this really con… https://t.co/gHJqLdyqD8 @dacxp I think you're totally right about video's growth- but bc distribution of video is so skewed (e.g. Netflix &… https://t.co/7dHnUIPr0d @HenriHelvetica @marpme_ @dacxp @HTTPArchive Ack, I can't believe I forgot to mention the data source 🤦‍♀️ Yep, +1… https://t.co/Mp3RklgKAW~2/3rds of the web is images. // % of web that is images, by bytes 2019: Mobile: 68% Desktop: 69% 2015: Mobile: 62% Desktop: 63%
8/13
2019
Why do user-agent strings start w/ "Mozilla/5.0" if they're not Mozilla? TLDR; During the "browser wars", IE began… https://t.co/foUNarwquQ
7/25
2019
⬇️ Please consider taking this survey if you use images on your site. The results will be shared in a couple of wee… https://t.co/KitXYOKmEw @styfle @AdrieanKhisbe @anvaka Yep, very true. ~5% of the data set wasn't handled (e.g. coffee-script) & had to be… https://t.co/IOfFnz0wZW @maranomynet @AdrieanKhisbe @anvaka The trend line is based on minified files (see horizontal axis)
7/23
2019
@maranomynet @AdrieanKhisbe @anvaka Mostly, it's due to repetition. Generally speaking, the larger the file, the mo… https://t.co/m8lFbghvaF📊 The impact of file size on compression effectiveness Bigger input file --> Better compression Methodology: bund… https://t.co/6VT2aFABnF
7/22
2019
The recent improvements in smartphone "cameras" are largely due to improvements in their algorithms (ML & non-ML),… https://t.co/s1pl7hnhVS
7/21
2019
Convert a Google Doc to markdown: https://t.co/Hcs0rkRGC9 This shows up as an "add-on" (see pic) & is super handy.… https://t.co/7FxJomS18p
7/19
2019
How to use Squoosh as a desktop app for image optimization: - Go to https://t.co/fkniA3hSvj - Select "Install Squo… https://t.co/gSKw6CSksf
7/16
2019
"Radical Software" magazine covers from the early 70's. 🔥 Despite the name, the magazine discussed the emerging fi… https://t.co/yFukAMN3io
7/13
2019
Great article on the strategies @github used to remove jQuery from their codebase. Applicable w/ other technologies… https://t.co/bU6Rih6uf8
7/12
2019
@rowan_m 😂. Honestly, they do look sketchy & I'm probably now flagged in a bunch of databases. See u soon TSA 😘.Image Bombs 💣 An image that becomes way larger (e.g. 6MB --> 140GB) when decompressed, thereby crashing the system… https://t.co/Ekrz0UEPW0 @sitnikcode This is awesome! Very cool. @Paxxi Yeah in my experience “not many people at work” and “code freeze” are almost synonymous. “Debugging Prod Fro… https://t.co/mrQEGKt5rb @sitnikcode What tool does this refer to?
7/3
2019
📊 When is everyone in code freeze? Apparently the last week in December. This is preceded by a little "oops, we b… https://t.co/m2GBXS9cOt
7/2
2019
If you're researching npm packages, https://t.co/Pi6XRyIM6p is great tool. It shows a package's: - bundle size (mi… https://t.co/1uHz06yenU @lfredolo Yes, the RFC will be in the Lighthouse repo. @lfredolo Yep, that budget would only to galleries and be ignored when auditing an article page. I really like tha… https://t.co/BNcHRrEZuI @lfredolo Lighthouse will still only audit one page/run, so internals & flags shouldn't be affected. Although budge… https://t.co/ORY6uNoCFO
7/1
2019
📊 budget.json V2 - Proposed features I’d love to hear about: - Additional features you’d like to see - Any opinion… https://t.co/DcgTjRe63h
6/28
2019
- 3.9 billion (51.2% of the global population) uses the internet. - 2018 was the first year that the majority of p… https://t.co/XKpRCfzn1B
6/23
2019
@harleenkbatra @DasSurma @jsconfeu @Paul_Kinlan I think this is very much a personal preference thing, but for me p… https://t.co/q5ZfeXB7rRIf you’re looking for reading material, I just noticed that the @jsconfeu website includes transcripts of all talks… https://t.co/hHWTQ6Xo9b
6/22
2019
https://t.co/f74Xe0gfbI now has instructions on adding performance budgets to Lighthouse. https://t.co/wdScT45YvKhttps://t.co/7jSqPfyfz0
6/19
2019
📊 Taxonomy of Speed Tooling This shows where many performance monitoring tools (for both RUM & synthetic) get thei… https://t.co/i2nC4zrnVH
6/18
2019
@simevidas @DenisTRUFFAUT @addyosmani Type has not been implemented yet - but effectiveType has. @WassonCarol @Marfoogle EWR. One of the electrical generators wasn’t working.
6/17
2019
2/2 There's also an API: // I was avoiding Twitter's link formatter, so this will copy-paste w/ extra spaces. $… https://t.co/rNCi3Jau8j1/2 The *Aggregate* Performance of a Site You can get performance data on all pages in an origin (i.e. not just th… https://t.co/3O4dn8xSce
6/14
2019

0