10-Year Open Source Story
There are many lessons to be learned in the process of becoming more comfortable with using open-source software — learn about one individual's journey here.
Join the DZone community and get the full member experience.Join For Free
From my first open-source project, I have developed or participated in a variety of open-source software. From the ignorance at the beginning to my startup of an open-source software company, then to making profits out of open-source software, I have learned a lot along the way. Therefore, I would like to share my experience and lessons learned with open-source software developers and authors.
Sustainable and Stable Income to Maintain Your Open Source Project
First of all, I want to share with you that to maintain open-source projects, you must find a sustainable model. Resources — for example, manpower, time, and money are consumed very quickly. If you can't find a sustainable development model, it will be difficult to stick to it simply because you love open-source and you have interest and enthusiasm about it. There is so many open-source software around the world, but the ones that can really become popular are rare. There are many models of sustainable development, such as going to a company that supports open-source software development, having a stable job and relatively spare time, and so on. The open-source author tried to start a business with open source software, and initially realized the importance of a profitable open-source software, which guaranteed our continuous investment and development.
Think Like a Product Owner
What is closely related to the first lesson learned above is to think about problems like you are the product owner. Usually, the one who maintains open-source projects are masters on coding and technology, so their perspectives on the project are from the needs of coders. Therefore, most of the open-source software in China is a variety of development frameworks, class libraries, etc. But if we can step out of the programmer-like thinking and consider problems from the perspective of end-users, more opportunities can be found, and product function and user experience design will be improved.
Build Your Community
Your open-source software also requires a community. From my experience, community building and software development require almost 1:1 input. Community building involves various work, including document writing and continuous updating, timely and powerful support to users, easy and fast feedback and communication, active participation of community users, and so on. I will write a blog to share the experience and lessons of my community operation.
Find a sustainable development model, develop products from the perspective of users, and build communities. It is my experience in running an open-source software business in the past few years. In addition to these experience on a macro level, specific activities have to be paid attention to, and I will share with you below.
- If you use the forum for discussion, there should not be too many boards in the beginning. Too many boards but few people posting means not enough active users or popularity. I made such a mistake in the early stages, and then spent a lot of effort integrating the sections.
- If you use QQ (a popular instant messenger in China) groups as a tool for technical communication, I would recommend you pay for a premium version, so you can create a larger chat group and use advanced features when communicating with your users. In 2009, the QQ group can only allow 500 users max. I had more than 20 groups back then, and it took a lot of time to read the news in each group, and it was not conducive to communication and sharing. Later, QQ had a supergroup of 2,000 users, and it took us more than a month to merge the QQ group into two supergroups.
- If you use QQ groups, another suggestion is to use the real-name system. I did not do this at first, and there were a lot of gossips and random talks. After I switched to the real-name system, the gossip was significantly reduced. And it is also conducive to communication and sharing. There have also been good stories about finding good matches in the group.
Different projects have different development and operation methods. What I have mentioned above is only my experience doing open source software in the past ten years. Hope this could give you some reference.
Published at DZone with permission of Renee Teng. See the original article here.
Opinions expressed by DZone contributors are their own.