Lukas Taegert-Atkinson
Lukas Taegert-Atkinson
Current maintainer of RollupJS. After finishing my PhD studying the mathematical properties of black holes, I decided to go for less substance from then on and follow my passion of becoming a professional software developer. For the last six years, I have been doing full-stack consulting work for various clients at TNG Technology Consulting GmbH. This includes a big focus on DevOps: tuning Node servers, tending to Kubernetes clusters and orchestrating CI/CD pipelines are an important part my work. During this time, I also stumbled upon RollupJS, and while I originally only wanted to push a few improvements to their dead code elimination algorithm, I ended up rewriting it from the ground up. And in the process, I accidentally became acting maintainer of that project :) Since 2017 I have been continuously working on further improving tree-shaking, adding code-splitting together with Guy Bedford, and many other things to make it a great tool not only for optimizing JavaScript libraries but also for advanced and custom build processes at big companies like Github, Bloomberg, Salesforce and many others.
DevOps.js Conf 2021DevOps.js Conf 2021
28 min
Owning your Build-step – Owning your Code
Ever since JavaScript has become a language for writing applications, build tools and especially bundlers have been around. They solve the discrepancy between writing code that is easy to maintain and writing code that loads efficiently in a browser. But there are advantages to bundling JavaScript code that go well beyond the browser, from cloud functions to servers to command line tools.
RollupJS is special in that it was always designed from the ground up to be a general purpose bundler rather than a frontend specific tool. In this talk, we will have a look in what way other scenarios can profit from bundling. But more importantly, I will show you how RollupJS not only generates superior output in many situations, but how easy it is to tailor its output to custom requirements and non-standard scenarios. We will see how to patch up code, mock and replace dependencies, elegantly inject build information and control the chunk generation when code-splitting, all with a just few lines of code.