In Pursuit of the Perfect Blog — Part Four: Define the Perfect Blog
Week 38 of Founding Typogram
Hi, I am Wenting. I recently quit my job of seven years to build my start-up, Typogram, a logo design and editing tool for startup founder. We just launched our pre-order✨! Get a one brand lifetime license at a huge discount and edit your design forever.
Many people have asked me for recommendations on blogging platforms since I wrote part I, II, III of this article series. In all honesty, while I like my setup and think it is the best fitting for my current needs, I think it is not quite perfect. In this article, I would like to share what my current setup is and describe and define what I think the “Perfect Blog” should be.
Current Blog Setup
The Typogram Blog is set up using Publii, which is a desktop blog authoring app that generates static blog sites. You can check out the output in our public GitHub repo Typogram/blog to see if its output is to your satisfaction.
In Typogram repo, I included the Typogram/blog as a submodule. A submodule in the main repo looks like a folder, but it is actually a pointer to the Typogram/blog with a commit id number:
With this setup, I can easily throw the entire blog as a sub-folder into a server of any kind. It doesn’t need to support PHP/MySQL like WordPress or Ghost does:
There is quite some debate on sub-folder and sub-domain:
Sub-folder: typogram.co/blog
Sub-domain: blog.typogram.co
Google search console team made a confusing video telling sub-domain and sub-folder both work well for SEO, but provide no detail on how to achieve that. I did my in-depth research and deemed the sub-folder approach is just cleaner, easier, and better for SEO purposes. Having a static site blog that can be thrown into any sub-folder makes this goal very easy to achieve.
Define the Perfect Blog
I love Publii because of its core differentiation compared to other blogging platforms: it separates the authoring experience from the blog itself. Let me explain.
The authoring experience is where I create and edit my blog posts — the CMS (content management system) portion of the blog. It needs a database to store the ever-changing content. WordPress and Ghost have a list of server requirements because of their CMS features.
However, the blog itself doesn’t necessarily need a database — it can be a folder of static HTML files.
While most blogging platforms bundle authoring and publishing together, it is often unnecessary. They serve two drastically different user groups: writers and readers. There is rarely a reason to require the CMS to be under the same domain as the blog — as a writer, I can go anywhere to write.
For Publii, the authoring experience is a desktop app. The publishing is a folder of code that I can put anywhere, they support integration with Google Cloud, GitHub Pages, GitLab, Amazon S3, Netify and the good old reliable local folder for other scenarios:
The drawback of publii is the authoring experience is lacking basic collaboration features. For two writers (or even one writer with multiple computers) to edit the same blog, it relies on services like Dropbox to sync their work.
The perfect blog platform would address Publii’s shortcoming with an online web app to replace the desktop app — yes, in other words, it would be just like a WordPress/Ghost blog. But it keeps the good idea of separating the blog from its CMS; here are more details in my thinking:
Authoring experience: web app with multiple account support, co-editing support
Publishing experience: generate a static blog as a folder and can integrate with services like GitHub Pages for easy deployment
Social experience: login, like, subscribe, comment, all handled on the client-side with the help of API endpoints
My opinion of the perfect blog of course is based on my own use case and its biases. Let me know if what I described fits your use case or not. I welcome this to become a bigger discussion on where the blogging platform should evolve next.
❧
See you next week! If you have friends who are interested in founding startups, please consider sharing my newsletter with them!