Developer Relations

Why Build on Open Source?

2018-10-03
Developer Relations
en

1. Cost Saving

Open source infrastructure has a large number of developers to maintain, discuss improvements, and provide feedback. If software quality is measured in person-years of work, open source software has accumulated the work of many developers, which is definitely better than software completed independently by a small team. Many things can be directly reused. And there are a large number of users testing the same basic framework, saving testing costs.

2. Faster Iteration

Due to a large amount of user feedback, the latest technical trends are often quickly added to open source software. Independent software developers may not have such motivation. For example, the addition of CoffeeScript support and asset aggregation support in Rails.

3. Complete Architecture

Every developer or architect has their own blind spots. Because large-scale software is a systems engineering, a small number of people can hardly cover all points. Like many XSS vulnerabilities exposed in large domestic websites. It may just be a matter of knowledge and attention. Open source software has developers who specialize in various directions making joint decisions and improvements.

4. Technical Support

Documentation maintenance and post-development technical support may be more costly than development itself. Open source software often has a large number of people sharing documentation and writing blogs. For the same needs and problems, in most cases others have encountered them and have solutions. Internal development documentation maintenance is extremely difficult, and training and communication are also very time-consuming.

5. “Disadvantages” of Building on Open Source

The disadvantage of open source basic frameworks is that they are too large, and it takes a lot of time to understand all the details. So problems are often encountered, and it is necessary to re-study how to handle them. Compared to building from scratch where we understand all the details, open source products are more like facing and using a black box. However, the fact that many people are using it has already proven its correctness.

6. Choosing Between Building from Scratch and Building on Open Source

If the team has relatively limited time and resources, and relatively little relevant experience, building on open source may be the best choice. Saving development costs allows more energy to be put into other aspects.

If the architect has enough experience to be familiar with all aspects of the entire system, has enough energy to track all technical trends, and the system being built is very simple, or the system being built is very different from existing open source products, then building from scratch can be chosen. But this is “difficult”. Sometimes the result of collective wisdom is better than that of a single expert.

Reprinted with permission: Developer Relations »


Similar Posts

Content icon
Content