What selecting a blog platform might have in common with business strategy? A lot. In this post, I will introduce you to the world of mapping, and how it can guide you through decisions, where to focus on business or career.
Here is why I decide to pay for blog platform instead to run it on my own!
When I decide to switch my blog to English (again), I also wanted to get rid of Wordpress as a blogging engine.
Several reasons but those what really were behind this decision:
- Wordpress become bloated, and it requires too much maintenance
- Simple things like plugin updates often ended up in solving plugin compatibility issues
- Writing experience is not that nice. I don't want to build a commercial site, I just wish to blog with simple communication features.
For all those most annoying was dealing with upgrades and plugin updates. I understand Wordpress is powerful, but it is too powerful for me.
If not Wordpress, then what? It is a question. I looked at several options. This post is a summary of it, but next "what blogging engine to use" writeup would be boring. I wouldn't bother writing it. Instead of it, I thought I will take use it as an opportunity to introduce some mapping I do as a hobby in my life.
What is this mapping thing?
Several years ago, I stumbled upon this thing called Wardley Mapping. To be completely honest, it is one of the most useful and powerful tools I've learned in recent years. In simple words, mapping is a process of decomposing the system and environment starting from user needs and based on it, building awareness of the situation you are in.
The powerful but straightforward concept in it is an evolution and assumption that everything evolves. What you are doing right now, tools you are working on - it all evolves. You may see them as complex and unique right now. Over time, it will all evolve:
- From the early concept (maybe such thing exists or can be done),
- Through custom-built ( let's build something working and do it again from scratch every time )
- to product ( just go and buy it ),
- and finally to commodity ( wow, it comes from somewhere, but I even don't know how it got here ).
When you start to think in this way and observe people and businesses around, you would be surprised how many of them are investing time and effort in things they should not. Mostly because they don't think who is the user is and what the user needs. Because of that, they fail to spot what addresses this need and how the given element contributes to it.
As abstract as it sounds, it is efficient. Once you start to practice it, you may do powerful things with mapping:
- See where you invest your time in areas, which you should buy or rent instead of building it
- See what skills might be required for your career in the future
- Build a model of your value chain and where the actual value of your business is
- See where new needs emerge and how you can address it.
I think that skills like this will be more in demand in new AC ( After COVID ) reality as many businesses will have to change the way they do business. Most of them will do it blindly, not knowing what the environment they operate in is. The map would help, but ... you need to start mapping.
If you want to learn more about it,
- Check Ben's Mosior website Learn Wardley Mapping,
- Watch Ben's summary of Simon's Wardley book
- Read the book itself at the end.
You will find some additional resources at the end.
Let' map the blogging
It sounds nice, but how exactly mapping helps in practical terms? I use this blog change as an opportunity to show how I use it to support my decision making.
I knew I don't want to use WordPress. I also knew I want to use a ready theme for a blog and be able to do things like comments and newsletters for communication with the reader.
I considered several options, and I narrowed it down to:
- Use one of the engines to generate static pages and host it somewhere (for example on Azure where I have free resources)
- Host it on existing engines like GitHub and GitHub pages
- Use one of Wordpress alternatives, like Ghost as a self-hosted or hosted option
There are plenty of other approaches, but those were the ones I pre-selected.
Start with use need
Before I start to map my choices, let's begin with a user's needs. I have two users for my blog:
- An Author (yours truly)
- A Reader (thank you!)
As An Author I want to communicate with my audience. To do it, I need to:
- Write new blog posts
- Distribute it to my readers
I want to communicate with my readers
- Using comments under the blog posts
- With newsletter reaching inboxes of those, who are willing to share the e-mail with me
My dear readers look for new content to satisfy their intellectual needs and educate themselves or to get to know the latest on my person. Simply:
- Read blog entries on whatever device then use
- Get an e-mail with updates if they wish
Let's start our map
As an author, I create blog posts. It is my creation based on my thoughts, experience, and research.
To deliver it to my audience and to let them read it, I need blog site where they can reach my content.
To run a site, I need a blogging engine and platform to host it. Both elements are available in plenty and can be hosted (commodity), self-hosted (product). Still, you can also build it and operate yourself (custom). An essential element is that all of it needs to be managed and maintained, which was my main pain-point with Wordpress as it takes my time.
Before, I self-hosted my Wordpress (product) on a ready platform. I still had to operate on my own (updates, configurations).
To run a blog and reach my audience, I also need some way to:
- Have comments on my site
- Send out e-mails to newsletter subscribers
- Reach out to people on Social Media
I assume those elements are part of my blog engine and platform and also can be hosted, self-hosted, or custom-built.
Now we are ready to map some options I choose for my blog.
Mapping the blog: Part 1 - Static web page generators
I saw this being used by many friends to run their blogs. It is fast and friendly. You can get cute themes for it. It also speaks to my geek part.
To use it for my blog, I need:
- An engine (ready and available as a product)
- A platform to host the files (Azure Storage + Azure CDN looks like an easy option)
- A theme which is also available in plenty
Besides, I would have to:
- Build some comment system for the blog
- Handle e-mail subscriptions and newsletter (this comes ready with products like MailChimp)
Where it falls short for me is that it all requires some too heavy operations from my side:
- Some coding skills
- Run and operate build and pipeline to deliver it
- Do customizations in the theme and engine
In effect, there is a lot of activities to deliver the result - working blog site. Those custom activities do not provide a lot of value, which Readers will appreciate as for them, the outcome is the same - blog post published on the web site.
It might load fast and be light on the network, but most of them would not notice it.
Mapping the blog: Part 2 - Ready engine, GitHub pages
Ready engines to work with static content like GitHub pages looks much more user friendly in this case.
I can create content from my editor in Markdown and store it in the GitHub repository. I can get some themes to make it look nice and publish it using GitHub Pages.
It takes parts of operations away as the platform is delivered in its entirety as a product. I still need some coding skills to be able to build a site content and adjust a theme and to integrate external components like E-mail platform.
Not perfect, but much better than static web generators from my personal workload point of view. It still delivers the result for readers - a working blog site. It gives somehow limited functionality unless I put in use my rusty coding skills to make it better.
Mapping the blog: Part 3 - Let's look at Wordpress alternative
As the third option, I looked at Wordpress alternative - Ghost. I looked at it in the past but not very thorough. I saw years ago Troy's Hunt article on using it as a platform for his blog.
I've decided to take a look at it.
The Ghost delivers a ready engine for the blog as an Open Source project. You can grab some free or paid themes, install it, and you are prepared to go. It also has good SEO options, prepared e-mail, and other systems integrations without plugin systems as in Wordpress (which at the same time might be a limitation).
You have two options to host it:
- Self-hosted on the platform of choice (free when it comes to Ghost itself)
- Ghost Pro site where Ghost hosts it for you (paid hosting option)
What does it take to self-host Ghost? I've decided to try it with my Azure account. It is actually quite easy to set up if you know some basics of Azure and to work with it.
What it takes is:
- Cloned repo of Ghost on Azure (I used GitHub for it)
- Azure App Service to host it
- Azure Storage and CDN service to store blog content like images
You still need to use external services like MailChimp to send out newsletters. Still, Ghost provides ready integration options for it.
I managed to set it up in one afternoon; however, it took me a couple of hours to polish it, and it requires a bit of coding in the themes to make it work smoothly.
Look that I had what I needed, but it still requires my operations to run it and keep it up-to-date (however, this piece can be handled automatically with AzureDevOps or GitHub Actions).
I have some credits on my Azure account provided by Microsoft so I could run it for free. For real setup, it might cost you a few bucks (mostly App Service cost).
Mapping the blog: Part 3.1 - Where platform becomes commodity
I wrote at the beginning that everything evolves towards commodity. Running a platform for a blog is a commodity. You don't need to think about how to do it.
Platform and operations around it evolve towards commodity and become a service.
I liked Ghost as a platform and decided to give a try for the Ghost hosting option - Ghost Pro.
With the hosted version of Ghost, I don't need to maintain my own platform and operations around it. It all evolves into a single service provided for me by the Ghost. Integrations with standard services like e-mail providers are given or simple with no coding (configuration of template or option in the engine).
It simplifies what I need to maintain to provide the reader with his need through my content. I can focus on what contributes the most to this need in my activities, which is writing blog posts.
I've decided for my own setup to still keep a few simple elements on my side:
- GitHub where I store the content of my blog (posts, images, files) in a repository in case I need to restore it
- Azure Storage and CDN for my own content to keep link independent from the platform or blog URL
Those are services with little or no maintenance and cost in my case.
What this story should tell you?
You may ask, what was the point of explaining in a complicated way that I've chosen a hosting platform to run this blog? Good question?
This post had two objectives from my end:
- Make you interested in Wardley Mapping as a tool to look at the world around you
- Make a point, that even if you can do something, and it seems like no big deal, maybe it is not worth to do it on your own, as it does not contribute a lot to the user need you are trying to address.
Key to addressing a later from those two points is to get to know:
- Who is your user?
- What need are you trying to fill?
You would be surprised how many businesses can't answer those two questions.
You don't think so? Ask around.
If you want to learn more about Wardley Mapping, there is an excellent repository on GitHub with Wardley mapping resources.