I have always insisted on breaking down the "difficulties.
For example, if we cannot create an aircraft carrier's catapult, it is "difficult" to screw up with one thousand screws on a machine. It is very "difficult" to ensure that all the screws have been screwed up in three years ",
In these two scenarios, the meaning of "difficulty" is different.
The difficulty of software development is more similar to that of the latter, and is not similar to that of the former, which is "not" or "not ".
Some people always like to make the problem absolute, so here I would like to add that the scope of the software can be very wide, so it is really difficult to solve, similar to the field of the catapult, but it should not be the mainstream.
Many of the previous ideas have no significance in such a situation, for example, domestic operating systems.
When many companies or organizations advertise such things, they seem more willing to think that this is a technological breakthrough.
But today, when open source is so developed, the development of such things requires organizations and market operations, rather than breaking through the technical barriers.
From this point, we can draw an interesting conclusion:
Since it is not reflected in a "uncertainty" or "inability to do" type of difficulty, a group of people with low IQ levels (or who are not absolutely good ),
Code Review, static testing, and unit testing are well performed, and good products can be made (of course brilliant ).
In turn, in most product development, genius is helpful, but not absolutely necessary.
This is in line with the fact that the software development team seems to be more out-of-the-box and professional.
This is not true if it is reversed.
A person can use a turbine before and can switch to software development in the middle.
However, after software development, it is difficult to create a turbine.
If further derivation is performed, we will find that this is also meaningful for considering personal growth.
Single-lens cameras are difficult to implement, so there are relatively high barriers to intervention, which will eventually make more money for single-lens cameras.
TV sets can be done by everyone, so the barriers to intervention are relatively low, and eventually some TV companies that were very good at the beginning suffered losses.
In software development, if there are only a few things that you can do, and it is not easy for others to do, then personnel can be easily replaced,
Scarcity is not good. In terms of value, it is not easy to preserve the value.
In turn, if everyone wants to maintain a long-term value, they must find their own "value highlands ".
Software can be attached to many things, such as finance, finance, and e-commerce. Therefore, there are still some "value highlands.
It can be something exclusive to a company, or some professional knowledge (such as finance.