18 Sep 2021, 10:23

server update
XXX lists XXX

God dammit ubuntu!


I have to start by admitting one thing: I use to hate servers. Every time I even had to open a remote connection, that would ruin my mood. Granted, I am a web developer, my work depends on it. But still…

All that is just to explain why I haven’t updated my ancient server for a few years

Ok, time to roll up my… well, I don’t really wear long sleeves… Anyway, I take a deep breath and try to upgrade it.

sudo do-release-upgrade


Reading cache

Checking package manager

Cannot upgrade 

An upgrade from 'zesty' to 'bionic' is not supported with this tool. 
=== Command terminated with exit status 1 (Sat Sep 18 16:30:40 2021) ===


Ooops Apparently this upgrading tool doesn’t support my version anymore

I tried ducking around (yes, I use duck duck go), but none of the results was working for me

Got in contact with scaleway and they said: - ubuntu is only upgradeable for 2 major versions. Now you have to destroy your instance, and make a new one.

Dammit, now I will have a new instance with new price. My old instance was super cheap because it was that old.

Ok, it was my fault. I will not complain. lets go!

So I got my new instance and started working on it:

  1. Create my own user & secure it
  2. install and configure nginx and certbot
  3. install docker
  4. git clone my apps, run devops script
  5. spend days and days fixing…

… wait a minute …

it works! 😎

But wait, how is this working? 🤔

it took me months to set up the old server

Simple: Docker

You see, the old server I had to set up app by app

but when I got 2 more developers to work on my side project, I decided to have it all running on docker, so it would be easy to have it working for everyone

I was expecting it would be easier, but having it all working in minutes was unbelievable.

12 Jun 2021, 17:50

Hugo blog engine
XXX lists XXX

After almost 10 years of blogging in blogger (with a very low frequency), I decided to self host my blog. So then I had to decide what to go with


  1. Markdown - I have been a web developer for more than 20 years. Because of that, my growing hatred towards WYSYWYG editors peaked while I was working in a custom CMS. In 2013 my company started using redmine (a markdown)

    I got used to markdown while using redmine at work. Since then, I have been using it for everything. Even tocobooks mas markdown as its text editor.

  2. self hosted - I dont want to have my content locked in someone else’s database

  3. no database - it is sad to see the effort the blog engines take to give you version control, when you could just keep your .md files in git. And that is on top of the main reason: you own your text files.

  4. low or no maintenance - I like ruby, but my experience with it is: server needs constant maintenance. Go on the other hand is a lot more stable, and lightweight. Dotnet would be ideal, as I already keep always up to date in my server.

  5. easy to modify - I started programming web apps in PHP in the early 2000’s. I understand why it is so popular for blogging. the fact that you can just include .php files anywhere gives a flexibility that is very dificult to match.

Considering all this points, Hugo seems like the obvious choice (in 2021).

  • markdown - check!

  • self hosted - check!

  • no database - check!

  • low or no maintenance - definitely check!

    hugo generates static html and you can host it anywhere

  • easy to modify - yes

    not as it would be with php, but hey, considering the other benefits, it is a no brainer.

My tips to get it up and running

- Hugo should not be installed in your server.

The installed version is for development and exporting the files. You will copy the generated static site to nginx, apache or something similar.

If you are impatient like me, you might rush into having it all running directly in the server (I even edited the first posts directly there), and then will be thinking: -Ok, I have it running in the server. How do I run as a service now?

- You should host your blog using a simple web server

Since it is just a static site, you can host it anywhere.

- Everything will hardcoded with the baseurl from your config file

It is obvious, but sometimes it take a bit too long to process it.

My theme was looking weird. At first I thought the theme was not working, but then I realised it was the baseUrl

- Keep your local dev environmnet in source control

Or at least your config and md files.

Just in case

Will I continue with this in the Future

Not sure.

So far it seems good.

It took some effort to move away from blogger, but now I have it as markdown files, so it could be easy to migrate again.