Finally, it’s done!

It took me a whole day to deal with the moving stuff, which was really troublesome, and I encountered many small problems along the way. So I wrote this article to record my experience.

Read More


Recently, I have been working on live streaming related projects. Although I am a frontend developer, I still need to understand some of the principles of live streaming. At least, I need to know what formats are available and what are the advantages and disadvantages of each format. This will make the development process smoother.

This article will briefly record some of my experiences and information. If you want to have a deeper understanding of HLS, you can refer to the following two articles:

  1. Choosing a Live Streaming Protocol: RTMP vs. HLS
  2. HLS Protocol for Online Video - Study Notes: M3U8 Format Explanation and Practical Application Analysis

Read More

The full name of CS50 is Introduction to Computer Science, which is a general education course at Harvard University. It is available on edx, and anyone can take it. There are even teaching assistants to help you with programming assignments (only programming assignments, not other types of assignments like paper-based ones).

The first time I heard about CS50 was through this report: CS50: A “hard” course taken by over 800 Harvard students, what makes it so attractive?. It wasn’t until I finished the course recently that I understood what makes this course so impressive.

Let’s start with the meaning of the title: An Ocean-like Programming Course. Why the ocean? Because this course is deep and wide. How deep and wide is it? I recorded the course outline and assignments for each week. If you have a friend with a computer science background, they will know what I mean.

Read More

Although I interviewed about 20 companies last year, it wasn’t until recently that I realized how important the interview process is for a company. Of course, the importance of HR cannot be underestimated either.

If the HR of a company does a good job and the interview process makes the interviewee feel cared for, in this era of open internet, the job seeker may share with friends later: Hey, I went to XXX today, their interview process is awesome! Conversely, a poor interview process can cause harm for years to come, with negative reviews one after another. Below are some practical examples, all of which are positive examples, and I will directly mention the company names. Yes, I remember the companies that treated me well when I went for an interview!

Today I want to talk to you about my ideal interview process, which can be roughly divided into three steps:

  1. Before the interview (arranging the interview)
  2. During the interview
  3. After the interview

Let’s discuss each of these three steps one by one.

Read More

For those who write code, no matter which programming language or development environment they use, they will need to execute some commands at some point. This is when they will open the terminal and start typing commands. The most commonly used commands are cd, ls, git, ssh, rsync, etc. However, the built-in terminal is actually quite difficult to use. Today, I want to recommend a better option to you.

Read More