Principle. Stick to Doing Less
12009Overview
We often hear the phrase: "Our biggest problem is a lack of manpower." Regardless of a company's strength, the things they want to accomplish always exceed their delivery capacity, and the demands are never-ending. However, does doing more necessarily lead to effectiveness? We should resist the temptation of "building the best features through extensive planning" and stick to doing less, finding ways to validate new ideas as early as possible.
Netflix believes that about 90% of the things they want to do are likely wrong. At Microsoft, only about one-third of the carefully designed and developed features aimed at improving key metrics successfully enhanced those metrics.
As the co-founder of Instagram remarked when asked how "5 engineers support 40 million users" — "Do less, start with simple things."
The principle of "stick to doing less" emphasizes minimizing unnecessary work while meeting demands as much as possible. Its core idea is to avoid waste and focus only on valuable tasks.
The goal of this principle is to improve development efficiency, reduce ineffective labor, and better meet customer needs. It encourages developers to always focus on the core value of the project, avoiding wasting time and resources on unnecessary features or over-engineering.
Application
When developing a new software product or feature, the development team may have many ideas and suggestions. However, not all ideas and suggestions will contribute to the core value of the product. In this case, the "stick to doing less" principle requires the development team to concentrate on the most important features rather than trying to implement all ideas and suggestions. This ensures that the team's work remains aligned with the core value of the product while also avoiding wasting time and resources on unimportant features.
When dealing with software bugs, the development team may face the decision of whether to fix all known minor bugs. Under the "stick to doing less" principle, the team may choose to only fix critical bugs that impact user experience or software functionality, while ignoring minor bugs that do not have a real impact on users. This allows the team to utilize their time and resources more effectively while ensuring that the core functionality of the software remains stable and reliable.