Wang He seems to be an unusual junior. He has been fond of computers since he was a child. For many students who just started to learn programming in college, it is undoubtedly outstanding that they can make a Linux distribution by themselves in senior three.

Learn about the contributions of TiDB Committer, DDL SIG’s Xhebox.

How did you get the idea to make your own Linux distribution?

When I first got into Linux, I thought Glibc was too big and downloaded tens of megabytes so I wanted to replace it. When I came across LiBC other than GliBC, I had the idea of making my own distribution. I even tried to replace everything in GNU, which failed, but the distribution was made anyway.

I have been fond of doing these things since I was young. I used Discuz to build a website in primary school, and used Apple system in high school. I learned these things by myself because of my interest, which also laid a foundation for me to make Linux distribution in senior three. That’s when I first learned about Go, the package manager for my Linux distribution is written in Go, and more recently I’ve been learning about Rust.

Is your Linux distribution available for download now?

It used to be available on GitHub, but now it’s not, I don’t maintain the binary package manager, if people want to use it they will need to see me, I can make a copy on their hard drive 🙂 the main reason is that maintaining the binary package is very time consuming, there used to be 600 packages, now I have reduced it to 300. I usually don’t have so much time to do experiments in class. Hundreds of packages are compiled manually. If open source is maintained, I may not be able to do other things.

How did you meet TiDB?

The first time I learned about TiDB was the TCP Project (Talent Challenge Program), before which I had no contact with the database. One day, I happened to see the information about this activity in the group and felt it was very interesting, but TiDB Contributor was required to participate in this activity, so I gave TiDB a PR, and AFTER BECOMING Contributor, I officially joined this project.

Have you participated in other community activities?

During the holiday, I participated in KCode, the main content of which was to read files to calculate QPS. However, I will not do it after participating in the warm-up, and some restrictions will be added to the final and semi-final, and I prefer IO optimization at the end of the schedule. I feel that I am not good at contests or algorithms, and prefer learning and hands-on skills, so I am more suitable for projects like TCP, with more room for myself to play.

Will you regularly contribute to other open source projects?

Yes, but the patches of other projects are scattered, unlike TCP to do a more complete function. For example, The compatibility of Musl libc is not very good. I have discussed this problem with foreign users who use Musl libc, and I have also proposed patches for Google Chrome and Firefox.

What was the most difficult part of contributing?

The difficulty may be because I have never written database before, and the database courses in school have just started, and I only teach basic SQL statements. Therefore, I don’t know much about TiDB and database, and I feel it is difficult to get started.

What are the benefits of open source contributions?

Collaborative experience. Although I have worked together before, I have never worked on such a mature project, and sometimes I need to work on development together across two projects. The test of TiDB was complete, and it was the first project I submitted with perfect CI. TiDB was the first big project I came across that had cross-project testing, integration testing.

What was the most rewarding part of contributing?

Once, THE proposal of PR actively promoted the process of PD. Originally, I could only offer it to TiDB, but the progress of the project also needed PD’s cooperation at that time, so I offered some PR to PD. As I promoted PD and contributed to DDL SIG, I got two Reviewer (PD and DDL) in one month, which was quite a sense of achievement.

In addition, I also passed the interview and got the internship opportunity of your company 🙂

Some advice for TiDB newcomers

At the very beginning, it is difficult to contribute to the community. You may not be familiar with the process when you just enter the community. If you stick to the past, you will suddenly be enlightened. Get your hands dirty in the process. It’s better to watch than to do.

How do you, as a community member, feel about this PingCAP Series D funding round?

It feels amazing. Some of the deals I’ve heard of were less than $100 million, and PingCAP round D raised $270 million, which feels a little unreal and open source. It’s a proud thing to be a part of the community, and some people I know have sent me messages.

I sincerely wish TiDB community better and better!