Recently, I read the book “The Nature of Poverty”, and then combined the viewpoints in the book with some reflections on my recent work, I wrote this article to share my thoughts with you.

At the end of the book, I summarize five reasons why poor people are always poor because they read translated books. Here I will repeat them in my own words:

  1. Poor people often lack access to information and believe the wrong things;
  2. Poor people have more factors to consider in their lives;
  3. Markets that serve the poor are disappearing or in which they are disadvantaged;
  4. Poor countries do not help poor people because they are poor;
  5. What people can or cannot do eventually becomes a kind of self-discipline;

How to get rid of technology bottlenecks?

Based on some of the above conclusions, we can draw an analogy between people’s wealth and our technical ability to think deeply about why many people are still at the threshold of intermediate engineer after five or even ten years of working, and how we can avoid this happening.

Actively obtain information

Poor people often lack access to information and believe the wrong things.

In the recent outbreak, for example, some people feel that vaccines and masks are useless, leading to infections, inability to pay high medical bills and poverty traps.

Do we have this problem during development?

If you’re in a company and you’re stuck with the old development model, it’s easy to lose touch with the current development model, and what we’re trying to do is move away from that. Talk to your boss about changing the situation. If you can’t change it, accumulate more and change the environment. For example, you may want to make some technical migrations for some modules of a project, at least have a simple demo that your colleagues or leaders can see the benefits of.

Of course, even if your current company uses some cutting-edge technology, it will gradually become obsolete, which requires us to have an active ability to obtain information. For example, I subscribe to some front-end weekly through RSS and keep an eye on some new technologies.

Complain less, think more

Poor people have more factors to consider in their lives;

Poor countries do not help poor people because they are poor;

Markets that serve the poor are disappearing or in which they are disadvantaged;

The book devotes a great deal of time to these arguments, citing real surveys that show the rich are far more efficient and easier to get things done than the poor. For example, banks give priority to customers with a deposit of one million yuan for loan business, while poor people who go to banks for loan business are usually rejected because they have no mortgaged assets and cannot gain the trust of the bank. At the same time, those in power in poor countries prioritize their own interests or those of their supporters when making policies. The poor find it hard to get aid, and if they do they are often embezzled by government officials in the middle.

From the above example, we can also imagine that when we learn new technology, we often complain about being unable to learn. If you don’t take the initiative to learn, it’s easy to be eliminated. Just as it is easier for the rich to borrow money from banks, large companies give preference to candidates with a stronger technical foundation and broader technical horizons.

Of course, it does not mean that there is a new technology we must learn immediately, we can only select a part of the things we are interested in and go into depth. Take packaging tools for example, the new Vite, and we commonly used Webpack, Rollup, we in the process of learning, how to choose. We should try to understand the advantage of Vite, that is tried through modern browsers support the ESM modular features, eliminating the traditional packaging tools rely on steps, such as search, file merging development services in the process of starting process was optimized and its shortcomings are obvious, that is a development environment without packaging, and release need to packaging, Can result in inconsistent development and published code.

So when a new technology comes along, try to understand and think about the original thing, rather than simply master how to use it, which can be very difficult. Now if you look back at the React API in its early days and look at the API today, you’ll see a big difference.

How to treat the front end irresponsibility?

One of the lines in the book is:

Many poor people have multiple jobs, but this is also inefficient. If they are not professional enough, it is difficult for them to become an expert in any field. In the city, some women dabble in three different professions, while some men can’t concentrate on one job because they want to go back to the village every few weeks. These people forgo the opportunity to learn skills and gain experience in their main field, thus missing out on the benefits of specialising in their area of expertise.

When you see this sentence, it is easy to relate to your usual work, whether it will also involve multiple fields, resulting in low efficiency. Then I thought of the confusion I fell into when I just entered the industry. Obviously, my Title is a front-end engineer, but I always do things inconsistent with my position.

I did a lot of things in my career that didn’t fit the front end. For example, have done some PHP work, also have done SQL derivative data report report work. Although these things were not very in-depth, they helped me to expand my knowledge. And doing that doesn’t stop me from digging into the front end. As a front-end programmer, you have to be a programmer first, that as a programmer, certainly need to have some basic skills of programmers, no matter what language, are essentially some variable assignment, condition judgment, circular operation, so we do not need to be afraid of things, although to do.

So what do we make of the problems mentioned in the book above?

In Marx’s “Capital”, labor is divided into simple labor and complex labor. The so-called simple labor is mechanical and repetitive labor, do not need special basic knowledge, and most of the physical labor; However, complex labor needs systematic learning and training. Ordinary people cannot get started in a short time, and most of them are mental labor.

For simple labor, because most is related to the physical, one that long engaged in manual labor, our bodies will come to the conclusion that some skills, such as I move brick for a long time, I knew how can move more easily, but behind me to farming, move until the technique is of no help to me, so there will be mentioned, in the short term for a number of different professions, You lose the benefits of long-term empirical accumulation.

What we do is complex labor, and for complex labor, we need to value our ability more than our skill. So how do we distinguish between skill and ability?

For example, if I write a project with Vue today and React tomorrow, I can request server data through the FETCH API to fulfill product requirements within the appropriate lifecycle of the components of both frameworks, which we can call a skill. Capability is the ability to quickly identify whether it’s our code or the back-end service when a component request fails (easy to blame).

Therefore, in the process of our front-end development, I should improve my ability as much as possible. After all, skills can have a half-life over time. For example, people who did web effects in Flash a dozen years ago have no use for their Flash skills anymore. Competence, on the other hand, becomes more and more valuable over time.