This is a 3 part series about what I have learnt from applying the immutable design pattern to my work in the recent months. This is born out of my frustration/confusion on this learning journey and hope that I can save someone from going through my confusion.

Image for post
Image for post

Disclaimer: I am not an expert on this matter, but I would like to share my thoughts and experience with immutability and why I believe more people should be using it.

If you’re new to the concept of immutability and have not seen Part 1, I would highly recommend you to go check it out first before reading this. Please treat the code examples are pseudo-code as I go back and forth between languages and syntax slips my grasp sometimes. …


This is a 3 part series about what I have learnt from applying the immutable design pattern to my work in the recent months. This is born out of my frustration/confusion on this learning journey and hope that I can save someone from going through my confusion.

Image for post
Image for post

Disclaimer: I am not an expert on this matter, but I would like to share my thoughts and experience with immutability and why I believe more people should be using it.

Part 1: Why immutable?

So what is immutability (immutable)? In layman’s terms, it’s something that cannot be change. In technical terms from Oxford, “unchanging over time or unable to be changed.” …


Image for post
Image for post

As an engineer, I have always felt that non-technical talks are mostly a waste of my time, and throughout the majority of my life, that has been true.

However, I think my perspective has expanded drastically in the first year of joining Govtech. In 10 months, I given opportunities to attend talks by:

  • Gregor Hohpe, ex-CTO of Google / Author
  • Mitchell Hashimoto, Founder & Co-CTO of HashiCorp
  • Bryan Chua, Co-founder & ex-CTO of ShopBack
  • Mark Birch, Regional Director of StackOverflow / Founder of DEV.BIZ.OPS
  • Quality engineer team leaders at Facebook

Of course there are also some more technical talks that dive in deeper into the capabilities of the platform that they are building (e.g. Kong gateway). …


Image for post
Image for post

Anyone who knows me for long enough knows that I have a thing with keyboards, and two common questions that I get from my friends are

How many keyboards do you have?

You bought another keyboard?

Well, I thought really hard about it, and I think that I might have a convincing argument that might win you over.

I am a Software Engineer; To me, a keyboard is not just a tool, it’s a medium to express yourself in the digital world. A keyboard is like a paintbrush to an artist, or a pen to a calligrapher. The different keyboards gives me a different feeling towards them, a grounded no-frills keyboard feels formal and is used for work. A keyboard with many function keys and lighting is fun*, and is something I would use for gaming. …

About

Kai Hong

A passionate software engineer who’s interested in writing and experimenting with technology

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