Note
Although you are reading this when I am already 24, I actually wrote it before turning 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 pull request (PR).
For example, when using an online editor to write a blog through a browser, I found that the width of the editing and preview areas was too small, which affected the editing experience. So I added a focus mode. Now, when you enable focus mode, 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, and 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. 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 create 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, it is completely different from completing work requirements, so you are motivated to write.
- Starting with a small requirement or bug helps you quickly get involved in a relatively large project, laying the foundation for making more important contributions in the future.
- By trying to solve problems you haven't dealt with before, you can quickly grow and learn more knowledge that you are not familiar with through the author's review.
- You will connect with more like-minded friends and grow together.
- Open source experience is proof of your problem-solving abilities, which can help you in job interviews or gain recognition from others.
- And so on...
Job Hunting#
https://hyoban.xlog.app/work-one-year
In the article "One Year of Remote Part-time Work," I talked about my experience of remote part-time work, so I won't mention it here. After finishing writing the article, it was already September, which happened to be the time for job hunting. With the idea of "if I don't try, I won't know my level even if I fail," I started sending out resumes. After sending out resumes to more than a dozen internet companies, I gradually started receiving written tests and interviews. In the end, I interviewed with Kuaishou, Baidu, and Meituan. The timeline was roughly as follows:
- Written test for Meituan. There were few and simple algorithm questions in the front-end test, and I answered both algorithm questions.
- First interview with Kuaishou (no written test). I finished the interview in the afternoon and received a rejection email 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, and the content included basic questions and project experience. The response to the interview result was also very fast.
- Second interview with Baidu. They asked about areas that I'm not good at, and I didn't answer well, so I was rejected in the end.
- Then I only had the interview with Meituan left, from the first interview to the third interview, and then the HR interview, until I received the offer email.
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 interviews round after round was also exhausting. As for the entire interview process at Meituan, 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 theory, 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 theory), I just did things I enjoyed (work, 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 experience. This makes me even more convinced that I should do more things I enjoy instead of becoming worldly and utilitarian. Every experience in the past will play a role in the future.
Finances#
Having a well-paying remote job is like sending charcoal in the snow for a poor student like me. Not only am I finally financially independent, but I can also help my family. I have upgraded my main digital devices this year (replaced with 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 consider the daily expenses of 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, I have no financial pressure, but I can't find the enthusiasm to tinker with things 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 the part of programming that I liked the most, and I felt that I couldn't find a good job yet. I hadn't even 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 candidates 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 candidates often don't see it that way, so after a few days, they usually become contacts that I won't open again in the chat list.
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 "unconditionally trust me 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 I still seem to be someone who is 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 introverted. I want to go to different places, meet different people, and do different things.
This should summarize my future goals. It could be cultivating the habit of reading books, 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.