Improving Your Business with the Kano Model
When developing a new product or adding fresh features to an existing one, it's crucial to understand what our customers want and need. Whether…
Essays on agentic AI and distributed systems, and the architecture that keeps them working under pressure.
When developing a new product or adding fresh features to an existing one, it's crucial to understand what our customers want and need. Whether…
Updated December 2025 to reflect modern agentic and autonomous systems Executive Summary Dimensionality reduction is often taught as a performance optimization. That framing misses…
Organizations are harnessing the power of artificial intelligence (AI) and machine learning (ML) to gain insights into customer behavior, operational efficiencies, and numerous other…
Let's chat about one of the most fundamental techniques in machine learning and statistics - Linear Regression, which forms the backbone of many advanced…
Updated December 2025 to reflect modern agentic and autonomous systems Executive Summary Most machine learning systems don’t fail because they lack intelligence. They fail…
Scala collections systematically distinguish between mutable (scala.collection.mutable) and immutable (scala.collection.immutable) collections. A mutable collection can be updated or extended in place. This means you…
Generic types allows us to abstract over types. If we don’t care what type is stored but we want to make sure we preserve…
Traits allow us to express that multiple classes share a common super-type. Traits are similar to Java’s interfaces and can be thought of abstraction…
Just like other programming languages, we use class to create objects that have similar methods and fields. In addition, class in Scala defines a…
Expressions are parts of a program that evaluate to a value. For example: val a = 3 + 5 // a evaluates to 8…