A Headless CMS is Bullshit for your developer blog
#blog #blogging #headless-cms #webdev #cms
Using a headless CMS for your developer blog is bullshit. Let me explain why.
What is a headless CMS?
A headless CMS is a content management system that has no frontend. It only provides an API to access the content. The frontend is completely decoupled from the backend. This means that you can use any frontend you want. You can use a static site generator like astro, a frontend framework like vue, or even a native mobile app.
Where does it make sense to use a headless CMS?
A headless CMS makes sense if you want to use the same content in multiple places or if the content should be integrated into an existing website. It can be great for a company to manage their content in one place and use it on their website, in their mobile app, and in their newsletter.
Why is it bullshit for your developer blog?
It’s unnecessary overhead
You would have to integrate the headless CMS into your blog, host the CMS and the website and maintain both. When a site is requested, the CMS has to be queried and the content has to be rendered. This is unnecessary overhead. You could just render the content when you build the site.
It’s not more flexible
You only have one frontend for your blog. You don’t need to be able to use the same content in multiple places. You don’t need a headless CMS.
You know how to write markdown
You are a developer and know how to write markdown. You don’t need a WYSIWYG editor to write your blog posts. Therefore you don’t need a headless CMS.
As I said: Mardown is the solution. You can write your post in a minimal but powerful format with you favorite text editor, commit, and push it to your git repository. Then your CI/CD pipeline builds your site and deploys it to your server. This is the most simple and efficient way to manage your blog.
I use this approach for my blog and I’m very happy with it. I use astro as a static site generator and sometimes integrate vue components. After writing a post, vercel builds and deploys my site. I don’t have to worry about hosting, scaling, or security. I can focus on writing content and enhancing my blog.
Thanks for reading! If you have any questions or comments, please sign in with GitHub and comment below. I'd love to hear from you! You may also fix errors or suggest changes in the GitHub repo.