- React Native – Deep Linking and the URL as State
A phone app has URLs too. Registering a scheme, what a universal link needs beyond that, and the habit worth keeping from the web: putting screen state in route params so a link opens the app already filtered. Also the trap — a deep link can point at a screen a newer build removed, which is why `+not-found` matters more here than on the web.
- Spring Boot – JdbcTemplate
When JPA has nothing to offer — aggregates, reports, any query whose result is not an entity. NamedParameterJdbcTemplate, RowMappers in their own testable classes, and the trap that silently inflated a revenue report: hand-written SQL never sees the @SQLRestriction that hides deleted rows.
- TypeScript – The Basic Types
string, number, boolean and the annotations you do not need to write. Where inference is better than an explicit type and where it quietly gives up, why let and const infer differently, literal types, and the one place a return type is worth writing by hand even though TypeScript could work it out.
- NestJS – Setting Up a Project
Creating a project with the Nest CLI, what each generated file is for, and the tsconfig flags Nest actually needs — experimentalDecorators and emitDecoratorMetadata are not style settings, they are what makes injection work. Plus the ESM trap that costs everyone an afternoon: why every relative import in this codebase ends in .js even though the file is .ts.
- Python – Iteration (for / while loops)
The for loop that walks a sequence rather than an index, when a while loop is the right shape, range, enumerate and zip, break and continue, and the loop-else clause almost nobody knows is there.