Engineering notes
Page 2 of 4
A GitHub Actions Pipeline, With the Seconds Attached
A workflow that really runs, quoted as it is, with the per-step timings from a real run — where 84 seconds go, what caching buys, and the two lines that matter.
Cloud & DevOpsDocker Compose and Spring Boot: Let the Application Start the Database
Spring Boot can drive Docker Compose itself — verified with the log where it waits for the container to go healthy, in a project holding no datasource config.
ContainersA Spring Boot Microservices Example, and the 22 Seconds Nobody Shows You
Two services, one HTTP call, measured — including what the caller does when the other service is stopped, and when it is merely slow.
Distributed SystemsSpring Boot Logging: JSON Is One Property, and the Guard You Still Need
Structured logs without a logback file or an extra dependency, MDC keys as real JSON fields, and a measurement correcting what you were told about placeholders.
Cloud & DevOpsSpring Boot Actuator: Only One Endpoint Is On By Default
What Actuator actually exposes on a fresh application, why /actuator/info comes back empty, and the endpoint that changes a log level without a restart.
Cloud & DevOpsSpring Boot Pagination and Sorting, and the Page You Should Not Return
Pageable and Page in two lines — then the runtime warning Spring Data logs about returning Page from a controller, and the COUNT query every page costs.
Backend & APIsJava Optional: The Methods Worth Knowing, and the One That Fools Everyone
Optional's useful methods with real output — and a measurement showing orElse runs its fallback even when the value is present, while orElseGet does not.
JavaJava Stream API Examples, and Four Ways They Surprise You
Complete stream examples with real output — grouping, flattening, collecting to a map — plus four behaviours that cause bugs not looking like stream bugs.
JavaHashSet vs HashMap: One Is Built Out of the Other
The difference is not two designs but one — javap shows a HashSet holding a HashMap. Every behaviour, and every failure mode, follows from that.
Java