- React Native – Native Modules and Config Plugins
The moment you need something JavaScript cannot do. Why Expo Go cannot load a native module and a development build can, what `expo prebuild` generates, config plugins that edit the native projects for you, and the architectural move that keeps a native-only dependency from infecting the whole app — one folder, one interface, and a platform-split file the bundler resolves.
- Spring Boot – Method-Level Security
@PreAuthorize, @PostAuthorize and @Secured, and why URL rules alone stop being enough as soon as two entry points reach the same service. Expression-based checks against the authenticated principal, and the proxy rule that makes an internal call skip the check entirely.
- TypeScript – Enums, and What to Use Instead
TypeScript's enum is the one feature in the language that emits runtime JavaScript, and everything awkward about it follows from that: reverse mappings that put numbers in your object, const enum breaking under isolatedModules, and a build flag that rejects it outright. Then the `as const` object this app uses in both halves instead.
- NestJS – Guards
CanActivate, and the one question a guard answers: may this request proceed? A real JWT guard in about thirty lines, why verifyAsync and never decode, why guard order in @UseGuards is load-bearing, and where a guard stops being the right tool — the check that needs to read the row belongs in the service.
- Python – OOP
Inheritance, composition and polymorphism in a language with duck typing, where an interface is a set of methods rather than a declaration. `super()`, properties, abstract base classes, and when to prefer composition.