- Docker – Install It and Run Your First Container
Docker Desktop or Docker Engine, and how to tell which one you have. Then the six commands you will use every day — `run`, `ps`, `logs`, `exec`, `stop`, `rm` — what each flag in `docker run -d -p 8080:80 nginx` is doing, and why your container exited the instant it started.
- React – JSX
JSX is a syntax for calling functions, not a template language, and the differences show. One root element and what fragments are for, className over class, curly braces for values and double braces for objects, why {} renders nothing for false but prints a bare 0, and how to write comments inside markup.
- Spring Boot – Structuring a Project
Package by feature, not by layer. The controller / service / DAO split the pizza API uses, why every service and DAO is an interface plus an implementation, where DTOs and mappers live, and why component scanning makes the application class's package the one structural decision you cannot get wrong.
- React Native – Core Components
There is no DOM. `View` instead of `div`, `Text` instead of `span` — and unlike the web, text cannot live outside a `Text`. `Pressable` and why it replaced the four Touchable components, `Image`, `ScrollView`, and the rule that catches every web developer: nothing inherits, so every piece of text names its own size and colour.
- Angular – Control Flow with @if, @for and @switch
Angular 17 replaced `*ngIf`, `*ngFor` and `*ngSwitch` with built-in block syntax, and the old directives are on the way out. `@if` / `@else`, `@for` with its mandatory `track` and its `@empty` block, `@switch`, `@let`, and what to do when you meet the structural-directive form in an older codebase — as the demo app's navbar still does.