In the software industry, some rules are lethal, such as Moore's Law.
The significance of these rules is that the lighting direction can be roughly defined, so as not to work hard but go into the gutter.
In reality, various kinds of interests disputes and Views seem to be complicated, but in terms of time, they are all the means to implement rules.
This is like playing Go. Every player has to calculate for profit, but there are only three outcomes: Win, lose, or sum. This is the power of rules.
People take food as a day, so the first law begins with income.
The programmer's first law can be expressed as: the programmer's income is a function of skill complexity and skill realization possibility.
If the programmer's salary is S, the average social wage is A, the programmer's skill complexity is C, and the degree of implementation is P.
SoS = A x C x P.
The degree of implementation P here is not easy to understand, and some additional instructions are provided.
For example, some people have planted a lot of cabbage in the Northeast and gained a bumper harvest. At the same time, Guangzhou does need Chinese Cabbage. At the wholesale price, he can buy 0.1 million Chinese cabbage.
But the key is that this person cannot find the car skin, and the Chinese cabbage can only be sold locally. At this time, this batch of Chinese cabbage can only buy 10 thousand yuan.
This is the degree of implementation.
Chinese cabbage contains the established value. This value does not change because of the amount of money sold. However, to what extent this value can be realized depends on the possibility of reality.
This is very simple, but it is not. Many people's life is shrouded in this law. We will continue to make some derivation based on this first law.
- Inference 1: The more easy-to-use technology, the lower its intrinsic value.
Skill complexity C can be roughly equivalent to the time required to master a technology.
Various integrated development environments and various easy-to-learn class libraries reduce the software development threshold very low, which is advantageous for the entire industry, but unfavorable for individuals.
The technology you can learn in five months, and others can learn it in five months. The value of what you can learn in five months must be low.
Something that can be learned within five years must have a high intrinsic value.
Low intrinsic value, and the corresponding income must be low.
To avoid disputes, I will not write the technology name here, but you can classify various technologies from the time needed for study.
Sometimes many people may have the illusion that the more popular the technology, the better the benefits.
Most of the time, this is wrong.
The more popular the technology, the more mature the technology is, the more popular the technology has, and the lower the inherent value of the technology, the worse the benefits.
Popularity can help you find a job, but it does not affect skill complexity C.
- Conclusion 2: The impact on income is negative because it is widely used and has no specificity.
The complexity of various technologies increases exponentially, and it becomes more and more difficult.
For example, it takes much less time to learn five languages than to learn one language.
At a certain age, every technology will be a bit helpful for improving the degree of implementation P, but it is highly replaceable and has a negative impact on skill complexity C.
In the long run, the loss is worth the candle.
- Inference 3: the higher the degree of implementation P, the greater the risk.
Some technical fields are narrow, slow to get started, and the implementation level is high, such as graphics driver and printing driver.
But this kind of work is like dancing on a wire: as long as you can realize your own value, the return is generally good, but you are most afraid of technological changes.
The first generation of technology, which may have accumulated over ten to six seven years.
To sum up, if programmers want to earn a good income, they should first master the scarce technology, that is, the inherent value of the technology should be high; second, they should find the scenario of realizing the scarce technology.
As mentioned in the book "Microsoft's secrets", excellent programmers in Microsoft can own a lot of Porsche.
With the above two decomposition, we will find the reason is very simple:
One is that such a person is the core developer of NT, who has extremely high intrinsic value and is scarce. The other is that Microsoft provides an opportunity to realize the inherent value of such skills.
Both are indispensable.
# According to your reply, make some changes to replace "implementation possibility" with "implementation degree ".