Skip to main content

New webpage


A new year, a new website! I've redone my website again and now use my cool domain to host it.

It's mostly a blog and my plan is to write long-ish articles here from time to time, instead of the mostly really short articles from my old blog, although I've imported some of them, so it's not so empty here.

I first thought about redirecting everything from my old blog to here, but decided against it: I wanted a better URL schema and didn't want to keep all of my old articles here. If you are interested in the writings of old me, here is the old blog. I'll keep it around to prevent the links from breaking. But I'll include a link back to the new page to redirect visitors to this new shiny page :).

The backend is written in Go and uses MariaDB to store the blog articles. I thought about just using a static page generator (or using my own), but I really wanted a search function. In retrospect, I should have probably used PHP, since it's better suited for webpages and I would have been done earlier, but this was a great opportunity to write some Go after some time. Also I haven't really used the SQL abstraction in Go before. At first I didn't like it, but I got somewhat comfortable with it rather quickly. You can have a look at the source code (I'm not too happy with it right now, it sure could use some refactoring. But it's good enough for now and I want to work on other things for now).

I now write articles and other content on my computer as markdown files, upload them to my server and trigger an update command, which will parse the files and populate the database. Being able to write the articles as plain text files makes it a much more pleasant experience to write them for me.

Also, I like that it has a dark mode (using @media queries that check for the prefers-color-scheme property) and syntax highlighting of code blocks (using Chroma as the highlighter and goldmark-highlighting to integrate it into the goldmark Markdown parser/renderer):

package main

import "fmt"

func main() {
    fmt.Println("Hello World!")

Isn't that cool?