Investment in knowledge can always get the best return.
-- Benjamin Franklin
The management of knowledge assets is very similar to the management of financial assets:
1. Serious investment in regular investment-as a habit
2. How far is the key to long-term success.
3. Smart Investments balance assets between conservative investments and high-risk and high-return investments.
4. investors try To Buy low, sell high, and get the maximum return.
5. The assets should be re-evaluated and balanced periodically.
How to operate your knowledge assets:
1. Regular investment. Just like financial investment, you must invest in your knowledge assets on a regular basis. Even if the investment volume is small, you must get used to yourself as important as the total amount.
2. diversified. The more different things you know, the more valuable you are. As the bottom line, you need to know the features of the specific technology you are currently using. But do not stop here. The appearance of computer technology has changed rapidly-today's hot technologies may become almost useless tomorrow (at least not to compete). The more technologies you master, the better you can make adjustments, catch up with changes.
3. Manage risks. From high-risk, high-return, low-risk, and low-return, it is not a good idea to put all your money into high-risk stocks that may suddenly crash; you should not be too conservative and miss a possible opportunity. Don't put all your technical eggs in one basket.
4. Low purchase and high sales. Learning it before emerging technology gets popular may be as difficult as finding an undervalued stock, but it is just as profitable as it is. It may be risky to learn Java when it first appeared, but for the early adopters who have entered the top ranks in this field, this has done a great deal of return.
5. reevaluate and balance. This is a very turbulent industry. You started researching popular technologies last month and may now be as cold as a stone. Maybe you need to review the database technology you haven't used for a while. Maybe, if you have tried another language before, you will be more likely to get the new job ......
The following goals may be more practical:
● Learn a new language every year.
Different languages can solve the same problem in different ways. By learning different methods, we can broaden our thinking and break the limitations of our thinking. Learning different languages will change and enrich the way you think about problems. Moreover, it is much easier to learn new languages than in the past. Compilers, development environments, and documents can all be found online. Programming in a language, but do not restrain your thoughts. In "code Daquan", "go deep into a language programming and do not float at the surface ". In-depth development of a language is far from enough. Any programming language has its own reasons. Therefore, no language is the "panacea" for "treating all diseases ". Examples of how programming languages affect and constrain how developers solve specific problems. My experience is: Why can't I use the modular encapsulation methods of C, C51, and assembly when developing some key modules using object tools? Why can't I refer to the IOC and AOP design ideas from the Java Community when using traditional desktop development tools (VC ++ and Delphi at present) for system architecture design, even learning from excellent open-source frameworks such as spring, hibernate, and JBoss? When designing and implementing functions similar to real-time communication and data collection, why can't we reference an excellent system framework and mode from real-time systems and embedded systems? Why does everything have to be solved with the tradition or experience of individuals and teams in the development language ??? "The Stone of his mountains can attack the jade ".
● Read a technical book every quarter.
Read one copy every month after you get used to it. Similarly, the reading interest should be wider and diversified. It is far less difficult and profound to grasp a stranger's knowledge. It is widely used in many ways. Consolidate your Influence Circle and expand your attention circle as much as possible. Financial, economic, tax, management and other knowledge, take the time to take a look at the time to hide your profile and plan ahead.
● Read non-technical books.
Don't forget that software is used by people. Learn more about people.
● Participate in technical courses.
It can be a school, a training course, or a technical meeting.
● Join a local programmer organization.
We should not only listen with ears, but also actively participate. "Isolation is critical to your career ." Discover friends outside of the company.
● Experiment in different environments.
If you only use Windows at work, use Unix/Linux at home. If you only use makefile and editor, try ide or vice versa.
● Keep pace with the times and subscribe to industry magazines.
● Surfing the Internet, reading valuable articles and websites ......
The last article is now becoming more and more important and has largely replaced the previous one. Many mainstream foreign technology magazines are already fully open online, including the dr. Dobb's journal recommended in the book.
● Take more notes and make a summary, in the form of Wiki or blog. Consciously extract the results of daily work, form your own personal source code library, a general system architecture for solving certain types of problems, and even evolve into a framework.
● If your mindset is open, your vision is open. Don't hold on to your own technologies and achievements, and wait until they are obsolete and become junk. Please release your own research results in a timely manner: developed products, creative designs or code, published for everyone to communicate or use, your results have the opportunity to evolve and sublimate.
● Try to participate in the development of open-source projects or develop some of your own products together with your friends. Do not do anything without earning money. The network is no longer just a "virtual world". There are many open source projects, cooperative development projects, and outsourcing projects on the Internet. This is an excellent opportunity to learn more than work, and can get to know more people. Do not study and understand embedded, real-time, communication, network and other technologies because your work is ERP. If someone else asks you for a contract, but you don't know it, you will regret it.
● Improve your professional knowledge, but be competent for the job. Improving Software Knowledge and technology is only the surface of the problem. In essence, it is to improve the idea of understanding, analyzing, and solving the problem. Many methods and principles of software expertise can be easily extended and applied to other aspects of life. On the basis of being competent for the job, I will immediately explore the professional knowledge in other fields, enrich my knowledge system, and improve my overall quality, especially those who are not technically interested.
Content comes from the Internet and the programmer's cultivation path
This article from the csdn blog, reprinted Source: http://blog.csdn.net/byxdaz/archive/2009/09/21/4577113.aspx