I’ve finally got around to setting up Zigbee Home Automation (ZHA)in 2021 🍿

My setup requisites:

  1. Raspberry Pi 3B
  2. (Optional) Monitor for Raspberry Pi
  3. Home Assistant setup on raspi v0.118.4
  4. Zigbee Radio USB — I got mine from aliexpress for $9 with shipping, took about one and a half weeks to reach Singapore.
Image for post
Image for post

Following Instructions from:


#1 find home assistant using nmap, in this case, raspi address was

nmap -sn scan report for
Host is up (0.27s latency).
MAC Address: B8:27:EB:0A:B4:A3 (Raspberry Pi Foundation)

#3 Add ZHA from Configuration > +ADD INTEGRATION > Zigbee Home Assistant > Please Wait … > Select Serial Port > Selected from drop down > Submit > Load for a minute >…

The dreaded system warning pops up: “Your disk is almost full”.

Image for post
Image for post

You’re in the middle of something and ignore that.Maybe you delete some files in downloads and desktop. Then move on (you know that’s not going to help).

A few days later… after the umpteenth warning, you start having to force quit applications. Then you look at Storage Tab. What’s in Documents? What’s in Other?

At this point, you start to realise you’re going to need to do something significant to remove the bloat on your system despite having “everything on the cloud”. So much for CI/CD!

🔮 The first thing is to reach for is the automated tools. …

With the previous post giving a nod to using the API for the Instagram feed, I’ve done a quick implementation on the website. Yet, it hasn’t necessarily been performant. Each cold page load requires approx. 12 service calls (11 to Instagram, and 1 to my server) see below for Instagram feed load speed → the big green bar in the network tab. I’ve already implemented front-end caching with a store on the SPA and request caching is built-in with service worker. Of the 11 calls to Instagram, 1 is to get the ids and the other 10 are in parallel. …

I was considering enhancing the liveliness of my ecommerce page with an Instagram Feed. Given that the posts on Instagram are my own, to be hosted on my own website, this sounds like a straightforward case. Unfortunately there are mostly paid options (shopify), and even for the developer, there are numerous steps to jumps through.

Use case: To display one’s own Instagram feed on their personal website.

Image for post
Image for post
Screengrab of my custom feed as inserted on the website

Visit Instagram’s website and they allow you to embed a single post (from anyone) but not the feed. Google for Instagram Feed and it comes up with a bunch of third party websites which you need to log in to and a wordpress plugin. Stackoverflow also comes up short. …

Yesterday I came across a colleague splitting his windows left and right to compare two files. I immediately recognised this feature missing from my macbook, where did this mysterious feature come from why was it lacking on mine? Then another part of me woefully thought, “you don’t need that… developers use diff!” hint opendiff file1 file2 to use FileMerge from bash. Yes I do see the point in moving windows around at whim, what if I wanted to compare browser text or images and not files themselves?

Turns out, there’s a name to snap windows to the left and right: Window Managers. …


James Koh

yesterday was tough, make tomorrow better

Get the Medium app

A button that says 'Download on the App Store', and if clicked it will lead you to the iOS App store
A button that says 'Get it on, Google Play', and if clicked it will lead you to the Google Play store