- Angular – HTTP Interceptors
One place to attach the auth token, and one place to catch a 401. Functional interceptors and how they chain, adding an `Authorization` header, translating server errors into something the UI can show, a loading indicator driven by in-flight requests, and why interceptor order is not an implementation detail.
- Docker – Environment Variables, Build Args and Secrets
One image, many environments — the whole point of configuring from outside. `ENV` versus `ARG` and why a build arg is baked into the image forever, `--env-file`, Spring Boot's relaxed binding turning `SPRING_DATASOURCE_URL` into a property, frontend config that is baked at build time, and where secrets actually go.
- Hasura – Authorization and Permissions
The most important chapter in the track, because a mistake here is a data breach rather than a bug. Roles, row-level filters, column allowlists and session variables, worked through four real roles. Three traps with teeth: `admin` is reserved and cannot be given permissions, roles do not inherit from each other, and permissions do not cascade through relationships. Then `TypePermissions` and `ModelPermissions` in v3.
- React – Custom Hooks
A custom hook is a function whose name starts with use and that calls other hooks. That is the entire specification. Extracting stateful logic so two components can share it, why hooks share logic and never state, the one-line hook that turns a context into a typed API and throws when used outside its provider.
- Java 11 New String Methods
Java 11 added five small String methods. None of them is clever, and together they delete a surprising amount of the utility code every project used to carry — the null-and-whitespace check, the manual line splitter, the loop that repeats a character. isBlank() isBlank() is what people usually mean…