Old bird's advice on cainiao

Source: Internet
Author: User

First of all, I declare that I am not a mentor, and such a lofty identity will not be associated with me. I was afraid that I could not learn it, but I was mistaken. Instructors can do this only by Li Kaifu and Tang Jun. Because I had some business dealings with Southwest University in a company, I was invited to give a lecture at Southwest University and offered a one-semester "Design Pattern" course for software engineering students, have recognized some of the passionate futureProgramMember. Today, they have also set foot on their jobs. So I encountered some problems. Because they can afford it, they thought of sending me an email to help them solve their problems. After replying to the email, it may be common for many cainiao to find these problems. From the perspective of an old bird, my answers may solve their confusions to some extent. At least, sum up my lessons and experiences, and give them inspiration in their learning methods, or the people who say they can take a lot of detours. When I first joined this industry, do I not want any old bird to give me guidance? In this case, share it. People are old, and they always like to teach people, so they are afraid of the tone and attitude in the email, which leads to dissatisfaction. So let's start with this long-winded statement.

This classmate's question is as follows:

I recently encountered some learning methods. I 'd like to ask you.(Same feeling)
After my internship at the company, I found that there are still too many technologies to learn. I always remember what you once told us that in order to find a job, we must be skilled and proficient in one direction, I have always been developing towards Java. Recently, I am desperately studying some technologies that I have never used before, such as EJB, extjs, and JSF. Although these technologies are not popular with SSH, I think they will always be useful in the future, but gradually I found a problem, that is, a technology that I don't need after a month or two. When people ask, my mind is confused. This kind of forgetting is very serious, for example, in hibernate's validatiion and search, although I did not use it in actual projects, I had learned it well in March and wrote some demos by myself, but now I forget what I want to say. I am very familiar with many technical questions in my lecture. I would like to ask you to give me some guidance, which methods should I use to avoid such "Forgetting "?CodeThere is no other method than writing on a blog, but if you do this often, it will inevitably lead to a delay in learning other new technologies. Thank you, Mr. Zhang, for taking the time to read my email.

My reply is as follows:

The question you asked is very typical. I believe many people have met it. As a matter of fact, I am not as powerful as you think, and I will forget many technologies I have mastered before. This is related to the forgetting curve of the human brain, which conforms to scientific rules, so you don't have to worry about it.

How can this problem be solved? I would like to have the following:
1. A technology must be used more often to master. The best way is to use it in projects. If you use a technology in a real project, you will be very impressed. Even if you forget it, you can quickly pick it up.
2. If you want to learn new technologies only to broaden your knowledge structure, you certainly have no time to do a lot of exercises on these technologies. At this time, we need to classify technologies. It depends on the purpose of mastering this technology. If technology is just a tool, I think it's okay to know what it can do. Because even if you understand the entire usage method, you will forget it after a long time. If you know what this technology can do and want to use it as an item, you can check the relevant documents and materials. If this technology is very important and has many references, you should understand its principles, ideas, and implementation methods while figuring out what it can do.
3. develop the habit of recording experiences and lessons at any time. It is necessary to record anything that is valuable in the project or in the learning process. You don't have to post it to a blog. You just need to save it. However, a proper classification should be made during storage for future reference. Don't think this delay is very useful. I didn't fully realize before that many problems encountered in the previous project were solved. It cannot be recalled until now. Now I want to tell myself that we must do this. The so-called "sharpening the knife without cutting the firewood by mistake" is totally worthwhile to delay this time. If you just keep learning but don't know how to accumulate, it's no different from the monkey. In addition, this approach also helps to hone your ability to write, classify, and summarize documents. Reorganizing these contents will also help you clarify your own ideas. It is really very valuable. I remember telling you about it in class before. As a matter of fact, Martin Fowler's book refactoring was written because he followed this practice. Recently, I have just completed the review of the book refactoring. A large number of comments are also obtained by me in this way.
4. The last point is to learn how to choose. There are too many software technologies. Find out your goals. The most important thing is to determine your career development. The professional saying is "career planning ". Whether it is technology, management, or both. Then, you can learn knowledge with a specific purpose. Even in the technical field, there are also many development directions: Network, database, bottom layer Algorithm , Framework, architecture, UI design, performance optimization, system integration, too much. Do not study without any purpose. In this case, or in that case, you can learn all of them, and the results are useless. Therefore, you must first determine the target, then make a choice, and then make plans, including short-term plans and long-term plans.

I hope this will help you. Keep in touch!

Contact Us

The content source of this page is from Internet, which doesn't represent Alibaba Cloud's opinion; products and services mentioned on that page don't have any relationship with Alibaba Cloud. If the content of the page makes you feel confusing, please write us an email, we will handle the problem within 5 days after receiving your email.

If you find any instances of plagiarism from the community, please send an email to: info-contact@alibabacloud.com and provide relevant evidence. A staff member will contact you within 5 working days.

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.