Why a blog now?
I've been building things for seven years without writing much about it. That was a mistake. Not for the usual "build your brand" reasons. I just find that writing forces me to understand things properly. If I can't explain it clearly, I don't understand it yet.
What this site is built on
The portfolio itself is a Next.js 15 app deployed on Vercel. The blog has no CMS, just .mdx files sitting in src/content/blog/. Each file starts with a frontmatter block:
---
title: Hello World
date: 2026-02-25
tags: [engineering]
published: true
---
Your content here...
next-mdx-remote renders them server-side inside React Server Components, and sugar-high handles syntax highlighting with no config.
The routing is a Next.js App Router slug route at src/app/[lang]/blog/[slug]/page.tsx. When you hit /en/blog/hello-world, Next.js extracts the slug and passes it to the page component. generateStaticParams runs at build time, reads all published posts, and tells Next.js what slugs to pre-render:
export async function generateStaticParams() {
const posts = getPosts();
return posts.map((p) => ({ slug: p.slug }));
}
Then the page component picks up from there:
export default async function BlogPostPage({ params }) {
const { slug } = await params;
const post = getPost(slug);
return <MDXRemote source={post.content} components={mdxComponents} />;
}
getPost reads the .mdx file from disk, strips the frontmatter, and returns the raw content string. MDXRemote compiles and renders it on the server using a custom component map so things like code, h2, and a render with the right styles instead of browser defaults:
export const mdxComponents = {
h2: createHeading(2),
a: CustomLink,
pre: Pre,
code: Code,
};
What's next
- System design interview prep with animations, consistent hashing, leader election, replication lag, the kind of content where a static diagram isn't enough
- Random stuff like room planning and aesthetics, because why not
- Separation of concerns not just in software but in life and interior design
- Technical SEO from an engineer's perspective
- Ideas from books I'm reading, not summaries, just the one thing that stuck
- Right to left web development
