Selfhosted Docker apps for Documentation

There are things you want documented, especially when you’re dealing with detailed guidelines and you want to put them in one central repository for future reference. If you’re looking for a selfhosted solution, here are some of the great Docker apps:

  • Bookstack
  • Dokuwiki
  • Wiki.JS
  • WikiDocs – simple wiki style
  • Codex Docs – for Notion style writing
  • HedgeDoc
  • Flatnotes

VBA code to refresh an Excel table generated by a power query

Disclaimer: I’m not good at Excel VBA. That’s why I take advantage of ChatGPT to generate the code for me.

The requirements

Here are my requirements:

  1. When I hit the button, refresh the table called AgingTable in the Aging sheet
  2. The AgingTable  is connected to a Power Query called the same name: AgingTable
  3. Since the AgingTable query is a big table and runs several transformation, it may take a while for the query to finish
  4. However, before proceeding to the next script in the VBA I want it to wait for the query to complete

I’m looking for a Syncthing alternative

I liked Syncthing because it is capable of storing encrypted files at rest while running an instance in a VPS. However, my recent experience with it has been less than optimal.

For example, in my VPS I’m always stuck at the login screen while trying to access the GUI to manage my synced folders:

Syncthing stuck in login screen

Meanwhile, in local server, it says the folder is out of sync:

Folder indicates it is Out of Sync

Although if you examine closely the files, they are indeed synced. Clicking on the Out of Sync Items further are 366 pages of nothing!

Out of Sync 366 pages of nothing

If you know of an alternative that’s more reliable than Syncthing, please do let me know in the comments below.

Generate list of all available characters in Power Query

When you generate a list like for example {1 .. 10}, you’ll get:

1 2 3 4 5 6 7 8 9 10

Or for {"A" .. "Z"} you’ll get:


What if you want to generate all the available characters in your US English keyboard?

I’m not sure if this is already an exhaustive list, but when I try {"!".. "}"} I’m getting:

! " # $ % & ' ( ) * + , - . / 0 1 2 3 4 5 6 7 8 9 : ; < = > ? @ A B C D E F G H I J K L M N O P Q R S T U V W X Y Z [ \ ] ^ _ ` a b c d e f g h i j k l m n o p q r s t u v w x y z { | }

Why an IPv6 only VPS is not for me

In the world of Virtual Private Servers (VPS), there are affordable options that operate exclusively on the IPv6 protocol. This is because IPv4 addresses are becoming scarcer and more expensive. However, there are a couple of reasons why an IPv6-only VPS might not align with your preferences:

  1. IPv6 Connection Requirement for SSH Access:
    • One of the primary drawbacks of opting for an IPv6-only VPS is the necessity for an IPv6 connection to access and manage the server via SSH (Secure Shell). Unlike traditional IPv4 VPS, IPv6-only VPS requires a compatible IPv6 network infrastructure. This can be a significant hurdle for those who primarily use IPv4 connections.
  2. Docker Limitations with IPv6:
    • If you rely on Docker for your work and projects, it’s important to note that most Docker image repositories today, including Github, do not fully support IPv6 at this time. This means you may encounter challenges when trying to pull container images from repositories if you opt for an IPv6-only VPS.

In summary, while IPv6-only VPS options can be cost-effective and are in line with the trend of IPv6 adoption, they might not align with your personal preferences, especially if you prefer working with IPv4 connections and rely on Docker for your projects. It’s worth considering VPS options that support IPv4 or have dual-stack capabilities to better match your preferences and requirements

The Perfect YouTube Video Length: 10 Minutes

In the vast landscape of online content, YouTube stands as an undeniable giant. With over 2 billion logged-in monthly users, the platform offers an extensive array of videos covering everything from educational content to entertainment, vlogs to music. As creators strive to capture their audience’s attention and maximize watch time, the question of video length becomes pivotal. Is there an ideal duration that strikes the balance between engagement and viewer retention?

I would argue that Youtube videos should only be 8 to 12 minutes long,  and that the 10-minute mark might just be the sweet spot. Beyond that, I’d rather just click Next.

OneDrive is an intrusive piece of app

Leo Notemboom explains how the OneDrive can be so invasive on your computer’s document files if you’re not too careful.

I might have enabled OneDrive backup by accident in the past. I just hope I didn’t lose files by accident as well because of Microsoft’s and OneDrive’s stupidity ineptitude.

Power Query function to count number of months between two dates

Power Query has a built-in Duration.Days function. But what about Duration.Months?

Why don’t we create a custom function for that?

(Date1 as date , Date2 as date) =>
    Source =
            () => [x = 1, y = Date.AddMonths(Date1,x)],
            each [y] <= Date2,
            each [x = [x] + 1, y = Date.AddMonths(Date1,x)],
            each [y]
    Months = List.Count(Source)

Note: Date1 should be earlier than Date2.

BDO PERA Annual Contribution Limit Increase

Following the directive of the BSP, I received an email today from BDO stating that the limit for my annual contribution to my PERA account with them has increased from P100,000 to P200,000.

This is timely — with the elevated inflation rates in the past year or so, we’d better have enough come retirement age. Plus, this is an opportunity to average down faster with our PERA account subscriptions being down in the past 3 years.

Rich Dad Poor Dad – from overrated to trash

After reading the book (or rather, listening to the audiobook) of Rich Dad Poor Dad by Robert Kiyosaki, I thought it was overrated. After listening to the If Books Could Kill podcast episode about it, I realized it was a total piece of trash.

From promoting illegal investment and business activities, to selling MLM or Ponzi scheme products, people should already stop quoting passages from this book. Forget about assets and liabilities, or shaping people’s mindset about it, other than those taught in accounting classes.

Listen to Michael Hobbes & Peter Shamshiri as they break down the faults in this book:

Scroll to Top