Note
Although when you see this, I am already 24, but I wrote this before I turned 24.
I'm almost 24 years old and I want to review my past and think about where I want to go in the future, so I wrote this article.
Open Source#
Participating in open source projects within my capabilities has become a part of my life. My main focus is on the problems I encounter and the ideas that come up when using open source projects. Here are a few examples.
I really like the xLog platform and use it as my main blog site. Occasionally, I encounter some small problems or want some small features, so I take the code and make some changes to submit a PR. For example, when using an online editor in the browser to write a blog, I found that the width of the editing and preview areas is too small, which affects the editing experience. So I added a focus mode. Now, when the focus mode is enabled, the page can be displayed in full screen, while hiding elements unrelated to the editing area.
Another example is the Callout
syntax, which is built-in in many static site generators (such as VitePress). So I found a remark plugin to support it. Now you can use the following syntax to render a Callout
.
:::note
You can also write **markdown** here.
:::
Note
Now also supports GitHub Alert
> [!NOTE]
> Something
tailwindcss-icons
is a tool similar to UnoCSS Icons preset in Tailwind. I use it in almost every project. During the usage, I encountered an issue where the TS types were not correctly found. But after submitting a PR, I found that the author hadn't looked at the issue and PR for several months.
At first, I chose to fork it and publish my own package. But then I realized that this small fix would benefit other users of this project. So I contacted the author on Twitter and asked if I could contribute to the repository to help with some small issues. Fortunately, the author agreed immediately. So I started adding some custom options and fixing bugs, which gave me a sense of accomplishment.
There are many similar examples, such as creating a good first issue for rsuite, adding dark mode to star-history, and allowing sonner to pop up Toast in multiple locations at the same time. I think there are countless benefits to participating in open source. Let me list a few for you:
- Because you are solving your own problems or helping others in your favorite field, writing becomes motivating and fulfilling, unlike completing work-related tasks.
- Starting with a small requirement or bug helps you quickly get involved in a relatively large project, laying the foundation for making more significant contributions in the future.
- By trying to solve previously unhandled problems, you can quickly grow and learn more knowledge that you are not familiar with through the author's review.
- You can connect with more like-minded friends and grow together.
- Open source experience serves as proof of your problem-solving abilities and can help you with job interviews or gain recognition from others.
- And many more...
Job Hunting#
In the article "One Year of Remote Part-time Work," I talked about my experience of remote part-time work, so I won't go into detail here. After finishing writing the article in September, it was time for job hunting. With the idea of "if it's not interesting, I won't apply, and if I apply, I can see my own level," I started sending out resumes. After applying to more than ten internet companies, I gradually started receiving written tests and interviews. In the end, I interviewed with Kuaishou, Baidu, and Meituan. The timeline was as follows:
- Written test for Meituan. There were few and simple algorithm questions in the front-end test, and I was able to solve both of them.
- First interview with Kuaishou (no written test). I finished the interview in the afternoon and was rejected in the evening.
- First interview with Baidu. I had a great conversation with the interviewer, and I felt there was no reason for them not to pass me (and indeed I made it to the second interview).
- First interview with Meituan. The interview atmosphere at Meituan was great. The content included basic questions and project experience, and the response to the interview result was quick.
- Second interview with Baidu. They asked about areas I wasn't good at, and my answers were not good, so I was rejected in the end.
- Then I only had interviews with Meituan, from the first interview to the third interview, and then the HR interview, until I received the offer letter.
After receiving the offer from Meituan, I didn't interview with other companies anymore. It wasn't my goal to get multiple offers, and preparing for interview rounds was also exhausting. As for Meituan's interview process, the most important thing was to assess the grasp of fundamental knowledge and internship project experience. Fortunately, there was no algorithmic coding part. In my tweet, I also mentioned that if they kept testing me on algorithms and rote memorization, I probably wouldn't have gotten any offers.
Looking back, the experience of job hunting is similar to my work experience. I didn't deliberately prepare for job hunting (doing LeetCode, memorizing rote answers), I just did things I enjoyed (work, participating in open source). During the interviews, I was asked a lot about my remote work and open source projects. I think without these experiences, I obviously wouldn't have passed the interviews, considering my average academic background and campus experiences. This makes me even more convinced that I should do more things I enjoy, rather than becoming worldly and utilitarian. Every experience in the past will eventually have its role in the future.
Finances#
Having a well-paying remote job is like sending coal in the snow for a poor student like me. Not only am I finally financially independent, but I can also help my family. I upgraded my main digital devices this year (I switched to a MacBook 14-inch M1 Pro in the first half of the year and bought an iPhone 15 standard version in the second half of the year). I also bought a Xiaomi 13 Ultra for my mom and immediately sent money to support my dad when he needed it. I no longer need to worry about daily expenses for meals to save money, nor do I need to consider troublesome and low-paying part-time jobs at school. I can focus more on things I enjoy.
During my college years, I loved tinkering with digital products and often bought interesting things on second-hand platforms. However, because the living expenses provided by my family were limited, I usually sold them after playing with them for a while. Now that I have no financial pressure, I can't find the enthusiasm to tinker anymore, and I don't even play games.
Academics#
The worst part for me is my academics. I still haven't finished my thesis.
I am well aware that I don't have a talent for research and I'm not interested in doing research, but I realized this a bit late. During my college years, I hadn't found my favorite part in the programming field yet, and I felt that I couldn't find a good job, nor had I met my current friends. So I chose to extend my study life as a buffer. But now I just want to finish my student life quickly.
Relationships#
I have liked several girls before, but no girl who likes me has appeared yet. My family is urging me to find a partner, and my relatives introduce blind date partners to me every time I go home. I don't mind this and see blind dates as a way to meet new friends, no different from other activities. However, my blind date partners often don't see it that way, so after a few days, the contact becomes a chat that I won't open again.
I agree with the book "The Courage to Be Happy," which mentions that "love is not something that happens passively." I trust others unconditionally and expect them to "trust me unconditionally and build an inseparable 'our happiness' together."
Social Life#
Recently, I have been trying to be more active on Twitter and connect with more friends. Through my work colleagues, I got the opportunity to be a guest on Echo.js and I am looking forward to participating in a podcast recording for a tech podcast month. But it seems that I am not good at socializing and often feel more comfortable writing code in front of the computer.
Future#
What else can and should I do in the future? I don't like being alone and hope that I won't be so reclusive. I want to go to different places, meet different people, and do different things.
This should summarize my future goals. It could be cultivating a reading habit, playing some games I like, exercising and doing sports, traveling, meeting online friends for a meal and discussing technology and life together, and so on.