10 habits allow you to master new development techniques-application techniques

Source: Internet
Author: User
Ben Watson, a well-known developer. GeoEye is the leader of his development team. This article, published in his own blog, explains 10 ways to learn new technologies.

1. To read a book

In tens of thousands of programming books, a large part of it may be of no use at all. But there are still a lot of books on your (programming) ability to improve greatly. I've always insisted that it's easier and quicker to find it in a similar book than to find a lot of useful information on the web. Reading technology book is better to grasp the core content. Books are also helpful in terms of theory, architecture and design. But to find high-quality, authoritative information, it is not as wide as the network available to find.

2, read the code

That's one of the ways I like it. If I don't have a few years of professional programming experience, I won't be able to read a lot of complicated code at the beginning of my study. If I had started studying earlier, I would have been a better programmer than I am now. But in the beginning I will learn from some open source projects (of course, the code is not related to my work, nor did I write it myself). Start the work from a program that you will use or that you are interested in. I started learning this website from Paint.NET, and I have accumulated a lot of programming techniques about. NET.

Reading other people's code can provide you with more different ways to work than you think you are.

3, write code

Remember to write a lot of code. Fundamentally speaking, the best way to learn is to practice. If you do not write code, you can not learn the inner things in (a language) thoroughly. At the beginning of the study, you can copy some of the most simple procedures from some technical guides and books. Of course, this copy is to be completely manual input, rather than copy and paste, the difference between the two kinds of effect is very large. The gist of this approach is to internalize knowledge and to think about its usage, rather than blindly copying it. In the learning process, it is simple to look for new API invocation methods at all times.

The most important thing is to write a program of your own, whether it's a simple game, a program that participates in open source projects, or a simple plugin for your own use. Write programs in different ways, try to use new techniques, new techniques, and new ways of designing. Be sure to make the current project better than the previous project. This is the core of wanting to be a good developer.

4. Communicate with other developers

Like Apple, Microsoft, Google and other big companies like the news described, (with other developers) can help you solve some complex problems. While this does not make you feel like you're a team or a member of a community, this approach can give you more exposure to different ideas.

Different types of projects require different design methods, code technology, development processes, and design ideas. If you work in a small team, you don't have to be in touch with too many people, just find someone in the user group meeting (to discuss). If that doesn't work, get involved in an online forum and discuss it with others (you'll need to try harder to find quality discussions).

5. Teach others

Teaching other people to learn more about a particular technique, as opposed to just reading code, has a remarkable effect. Teaching others about a technology can also make you more focused on the technology and understand it more deeply than others. You will also face some problems.

"If you can't explain a concept to a six-year-old child, you don't really understand it," he said. "said Albert Einstein.

The teaching scene can be endless: one-on-one interaction with a working partner, a break, an informal week, a tea party, a classroom, a discussion forum, and so on. How about a weekly 30-minute informal meeting between developers of the same idea? Each week, let a few people talk about what they want to know about the topic, impart the technical knowledge, and start a discussion. If you know that you are going to teach team members about learning, do you want to know every detail of the technology?

6, listen to network Radio

If you have free time, you can subscribe to the Internet radio program. My favorite programming program now is. Net Rocks. This program will also do some video programs, called Dnrtv. This will allow you to capture the latest and best technology instantly. One cannot learn all knowledge, and Internet radio is just a way to learn a wide range of knowledge.

7. Read Blog

Blogs are far more than readers, but some of them are extremely good. I don't recommend blogging here, because there are enough blogs on the web. This is a good way to connect with the people who are really developing the software you like and use.

8. Learn a new language

Even if you already have great attainments in languages such as C (++,#)/JAVA, there are still many other programming languages that can solve the problem. Learning a new language is a challenge to the way you think. This is not just another language, but a restructuring of the mind. Indeed, all languages will eventually be compiled into assembler, but that does not mean that high-level languages are worthless.

9, learn the wrong way

In addition to learning how to do, but also to learn how not to do. Read dailywtf.com often and learn from experiences and lessons you don't know. Learning the right object-oriented design, code writing and the code you have to write is a good way, but it's easy to develop bad habits if you're not careful. The idea of incorrect learning is the key to the development of the project.

Wikipedia has a very thorough breakdown of many of the wrong ways to sleep.

10, be humble.

To learn means:

Replace imperfect knowledge with better knowledge;
Increase the knowledge you don't know.

Only by admitting that you are deficient can you have the motivation to learn. In the final analysis, it is modesty, isn't it? If you start to think that you have mastered all the knowledge you need, then you are in danger. True learning is a thirst for knowledge and internalization, which requires a lot of effort. We all know this, but we have to constantly remind ourselves.

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.