Singlehanded website

Next.js
React
markdown
Vanilla CSS
Singlehanded website screenshot

Why did I build it?

A couple of reasons:

  1. I have been a professional software engineer for over 2 years (I'm writing this in October 2023) and it's time for me to raise my profile. Over time, with regular updates, I'm hoping a blog will do that for me.

  2. A big part of being a software engineer is learning new concepts. Luckily that's something I love doing. I find that writing about what I have learned helps me to consolidate those new concepts.

Writing is a barometer of how well I have understood something; if I struggle to write something clear and unambiguous, that's a signal that I need to revisit the subject matter. In the past I wrote only for myself but it dawned on me that other people might find some value in my writings, hence the blog.

What does it do?

It's primarily a blog where I write about things that I have learned or am actively in the process of learning. My hope is that I will be able to provide answers that other people are searching for in the same way that countless other bloggers have done for me.

It's also a place for me to talk about projects that I have worked on - like this!.

Geeky details

Next.js

Since this website is primarily a blog it's important that search engines can index it. That's the main reason that I chose Next.js. I have worked with React a lot over the past year or so and I'm comfortable with its ecosystem. But React is the opposite of search engine-friendly. Next.js, which is a framework built around React, enables static rendering out of the box.

Vercel

This site is deployed to Vercel. Deployment is simply a case of connecting the app's GitHub repo to Vercel and pushing code changes. That triggers a new build and deployment by Vercel. It's super-easy.

Markdown

The process of writing & publishing blog posts has to be painless otherwise I will find an excuse not to do it. I have used Markdown for years as my primary note-taking 'tool' so it's almost second nature to me. I simply create a new .md file in the right directory, commit & push to GitHub and the post is published. This, together with the in-built simplicity of Vercel deployment makes it a pretty stress-free process.