Reposted by Stephen CooperDominik 🔮 @tkdodo.eu · 13/11/2025🤔 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? ⬇️webforgeconf.comWeb Forge Conf - A new kind of web developer conferenceA community funded, not for profit event built for creators and the developers who use their work. Less stage. More story. All signal. 1512020
Stephen Cooper @scooper.dev · 16/09/2025It was a pleasure to be able to speak and share what I had learnt while reducing the bundle size of AG Grid. 040
Stephen Cooper @scooper.dev · 05/08/2025Sorry to hear that, hope something comes along for you quickly! 010
Reposted by Stephen CooperAngular Connect @angularconnect.com · 15/07/2025🎉 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 022
Stephen Cooper @scooper.dev · 01/06/2025Oh I didn't quite leave it to the last day to apply then 🤣 010
Stephen Cooper @scooper.dev · 29/05/2025With 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? 010
Stephen Cooper @scooper.dev · 15/05/2025Just applied to speak @angularconnect.com 2025! Yes it's coming back!!! 🥳 020
Stephen Cooper @scooper.dev · 09/05/2025What 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. 010
Stephen Cooper @scooper.dev · 08/05/2025Ah looks like it has been raised as a Chrome issue but doesn't seem to have gone anywhere issues.chromium.org/issues/40488...issues.chromium.orgChromium 120
Stephen Cooper @scooper.dev · 08/05/2025Ah 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...stackoverflow.comWhat is "Run console task" in Chrome performance profilingI'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 000
Stephen Cooper @scooper.dev · 07/05/2025When 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. 010
Stephen Cooper @scooper.dev · 07/05/2025I 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? 331
Stephen Cooper @scooper.dev · 02/05/2025It's always great to hear how AG Grid has positively impacted not only the applications but a developer too! ❤️ 121
Reposted by Stephen CooperLars Hanisch @flensrocker.de · 24/02/2025I 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/B8qrGmAbJFUyoutu.beHow We Reduced the Bundle Size of AG Grid w/ Stephen Cooper 🌟 #WeLearnTogether | TechStackNation.comYouTube video by Tech Stack Nation 041
Reposted by Stephen CooperJason Cohen @asmartbear.com · 07/02/2025Smart 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 developmentlongform.asmartbear.comTech Support is salesTech 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. 1213
Stephen Cooper @scooper.dev · 01/02/2025I have thought of switching them all private and then fixing the build for the ones that are actually required. Similar approach really 😝 130
Stephen Cooper @scooper.dev · 01/02/2025Have heard of that, will have to check if it can work on the class level. 020
Stephen Cooper @scooper.dev · 01/02/2025Does 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...) 241
Stephen Cooper @scooper.dev · 30/01/2025I 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-...epicweb.devWhy I Won’t Use JSDOMExplore how JSDOM's browser simulation works, and learn front-end testing approaches using Vitest Browser Mode for direct browser testing and native APIs 041
Stephen Cooper @scooper.dev · 28/01/2025I 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! 192
Stephen Cooper @scooper.dev · 30/12/2024And then a great follow up to my talk is this blog post tkdodo.eu/blog/ref-cal...tkdodo.euRef Callbacks, React 19 and the CompilerReflecting on useCallback, how the Compiler changed my thinking about it, and what React 19 has in store for Ref Callbacks... 000
Reposted by Stephen CooperReact Summit @reactsummit.gitnation.org · 30/12/2024😎Check out the talk recording "What Refs Can Do for You" by @scooper.dev. Watch it here⤵️ gitnation.com/contents/wha... 131
Stephen Cooper @scooper.dev · 17/12/2024Introduction Over the past 15 years, the JavaScript ecosystem has expanded rapidly,... dev.to/filipsobol/d...dev.toDownsize your JavaScript: Mastering Bundler OptimizationsIntroduction Over the past 15 years, the JavaScript ecosystem has expanded rapidly,... 010
Stephen Cooper @scooper.dev · 17/12/2024Where can I find out more about how this is being used? Is this used to drop code during an application build? 010
Stephen Cooper @scooper.dev · 14/12/2024And finally we have worked hard on providing codemods to do the majority of the upgrade for you, so do try and take advantage of that! Especially if you are an existing module user, the codemod will update all you import statements for you! ag-grid.com/react-data-g...ag-grid.comReact Grid: Upgrading to AG Grid 33 | AG GridSee whats new in AG Grid, view a full list of changes and migrate your React Data Grid to v33 with our Codemods. Download AG Grid v33.0.0 today: The best React Table & React Data Grid in the world. 010
Stephen Cooper @scooper.dev · 14/12/2024Also should call out the new Theming API which means no more need for importing those CSS files above your component/ somewhere in the app. Having the CSS in the code also means it is split per module adding even more savings. ag-grid.com/react-data-g...ag-grid.comReact Grid: Migrating to the Theming API | AG GridMigrating to the Theming API Download AG Grid v33.0.0 today: The best React Table & React Data Grid in the world. 110
Stephen Cooper @scooper.dev · 14/12/2024Re-working our internals means we can now tree shake from a single bundle, greatly simplifying the path to minimal bundle size for our users. Not to mention the simplicity gains for us internally being able to work with just 2 packages instead of getting close to 20 separate ones. 110
Stephen Cooper @scooper.dev · 14/12/2024This release has to be one of the greatest step forwards we have ever implemented! Really proud of what we have managed to achieve here. blog.ag-grid.com/whats-new-in...blog.ag-grid.comWhat's New in AG Grid 33What's new in AG Grid 33 - bundle size reduction via modularization, async context menu items, customization of default column header content 100
Stephen Cooper @scooper.dev · 09/12/2024Some excellent additional information concerning ref callbacks 010
Stephen Cooper @scooper.dev · 05/12/2024Looking forward to making that change soon. Just having to give users time to update their legacy build tools. 000
Stephen Cooper @scooper.dev · 05/12/2024Do you also touch on the difference between build target output? For example using #private syntax but down leveling under es2022 is a big no no 110
Stephen Cooper @scooper.dev · 05/12/2024Yes a little of that, but also some cases of removing ... spread operators as that looked to prevent the object being spread from being tree shaken if the target object was not used. 000
Stephen Cooper @scooper.dev · 05/12/2024The difference can be huge, I am currently updating our library to make the code more "resilient" to these differences. The changes involved are so small which is even scarier to be honest as a library author. Definitely need strong tests around this as it can be so easy to regress. 120
Stephen Cooper @scooper.dev · 05/12/2024Is this a trade off for speed of build times with esbuild becoming the default in v19? Or is this offset by people using deferable components and hydration? 110
Stephen Cooper @scooper.dev · 04/12/2024This is another ticket that describes more details and has some useful examples. github.com/evanw/esbuil...github.comNot able to treeshake library bundled with esbuild · Issue #2171 · evanw/esbuildAwesome work on the esbuild library. It has saved us lot of time with deployments. // src/Checkbox.ts export const Checkbox = { Root: CheckboxRoot, // this is a component defined above Indicator: C... 110
Stephen Cooper @scooper.dev · 04/12/2024This might actually be relevant github.com/evanw/esbuil...github.comHow to handle esbuild tree shaking in author library · Issue #1573 · evanw/esbuildI am the author of https://github.com/straker/kontra/ and would like to know what I need to change in my library in order for esbuild to properly tree shake it. Tree shaking works as expected when ... 120
Stephen Cooper @scooper.dev · 04/12/2024Actually also looks like spreading into an object can cause items from the spread object not to be shaken. This is something I want to try just in esbuild itself to see if this is separate from Angular. But that might need to wait for tomorrow 110
Stephen Cooper @scooper.dev · 04/12/2024Yes, definitely heard that too. In fact our bundle size tests caught a regression where an import like import * as _utils from 'path'; Caused none of that code to be tree shaken. This may also be dependent on the tsconfig build target and the format of the output code 110