- TypeScript – Modules and Type-Only Imports
import type and why a bundler needs you to say it, verbatimModuleSyntax, and the reason the NestJS half of this app writes `.js` in an import that points at a `.ts` file. Module resolution in one page, declaration files, and what to do about a package that ships no types.
- NestJS – Authentication with JWT
Register and login end to end: bcrypt with a cost that is slow on purpose, what goes in a token and what must never, signing with @nestjs/jwt, and the two defences that keep a login form from confirming which addresses are registered — one message for every failure, and a dummy hash comparison so they take the same time.
- Frontend Dev – Build Tooling and Deployment
What happens between your source and the files a browser downloads, and how those files get somewhere real. Bundling, the dev server, environment variables and why they are not secret, static hosting on a CDN, cache headers and content hashing, the SPA fallback that 404s every deep link if you forget it, and a CI pipeline worth having.
- Android – Lazy Lists and Keeping Them Fast
LazyColumn versus a Column in a scroll, keys and why a missing one is a state bug, contentType, pull-to-refresh, and how Compose decides what to skip — stability, @Stable and @Immutable, lambdas, and the few things you still have to do yourself.
- iOS – Architecture: Layers That Hold
MVVM is not an architecture, it is a naming convention for one third of one. The layering underneath it: domain models and rules that import nothing, repository protocols the features depend on, implementations they never see, and a pure reducer for the one piece of state worth being strict about.