Change. Commit "fix CI". Push. Fail. Change. Commit "fix CI". Push. Fail. Change. Commit "fix CI". Push. Fail. Commit "fix CI". Push. GREEN! ... How many times have you done this?! I surely have done it quite a lot 🥲
Act promises to make our life better by allowing us to run GitHub actions locally, even before you commit and push (and fail!)... I am quite excited about this project and I'll certainly be using it!
One of the new standards to watch for is devContainers (or development containers). It's a new standard that aims to leverage containers to create a reproducible development environment for teams. This article, explains how to use this idea inside Visual Studio Code. You can also do it to access remote environments!
There's always space for some nerdy tech humor! Last week I discovered this new website called comiCSS which gives you a massive collection of funny webcomics about CSS. The best part? It's coded in CSS, what did you expect?!
JavaScript/ECMAScript is an ever-evolving language. But how is the scope of ECMAScript is changing as JavaScript matures; and where the opportunities for adding new features are coming from? This article provides some interesting opinions to understand where the future of the language of the web might go!
If you use Lambda, you know that cold starts is one of the most annoying things about it. It's not always a big deal, but when it is it's a complex one to fix. Recently AWS has started to introduce Proactive Initialization, a feature that observes the frequency of invocation of your lambdas and tries to pre-warm them before they get invoked. It's pretty neat and it might revolutionise serverless computing for good. Read this one if you are curious to find out more!
A new release of Node.js is out. This release isn't packed with a massive list of new features, but the one new thing that is there is pretty big IMHO: you can now write more reliable and predictable tests for time-dependent functionality. In fact, this new release includes MockTimers with the ability to mock setTimeout, setInterval from globals, node:timers, and node:timers/promises. Also worth calling out is that Node is adding support to the explicit resource management proposal to its resources allowing users of TypeScript/babel to use using/await.
If you are looking for a new backend web framework, Remult is a promising one. It is a CRUD framework for fullstack TypeScript which allows you to build end-to-end Type-safe CRUD Apps without much of the typical boilerplate.
Book of the week
Angular 2 Cookbook
by Matt Frisbie
This book covers all the most complicated Angular concepts and at the same time introduces the best practices with which to wield these powerful tools. It also covers in detail all the concepts you'll need to get you building applications faster. Often neglected topics such as testing and performance optimization are widely covered as well. A developer that reads through all the content in this book will have a broad and deep understanding of all the major topics in the Angular 2 universe.