Addy Osmani

medium.com/@addyosmani · Personal blog · on HN since 2014

Addy Osmani, a Google Chrome engineer, writes about JavaScript performance, progressive web apps, and AI-assisted engineering.

What HN saysHN links his posts on the cost of JavaScript and web performance, which spark long discussions about device speeds and web app design.
41HN people shared it
10linked it in comments
35stories submitted
582story points
7 months agolast shared
2014people per year2026

Most-shared posts

  1. 1
    The Cost of JavaScript in 2018
    9 people · 64 points · first shared 2018 · 6 comments on HN
  2. 2
    Photoshop is now on the web (2023)
    8 people · 10 points · first shared 2023 · 1 comments on HN
  3. 3
    JavaScript Start-up Performance
    5 people · 316 points · first shared 2017 · 130 comments on HN
  4. 4
  5. 5
    JavaScript Application Architecture on the Road to 2015
    4 people · 26 points · first shared 2014 · discussion on HN
  6. 6
    Progressive Web Apps with React.js: Part I
    2 people · 7 points · first shared 2016 · discussion on HN
  7. 7
    Offline Storage for Progressive Web Apps
    2 people · 6 points · first shared 2016 · discussion on HN
  8. 8
    Vibe coding is not the same as AI-Assisted engineering
    1 people · 18 points · first shared 2025 · 3 comments on HN
  9. 9
    Preload, Prefetch and Priorities in Chrome
    1 people · 12 points · first shared 2017 · discussion on HN
  10. 10
    Stop Using /Init for Agents.md
    1 people · 2 points · first shared 2026 · discussion on HN
  11. 11
    Chrome shows each active tab's memory usage
    1 people · 2 points · first shared 2023 · discussion on HN
  12. 12
    Exploring ES2016 Decorators
    1 people · 1 points · first shared 2015 · discussion on HN
  13. 13
    LLM coding workflow going into 2026
    1 people · 1 points · first shared 2026 · discussion on HN
  14. 14
    Start Performance Budgeting
    1 people · 1 points · first shared 2018 · discussion on HN
  15. 15
    A Pinterest Progressive Web App Performance Case Study
    1 people · 1 points · first shared 2017 · discussion on HN

What HN people wrote when they linked it

menaerus · 2023-11-02
I have almost no exposure to JS but what I have seen so far in WASM projects didn't seem to require that much of a non-usual work but, of course, YMMV. To me the most challenging part seemed to be in the domain of debugging when things would go south because all of the sudden you have to become very intimate with how things work under the hood and across the whole stack: JS -> V8 -> WASM runtime -> Emscripten -> C++. There's not many people capable of doing that job. > user experience feels un-browser-like Perhaps Photoshop is not the classical example but I think it's one of the most craziest ones out there - humongous and extremely complicated C++ codebase consisting of every imaginable optimization and heavy lifting deployed as a WASM "plugin". [1] https://medium.com/@addyosmani/photoshop-is-now-on-the-web-38d70954365… [2] https://web.dev/articles/ps-on-the-web
ksec · 2020-04-16
1163 Comment right now, ~800 Are about Size of Devices. I thought there was another important point. The current entry level iPhone; iPhone SE 2020 with A13 is now faster in Single Threaded performance than ALL current shipping Android, including Flagship Android. And judging by the Qualcomm roadmap, this will likely remain the same in 2021 as well. This is important if you are doing or using Web Apps like Discourse which requires JS processing. The Cost of javascript is still huge. [1] [2]. And While Mobile Apps are well optimised to take advantage of multiple cores, it will still be bounded by Amdahl's law[3]. And a point on devices size. Japan, the nation which prefer single handed usage and small size Smartphone, and has a hand size smaller than average, median or general US / EU population, has overwhelmingly voted with their pocket on the 4.7" Devices, and not the previous 4" iPhone SE. Even During the iPhone 7, iPhone 8 era. So I do suggest before people writing off 4.7" as being large, please try and give it a go first. Another Point worth pointing out, once the tech for FaceID Shrinks to small enough or could be done under display, a 4.7" Edge to Edge Face ID Design would be exactly the same size as the previous iPhone SE. I believe this could be the long term goal for Apple. [1] https://medium.com/@addyosmani/the-cost-of-javascript-in-2018-7d8950fb… [2] https://v8.dev/blog/cost-of-javascript-2019 [3] https://en.wikipedia.org/wiki/Amdahl%27s_law
chubot · 2020-02-11
Why do you think you lose personalization? That's an independent issue. I don't mean the site is completely static. I mean the site is rendered on the server, like how 99% of websites worked before 2010 or so, including Google's. Those sites were personalized. A shorthand for the argument is jQuery vs. React. jQuery enhances a document; React "takes over" the page to give you an app. There are limitations of jQuery which is why I didn't say that specifically, but that's the general idea. ---- I'm finding in the last 5 years that people "forgot" how websites were made. It seems like the "default" mode of thinking switched to SPA. SPA makes some things more convenient and other things less convenient, but it's totally independent of functionality, like whether the site is personalized or not. Ironically SPA seems to be so slow that people now render it on the server, which is totally bizarre to me. ---- Update: This comment in the same thread goes into the issue of state management, and performance: https://lobste.rs/s/jmmr3w/interview_with_drew_devault#c_6ppu3t There's a legitimate reason for the SPA architecture, but it comes with many downsides as well. Good article (which is ironically on Medium, a great example of a document turned into a terrible, slow app): https://medium.com/@addyosmani/the-cost-of-javascript-in-2018-7d8950fb… https://news.ycombinator.com/item?id=17682378
rvz · 2026-04-07
> Without the above, you run into the same issue devs would run into before AI - the codebase becomes an incoherent mess, and even AI can't untangle it because the confusion gets embedded into its own context. We have a term for this and it is called "Comprehension Debt" [0] [1]. [0] https://arxiv.org/abs/2512.08942 [1] https://medium.com/@addyosmani/comprehension-debt-the-hidden-cost-of-a…
peutetre · 2024-10-30
> I think the biggest company using wasm in production is figma (though there might be others) Amazon uses Rust to wasm for the Prime video app and Google uses Java to wasm for Google Sheets. Both get higher performance and lower memory usage versus JavaScript: https://www.amazon.science/blog/how-prime-video-updates-its-app-for-mo… https://web.dev/case-studies/google-sheets-wasmgc Abode uses wasm in the web based version of Photoshop: https://medium.com/@addyosmani/photoshop-is-now-on-the-web-38d70954365…
MaxBarraclough · 2021-01-27
From what I can tell the short answer is that you're right, there's really no good technical reason for all that weight. Which is to say, it's just bloat. Much has been written on this. Here's an article from 2018. (I realise the irony in that it's hosted on Medium.) https://medium.com/@addyosmani/the-cost-of-javascript-in-2018-7d8950fb…
runako · 2018-10-31
You're parsing this too narrowly. I'm not making a claim about the purpose of each request. I'm looking at the totality and saying that maybe making 200 requests to display 200 words of content is overkill. The larger claim was that the pages are loaded with junk that affects the performance of the pages. The signal:noise ratio on modern sites is broken, and optimizing the junk can only accomplish so much. Developers need to advise stakeholders of the downside costs, performance among them, of loading sites with bloat. Here's an article I read a while back on the impact of specifically Javascript: https://medium.com/@addyosmani/the-cost-of-javascript-in-2018-7d8950fb…
BIackSwan · 2017-08-29
Question out of curiosity. Since Asana has started using react - are you using route based chunking/code splitting[1] to significantly speed up page load times? We have started using it for some pages (with some complex UI flows) and it has sped up the page load times by an order of magnitude. Makes the first interaction super snappy while the other stuff loads in the background. [1] - https://medium.com/@addyosmani/progressive-web-apps-with-react-js-part…

Keyboard shortcuts

/Search
j kNext / previous blog
EnterOpen selected blog
vVisit the blog site
fFollow / unfollow
lSwitch grid / list view
dSwitch dark mode
g hHome
g pTop posts
g tTopics
g fFollowing
g lLiked
g yHistory
g qFAQ
EscBack / close