May 20, 2026
What a personal site still needs after the features work
A review of what matters when this site moves from a working feature base toward public-ready content.
security x life
Security & Life Log
04 // BLOG // ARCHITECTURE
Why Markdown files plus a lightweight publishing surface are a better early trade-off than building a full database-backed CMS.
The article body is loaded from the local content/blog directory at build time.
For a personal site, the content model is small and predictable. Introducing a database, role model and rich editorial surface too early usually creates operational weight before it creates value.
The first useful version can stay much simpler:
Keeping content in the repository makes deployment and content changes move through the same pipeline. That reduces the number of systems that can drift apart.
content/blog/{locale}/{slug}.md
-> parsed at build time
-> rendered in the localized route
-> measured through lightweight API countersThis is not the most flexible architecture possible. It is the one with the best ratio between effort, control and migration cost at the current stage.
If the writing volume grows or editorial workflows become more complex, a stronger CMS can still be introduced later. Starting with content-as-code does not block that path.
It simply avoids paying the complexity tax before there is evidence that the project needs it.
Views
Loading
Likes
Loading
Content path
content/blog/en/why-the-blog-and-cms-stay-content-as-code.md
Category
Architecture
Reading time
1 min read
Tags
May 20, 2026
A review of what matters when this site moves from a working feature base toward public-ready content.
May 19, 2026
Why this personal site is not only a cybersecurity portfolio, and why it also keeps travel and training records.
May 18, 2026
A practical note on keeping a strong terminal identity without making the site harder to scan or evaluate.
May 16, 2026
A planning note on building easter eggs as a coherent registry with explicit triggers, rewards and persistence.