041: Article writing with Blogger Skip to main content

041: Article writing with Blogger

Blogging is synonym for sharing something with the world, building a digital footprint and finally growing a network. Here are my tips about Blogger.
  

The weekly mood

I started this blog along with my new position. I've now been in for 60 working days already, among those 35 in part-time and 25 in full-time. During that time I wrote 40 blog posts. Since a couple of people were curious how about how that works for me, I thought it would be a good idea to write about it.


My experience with the Web

I belong to that generation born before the (global) Internet. I had the chance to put my hands on a computer at primary school but my first contact with the web was in the early 1990s at secondary school. To be honest back then, it wasn't a great experience to search for academic content through AltaVista using a Netscape navigator. The broadband was really slow, the capabilities very limited and the content extremely poor. I actually preferred playing Arcade Games, creating forms with 3D Studio or MIDI melodies with an application i can't remember the name of, and writing programs in Basic
I built and published my first Website in the late 1990s. I paid for a domain in order to to promote the music band I was playing in, wrote a few static HTML pages and included a GIF-animated banner that i had created with a cracked copy of Photoshop. Thanks to this page anybody was able to find us via Yahoo or Google Search, contact us via E-Mail and even follow a link to our MySpace where we had put a couple of recorded tracks that you could listen to for free. I believe our Web address appeared in first position when searching for our (apparently unique) band name, and even at third position when searching for a band by our (fairly small) location. In the mean time, the Dotcom-Bubble had see too many companies bet on the Web. Free services like like Hotmail, ICQ and Napster had a phenomenal valuation while other business models didn't work at all. We also heared that the IT sector offered no perspective once all Web projects would be live! The market massively crashed indeed, but then recovered with Web 2.0
In 2004 I built my own Blog editor to share some travel experiences. Thanks to a hosted LAMP stack I was able to organise my functions in PHP modules, store my content in a MySQL database, authenticate as administrator and manage everything much easier. Webpages snowed with client side effects in CSSJavascript and Flash were very popular.
As a student in Computer sciences i finally slipped into Web application development and specialised in Java Enterprise. I truly liked the early days of Social Media and played a lot with Content Management Systems (CMS). But after 2010 I realised that I had nothing more to share on the Web, therefore I was only sharing unknown contacts on my Facebook account, wasting my time at reading messages from Headhunters on LinkedIn and superficial headlines from Marketing organisations on Twitter. When ex-NSA agent and whistleblower Edward Snowden exposed the details of the surveillance program PRISM in 2013, I decided to clean-up my digital footprint and avoid letting further ones behind me unless I have too.


Blog vs. Web site

A Blog is a minimal Web site dedicated to writing and sharing static articles. Its content is usually published chronologicaly, syndicated via RSS feeds and open to discussion. It is fairely easy to build a blog from scratch. It is just useless to spend more time on development and maintenance than on actual writing when dedicated blogging services like BloggerWordpress and Tumblr are available. Actually you can even maintain a Blog within LinkedIn or Medium, alomg with your Social Media profile.

A Blog can also be integrated to a large Web site or platform. As of today, there is no official list for categorizing Web sites. Wikipedia defines a very long list of Web site types which is difficult to digest and potentially outdated. According to recent market analysis, experts agree on the following 12 types:
  1. Blog
  2. Corporate
  3. E-commerce
  4. Portfolio
  5. Brochure
  6. Crowdfunding
  7. News or magazine
  8. Social media
  9. TV or video streaming
  10. Educational
  11. Portal
  12. Wiki or community forum
See also:

Why blogging

If you look around you, you might find a few people already running a blog, and a large majority willing to have one, someday. They don't really have a point of interest or are waiting for the right occasion to come. Of course it takes almost nothing to create an account on any free blogging service just for having a blog. But it takes quite some effort to run it, and a long way to make it successful.

In case you are not sure yet wether you should kick it off or not, I suggest you to check the following ingredients as a maturity assessment:
  • Opportunity: Usually a change in your life
  • Topic: Something that is important to you
  • Plan: Some agenda and methodology
  • Capacity to execute: Productivity and quality skills, time, optionally money
  • Commitment: Give yourself at least one year before even thinking of giving up
Again, you need to be aware of what it takes. Public writing is not easy! Whatever you are working on, for example an e-mail with larger distribution list, a documentation, a research publication, a newspaper article or a book. 

The recommendation is to feed a backlog of topics and write your drafts like if nobody would ever have to read it, in any way moving forward and not backward. In a second pass, you will review what you have with a responsible approach. Remove any personal details and emotional statements. Take care of textual correctness. Refer to the source for any copyright-relevant content. Finally, decide wether to publish it or not.

See aso:

Blogging service

My choice for Blogger was not much founded. It is a free service from Google and doesn't even requires registration if you already own a Gmail account. I needed a Blog which I could start in minutes, not hours. You define your subdomain of blogspot.com and you are ready to go. You can manage your Blog from the Web browser or from the official app for Smartphone. 
After some time I realised that Blogger was maybe not the best option for my specific purpose. The feature I missed the most was the code formatting button from their classic UI which was then removed in the newer one. I read the user help but didn't find much satisfying answers to my questions. There were further details that become annoying over time. For example, the rich text editor translates in crazy (HTML-)tags and (CSS-)styles which I would prefer leave it up to the template, and the reader search functionality does not filter encoded links that might contain small search criteria (ex. "S3").


Web indexing

You can't believe how much funnier a Blog is when people can find it. And in case your goal is to make money through Subscribers, own Marketing campaigns or external Ads, well... forget it as long as you can't be found :-)
One approach is to invest time and energy to promote links to ypur posts on Social Media. Another aporoach is to let Search engines do their job. As I want to keep my Blog anonymous, I went for second one. 
Unfortunately even though it is hosted at Google, a Blogger blog is not automatically indexed by Google Search. For example, you can check which pages of a Blog (replace tncad as needed) are actually indexed via the search query site:tncad.blogspot.com (ex. for Google, but the syntax works for other search engines). 

Be aware that Search engines do not waste their expensive time for crawling all your content. Indeed, Web-indexing is a resource-intensive process that typicaly works as follow:
  • Scanning for IP addresses
  • Matching domain names
  • Looking for a sitemap (an index file named robots.txt that you place at the root of your website)
  • Collect page URL and associated metadata
See also: How QwantBot crawls the web to build the index of Qwant, a european search engine focused on web user privacy.

The metadata is defined by the following HTML header meta-tags:
<head>
<title> </title>
<meta name="author" content=" ">
<meta name="description" content=" ">
<meta name="keywords" content=" ">
</head>
Further meta-tags might be relevant for Social Media, e.g. via The Open Graph Protocol (XML Namespace "og:").

You can also manually submit your sitemap and individual pages for indexing (or re-indexing if it changed) to major search engines:

Blogger metadata

In order to get your Blogger posts indexed, you need to configure 2 things under the Blog settings:
  1. Activate search descriptions, define a global glob description and specific ones for each post (max. 150 characters each)
  2. Enable custom robots.txt and paste the following (replace tncad as needed)
User-agent: *
Disallow: /search
Allow: /

Sitemap: http://tncad.blogspot.com/atom.xml?redirect=false&start-index=1&max-results=500
As suggested before, the description is a feature fairly well supported by Blogger editor. Except that I suspect the official Blogger mobile app for Android to make them disappear when saving changes to an article. Keywords on the other hand, are not well supported. It is a problem since some search engines might literally ignore pages without keywords, in order to reduce indexing noise. In order to solve this, you can easily extend your HTML template with a static list of keywords for each page url, or make them dynamically loaded from the labels as follow:
<!-- ... -->
<!-- BEGIN BLOCK 1: my customizations to the standard template -->
<b:if cond='data:blog.pageType == &quot;item&quot;'>
  <b:section id='meta1' showaddelement='no'>
  <!-- widget must be a of Type = 'blog' to have posts data exposed, and must have a unique id -->
  <b:widget id='Blog2' locked='no' type='Blog'>
    <b:includable id='main' var='top'>
      <b:loop values='data:posts' var='post'>
        <b:if cond='data:post.labels'>
           &lt;meta name=&quot;keywords&quot; content=&quot;cloud,architecture,<b:loop values='data:post.labels' var='label'><data:label.name/><b:if cond='data:label.isLast != &quot;true&quot;'>,</b:if></b:loop>&quot; /&gt;
        </b:if>
       </b:loop>
    </b:includable>
  </b:widget>
  </b:section>
</b:if>
<!-- END BLOCK 1: my customizations to the standard template -->

<head>


Indexing sport

Those tricks generaly work but be aware that indexing is getting more and more difficult nowadays. Principal reasons for that:
  • You are obviously less unique and competitive through globalisation of World-Wide-Web (WWW) content than in a local directory or newspaper.
  • Indexing has become a complex science that requires some skills and depends on a growing number of (changing) parameters. You might want to invest time, read about what works and what doesn't, take a Search Engine Optimisation (SEO) course, fine-tune your settings until you reach the best possible ranking and continuously, monitor and hope that it does not get worse...
  • The Ad business allowing your sponsored site to appear above actual search results.
Finally if a good ranking is existential to your Blog, then it could be worth paying for the service and support package of a Content Marketing Provider. This can help you take the right decisions at the right time, review and promote your articles, maintain your blog and manage your campaigns.


Extensions

A free Blog service is limited in terms of layout and features. The layout is what makes your site unique, intuitive and responsive. The features are any characteristics that support the productivity and collaboration of writer(s), dynamic content or interactions with reader(s). 

Regarding layouts, you might create you own if you are a CSS expert, or get additiinal ones from third-party. However, interesting ones are usually for sell. 

Regarding features, I would prefer a Markdown editor instead of Blogger Rich text editor. Or a code highlighter instead of having to workaround by editing the HTML template as follow:

<!-- BEGIN BLOCK 2: my customizations to the standard template -->
<meta name='author' content='tncad'/>
<!-- add static keywords to homepage -->
<b:if cond='data:blog.url == data:blog.homepageUrl'>
<meta name='keywords' content='cloud,architecture,blog,iaas,open-source,software,engineering,data,api,devops,kubernetes,integration,application'/>
  <!-- same could be applied for each single blog post based on its url, but instead we are already dynamically loading the labels in block1 -->
<b:else/>
    <!-- code highlighter -->
    <script src='https://cdn.rawgit.com/google/code-prettify/master/loader/run_prettify.js?skin=sunburst' />
    <!-- non-color-related styles -->
    <style type='text/css'>
      table, th, td {
        border: 1px solid;
        font-size: small;
      }
      pre.prettyprint {
        overflow-x: auto;
        background-color: #212121;
      }
    </style>
</b:if>
<!-- END BLOCK 2: my customizations to the standard template -->

</head>
<!-- ... -->

In order for the code formatting to be applied, you still need to tag each snippet of each post:

<pre class='prettyprint'>
    My code here...
</pre>

There is nothing more elegant I can do whereas open-source Wordpress actually supports extensibility, to both certified plug-ins as part of their premium subscription offering, and custom plugins that I could develop myself or import from a community project. Here is a list of all Wordpress plugins labelled as code highlighter. In addition, Wordpress offers a fast migration path from Blogger.


Web Analytics

Google Blogger works well with Google Analytics, probably one of the best Web analytics service ever built. It can be used free-of-charge for tracking visitor behaviour, so that you can improve your blog accordingly. Activating Analytics for Blogger is just a 2-step process:
  1. Log-in to Google Analytics and create a property linked to your Web address, which one will generate a tracking ID and a tracking code.
  2. Log-in to Google Blogger and paste your tracking ID in the related settings. This will automatically include your tracking code to the header of your pages.
One activated, Google Analytics not only reports on the typical number of views by post, but also the number of currently active visitors, their physical location, type of device, referral source, search criteria, reading paths and durations. In case you are making money through Google Ads, you can also report on your sources and patterns of revenue.


Blogger API

At least I enjoyed the Blogger REST API for building my own stats using Python. This charts reveals a decreasing number of posts by week:

Analog to a new project where the amount of code is higher at the begining, a blogging activity will use a kick for bringing some content as fast as possible, and then decrease over time. This shouldn't be considered as a failure but rather as an adjustment in regards to external constraints and long-terms commitment.


This other chart reveal an increasing size by post, which probably compensates previous finding:

I apologize if this makes it harder for readers to digest longer posts. On one side, longer posts seem to be better ranked than shorter ones and once a week is recognized to be an optimal frequency to build an audience. On the other side, I shall probably better plan and estimate beforehand, in order to be able to split given topics into series.


To finish with, I used Python Wordcloud library to visualize the non-common terms frequently used in my whole Blog. This might be an insightfull input for defining relevant search keywords. Of course this kind of analyszs can also be done for each Post.

Take away

Blogger is a good start for building a private blog, but not as good as Wordpress. For the moment I am mainly blogging for myself, which is fulfilling enough and not yet too stressful. In case I want to reach a larger audience, I might commit more to indexing, promotion and follow-up of my Blog posts.


Source code

Comments