- Tries
A prefix tree: one node per character, words spelled out along the paths. Why it is the wrong choice for exact lookup — a HashSet is simpler and faster — and the right one for autocomplete and every other prefix question a set cannot answer.
- Spring Boot – Testing
The test pyramid as Spring Boot expresses it: a plain unit test with Mockito, a @WebMvcTest slice, a @DataJpaTest slice, and @SpringBootTest for the cases that genuinely need the whole context. Testing secured endpoints, and why the slice you reach for first should be the smallest one that fails honestly.
- Python Advanced – Packaging & Publishing
From a folder of scripts to something people can install. pyproject.toml, editable installs, why a lockfile is not requirements.txt, building a wheel, and publishing to PyPI without breaking anyone's build.
- Python – Async & Await
async and await, and the one question that decides whether they help you at all: is the work waiting or computing. Coroutines, `asyncio.run`, running things at the same time with `gather`, and the blocking call that quietly ruins it.
- Frontend Dev – State Management
Where a value should live, which is the question most frontend bugs are really about. Local state, lifting up, context, and a store — and the honest criteria for moving between them. Includes a real app that uses context on one half and Redux on the other, and the documented reason the line runs where it does.