- React – Redux, and Whether You Need It
Redux Toolkit as it is actually written today — configureStore, createSlice, useSelector, useDispatch — and an honest comparison against the context plus reducer you already know. What Redux gives you that React does not, what it costs, and the question to ask before adding it.
- Spring Boot – Caching
@EnableCaching, @Cacheable, @CacheEvict and the key generation you almost always want to override. Caching the menu in the pizza API, why an eviction has to be wired to every write path that can invalidate it, and the same proxy rule AOP has: a self-invocation is never cached.
- Angular – RxJS, and How Much of It You Still Need
Signals took over state, but observables still own events over time. Built around one worked example — the menu search box — where `toObservable`, `debounceTime`, `distinctUntilChanged`, `switchMap` and `catchError` each fix a specific bug, and `toSignal` hands the result back to the template. Why `switchMap` and not `mergeMap` is the difference between correct and subtly wrong.
- Docker – Logs, Exec and Debugging a Container
Your container exited, or it says `unhealthy`, or it will not connect to the database. `logs -f`, `exec -it sh` into a running container, `inspect` for the config it actually got, `stats` for resources, what the exit code means, and the healthcheck that reported unhealthy forever because the image had no `curl` in it.
- Hasura – Actions
Actions are how anything Hasura cannot generate gets into the same GraphQL schema: you declare a type, point it at an HTTP endpoint, and it appears alongside the generated fields. Custom types, the request payload Hasura sends, forwarding client headers so your handler still knows who is calling, permissions, and error shapes. Shown with a real Action in front of a FastAPI endpoint, and its v3 replacement — a `Command` on a business-logic connector.