Julian Jandl
Julian, based in the beautiful city of Vienna, Austria, is an accomplished frontend engineer, trainer, and consultant specializing in Angular and web performance optimization. His expertise extends to conducting performance audits for client applications, identifying and fixing performance bottlenecks. Julian also imparts his knowledge through engaging workshops, where he shares insights & teaches on both web performance and the intricacies of Angular. He continually explores cutting-edge technologies to enhance the speed of the web on a large scale. Julian actively contributes to the community. He shares his knowledge through public workshops, talks at conferences and meetups, and actively contributes to the open-source landscape. He is one of the core contributors to the RxAngular project, solidifying his commitment to the evolution of the Angular ecosystem.
Sessions
-
Cut My Task Into Pieces - This is Concurrent Mode
talk
JavaScript is single threaded. Every script our application executes runs on the main thread. Keeping the execution time as short as possible is crucial for the runtime performance and responsiveness of our applications. Too long running scripts will result in bad (Core) Web Vitals like INP and TBT. Reducing the computation time of function executions of course is the desired solution, but often not possible or the most costly option. In this talk, we’ll uncover another solution to this problem, the Concurrent Mode. Having profound knowledge about how to orchestrate work on the main thread is key to understanding how the Concurrent Mode works. We’ll start with a deep dive into the JavaScript Event Loop and explore the characteristics of different scheduling techniques. Building up on the scheduling techniques, I will explain how to implement a custom scheduler. It enables to prioritize and execute work with the notion of frames, allowing the browser to render the application at a configurable frames per second rate. Finally, we’ll wrap things up with a live demonstration on how to apply the Concurrent Mode to angular applications. We’ll progressively improve the (Core) Web Vitals INP and TBT on this journey. The Live Demo also covers how this technique integrates nicely with the upcoming zoneless features introduced with Angular 17+