How a Tech Professional Leveraged Blogging for Product Opportunities: An 11-Year Journey from Writing to Freelancing
This article is a text version of an offline sharing session I gave at the Tencent Cloud Tech Community. It shares my 11-year experience of writing blogs, as well as a small story about transitioning from blogging to product development and becoming a freelancer. For the first time, I am also revealing the real data and current status of my first product, ImgURL.

Self-Introduction
Hello everyone, I am xiaoz. I used to work in server operations and have been a freelancer for 3 years now. My current main work is full-stack web development. I have developed products like ImgURL, Zdir, and OneNav. Additionally, I am a relatively unknown tech blogger who has been writing blogs for 11 years.
Why Write a Blog?
Background
When I was in university, I liked browsing tech forums and tinkering with various software. I also enjoyed reading blogs from experts, such as Lu Songsong's Blog and Ruan Yifeng's Blog. Influenced by these expert blogs, I felt that having an independent blog was an interesting and fun thing, and it also looked impressive. So, at the end of 2013, I built my own independent blog, 'Xiao Z Blog', using WordPress.
Original Intention
Initially, I wrote blogs mainly to record my learning process and share my experiences, hoping to help others solve problems. I felt this was an interesting and meaningful thing, and it could also establish my brand and personal influence. I didn't think much about other things and didn't plan to make money. I didn't know how long I could persist.
Just like that, Xiao Z Blog has:
- Total articles published: 1183
- Total comments: 9265
- Daily IP: 700 (highest was 1.5k)
Monthly blog visits are between 20k-40k, as shown below:

Benefits from Blogging
Although the blog traffic is not high, persisting in writing blogs for a long time has brought me some unexpected gains, such as:
Advertising Income:
- The blog has Google Adsense ads. The income is not much, but it can cover domain and server costs.
- Occasionally, merchants ask me to write paid soft articles, and I get a certain remuneration.
- I also actively write server reviews and other articles to earn commissions through server promotion.
Networking Resources:
- Through the blog, I met many webmaster friends and developer friends. When I was learning frontend Vue, I encountered a problem that I couldn't solve for a long time. Later, I asked a friend, and he directly debugged it remotely for me and guided me step-by-step. I met this friend through the blog. I am very grateful for his help.
- Long-term blogging has also accumulated a batch of original reader users for me.
Learning New Skills:
Because the blog was built using WordPress, I inevitably tinkered with various themes and plugins. By tinkering with the blog, I was forced to learn PHP development, server operations, and website building knowledge. When I first graduated from university and went to interview for a job, there was a written test question asking me to write down 5 common domain suffixes. I thought, is that it? I easily wrote 6 domain suffixes. Fortunately, the skills I mastered by tinkering with the blog helped me find my first job. It can be said that the blog indirectly brought me opportunities.
Blog Aided Product Birth
Unknowingly, I found that I had mastered basic development knowledge through tinkering with the blog, and I also accumulated some reader users. I felt that combining these two and amplifying them, I was ready to do something. So I developed my first independent product: ImgURL, and used the blog to direct users to my product.
ImgURL Birth
The ImgURL product was developed in spare time in 2017. Its main function is that after users upload images, it generates an image link, which is then used for forum, blog, or e-commerce scenarios.
At first, I accumulated users through free open source. Later, based on the open source version, I developed a more powerful professional version, launched a free + paid business model, and provided the professional version source through distribution authorization for users to deploy privately. It took 2 years from free to paid.
The figure below is the number of stars on ImgURL in Github, which is about 1.7k+.

ImgURL Product Status
ImgURL went online in 2017 and achieved commercialization in 2019 (it took 2 years from free to commercialization). It is also my first formal product. Currently, a total of 510 licenses have been sold.
In addition to selling ImgURL professional version licenses, I am also operating this image hosting service. The current situation is as follows:
- Registered users: 43k
- Paying users: About 110 people per year
- Total images uploaded: 7.1 million
Below is a screenshot of the current registered user count for ImgURL. Currently, about 10-20 new users register naturally every day.

Product Model Replication
Later, I developed two more products, Zdir and OneNav, in my spare time. Zdir was developed in 2018, mainly for file sharing and downloading. OneNav was developed in 2020, mainly to help users manage browser bookmarks and solve synchronization problems. Later, I replicated the ImgURL distribution authorization business model to these two products, Zdir and OneNav.

Products Opened the Path to Freelancing
The ImgURL distribution authorization model brought me positive feedback and earned some side income. I felt that making money through blogging and product development was possible, so I was hesitant about whether to quit my job and do product development full-time (at that time, the side income was only over 1k per month).
Although I longed to be a free independent developer, I had concerns and was afraid I couldn't survive. I struggled in my heart for a long time, and finally decided to listen to my inner voice and do what I wanted to do. So I resigned in 2022. At that time, I thought if I failed, I would just go back to work a regular job.
As Mr. Lei said:
We have to work quietly. If we lose, just pretend we didn't do it.
—— Lei Jun
In this way, I went from a regular job to freelancing through my first product. It has been over 3 years, and now I probably can't go back. Later I found that being a freelancer is not a simple thing, and then problems came:
Problem 1: Anxiety
I worried about what if the product doesn't sell, what if I can't cover next month's living expenses, and I was thinking wildly all day. The more I thought, the more anxious I became, creating a vicious cycle.
Later, I started exercising and reading to relieve myself, and also reduced the sense of guilt. Why did I feel guilty? Because I usually like playing games, and sometimes I play for a few days. Then I not only felt anxious but also felt guilty, feeling that I was wasting time and idling away my life. Reading and exercising not only relieved anxiety but also eliminated the sense of guilt.
Problem 2: Low Efficiency
At first, I worked from home, but I was not in the right state at all, often taking out my phone to scroll through short videos and news. One day passed, and I found I hadn't written a single line of code.
I thought I couldn't go on like this, sooner or later I would be finished. Later, I cooperated with a friend to rent a small office. Whenever I was not in the right state, I would go to the office to work, and the efficiency improved a lot. But it doesn't have to be an office; a cafe or a library is also fine. In short, when not in the right state, adjust by changing the environment.
Problem 3: Unstable Income
The figure below is a screenshot of my income in May 2022. I had been a freelancer for 3 months, but the income was only around 3k, which was completely insufficient to cover living expenses. Going on like this would also be finished.

Later, I thought of some ways to deal with the unstable income problem:
- Save money, reduce expenses & save:
Reduce expenses: I don't know if you have encountered such a situation. Every time I see a product on sale, I want to buy it. Every time I see a server on sale, I can't help but want to buy it. In the end, I bought a lot of domains and servers. After buying them, I found I didn't need that many. After buying them, they just gathered dust. Finally, I stopped renewing unnecessary domains and servers, saving me 3000 yuan per year.
Save money: At the beginning of freelancing, income was less than expenses, so I definitely couldn't save money. After the product income could cover living costs, I continued to save money. Saving money can significantly reduce future risks.
- Diversified Income Sources
I formed a mixed income through distributing product licenses, Google ads, commissions, and occasionally taking on some outsourcing work to avoid over-reliance on a single product and a single income source, thereby reducing income risk.
- Long-term Cooperation Awareness
No matter how awesome the product is, users will definitely encounter problems during use. When communicating with customers and handling problems, try to consider things from the customer's perspective. Understand the customer's real needs, help customers improve efficiency and reduce costs, etc. Thus building trust relationships, so users will voluntarily promote and advertise for you, thereby bringing more users.
My Current Status
- ImgURL, Zdir, and OneNav have all achieved commercialization. These three products have a common commercialization feature, which is
distribution authorization. - As mentioned above: Mixed income through products, ads, commissions, outsourcing, etc., reduced single income risk.
- Users are growing steadily.
Persistence and Compound Interest
Finally, back to writing blogs, sharing some of my insights on persisting in writing blogs:
- Start from interest: Readers of Xiao Z Blog will find that my content is relatively free and broad, basically based on personal interests. By starting from interest, there is no content pressure when writing, and it is easier to persist.
- Lower expectations: At the beginning, articles are unlikely to have much traffic, and it is even more impossible to generate actual income. So my expectations were very low. If expectations are too high, and the desired result is not reached, it is easy to feel disappointed and give up in the end.
- No need to pursue perfection, control time: Writing articles takes a lot of time. In the early stage, there is no need to spend too much time trying to create a perfect article. Otherwise, you will find that the article you spent hours writing might not be seen by anyone at all. So in the early stage, you can try to control the writing time of a single article, which is reasonable to control within 1-2 hours, and optimize continuously later.
- Accumulate materials at any time: Because my blog content is based on interest, accumulating materials is relatively easy. For example, if I solved a product BUG today, what the problem phenomenon was, and how I solved it, I can completely organize it into a blog article to share. In short, people and things around me that I am interested in can be written about.
The compound interest formed by persisting in writing blogs and doing products:
- Tinkering with blogs -> PHP programming -> Open source products -> Skill stacking = Skill compound interest
- Blog readers -> Open source users -> Paying users = User compound interest
- Single product income x Product quantity x Time = Income compound interest
- Ultimate mindset: Do "accumulable" things
Summary and Review
- 2013: Started writing blogs, learned professional skills through tinkering with blogs, and accumulated reader users.
- 2017-2021: Developed products like ImgURL, Zdir, and OneNav. Directed users to open source products through blogs.
- 2022: Through product side income + blog influence, walked the path of freelancing.
- 2025: I will continue to develop and polish products, do some accumulative things, and learn and explore with everyone.

Communicate with Me
- My blog name is
Xiao Z Blog, the access address is: https://blog.xiaoz.org - Github address is: https://github.com/helloxz, the mentioned ImgURL, Zdir, OneNav and more products can be found on my Github.
End of article.