Photo by Hudson Hintze on Unsplash

Yes, live with it.

Shiny object syndrome has gotten a bad reputation.

People say that it prevents you from focusing and becoming the best in the field.

It’s like a monkey that jumps in your car and takes your lunch.

I have been dealing with this monkey for years now.

Then I started looking at it as a cure, instead of it being like a disease.

So Far…

Photo by Jon Tyson on Unsplash

In the past, I wrote about template messages for WeChat Mini-Program.

In this article, I will attempt to cover broader spectrum of WeChat on this “new” subscription message. It’s new until they decide to change again.

Current Rule

One-time subscription message is the official translation for WeChat’s subscription message service.

However, the name is a bit misleading. It can seem like the user only have to subscribe once then the developer can send them an endless number of messages.

A one-time subscription message means one permission acquired from the user is only good for one message.

After you send the message, you…

Developer’s secret guide for an awesome article

Photo by James Harrison on Unsplash

We know you can code, but can you can a decent technical article?

That was the question that I asked myself three years ago.

There’s no secret that when developers are stuck we turn to the internet for the answer.

I reason why I started writing was that I wanted to contribute my share of knowledge.

But have you ever looked up some technical article that just frustrates you rather than giving you the relief?

Whatever your motive is for writing a technical article(I’m sure it’s a good intention), the little guideline wouldn’t hurt.

Start with the Purpose

What kind of article is it?

Technical Breakdown

Recently, IKEA launched its WeChat Mini-Program.

In this article, we will break down its features and how to implement them if you wish to build something similar.

Custom Header

There’s usually a default header for WeChat Mini-Program

Five years of freelancing

Photo by Micheile Henderson on Unsplash

So I stumbled into freelancing when I quit my first full-time job at Uniqlo. Ever since I have been freelancing as a software developer and language translator. Here are things I wish I knew.

First, not all jobs are created equal.

One of the benefits of freelancing is that you get to try many things. Unusual jobs as well. However, just because it pays, it doesn’t mean that you should do it.

For example, because when I was doing Japanese and Chinese translations, I got some requests for translating Japanese porn. …

Sooner or later you will have to do it yourself

Photo by Alvaro Reyes on Unsplash

As a software developer, have you ever catch yourself complaining about the project manager? Why is he/she being pushy? Why do we feel tension underneath the small talk?

Even you haven’t complained about the project manager before, you might have wished that there are less chaos and more structure around the project that you’re building.

In my case, it’s usually because the team is understaffed. Because I am bilingual and working in China, the boss’ save money alarm goes off and thinking why to hire a project manager when we can just make the developer do it.

However, I don’t…

It’s not just the location difference

Photo by Dahiru Wada Gunsau on Unsplash

Recently, I was fortunate enough to be invited to be one of the instructors for Le Wagon’s part-time Bootcamp program.

Le Wagon is a coding Bootcamp with locations around the world. The one that I was involved in was based in Shanghai, China.

With that being said, I have taught online courses before then. I have always wondered if I was even able to teach offline since I am an introvert.

The overall experience was more than I could hope for. I discovered some insights that I would like to share with you here.

Difference in Engagement

Truth be told, my online courses…

Get started with a Chrome extension today

Photo by Krsto Jevtic on Unsplash

“Sit up straight!” my mom used to yell at me when I am fixated on my laptop for too long.

Ten years later, when I am writing code instead of playing video games, my poor posture has come back to bite me.

Therefore, I decided to take the matter into my own hands. I could watch some YouTube videos and do some posture exercises. But I am a coder, so I will code my problem.

That’s how Healthy Spine was born. It watches your posture and reminds you when you slouch— just like my mom back in the day.


  • Basic…

Having fun with Face API and ML5js

Photo by Ryo Tanaka on Unsplash

If you use Chrome you may have seen the dinosaur game.

It’s a simple game where the dinosaur jumps to avoid obstacles, which is a perfect target for me to learn how to manipulate it with my face.

Here’s the original game, if you never played it.

The Process

After watching a few youtube videos from The Coding Train, I learned that the simplified steps for getting a prediction model to work are:

  1. Collect data.
  2. Train data.
  3. Deploy model.

If you don’t want to write the code yourself, feel free to clone my repository at the bottom of this article. …

And how it differs from the template

Photo by Magnus Engø on Unsplash

WeChat Mini-Program has evolved in the past couple of years. Every time I dig into their official documents, I can still learn something new.

In this article, we will dive deep into everything that WeChat Mini-Program’s component can do.


  • Basic understanding of WeChat Mini-Program
  • Basic JavaScript knowledge

When to use a component?

  • When you find yourself copying and pasting the same code
  • When you want something to be reusable
  • When you want a more maintainable codebase

How to use a component?

Usually, I create a folder named, “components”

And inside of the “components” folder, I will have the individual component names as the folder name.

  1. By right-clicking on the empty…

David Yu

Software Freelancer based in Shanghai. Get my free checklist for project management:

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