Blog
The Butterfly Effect - How we gave the linter a 100x boost
Recently we had a significant performance improvement in our linter rule. In some benchmarks, the increase was up to 100x! While one would expect such a dramatic change to result from implementing a sophisticated algorithm, the reality is that this resulted from minor tweaks. Like the butterfly effect - changing a few lines of code created a ripple effect that tremendously improved the overall performance.
August 23, 2022 ・ 10 min readTaming Code Organization with Module Boundaries in Nx
As your repository grows, it becomes more challenging to organize and name the applications and libraries. This organization, when done right, feels intuitive and allows team members to easily find projects and understand how they work together. When done poorly, it results in a mess we eventually end up calling "the legacy software".
December 17, 2021 ・ 10 min readSpeeding up computations in GitHub/CircleCI workflows with Affected Commands
One of the most exciting features of Nx is using the project graph to run the target commands. This article exposes a bit of magic behind the affected commands, explains the common use cases, and shows you how to effectively use them in your CI environment.
August 16, 2021 ・ 6 min readResponsive Angular Components
Ever since mobile devices became capable of accessing the web and showing web pages, it became obvious that not all web pages are usable on a small screen. Today most websites implement responsive design, but often at a cost of extra DOM. This post will show you how to solve that last step in Angular.
November 04, 2020 ・ 12 min readToday I learned - ReturnType<T>
In TypeScript we often need to deal with third-party and/or native functions and based on the implementation their return types might differ. Luckily, TypeScript has a trick up the sleeve how to resolve them.
September 04, 2020 ・ 2 min readParsing ISO 8601 duration
One of the lesser-known parts of the ISO 8601 standard is the duration specification. In this post we will learn how to parse it and construct a simple Angular pipe for template automation.
July 10, 2020 ・ 4 min readToday I learned - Sentence case in CSS
CSS provides an amazing toolset for style manipulation, but when it comes to text manipulation you often need to resort to JavaScript for additional help. However, CSS has many tricks up his sleeve you might not be aware of.
June 26, 2020 ・ 2 min readImmutable arrays and objects
Recently there has been an explosion of popularity of libraries like Redux and NGRX. One common requirement they have is an immutable state. Switching to the immutable state helps us to more easily reason about our state of the application and to easily track changes. It also helps us to avoid an unplanned side effect.
July 19, 2019 ・ 10 min readYou don’t need a full-stack developer
Hiring a developer is like scouting a new band member. You are looking for someone with a specific skill, who will match your spirit, doesn’t have a band already or is willing to change a band for the perks you are offering.
November 27, 2018 ・ 4 min readA different approach to RxJS - Cooking with RxJS
The simplest things are often the hardest to learn. Our experience dealing with complicated topics hinders us from switching our brains to comprehend simple things.
October 02, 2018 ・ 8 min read