Skip to content

Blog

Dionisio Developer

Writing on software, applied AI, product, and career growth, organized in publishing order for direct reading without noise.

A stack frame unwinding, with each destructor releasing its resource in reverse order

Latest post

RAII in C++ — Ownership as a Type, Not a Convention

Most resource bugs are not logic bugs. They are path bugs. The allocation happened on line 40, the failure happened on line 55, and the free that belonged to line 90 never ran. You did not misunderstand the algorithm. You missed a branch.

Read more

A coroutine suspends at co_await, frees the thread for other work, and resumes after the operation completes

Coroutines and Asynchronous Programming in Modern C++

Your service receives a request, queries another service, and stores the result. The business flow fits in three lines. The implementation grows when every step requires a callback, a state object, and a separate error path.

Read more

Two tasks interleaved on one CPU and executing simultaneously on two CPUs

Parallelism vs. Concurrency — From the Idea to C++ Code

You open an application that downloads a file while responding to your clicks. Then you run a program that splits an image across several cores to apply a filter. Both have more than one task. But they solve different problems.

Read more

Timeline of the eight C++ versions, from 1998 to 2026

C++ by Version — What Changed from C++98 to C++26

You open one project and find new, delete, raw pointers, and classes whose only job is to pass a function to an algorithm. You open another and see unique_ptr, lambdas, concepts, and ranges. Both are C++. Maintaining them can be a very...

Read more