Atomic Habits

by James Clear

A well written book on how to get good habits to stick and bad habits to fade away. Very entertaining with well chosen examples, including personal ones.

The book is based around the author's four laws for building good habits:

  1. Make it obvious
  2. Make it attractive
  3. Make it easy
  4. Make it satisfying

(I'm sure there's acronym to be found there somehow: OAES 😃)

If you don't want to read the whole book then simply following guidelines in the final two tables on creating good habits and breaking bad ones is probably enough. Additionally you could read the summary at the end of each chapter. Which is not to say you shouldn't read the whole book. It's definitely worth reading. Just that the book does a great job of efficiently summarising the key points to building good habits.

"Further information on this book"

Useful links:

Kopstal Circular Walk

This was a 6km walk around the wooded hills of Kopstal, which I competed during a longer lunch break. Roughly the first kilometer, whilst in the woods, was just above a busy road. So the start was a little noisy with traffic below. Eventually you got away from the busy road and most of the rest of the walk was a pleasant stroll through the woods. There was nobody on the walk, perhaps because it was just below freezing! It meant the dog got to be off leash nearly the whole time. The last kilometer or so was along a fairly busy road, which you had to cross on a couple of occasions, as well as walk right along side it for short distances. It's not much fun to be walking right next cars, lorries and buses. Overall, whilst I enjoyed the parts of the walk away from the roads, it would be great if they could find away to avoid the roads at the end.


Rollingen Circular Walk

This was a nice quick walk of 6km around the woods of Rollingen. The walk takes about an hour and has a couple of slightly steep steps up the rock formations past some small caves with religious meaning. There would have been nice views, if it hadn't been a foggy day. Lovely forest walk which took about an hour and a half.


Happy New Year

Happy New Year!

Честита Нова Година!

Bonne année!

Schéint Neit Joer!



Lorentzweiler circular walk

A lovely late afternoon 9km walk around our local area in Lorentzweiler on New Year's Eve. The setting sun made this walk even more wonderful than expected. We knew the route well enough, except for the first third which was new to us and goes to show it is worth exploring your local area as a tourist from time to time!

The first part up to Blaschette is quite steep on an uneven path, the rest of the walk is straightforward and leads past a local cave known as Fautelfiels, which has wonderful look out over the Alzette valley. The route does miss the neolithic village just next to Blaschette, so keep an eye out for that on your walk. It's not a real neolithic village. Rather it was built for educational purposes, but it makes a nice place to rest if needed. The walk took us about two and a half hours.

The sunset from Fautelfiels:

The sun setting over the green valley of the Alzette

The path down from Fautelfiels:

Steps leading down a steep path into the red woods in the gleaming sunset

The church in Blaschette:

The route:

The map of the route in the walking guide


Reimberg cicular walk

For Christmas I received a copy of Luxembourg's "Guide auto-pédestre" - a book detailing all the circular walks in the country. There 201 of them.

So in the afternoon we completed the first one - a short 5km walk around Reimberg. This was a really nice walk through the autumn woods, criss-crossing streams on little and not so little wooden bridges. It was fairly flat with some gentle inclines along the way.

We set off late, around 4pm, meaning that we walked the last 20 minutes in the dark. This gave the whole thing a slight boy scout feel to it as following the markers became more difficult. By the time we got to the car it was pitch black. But it was a lovely hour spent outside with the family on Christmas day.


Merry Christmas

Merry Christmas

I wish everyone reading this blog (all two of you) a Merry Christmas.



Natural commemoration

Whilst waiting for my wife and daughter to get their haircut I took a walk around the fields and woods of Olm in Luxembourg. I came across this lovely area for commemorating those who have passed away. The idea being that you can choose a numbered tree at which your loved ones could commemorate you by laying flowers at it's trunk. You also had your name engraved on wall so you can see the names of all those being commemorated in these woods. There was also a little hut and small clearing so you could hold a little service.

The remembrance wall:

Each leaf shaped plaque on the wall has a name on it:

The plaque also has a number on it to mark the tree this person would like to be remembered at:

People can the leave flowers at the foot of the appropriate tree:

Finally, inside the hut is a board explaining it all:


Adding tags to images in Windows 11

Sometimes when I am adding tags to images using the properties dialog of Windows explorer I get the following error:

error 0x88982F52: there is too much metadata...

This is frustrating as it means some of my photos cannot be tagged and I can't find an obvious reason for this. It has been happening across photos taken on different devices for years.

I came across this discussion on the problem. It turns out the problem is probably related to the size of thumbnail image that is stored in the metadata. The problem can be fixed by opening the image in the photos app, rotating it until it returns to it's original position and then closing the image. Not terribly elegant, but it does work!


Vaccine Hesitancy

Across the developed world, it seems there is a small but significant percentage of the population refusing to get vaccinated, even if it means losing their job. The exact percentages aren't important, generally it's between about 10 and 25% of the local population. There is a lot of finger pointing and anger at this. Personally I am vaccinated and think everyone should be. Not because it is good for me or anyone in particular, but for the common good. It's statistical fact that covid patients in hospitals across the developed world are mainly unvaccinated patients.

There is also quite some anger on both sides of the vaccine debate. However one question not being addressed is why a significant portion of the population no longer trusts its leaders. Rather they believe what their friends or their social media streams tell them. It is clear that ultimately the politicians only have themselves to blame for this situation. It's probably been a generation since most countries had anything resembling trustworthy politicians, if they ever did.

When politicians ignore the rules they create, when policies are for sale to the highest bidders, when contracts go to friends of those in parliament, when minorities are routinely incorrectly blamed and scapegoated, we should not be surprised that especially minorities and the vulnerable and exploited no longer listen.



So I had a delivery sent to my parents' address. When the delivery driver arrived at the bottom of their block of flats he couldn't find the correct bell to ring. So he gave me a ring. I answered him and started getting frustrated because I did not understand how he could not see their name. Anyway I told him I'd phone my parents and get them to come down. By the time I got hold of them my dad was already on the way down to pick up the delivery. Later on my parents let me know that I'd got the number of the apartment block wrong, so I was giving the guy a hard time whilst he was in the wrong entrance, which was of course my fault.

So where's the Karma? Well, as I took the phone out of my pocket to answer the call from the delivery driver, I'd dropped it and cracked the screen! Had I given the correct number on the address, the delivery driver would never have called me and my screen would still be intact.😃


The cost of my static sites

$12.20 * 2

In a previous post on the tooling I use for my site, I said it cost me an extra $4 per year to host my site now that I moved from Netlify to Github pages. This is to cover the DNS charges of my registrar, which was free if I used Netlify's DNS. Turns out I was wrong. The charges are actually only $1.20 per year. So I decided to move another static, one page, 600 byte, site of mine from Netlify to GitHub pages in order to close my Netlify account. So now for each of my sites I pay $12.20 ($11 for the domain name and $1.2 for the DNS). So $24.40 per site in total. Not bad given that this is irrespective of usage. Not that my sites actually get any visitors. It's great value, thanks to my old hosting provider, but still current registrar

A word on Netlify. It might sound like I don't like their service, as I am moving to a setup which actually costs me more. In fact I thought Netlify was great, but for my rather basic needs I preferred to have less services to manage. I already used GitHub, so using GitHub Pages removes one provider from the workflow and simplifies things for me. This is true even though the setup on GitHub pages is quite a bit more involved as you need to create an action to trigger the build of your static pages whenever you want to re-publish. With Netlify this comes out of the box, so actually it is easier to get things going with Netlify than Github pages. Netlify just worked immediately for me. GitHub pages took some coding googling and hacking around to get working. But once implemented it is quite simple to maintain and keep going.


The Outsiders

by S.E. Hinton

Easy to read book written when the author was a 16 year old in the 60s. Finished it in a week. Makes a change to the Iain M. Banks books I've read recently. Some quite insightful commentary on the pace of life of the rich not allowing them to anytime to actually enjoy life. Instead always running after more more more in the rat race. Once they have everything they need they still need to find something to run after. Also commentary on the poor never having anything but being more honest and down to earth, even if they are stealing and breaking the law. Otherwise a straightforward story with some violence, but not described in any real detail by today's standards.

More info on the book


Use of weapons

by Iain M. Banks

Very well written book with an interesting way of telling the story forward and backwards at the same time. I do find it helps to check my understanding of the author's books by reading online reviews and critiques, as I am otherwise missing details.

"Further information on this book"


Thoughts on tooling for static sites


Since moving my site from Wordpress to Eleventy at the beginning of the year I've been trying find the most comfortable workflow for writing, editing and publishing posts. I love the control over my site given by using a static site generator. The speed my little site now loads in is phenomenal - way beyond anything Wordpress could deliver. Not that Wordpress was slow at all, but it can't compete with loading a few KBs of data with no processing at all. However the editing experience of Wordpress, and the workflow it included is still hard to replicate without jumping between services, repositories and branches. In Wordpress everything is in one place. You edit, create drafts, reviews and ultimately publish all from one place. So this is the description of the journey I've been on and where I have go to so far in my search of replicating the Wordpress experience for my static site generator.


The key requirements for me are:

  1. Code and content must be stored in GitHub.
  2. As few services as possible. If I could do it all efficiently in GitHub, I would.
  3. A user friendly editing experience
  4. As far as possible this should all be free!


Why GitHub? It's free for my needs and I always have access to my content from anywhere. I still struggle with many concepts in git, but GitHub itself is easy to use and lots of online support and documentation is available. It's also the de facto authentication service for all online developer services. No need to create endless accounts with passwords if you just authenticate through GitHub.


With WordPress you go there, draft your post, publish it and you are done. Since moving to Eleventy I've been trying to reproduce this experience as best I can. Initially I coded, wrote my posts and generated my site locally on my laptop then copied it to my hosting provider ( This worked a treat after some initial config and scripting in PowerShell to automate it as much as possible.

But this was not the most portable solution, so I looked for options to use online services as much as possible. First, I needed an online editor, which could edit my markdown posts stored in GitHub. This would enable me to write posts from anywhere, not just my laptop. After trying a number of services, I chose Forestry. It suits my basic needs perfectly without all the complexity of other services. Forestry does one thing only: enable you create content. It's not a development environment or anything else. It's content authoring only.

Next was the building and hosting my site. Again, I tried a number of options before settling on Netlify. This was easy setup and trigger builds from pull requests to GitHub repositories. It is great.

Finally, I was curious about online coding environments and used GitPod for a while. But in the end I gave that up and still do my coding on my laptop using Visual Studio Code. If GitHub Codespaces is ever available for free to basic users, I would be interested. For now I don't code that much and I can do that on my laptop.

So for most of the year I have been coding locally in Visual Studio Code, writing my posts in Forestry, storing my content in GitHub and publishing and hosting my site using Netlify.

Editing experience

I like Forestry, but didn't want to keep jumping to it to edit my posts. So I tried out Netlify CMS, but decided that wasn't really an improvement over Forestry. I did like the ability pull in the CMS as a subfolder of my domain (using "/admin/"). But I preferred Forestry, so stuck with that.

A few days ago I tried out cloudcannon. Whilst this was not for me, it led me to the idea of outputting my static files to a repository to be used by GitHub Pages. If I could build my site using GitHub Actions I could point GitHub Pages to my static files and host my files directly on GitHub. This took me a day to get working, helped a lot by this GitHub Action for building Eleventy sites. It works great and means I no longer have a need for Netlify. So as much as I really liked Netlify, I decided to move my site's hosting to GitHub Pages.

Finally, after looking further into the settings available in Forestry, I realised it also had the possibility present the CMS as a subfolder of my site, ie "/admin/". That was dead simple to setup and now I am down to using GitHub for storing and publishing my content and Forestry for editing the content, but being able to do so from my own domain. Small detail, but I like it.

Free, as in beer

Most of the services and tools I've used over the last few months are free for my level of usage. This is great. I am always amazed at the ability of companies to offer free plans. This is not like Facebook selling your user data. This is simply the fact that for small users, the costs to companies hosting them are not very significant compared to large enterprise clients. Also, I imagine with many small scale users, they get to iron out all the annoying edge cases that you only encounter by being a "stupid end user".

So how much does all this cost me? Well up until I switched to Netlify, it was free. But using GitHub pages with my own domain required some DNS configurations which obviously Netlify won't do for domain not using their services. So I switched my DNS servers back to those of my registrar and previous hosting provider, nearlyfreespeech. They do charge for this service though. Thankfully it's less than $4 per year, it's hardly going to break the bank. My goal of running my site for free is currently not quite met. I know there are free DNS providers, but since I already pay about $12 per year for my domain name, an extra few dollars is hardly an issue.

So my entire setup is almost, but not quite, free (as in beer). It's less $20 per year though. That's quite a miracle in my books!


Improving the publishing workflow

In my previous posts I mentioned how I tried out Netlify CMS, but then chose not to go down that route. So I kept looking for other options. My aim being to do as much as possible in one place, whilst avoiding as little lock-in as possible.

I discovered cloudcannon and checked out how I can make use of that. In the end it wasn't for me, but it had one feature which prompted a rethink. It has output syncing, which copies your static files to another "Live" repository if you want. I tried this out and it worked great. Pointing Netlify to this live repository significantly reduced the Netlify build times. Since I am on the Netlify free plan with limited build minutes, this seemed like a good idea.

But how to build my static files without cloudcannon or getting Netlify to do so. Well GitHub has actions and there is an action created by another user to build eleventy sites. So I got that working.

Then I remembered that GitHub also has "Pages" for hosting static websites. So I thought if I am already building my static files to "Live" repo on GitHub, why not use GitHub Pages to host them. Setting that up was quite straightforward without using a custom domain. So now I have my pages hosted on GitHub pages and edited through forestry.

The final thing to do is to update the DNS settings so that I can use my own domain name. Once I have done this, I can potentially remove Netlify from my publishing workflow. This is a shame, because I liked their product and service. But if I can manage this through GitHub that would be one less tool I need to interact with.


Testing Netlify CMS, take two.

After playing around with Netlify CMS some more, I got it working the way I wanted. Then I discovered the workflow settings and they were cool, but somehow did not seem too stable. Probably something I did wrong, but it got me thinking, maybe there is an alternative solution.