- Angular – Services and Dependency Injection
Dependency injection is the part of Angular that most repays understanding properly. Writing a service, `@Injectable({ providedIn: 'root' })` and what tree-shakeable providers buy you, the `inject()` function versus constructor injection, injection tokens for values that are not classes, and how the injector hierarchy decides which instance you get.
- Docker – Ports, Networks and Container DNS
`-p 3308:3306` has a host side and a container side and mixing them up is the single most common Docker mistake. Bridge networks, how containers resolve each other by service name, why `localhost` inside a container is not your laptop, and the `host.docker.internal` escape hatch.
- Hasura – Subscriptions
Live data over a websocket, wired into a real React app with Apollo Client. The difference between a live query and a streaming subscription, why a subscription is just a query you keep open, how Hasura multiplexes many clients onto few database polls, and the permission and cost questions that decide whether you should use one at all. Includes the auth handshake that trips everyone up.
- Foreach
forEach runs a piece of code once per element. It arrived with Java 8 as the functional counterpart to the for-each loop, and choosing between the two is mostly a readability question rather than a technical one. The method It takes a Consumer — one argument in, nothing out. That shape is the whole…
- Arrays
The structure everything else is built on: a fixed-length block of memory where index arithmetic makes any element reachable in one step. What that buys you, what it costs on insert and delete, and why the fixed length is the whole problem.