- Terraform – Dev, Staging and Prod Without Copy-Paste
Three ways to run the same configuration against three environments: workspaces, separate directories with a shared module, and one directory with per-environment `.tfvars` and backend config. What each actually gives you, why workspaces are a trap for prod specifically, and the layout that survives the fourth environment.
- React Native – Performance
Why a React Native app drops frames and what to do about it. There are two threads and most of your code is on one of them. `memo` and `useCallback` as a pair — one is useless without the other — `FlatList` over `ScrollView`, animations on the native driver, and the honest advice: measure before you optimise, because the usual suspects are usually innocent.
- TypeScript – Classes
public, private and protected, and why TypeScript's private is a compile-time promise while #private is a runtime one. readonly, parameter properties and the build flag that bans them, abstract classes, implements versus extends, and subclassing Error so the UI can tell a rejected write from a server that fell over.
- NestJS – Middleware
The outermost layer, and the only one that is not really Nest — it is Express, with a class around it. What that buys and what it costs, why there is no APP_MIDDLEWARE token, and the question that decides between middleware and an interceptor: does this need to run even when a guard rejects the request?
- Spring Study Guide – Data Integration
Data access, transactions and JPA. Why Spring's exception hierarchy is unchecked, what JdbcTemplate does with a connection, what @Transactional actually generates, the seven propagation modes and the four isolation levels, the default rollback rule and how to change it, the persistence context and when it flushes, and how a Spring Data repository interface becomes a working implementation.