10 years of this blog

10 years of this blog

I have been blogging about software and technology in this blog for a decade. What was the rationale of this blog? Why should you write a technical blog?

How it all started

I started blogging in 2014, when I was improving my skills via a Masters Program. I was a bit burned out because studying and working at the same time require an energy I did not have during that time.

I was writing only a couple of posts each year (and that was an error!) because I thought that every post I wrote needed to be perfect (error again!). Once I get to the mindset that I actually was writing for myself, I started writing more and more.

How it is all going

I have an aim of writing 12 posts each year. It does not have to be one each month but it helps to have some routine.

Sometimes I have a lot of drafts in my laptop for months, just waiting for me to find the time to polish them a bit, and publish them. Hence the reason that I seem to have writing streaks on holidays, while they are more like editing streaks.

How could you maintain a technical blog?

In this section I am going to detail some things that I do that could help newcomers to the art of technical blogging.

Write what you learn

Once you learn how to do something, write about it. I like writing short recipes, that act as a technical diary for my progress.

This technique for reinforcing things you learn is called spaced repetition and has been proven useful for learning.

To sum up, I write them mainly for myself, but in case that anybody finds them useful, better too!

Write opinions

When feel you have been working with a tool for a while, write about it. It does not need to be the best text in the world, but it needs to be truthful. It needs to gather your experience and your opinion about it. Be empathic, value both its good and bad parts and maybe give some hints on how to work with it.

You are entitle to your opinion, even though it contradicts the mainstream. Just give data and tell your experience (war stories are good for this).

Write what you will like to do

Some days ago, I wrote a short post about a possible extension of TypeScript with runtime capabilities. A very simple proposal to add optional runtime type checking to TypeScript.

Writing proposals like this help you put in order your mind and also can inspire others to implement it.

Write what you do

While I was in my honeymoon and it was too hot to go outside, I started to write about some code with a object freezing for Python. Indeed, several days later (using the hot hours of the evening), I was able to complete a prototype for the library. I published in GitHub: Gelidum.

I blogged about this package and that helped me put my thoughts in order. Writing about it was like kind of like a rubber duck debugging process.

I even asked what the people of Hacker News thought about the package, and get some valuable feedback and inputs.

See where I am going with this? Writing about a thing I did helped me improve my code, and I would say my skills too.

Share on social networks but do not go crazy

You are not going to get rich for technical writing, but having some notoriety is nice. If you write good content, share it in social networks, just to help people find it in the net.

Keep it simple

Don’t go overboard when writing in a blog.

Use English

While English is not my mother tongue, I write almost all my posts in that language. I have a Spanish section with some content for locals, but I have not written a Spanish post in years, I think.

English is the language of the technology. It is an easy language to write and speak (but a difficult one to master), so you need to go with the standard and use it.

Besides that, it is a global language. Spanish (or your local language) could be important in some geographical zone, or have a lot of speakers, but think about it: scientific literature was written in Latin in the XVI century, source code and technology content is written in English.

GitHub Pages

I started using github pages because it provided me with a service to publish some static web page. That space could be very well be my blog.

Markdown

I write all my posts in Markdown, as that is a more portable format than HTML, so in case of needing to move to another hosting, I can do it (with some hassle, of course).

Images or other content

I tend to not include much images, videos or other type of content than text. I like code blocks though. They are useful as they have syntax highlighting for the code, and can summarize easily a good chunk of text. i.e. source code better than a wall of text.

Web generator

Of course, if I was going to use Markdown, I needed to compile those files to a static HTML web page. That is why I decided to use Hugo, and rely on GitHub actions that would compile and publish the new version of the blog anytime I do a push (example job).

New features and maintenance

The worst part of keeping a technical blog is that you need to do some maintenance from time to time.

For example I have some tasks that I would need to do but I have been delaying for a while:

  • Change the Hugo template. I do not know why did I decide to use this one with my photo on top.
  • Add a link to my profile in BlueSky in the footer of the blog.
  • Add some GDPR-compliant comment system?

As I have not much free time and I prefer to use my time to improve my skills, these features are not going to be implemented soon. I prefer to be honest and just acknowledge that my blog platform is not going to change soon. I give more value to the content I write, so only when I find an easy way of changing the template that does not imply updating a sub-repository, then, I will do the improvements.

Choose the system that liberates you from all the chores.

Conclusion

It has been a wild ride! 10 years of technical blogging, for 10 years more!