Quickly master a new technology

Enterprise Features in the IT industry is a knowledge-intensive enterprises are all closely related to that business knowledge and skills and core competencies of employees. If you play in the enterprise it is the role of the engineer, then your core competence is the reserve of IT-related knowledge and skills. And we all know, IT industry is a large amount of local produce new knowledge, Take the Web front-end, for example, just five or six years time, Web front-end has gone through several changes, for now, change will continue. From the previous grid layout DIV + CSS to JavaScript ascendant, then the various contending JavaScript framework, HTML5 and CSS3 landing, the impact caused by the movement responsive Web design, jQuery, AngularJs, ReactJs and other operations VUE DOM element distinct concepts and methods, Web Component standardization process and so on. Why are companies everywhere are hiring front-end engineers? Suddenly it seems, has become a front-end engineers scarce resources. One reason for this is that a lot of front-end engineers to keep up with changes in the industry, can not reach the market for front-end engineers capabilities and requirements at present. In this environment, engineers can master the crucial ability to learn quickly to become.

Quickly master a new technology is a prerequisite

To quickly master a new technology, first of all there are two prerequisites.

First thought to take the initiative and change, the courage to jump out of their comfort zone, any technologies have an open mind. Seek stable human nature. And this nature tend to impede your progress. People can understand how much knowledge, depending on how much of their comfort zone, the greater the comfort zone, the greater the external border of the range, the more the feeling of their own ignorance. At least a programmer to do two things, one is not prejudiced against their own do not understand technology, and second, not to unfamiliar technology fearful.

To of passive learning to active learning. In China, a large number of programmers in passive learning every day. What is passive learning? He is being, forced to learn things. Start a new project today, technology research do not want to adopt new technologies, the development process will encounter difficulties to find information all day is to others, used to write their own code to copy and reuse and copy after a problem would take good for a long time to resolve. For example, a programmer using Spring for several years, do not know the core philosophy of Spring, do not know the Spring framework, Spring does not know the function of various components, do not know the new features of the new version of Spring. This is very scary, because you do not know these things, you can not adopt the best practices of Spring, there is a problem I do not know how to quickly locate certain requirements of the project can not use Spring already packaged function (because you do not know Spring is also capable of this). Active learning requires you to plan ahead, not cramming. And learning should be seen as their accumulation and improve, as a long-term investment of their own, can not have too utilitarian.

Some people say that I just love the comfort zone, I just do not like active learning, have any good ways and means to change these two points? To be honest, I can give you to help is limited. As "will no period" in a line - I heard a lot of philosophies, still too bad in this life, so you rely on these two points or more people to achieve.

Quickly master a new technology step

Want to quickly master a new technology, usually follow the following five steps.

1. Before learning a new technology, first find out why learning it. Not before this technology is how we work in? With it in the future is how we work in? It brings what changes? In fact, ask these questions is to understand the technology to solve problems or simplify the problem domain, what is the use of a way to achieve such an effect. Take AngularJS, for example, AngularJS was originally intended to make up for the lack of HTML to build applications. Previous HTML is designed to display multimedia information, although later expand the number of dynamic features, but in the application of web technology trend, the lack of HTML design more and more prominent. DOM manipulation elements such as too cumbersome, difficult business logic modular, low scalability, efficiency under development and so on. AngularJS and uses a new design to solve the problem, it proposes a series of concepts, the introduction of data binding, identifiers, routing, dependency injection and other characteristics, greatly simplifies our development WEB development workload. In this way it can be quickly established a macro understanding of the technology, understand their potential application scenarios, and different ways, and some of the limitations and so on.

2. The actual use of the technology at the core of the function, strengthen its understanding. The way is to refer to Quick Start technology official website (Quick Start) chapter, step by step. Now more and more programmers cherish the time, the simplicity of the document, completeness, difficulty of use have become one of the indicators of whether to adopt a technology. Especially now that a variety of open source components, even the documents are open source. So many files are in full accordance thinking programmers to write, to read very refreshing. Spring shouting who want to learn Spring4.0 launch of the Spring Boot components, you can visit their official website, the page is the biggest button Quick Start. Page is a simple example, may not take you five minutes. If you have not enjoyable, but also the right lists more Getting Started Guides, is also a step by step teach you advanced features. Some people may ask, how do poor English? Please learn English, English is an essential skill a good programmer. Some people may say, there are all kinds of noise when we supposed to look at the document. For example, look at the Spring Boot Start Guide, before the need to have some knowledge of Spring, you need to know Tomcat, Jetty is doing, you need to have some experience ... Gradle or Maven requires knowledge in the exercise of that applet Boot Spring, but due to these noise interference, it will slow down the learning process. The only way to get rid of the noise is, for those who do not understand the point of knowledge, but also take the time to learn it. So the learning process is a virtuous circle, the more you learn, the faster the school.

3. The first two steps can ensure Getting a technology, then you need to use [read] to the advanced. Concrete is the detailed documentation from the official website of the technology push lightly down, straining to read it. Read through these documents allow you to enter the details of its implementation, as well as various usage scenarios and even some best practices. For example, Spring Boot official document, in detail to the teeth. Whatever you think, did not expect, documents are intimate listed. If you want to learn Scala, please visit http://www.scala-lang.org/documentation/ , various documents everything, reading is more than half Scala expert. One of the best technical documents must be its official documents, if not, then this technology can not fire. Also note that the process of reading through the document must be used in the project. If there is no opportunity to practice in the project, you can write some small Demo to practice. Learning theory and practice of combining the knowledge of the truth to remain constant.

4. Put what you learn, want to speak out, write, exposed to the public, to accept criticism, and thus found wanting, prompting you progress. In fact, completed the first three steps, you understand this branch of technology it has been stronger than most people, and can count to master this technology. At this time advanced, everyone is free to make a few lectures, wrote several series of articles, then you become this technology cattle in the eyes of everyone, you have every opportunity to use the technology to solve encountered a variety of incurable diseases, which in turn deepen and revise your understanding. Nothing on the StackOverFlow, answer a few questions of others, or subscribe to a list of questions of the technology, often look.

5. I can then continue in-depth. Adding domestic / international technical community (such domestic community not supposed to, the opportunity came, and quickly built himself a) to further develop their influence. Translation, associated with the preparation of technical books; if the technology is open source, so there is time to commit the changes it, so it becomes their own developers an up. This is a qualitative leap, because it is advanced from the use of tools to create tools.

It has completed more than five steps, you're not just master this technology, but rather has been super god! Some people may well be asked, can achieve these five steps will certainly take a long time, most people's ability to height. Of course, this process must be very difficult, but it is not difficult to impossible. At least to me there are many such examples. In fact, you just completed the first three steps, you cow than 50% of the programmers to complete the fourth step, you have to stand in front of 90% of the programmers. The top 10% of the personnel account for 90% of the resources, only at the forefront in order to have more resources in order to have better development.

Finally, a brief summary of

The important thing to say three times.

1. Active learning is important, very important active learning, active learning is very important.

2. The official document is very important, very important official documents, official documents is very important.

3. The practice is very important, very important to practice, practice is very important.

 

"Do not take yourself too seriously, who are likely to replace you; do not put myself seriously, if they work hard, you are absolutely great."

Guess you like

Origin www.cnblogs.com/yanggb/p/11863177.html