- Angular – Component Styles, Sass and Bootstrap
Angular scopes a component's styles to that component by default, which changes how you think about CSS. View encapsulation and the attribute selectors it emits, `:host` and `:host-context`, `[class]` and `[style]` bindings, and layering Sass overrides on Bootstrap in `angular.json` so they win without a single `!important`.
- Docker – Layer Caching and Build Speed
One rule explains most fast Dockerfiles: copy the dependency manifest and install dependencies *before* copying your source. How the cache is keyed, why one changed line can invalidate every layer after it, the `pom.xml`-first and `package.json`-first patterns, and BuildKit cache mounts.
- Hasura – Metadata Is the Source of Truth
Hasura's schema is not in your database and not in your code — it is metadata, and understanding that one fact explains most of the product. What tracking a table means, why clicking in the console is fine until two people do it, and how to keep metadata in version control and apply it from a script. Then v3, where metadata stops being a live API and becomes `.hml` files you compile.
- Java OOP
Object-oriented programming is four ideas. Most explanations define them; this post shows each one in code and says what it is actually for — because the fourth idea, inheritance, is the one beginners reach for constantly and professionals reach for rarely. 1. Encapsulation — hide the data, expose…
- Spring Boot – Spring Web MVC
How a request actually reaches your method: DispatcherServlet, handler mapping, argument resolvers and message converters. Where CORS is configured and why it has to agree with the security filter chain, and what Boot 4's webmvc starter gives you before you write a line.