Stephen Cooper's Avatar

Stephen Cooper

@scooper.dev

Senior Developer AG Grid @ag-grid.bsky.social Conference speaker and blogger Typescript, Angular and React Performance ✝️ 4 Children, 2 πŸ•

509
Followers
449
Following
92
Posts
06.02.2024
Joined
Posts Following

Latest posts by Stephen Cooper @scooper.dev

Web Forge Conf - A new kind of web developer conference A community funded, not for profit event built for creators and the developers who use their work. Less stage. More story. All signal.

πŸ€” What if there were a conference without talks? Just hanging out with OSS maintainers & builders, seeing what they’re working on, and learning cool stuff by actually talking to people.

🀯 What if hallway track turned into the whole event!

πŸ’‘ @tannerlinsley.com is exploring it. Interested? ⬇️

13.11.2025 09:36 πŸ‘ 121 πŸ” 20 πŸ’¬ 15 πŸ“Œ 8

That sounds great!

15.11.2025 17:40 πŸ‘ 1 πŸ” 0 πŸ’¬ 0 πŸ“Œ 0

It was a pleasure to be able to speak and share what I had learnt while reducing the bundle size of AG Grid.

16.09.2025 14:24 πŸ‘ 2 πŸ” 0 πŸ’¬ 0 πŸ“Œ 0

Sorry to hear that, hope something comes along for you quickly!

05.08.2025 20:53 πŸ‘ 1 πŸ” 0 πŸ’¬ 0 πŸ“Œ 0
Video thumbnail

πŸŽ‰ Just 2 months until AngularConnect!
@scooper.dev from @ag-grid.bsky.social shares why you should be there!

Our Premium Sponsor @ag-grid.bsky.social offers blazing-fast Charts!
πŸ†“ Free forever
πŸš€ Built for big data
πŸ“Š Financial-ready
🏒 Enterprise features - no trial needed
πŸ”— ag-grid.com/charts

15.07.2025 13:45 πŸ‘ 2 πŸ” 2 πŸ’¬ 0 πŸ“Œ 0

Can't wait for this one!!!

20.06.2025 12:08 πŸ‘ 6 πŸ” 0 πŸ’¬ 0 πŸ“Œ 0

Ah getting major FOMO now!

11.06.2025 21:18 πŸ‘ 2 πŸ” 0 πŸ’¬ 0 πŸ“Œ 0

Oh I didn't quite leave it to the last day to apply then 🀣

01.06.2025 19:45 πŸ‘ 1 πŸ” 0 πŸ’¬ 0 πŸ“Œ 0

With an Angular app that includes an Angular lib I am seeing different bundle sizes based on changes in the versions used.

Lib 17 + app 19 smaller than lib 18 + app 19

But lib 20 + app 20 is significantly smaller than both.

No code changes, just package.json

Is this expected / known about?

29.05.2025 21:12 πŸ‘ 1 πŸ” 0 πŸ’¬ 0 πŸ“Œ 0

Oh exciting!

15.05.2025 19:15 πŸ‘ 3 πŸ” 0 πŸ’¬ 0 πŸ“Œ 0

Just applied to speak @angularconnect.com 2025!

Yes it's coming back!!! πŸ₯³

15.05.2025 17:56 πŸ‘ 3 πŸ” 0 πŸ’¬ 0 πŸ“Œ 0

What makes this even more interesting is that Chrome 136 looks to have improved things.

But also the performance only really goes down when DevTools is open.

09.05.2025 16:19 πŸ‘ 1 πŸ” 0 πŸ’¬ 0 πŸ“Œ 0
Chromium

Ah looks like it has been raised as a Chrome issue but doesn't seem to have gone anywhere

issues.chromium.org/issues/40488...

08.05.2025 16:04 πŸ‘ 2 πŸ” 0 πŸ’¬ 1 πŸ“Œ 0
Preview
What is "Run console task" in Chrome performance profiling I'm seeing some very slow performance in my JS code in an electron app I am trying to performance profile my application but the term that comes up is "Run console task" I have attached a

Ah maybe this is actually a Chrome related issue.

Need to work out what is causing the following to take 50% of the performance profile.

"Run Console Task"

stackoverflow.com/questions/79...

08.05.2025 15:57 πŸ‘ 0 πŸ” 0 πŸ’¬ 0 πŸ“Œ 0

When profiling it looks to be related to the improved Error reporting that creates a JavaScript Error for each element.

This really starts adding up if you have lots of elements on a page.

07.05.2025 19:40 πŸ‘ 1 πŸ” 0 πŸ’¬ 0 πŸ“Œ 0

I am in the process of evaluating the changes in React performance between v18 and v19.

Prod fairly stable.

Dev 19 is significantly slower.

I know we should never measure performance in Dev but in reality a lot of developers are doing just that!

Has anyone else noticed this?

07.05.2025 19:07 πŸ‘ 3 πŸ” 1 πŸ’¬ 3 πŸ“Œ 0

It's always great to hear how AG Grid has positively impacted not only the applications but a developer too! ❀️

02.05.2025 15:12 πŸ‘ 3 πŸ” 1 πŸ’¬ 1 πŸ“Œ 0

added a little diagram at the end

26.04.2025 01:30 πŸ‘ 32 πŸ” 2 πŸ’¬ 2 πŸ“Œ 0
How We Reduced the Bundle Size of AG Grid w/ Stephen Cooper 🌟 #WeLearnTogether | TechStackNation.com
How We Reduced the Bundle Size of AG Grid w/ Stephen Cooper 🌟 #WeLearnTogether | TechStackNation.com YouTube video by Tech Stack Nation

I used JS private members for a long time, because they are awesome and really private.
But I haven't thought about that the bundler can mangle the names, because they are private!
All makes sense now... Thank you, @scooper.dev

youtu.be/B8qrGmAbJFU

24.02.2025 20:08 πŸ‘ 4 πŸ” 1 πŸ’¬ 0 πŸ“Œ 2
638 Files changed  +258 -16,620

638 Files changed +258 -16,620

It's been a good day 😊

Always nice deleting code

14.02.2025 18:00 πŸ‘ 3 πŸ” 0 πŸ’¬ 0 πŸ“Œ 0
Preview
Tech Support is sales Tech support isn’t just troubleshooting; it’s the face of your company. Which means it’s your brand, your positioning, and when it’s excellent, it is sales.

Smart Bear would have failed had I not listened to what customers were really saying.

And almost always they were saying it via tech support, not via interviews, not via reviews, not via feature-submission forms.

Support == product development

07.02.2025 17:09 πŸ‘ 21 πŸ” 3 πŸ’¬ 1 πŸ“Œ 0

Nice work! πŸ˜ƒ

02.02.2025 20:29 πŸ‘ 2 πŸ” 0 πŸ’¬ 0 πŸ“Œ 0

I have thought of switching them all private and then fixing the build for the ones that are actually required. Similar approach really 😝

01.02.2025 14:24 πŸ‘ 3 πŸ” 0 πŸ’¬ 1 πŸ“Œ 0

Have heard of that, will have to check if it can work on the class level.

01.02.2025 13:04 πŸ‘ 2 πŸ” 0 πŸ’¬ 0 πŸ“Œ 0

Does anyone know of a tool that can run over a Typescript code base and suggest possibly unused public methods?

What to automate the process of finding unused methods following code changes with the aim of minimal bundle size.

(I don't fancy doing find for 500 that are marked public...)

01.02.2025 12:34 πŸ‘ 4 πŸ” 1 πŸ’¬ 2 πŸ“Œ 0
Preview
Why I Won’t Use JSDOM Explore how JSDOM's browser simulation works, and learn front-end testing approaches using Vitest Browser Mode for direct browser testing and native APIs

I am relieved to see this view point expressed from a testing authority as this is what we have started telling people in support.

I can't imagine the time that has been lost to unexpected test failures, especially when "it works fine in my browser"

www.epicweb.dev/why-i-won-t-...

30.01.2025 22:34 πŸ‘ 4 πŸ” 1 πŸ’¬ 0 πŸ“Œ 0

I spent yesterday converting a load of AG Grid Angular examples to use signals.

I love the DX and how easy it has become to enable OnPush with confidence.

computed - the way you can just use signals and let Angular take care of the dependency updates is πŸ”₯!

Good work @angular.dev team!

28.01.2025 08:49 πŸ‘ 8 πŸ” 2 πŸ’¬ 1 πŸ“Œ 0

Thanks for sharing!

23.01.2025 20:23 πŸ‘ 2 πŸ” 0 πŸ’¬ 0 πŸ“Œ 0
Preview
Ref Callbacks, React 19 and the Compiler Reflecting on useCallback, how the Compiler changed my thinking about it, and what React 19 has in store for Ref Callbacks...

And then a great follow up to my talk is this blog post

tkdodo.eu/blog/ref-cal...

30.12.2024 13:36 πŸ‘ 0 πŸ” 0 πŸ’¬ 0 πŸ“Œ 0
Video thumbnail

😎Check out the talk recording "What Refs Can Do for You" by @scooper.dev.

Watch it here‡️
gitnation.com/contents/wha...

30.12.2024 13:23 πŸ‘ 3 πŸ” 1 πŸ’¬ 1 πŸ“Œ 0