Frankenblog
I’ve experimented with a bunch of blogging solutions:
- Blogger
- Medium
- Ghost
- Self created static website
- Svbtle
None of them are terrible, but none of them does exactly what I want. So what do I want?
Separate content from presentation #
This is by far the most critical requirement. My pain point isn’t with presenting my ideas; there are a million ways to share things on the internet. My problem is with managing the content. I don’t want my blogging platform to tether me to a single system (like Blogger, Medium, and Svbtle) but I do want the additional features that an integrated content creation ecosystem can provide. I’d like to model this content creation system off of Google Docs. In particular, Google Docs supports:
- offline editing
- multiple device synchronization
- collaborative editing
- commenting
Manage metadata #
There’s a standard set of metadata that I care about each blog post: when I started writing it, how many words it is, etc. The content management side of my blog should manage this data without me having to do anything. On the presentation side, this includes analytics about readership. The blogging platform should track hits, reads, likes, etc for each article without any additional effort on my side.
Just make it look good #
Like Medium and Svbtle. Let me write in Markdown. Make it difficult to screw up. Even better, create an extensible presentation marketplace like in Ghost. Then make publishing blog articles easy. Handle hosting, SEO, optimizing load time, distributing to interested readers, etc. Include additional features like Disqus style commenting. All of these things are abstract problems that can be easily solved with abstract solutions.
Be opinionated #
Writing comes in different stages, often labelled as outlining, drafting, revising, and publishing. The process of writing in each of these stages is markedly different, and my blogging platform should recognize this. If I’m at the outline stage, then my content editor can use this additional knowledge to optimize for my experience in that circumstance. Furthermore, by being opinionated about these stages, my content can optimize for the transition between them.
Essentially I see my blog as an extension of my to do list. I have some little thought taking up space in my head, so I write it down in my todo list. This lets me clear my mind to focus on the circumstance at hand, but also gives me the opportunity to come back and reflect on this thought at a later date. As I explore this thought further I need a more specialized space to record the results of this exploration, and perhaps share these results with the rest of the world. This space is my blog. My blog is for cultivating my thoughts and grooming them for the outside world.
Also noteworthy, I think this whole system could be pretty easily extended to provide content management for any static site. Asana has an interesting blog post about the content management system for their company website, and although the problems are slightly different, I think that the solution is remarkably similar.