The trick is to stay simple. Don't write all kinds of features thinking other people will use it. Don't make it flexible, as least not to start. Hard-code everything so you can just get it done and get back to blogging. When you want to change something some day in the future, then make that bit dynamic. But break out of the habit of making a tool for everyone, and just stick to the MVP for your own immediate needs.
Not necessarily. You can keep the scope limited and then it's possible. I built my own blog engine in Go with pure Go templates, Markdown input and a mysql db. It can build to static files or just host directly on a VPS. I now run my own blog on it. It was a bit tricky at the beginning to get my requirements right but once I had them, I don't need to add features to it. I am tempted for sure at times though.