On the tail of November, Apache Pulsar welcomed a new committer — Guo Jiwei. Kwok jiwei is currently maintainer of MoP (MQTT-on-PulSAR) for the main Pulsar project and its surrounding ecology development at StreamNative. He is also a PMC member of Apache DolphinScheduler. We caught up with this multi-identity open source to talk about his experiences and impressions in the Apache Pulsar community. (The following is in the first person.)

Personal profile

Hi, my name is Guo Jiwei and I am honored to be an Apache Pulsar Committer and meet you through this interview. I am currently working in StreamNative for Pulsar Messaging related development work on MoP (MQTT-on-PulSAR) and maintainer of MoP project.

“Ancient Early” Pulsar project enthusiast

I think I am one of the early people in China who learned about Pulsar. Pulsar Chinese Community was established in 2019, but my relationship with Pulsar dates back to 2016. The company’s infrastructure at the time was RocketMQ, and I was introduced to Pulsar as early as 2016 as I learned about more MQ products through open source.

Then I joined the infrastructure group at Momo. At that time, Momo encountered many operational difficulties with Kafka, such as scaling and asynchronous error reporting. We investigated Pulsar and started deploying Pulsar. During this period, I participated in many community meetups and met many senior Pulsar developers and users, which deepened my understanding of the project and the community and laid the foundation for becoming a “full-time open source person”.

Full time open source – Pulsar developer

Someone asked me why I joined StreamNative to devote myself to open source around Pulsar. First of all, I am optimistic about the advancements of Pulsar technology. Under the trend of cloud native, Pulsar’s distributed architecture of storage and computing separation is the most suitable for the current digital needs of enterprises.

The second reason stems from the Pulsar community. Due to the system transformation of my former company and my participation in many community meetup and livestream events, I had the opportunity to have face-to-face communication with many developers and experienced users in the community, and benefited a lot from the conversation with Zhai Jia and Li Penghui, two leaders of Pulsar Chinese community. The whole community is tech-heavy, and it’s extremely comfortable to connect with a group of people who are equally focused on technology. I am also affected by the belief of all of you, and increasingly recognize Pulsar’s technology and the value it brings to enterprises in the big data environment.

Being open source is not about charity, and using it is not about pulling wool

One would also question my profession: since the open source code is public, aren’t you doing charity, letting people collect their wool for free? I totally disagree with this view.

From my personal experience, I am fortunate to have a strong technical atmosphere in each team of the company I work for. Everyone is not only open source users, but also the whole team will actively learn and submit codes to participate in and support the open source project. I started contributing code to open source projects in 2016, and by 2019, I was spending my spare time in the open source community. First, I participated in Uber’s open source uReplicator project and completed the multi-machine room migration of Kafka ecology. He was an early member of the Apache DolphinScheduler project and is currently a PMC member of the project. ElasticJob Committer (ElasticJob Committer) Now you’ve been elected an Apache Pulsar Committer. Using open source and contributing open source can help a person quickly improve their technical capabilities. Good projects are open source. Whether you’re a developer or a user in the open source community, you can learn a lot from your peers and from each other.

In the nearly six months since I became an Apache Pulsar developer, I have been communicating with the industry’s leading developers and community leaders on a daily basis, which has deepened my understanding of cutting-edge technologies in project and messaging. As a technical person who focuses on their own growth, this is undoubtedly a great sense of achievement and joy. With the deepening of my understanding, I can gradually provide better help to the community through my own ability and motivate others to participate in projects and ecology. The MoP project I’m currently working on has several external developers actively contributing.

Veteran open source guides you through the Pulsar community

Compared with other systems, Pulsar is a pure asynchronous programming model, which is relatively young in the domestic market and needs to be understood by avant-garde and advanced thinking. Before Pulsar came to the public eye, other MQ storage models were relatively simple, but Pulsar’s natural cloud native, distributed architecture is an advanced technology: storage and broker are all distributed, every part of the process is distributed, all are cloud native concepts, and there are certain barriers to understanding.

Pulsar is a big project with a high bar because while it’s easy to run, it’s hard to use. Anyone can easily get the whole system up and running quickly, but problems can linger for a long time. Therefore, I recommend that you read the technical documentation at the beginning of your introduction to Pulsar. Some people in the community have joked that Pulsar’s documentation is not as good as previous projects. In my opinion, Pulsar’s documentation may not be suitable for business people, but from the perspective of development and operation, Pulsar’s documentation is excellent.

Then insist on reading the source code, look at the issue, with an issue to understand the project, and through the exchange group q&A to learn; If you know someone who knows Pulsar, you can also ask the boss nearby. Now, the good thing is that Pulsar has his own Chinese book, so we can tackle this project easily.

Initial contributions can start with bug fixes, such as fixing the NPE, Flaky Test, etc. The Pulsar GitHub repository has many issues with the Help Wanted tag, which is a good start for the first Pulsar PR.

4-8 speech

I have to sigh: Pulsar community is growing so fast that the barrier to entry is getting higher and higher. This year, Pulsar has surpassed Kafka in terms of community code activity. I expect Pulsar to continue to grow in terms of community code activity, and I hope Pulsar will become a dark horse in the cloud native messaging space.

With my current ability, I’m still a long way from hitting the Pulsar PMC members. I want to devote more energy to continuously optimize my technical level and help more people participate in Pulsar as a committer.

Join the Apache Pulsar community

By participating in open source, you can gain recognition from the company and the community, and make friends with like-minded friends from various fields. At the same time, it can improve personal influence and promote personal development. Participation in open source is not exclusive to code farmers, community, documentation and other aspects can give play to their skills.

As a global open source project, Apache Pulsar has nearly 470 contributors, 10.0K+ Star, and 2.5K + Fork to date. We provide you with a guide to participate in the Apache Pulsar project, and welcome more and more friends to help the continuous development and progress.

  • Apache Pulsar official contribution guide

reading

  • Function Mesh Development Engineer Rui Fu: User — developer — Committer path

Follow the public account “Apache Pulsar” for dry goods and updates

Join Apache Pulsar Chinese Communication group 👇🏻