How to share a Roam page with others?

30th September 2020

Roam is still in active development right now, which means some common features in other note-taking app is not quite as easy to use here. One of these features is the ability to share a single page of note with friends or family. In this blog post, I'll show you how to do this properly.

Boost your productivity with Google Calendar shortcuts

22nd September 2020

I use Google Calendar, both personally and professionally. I have a shared calendar with a friend to keep track of different events and activities. I have always found it hard to navigate Google Calendar in the browser, I love the look and feel of the web app, though I find myself always looking for the right buttons, etc. I knew about the brilliant shortcuts that made Gmail fun to use and decided to see if Google Calendar offered something similar. Luckily, they do, and they are straightforward to remember.

Time to go back to the fundamentals of software development?

10th September 2020

With all the new toys coming out each day, libraries, frameworks and even architectures. Have we forgotten the fundamentals of software development? Every developer wants to write good code, but how often do we do what we say? Maybe, every so often we all need to take a step back and rethink our approaches to software development. If nothing else, we should find challenges and excitement in what we do, if only to make sure the passion that drove us to this career path doesn't die out.

What's new with TypeScript 4.0?

21st August 2020

TypeScript 4.0 just came out, and people probably want to be upgrading to it soon. Here's a quick summary of what's new based on official release notes. This is only meant to be a quick summary, so I have left out edge cases and detailed examples. If you have time, I'd recommended giving the official release note a proper read. But for those who want to get a high-level gist of what changed, this might be useful.

Running client side only JavaScript with Gatsby.js

12th August 2020

Gatsby is great for generating static sites, but sometimes we need to run some client-side only JavaScript as well. The question is how might we go about that? Well, that's what I'll be covering in this blog post. Actually, I've already written about something similar in a recent post Render client-side only component in Next.js. The approach is very similar, but I'll be walking through an example in this blog that is more specific to Gatsby.

Fixing Cypress errors part 1: chromium out of memory crashes

30th July 2020

After recently working on an existing project that adopted Cypress, I was both amazed at how pleasant the local developer experience was and how badly it runs on the CI pipeline. No joke, at one point I actually missed Selenium. To debug the issue, I must have run the pipeline over 100 if not 200 times and read many many Github issue threads. Finally, I was able to problem resolved and noted down a few things along the way which may help someone else in the same shoes. I am pretty confident these solutions will fix your problems, if not leave an angry comment and let me know that I failed 😂

How to approach a disagreement

28th July 2020

As software engineers, there are a lot of things to disagree on: tech stack, syntax, code standard, testing, methodologies, etc. No matter your seniority, learning how to frame a disagreement is vital. It includes both disagreeing with what others have done and have others disagree with your approach. It happens a lot more often than we expect, so if we don't pay attention to our methods, then it is easy to cause stress and tension within the team or between teams. If this continues for a long time then well, then it will create a toxic work environment. As someone who has a consultancy background, which requires people to jump in a new team and start delivering value as well as navigate office politics, I thought this is an intriguing subject for me to share my thoughts on.