Nick Ang profile picture

Nick Ang

Want to see a full list instead of pages of results? Click here.

My digital garden

By changing the label I use to refer to this website from "blog" to "digital garden", I am hoping to change the things I produce and publish here.



Words matter

Inspired by a book and an article, I decided to write!


Tech independence

This article isn’t my own, but I was so moved by this story shared by Derek Sivers in his interview with Jordan Paris that I felt like I needed to publish it as an article on my blog. Everything below is quoted verbatim from the original interview transcript. Read the transcript on sivers.org or…


Free text expander software for Apple devices

I recently went on a hunt for a suitable text expander software and in this post I share how I arrived at a perfect free tool. As a primer, a text expander is a software that inserts some longer text when a keyword is typed. Here’s an example use case: I would like to be able to insert my YouTube…


Moving from Wunderlist to Todoist as my todo list app

Source: wunderlist.com This week I realised that Wunderlist is shutting down and folding into Microsoft To do. It came as a surprise to me but it probably shouldn’t have, since Wunderlist is (was?) completely self-sufficient in the Free pricing tier. Anyway, I was forced abruptly to consider a new…


Basic HTML Video Tutorials

This is a group of videos that are part of a bigger series of video walkthroughs. Read Experienced Developer does FreeCodeCamp’s Web Development course for more details about the video series. I recently finished recording and publishing 5 video tutorials that cover Basic HTML! I am quite happy with…



What's one thing about coding that excites you?

I was asked this question recently by a student from a coding bootcamp and I thought it might be useful to document my answer down for my own reference and also for those who are curious to know. One thing that excites me about coding is the empowerment it gives me to build things that can automate…


Why it's useful to learn Terminal (with example application)

I’ve been teaching people how to code for several iterations now, and one of the things I used to struggle with was to convey why it is useful to learn to use the command line interface, i.e. Terminal. At the beginning, learning to use the Terminal means learning to do things more laboriously. You…


How to setup access to GitHub from Terminal with 2FA

Setting up Terminal to access GitHub when there is 2FA setup on is more convoluted than I expected, so here’s a reference. The first time you try to clone a repository from GitHub to your laptop (after being granted access by your team mates), Terminal will prompt you for your username and password…


Is Google Sheets robust enough for downloading data?

One way to make the data in Google Sheets downloadable is to publish to the web - but is it reliable for sensitive business use cases? I work at an advertising technology company that has some of the biggest advertisers on Facebook in the world as clients. For these big clients, the main bottleneck…


How I think about memory

Photo by Bret Kavanaugh This post is my basic attempt to write down the way I’ve been thinking about human memory and how I’ve approached using computers to augment my own limited memory. Note that this isn’t meant to be very scientific as it’s just me putting into words my current state of thinking…


Text vs Code

What is the difference between text and code? Clarifying this concept should help you demystify what code is once and for all. Is code special compared to text? Turns outs, code is not that special! In fact, code is just text that is written in a specific format, following some rules. Text is any…


What is REPL?

REPL stands for read-evaluate-print-loop and it is basically a program that is an active session running a programming language and awaiting additional inputs. I know from experience trying to explain this concept that it can be confusing at first, so in this post I’ll try to explain what is an REPL…


The quickest way to try new JavaScript libraries

Real software engineers don’t reinvent libraries that already exist, they build something better on top of them. It is 2020 and I don’t know a single software engineer who doesn’t use third-party libraries in their work. Which makes sense. Why rewrite and maintain what has already been written and…


A day in the life of a software developer

If you have ever wondered what it is like to be a software developer, like what a week in the life looks like, this post is for you. I will share from my experience when I was a software developer leading a small team and also draw from my observations of other software developers in companies that…


Goals for 2020

Hello world! It’s that time of the year again to plan to make dreams happen. I’ve summarised my learnings for 2019 already so in this post, I look into the new year. I was born in 1990 and will be turning 30 this new year. So while I could be making a grand list of things I want to make happen for…


The best approach to start learning to code

If there is a skill in this world that is perfect for learning by iterating, it is programming. Iterating means to make an initial attempt, then improve on it if you choose to do so. I strongly recommend you to take this approach to learning to code. Coding lends itself terrifically to this approach…


Technical skills are not just for software developers

Photo by insung yoon on Unsplash When you’re not sure about what a term like “technical skills” entail, you might relegate it to being something that is reserved for the specialists. In the case of technical skills, I had also always thought that only people who studied Computer Science in…