The stack I use to run this blog

In this article, I describe how I run my website and my workflow

Website platform

The website is a static website built using the following websitesHugo, This is a popular static website generator built using the Go programming language.

I want my website to bemuteReduce the point of failure as much as possible. Static sites can meet this requirement, and also have many good advantages.

The reason why I choose Hugo is:

  • Generates pure HTML files, which makes it faster than having to process every request on the server side
  • Static sites are more flexible in terms of deployment and hosting
  • The speed is very fast, my local real-time reload is instant, I don’t have to wait 10 seconds to recompile (Not every platform can do this on my 2010 Macbook ProMy 2018 MacBook Air is faster, but I still welcome speed)
  • I like to go
  • this is very simple


I initially usedGhostwriting theme, After a little optimization and adjustment, it can meet my needs. I have changed it so much over time that I can’t recognize it now, but it’s a good start.

Where do i host the website

I useNetlify. I describe hereHow can I automatically deploy my posts and schedule their time.

Don't just write on Medium or other platforms. Find outWhy focus on your own platform.


I use Markdown inBear-Great app. Markdown is a great format because it is very portable-I can transfer to any other static site generator in a minute if I need it, because Markdown is not locked in, but I am very satisfied with Hugo.

How can I promote these positions

I post them on Twitter and add them to the email newsletters I send every week. That's basically it. I used to publish articles on Hacker News or Reddit, but it did almost nothing all the time I tried, so I stopped doing it. I still recommend doing this at the beginning.

Google will automatically extract the post. Find mineSEO skills.

My workflow for publishing articles

When I wrote a blog post, I set a future publication date.

I have a bad memory, so I jot down everything. I have a predetermined list of posts in the Apple Notes application, and I try to put the content in front of me for more than two weeks, so I don’t worry that I don’t know what to post or write. This is critical: nothing can hinder the daily release.


I push everything to a private GitHub repository, which has been synchronized with Netlify due to its Git integration.

Every time I push to GitHub, Netlify will deploy an updated copy of the site.

I just ranInternational Financial Trade FairA webhook is performed at 08:00 CET every morning to automatically trigger a new deployment on Netlify, which will publish the blog posts of the day (to ensure accuracy, I set the publication date of each post at 7:00 AM).

I might go to bed or walking the dog at 8 am, but the post has been published.

It's great to ignore this part of the infrastructure. I only know that one post is about to be published.

It will also be automatically posted on Twitter due to another IFTTT applet that links to my RSS feed.

Tweet new posts

Post picture

I make sure that all published images are optimized usingImage optimizationTo avoid unnecessary bandwidth usage and faster page speeds.

Sometimes I use an app to generate a banner image for the post, which is also used in the Twitter card.

I used to create an ASCII text image using the following methodTag.

Sometimes I use iPad and Apple Pencil to draw images. I useSketch application, it's great. I have no talent for drawing at all, I just like to do some interesting things. This is my own blog, so I can publish crft artwork as needed.

2019 update: I rarely make banner images now

2020 update: IAutomatically generate OG images for my posts


I have a major newsletter. I send an email every week with a list of posts I wrote during the week and any new resources I created.

I have used ConvertKit in the past. This is a good start-up tool. Now, I use a self-hosted solution called Sendy.

Find outWhy create an email list.


Twitter is a good platform for me. I have more than 9,000 followers. Although the number is not large, the number is not small.

Even though I joined Twitter in 2007, I never really used it effectively. I only started interacting with the people there in any form a few months ago 🙃

I have a script that runsglitchIt is triggered 2 times a day by IFTTT. Let me explainHere. Basically, I have a list of posts posted on Airtable in the past, and I want to reuse it on Twitter.

It's sad to write a post, share it once, and never post it again, but doing it manually is 1) tedious 2) not that I can do it consistently 3) have tracked which posts I shared.

This is a perfect job for the machine, it will post them to me when I sleep, 2 times a day.


I have written 12 free e-books. I use GitBook to write them, which is the original self-hosted GitBook projectAvailable hereInstead of what you find on

As for my blog posts, I use Bear to write drafts, and when I think the draft is ready, I can export it to a folder and create an index. That's basically it. I made a template for reusable books, and I am very happy about it.

That's it!

I may update this post in the future, now this is all I use to run this blog.

More experimental tutorials: