How programmers acquire new programming skills

Source: Internet
Author: User

Million red envelopes, fiery open!!! Have you more wonderful!

"How did you learn all these frameworks and languages?" "Recently, a friend in the hackathon asked me.

"In fact, it's very simple, just use what you want to learn to create a suitable and worthwhile project," I replied.

"Really?" Do you want to get started with the project directly? "he asked curiously.

"Yes, and ask for advice from the right people." Smart people are usually happy to teach and help others. "I told my friends, and I thought, why don't I write a blog post about this?" -hence the article.

One thing that is important to people who want to work in the field of technology is that you have to learn how to learn. I've talked to a lot of very smart people about learning and mastering skills. I also spend a lot of time telling my friends and colleagues some guidance/advice on how to learn. In this article I will give you a detailed analysis of some points.

Assuming you want to learn the language/framework/API/tools/things, you really don't need to know where to start. How to do this, I will explain the following, I hope to be useful to you.

1. Read the documentation

The key to using any language or framework is to familiarize yourself with its documentation. Go to the homepage of the content you want to learn, and look through the start/Quick Start tutorials from beginning to end. If not (which is rare), or if their documentation is difficult (which is not uncommon), then look for advice from the relevant experts. Usually a third-party tutorial will tell you what you need to know.

Don't be afraid to learn new things. You will be amazed to find that the original get new skill is so easy one thing.

2. Find a project worth building

The project you choose must be the one you love and can really put into your studies. If you have any ideas, just go for it! If you don't have an idea, here are some tips to help you find your project.

To tell the truth, when I want to learn new content, I often can't find the right project. My approach is to consult other people until I meet a good idea that excites me. My friend Yamil Asusta is very insightful about this, and recently he has expressed some of his views on the subject. Here I would like to recommend two good ways he proposed:

If you want to learn a programming language, learn how HTTP requests work in this language. The best way to interact with other tools, then, is primarily through HTTP, which in itself gives you a sense of how the language works. find a small project that can be built using different tools. Small, moderately complex web apps that allow you to use other frameworks, as well as learn how other frameworks work. Using different tools to build the same thing gives you a clear understanding of the differences between tools. Finally, if you can't find a project, think about what you can build with the framework or tools you're learning, and then start working on it.

3. Start the project

Everything starts hard. Don't try to muddle along. Start now and devote as much time as you can to learning.

Discover tutorials, you can start a project, think about what projects to build, or start a project. Enrichment projects require searching for programming software, asking friends, and reading more documents. Don't write code casually, don't just look at the problem from the perspective of past experience. Read the documentation and use the time to clarify common design and architectural patterns.

4. Ask the person who knows

Don't be afraid to ask questions. If you don't ask for advice, it will take longer to get the answer to your question. Even the best expert, at some point, is a beginner, and most people are willing to guide and help others and give back to society.

The key to asking questions is that you can't waste anyone's time. So ask the right questions. No one is willing to answer questions that only Google searches can solve. When I recently talked to Hector Ramos, a person who spent a lot of time helping people solve the parse problem, he mentioned two simple questions he liked when asked.

I want to use parse to implement this and the documentation for this section, but it doesn't work (it's definitely where I made the mistake). Can you take a look at it for me? This is my code snippet. can I execute X with parse? questions to be simple and clear, to facilitate the other side of the answer. Ask a question to the right person. In general, people who can be consulted can be divided into these two categories:

Know a lot about a particular area of expertise. knowledgeable, have a certain understanding of many areas. So, learn to differentiate them and ask the right people.

5. Deployment Project

Get your project to a state that you think is "done". This means that you don't need to be perfect, 100% complete, and don't need to be very beautiful. As long as you feel that your project is OK and willing to show it to other people to show you how great you are.

When you're done with the project, be sure to put it on GitHub, or deploy it to places that others can see. This allows others to criticize and comment on your work, urging you to be responsible for your work and making better work. In addition, this will allow your prospective employer to see your rich experience.

Even if you think your code sucks, the fact that you're willing to show it in itself means you're a developer. You're one step ahead of those guys who don't even have the code to produce.

If you ask people questions, first let them know where you have learned, show them your work, and let them know that the time they need to answer your questions will not be wasted. Finally, after you finish the first project, go to the next one. The only way to learn to write code is to write code. Similarly, the only way to learn a new framework is to write code in that framework. So, come on.

These are the steps I take to learn new tools. If you also want to make the most of your time to learn new things, then I believe this will be a good start.

Finally, if you have different views, please leave a message.

How programmers acquire new programming skills

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.