Awesome tools to use in personal projects

1st December 2019

A developer who doesn't work on personal projects isn't a true developer! Just kidding! But working on small side projects is an awesome way to solidify and improve our craft. It is both practice and exploration, this is the best opportunity for you to pick up on something others might not know about! In this blog post, I will walk through some of my favourite tools and what I feel is missing in my toolbox.

Linux is still Linux in 2019

8th November 2019

The experience of installing Linux and getting it running on a machine is just as inconsistent as a year ago and years before that. There were visible improvements, but still plenty room for improvements compared to Windows and Mac OS. I encountered many issues during my little experiment, I ended up switching back to my old setup at the end.

Creating TV Apps With Web Technology

26th August 2019

Ever wondered how TV apps are made? How it differs from the usual web app or mobile app development? I was fortunate enough to work on TV platforms for about year now, and there is some exciting stuff for me to share around this subject. I will first give an introduction on TV platforms, then explain why we decided to use web technology to build TV apps, finally I'll go through some of the challenges we faced that are specific to TV app development.

Micro Frontend: An Introduction

26th August 2019

Micro-frontend is not a new concept, it is simply a rebranded idea which is now a new buzz word. In this blog post, we'll talk about what it is and why it is here, but more importantly, I hope to illustrate that people shouldn't shy away from micro-frontend because they probably know a lot about the subject already.

Self Reflection: How To Run Coding Sessions As A Volunteer

24th August 2019

After almost 4 months of volunteering, I've learned that running a weekly session for one volunteer is too much. Also don't try to teach big topics that span over a few sessions, because people will drop in and out. They will struggle after missing sessions and either stop attending or come in feeling very lost the next time. People love coding games and challenges instead of tasks with vague requirements like "make a website that uses HTML form". Going forward I'm going to try smaller bite-sized sessions so people can drop in and out more freely.

Trying out new blogging format

22nd August 2019

Going forward I am updating how blog posts are structured. My thinking is that it will help people to consume the content and makes it a fun challenge for me. So each blog post will have summary as its first paragraph, then go on to the main body of the content. If possible, I will keep the most relevant and important stuff at the top and the least at the bottom of the page. Hope everyone (the very few people who visit my blog) enjoys the new change.

My React Hook Notes

8th August 2019

I have been doing a lot of reading on React Hook, there's quite the hype for it. The more I read, the more I understood why. It will breakdown existing complex app logic into simpler, flatter architecture. There were some key points I wrote down as part of my reading, which I think will be very helpful later to refresh my memories and decided to upload it on here for others to see as well. It is a digested version of the reading materials I listed in the source section below.

Write clean React code: starting with JSX

21st June 2019

React is arguably the most popular JavaScript rending library/framework right now. With its rising popularity and now dominating the job market, many similar JavaScript rendering libraries followed suit and adopted JSX into their work. In case you are new to frontend development, JSX is a JavaScript Syntax introduced as part of React (open sourced by Facebook back in 2015). Now you can find JSX in not only projects that are meant to be similar to React (e.g. Preact) but also things like Nerv, infernojs, Deku, and etc.

Ways to improve list loading performance

10th June 2019

As developers lists are one of the main things we work with, for no other reason than it is such a powerful data visualisation technique. We use it so much that it is second nature to dump a list of data on the screen. This is fine for users with good hardware devices and fast internet connection. But what about when we don't have the ideal scenario? In this article, we'll talk about some nice techniques we can use to improve user experience with lists on low-end devices or slow internet connection.