10 secrets from beginners to intermediate developers

Source: Internet
Author: User
Tags mail exchange

10 tips to go from a beginner to intermediate developer
10 secrets from beginners to intermediate developers

 

Author: Justin James

Translation: Purple endurer, version 1st

Category: promotion, developer

Http://blogs.techrepublic.com.com/programming-and-development? P = 1139

 

Having trouble finding tips for beginner developers who want to take their career to the next level? Justin James aims to fill this information gap with his suggestions about how to make that leap.

Is it difficult to find secrets for junior developers who want to take their careers further? Justin James proposed how to make this leap to fill this information gap.

 

During an e-mail exchange with a techrepublic member, he mentioned that blogs, articles, and magazines aimed at developers seem to fall into two categories: items for beginners ("Hello World" type tutorials) and items for experts (msdn magazine ). it's a really good point; there's very little information out there to help a developer make the leap from beginner to intermediate. here are 10 things you need to do to make that transition.

 

In an email that communicates with techrepublic members, Justin James mentioned that blogs, articles, and magazines for developers appear to be divided into two categories: Beginner Projects ("Hello World" tutorials) and expert Project (msdn magazine ). This is a good idea; in addition, there is very little information that can help developers jump from beginner to intermediate. Here are 10 things you need to do during the transformation.

 

#1: learn another language
Learn other languages

 

It doesn't matter which language you learn, but learning another language (regardless of how many times you already know) will make you a better developer. even better is to learn one that is significantly different from what you already use on a regular basis. in other words, if you are a C # developer, learning VB. net or Java will not help you as much as learning Ruby or groovy.

It doesn't matter which language you want to learn, but learning other languages (no matter how many languages you know) will make you a better developer. What's better is to learn a language that is significantly different from what you have used on a regular basis. In other words, if you are a C # developer, learning VB. Net or Java is not as helpful as learning Ruby or groovy.

 

Endurer Note: 1. Regardless of: Ignore
2. on a regular basis: Regular location

 

And when I say "learn another language," I mean really learn it. learning a language consists of three realms of knowledge: the syntax, the built-in operators and libraries, and "how to use it. "the first two are easy; I think that an experienced developer can pick up enough of a language's syntax to maintain code in 30 minutes to a few hours depending upon the language. the operators and libraries are just a matter of slowly accumulating knowledge and being willing to check reference materials until you memorize what you need to know. but it's the third item-"How to Use It"-that can only be learned over months of working with a language and that's where the real magic happens. I suggest doing a project that is well suited for that language and doing it in that language's style.

 

And I say "learning other languages" means actually learning it. Learning a language involves three areas: syntax, built-in operators and libraries, and "how to use it ". The first and second items are easy. I think an experienced developer can learn the syntax that can maintain the code within 30 minutes or several hours based on different languages. Operators and Libraries only accumulate knowledge and are willing to check references until you remember what you want to know. But the third item-"How to use it"-takes several months to deal with the language, and the real miracle will happen. I recommend that you create a project that suits the language and follow the style of the language.

 

Endurer Note: 1. Reference Material: Reference Materials

 

Truly learn another language, and I promise that your abilities as a developer will start to blossom.

 

After learning another language, I promise that your development capabilities will soar.

 

Endurer Note: 1. He used to be painfully shy, but now he's started to blossom (out).

 

#2: learn advanced search techniques, tactics, and strategies

Learn advanced search techniques, techniques, and strategies

 

More and more, being a good developer is not just about your skill, but your skill at finding information. simply put, modern development ages and development frameworks are too large for most people to remember much of them. as a result, your ability to get work done is often dependent upon your ability to perform research. unfortunately, knowing how to find accurate, high-quality information is more than just heading to techrepublic for the answer or typing a few words into your search engine of choice.

 

As a good developer, not only depends on programming skills, but also on information-seeking skills. This trend is becoming more and more obvious. In short, the "Modern Language and Development Framework" is too big for most people to remember. Therefore, your ability to complete work usually depends on your retrieval capability. Unfortunately, knowing how to find accurate and high-quality information is not just as easy as simply going straight to techrepublic to find answers, or typing a few words on the selected search engine.

 

Endurer Note: 1. Very Simply put: in short
2. Heading to: Toward... go

 

"Techniques," "tactics," and "strategies" may sound like synonyms, but they are not. the techniques you need to learn are the advanced search systems of your favorite search engine; you need to learn things such as the boolean operators, how to filter results (negative keywords, domain restrictions, etc .), what role word order plays, and more. so essentially, rtfm.

"Technology", "tactics", and "strategy" sounds like one thing, but they are not. The technology you need to learn is to master the advanced search systems of your favorite search engines; you need to know such as boolean operators, how to filter results (such as "non" keywords, domain name restrictions, etc ), the role played by the word order of the keyword, and so on. After all, read the damn user manual.

 

Endurer Note: 1. rtfm: Read the foolish manual. Please read the damn user manual.

 

You shoshould learn tactics such as knowing how to approach any special search and knowing what you shoshould you actually look. errors are easy-just look for the error code-but keyword selection on each searches is much more difficult.

 

You should learn tactics such as how to approach a specific search and what you actually want to find. It is easy to find errors-you only need to find the error code-but it is more difficult to select keywords in many searches.

 

With regard to strategies, you need to learn things such as what search engines to use (Hint: General purpose search engines are not always the right answer ), which sites to visit before going to a general purpose search engine, and even which message boards to post to for help.

As for the strategy, you need to learn these things, such as which search engine to use (Note: general search engines are not always the correct choice) and which website to visit before using general search engines, which forum should I post for help.

Endurer Note: 1. With regard to: about, as to

#3: help others

Help Others

 

Teaching others is invariably one of the best ways to learn anything. it is understandable to think that you don't have much to offer because you are relatively new to the development field. that's nonsense. remember, everything you know you learned from someone or somewhere; so try being the someone that another person learns from. spend a few minutes a day trying to answer the questions on techrepublic or another site as best you can. you can also learn a lot by reading other Members 'answers.

 

Teaching others is always one of the best ways to learn things. You think you are a newbie in the development field and have nothing to teach. This is understandable but meaningless. Remember, everything you know is learned from others or elsewhere. So please try to be someone else to ask ". Every day, you may spend some time trying to answer questions from techrepublic or other websites. You can also learn many things by reading answers from other members.

 

Endurer Note: 1. As best one can: Try your best

 

#4: Be patient and keep practicing

XI zhiyiheng

 

Research shows that it takes "about ten years, or ten to twenty thousand hours of deliberate practice" to become an "expert. "That's a lot of time. furthermore, becoming an expert does not always mean doing the same task for 10 years; it often means doing a wide variety of tasks within a participant domain for 10 years. it will take a lot of time and energy to become an "expert"; working as a develo Per for a few years is not enough. Want to become a senior developer in your early 30 s? Either start your education/training sooner or be willing to do a lot of work, reading, and practicing in your spare time. I started programming in high school, and I got Ted a lot of off-hours to keeping up with the industry, learning new skills, and so on. as a result, I hit the intermediate and senior level developer positions significantly earlier in my career than most of my peers, which translates to an awful lot of money over time.

 

Research shows that it takes 10 years, or 10000 to 20000 hours, to become an expert. Really long. In addition, becoming an expert does not necessarily mean that the same task will be executed within 10 years; it usually means that a wide range of tasks will be executed within a specific area for 10 years. It takes a lot of time and effort to become an "expert". It is not enough to be a developer for several years. Want to become a Senior Software Development Engineer at the age of 30? You can either start education/training as early as possible or be willing to do a lot of work, reading, and exercises in your spare time. I started programming in high school and sacrificed a lot of time to track industry development and learn new skills. As a result, I took much longer to get a job as an intermediate and senior developer than most of my colleagues. Over time, this turned into a lot of revenue.

 

Endurer Note: 1. Spare Time: Spare Time

 

#5: Leave your dogmas at the door
Reject dogma

 

Time for some brutal honesty: Beginner developers probably don't know enough to state that there is one best way of doing something. it's fine to respect the opinion of a friend or an authority figure, but until you are more experienced, don't claim their opinions as your own. the simple fact is, if you don't know enough to figure these things out on your own, what makes you think that you know whi Ch "expert" is right? I know this sounds really harsh, but please believe me; I have met far too your budding developers who had their careers or their growth set back years because they got hung up on some foolish piece of advice or followed some "expert" who really didn 'know what they were talking about. a great example of this is the abuse of object-oriented architecture. for example, many inners read some information about Oo, and suddenly the class diagrams to their simple applications look like the Eiffel Tower.

 

It's time to be open and honest: Maybe what junior developers know is not enough to declare that there is a best way to do something. It's nice to respect your friends or authoritative opinions, but do not describe their opinions as your own until you have more experience. In fact, if what you know is not enough for you to understand these things independently, why do you think that you know which "expert" is right? It is hard to hear, but believe me. I have met many developers who are confused by some stupid suggestions, or follow some so-called experts who do not know what they are talking about, and delay their career for several years in vain. A good example of this is the abuse of object-oriented structures. For example, after reading some object-oriented information, many beginners suddenly look like the Eiffel Tower in their simple application class diagram.

 

Endurer Note: 1. authority figure: authoritative figures
2. The simple facts: fact itself
3. Figure out: Calculate (come up with, understand, determine, and solve)

 

#6: learn a few advanced ideas in-depth
Learn more advanced concepts

 

Much of what goes into being an intermediate developer is having a few concepts that you are really good at working with in code. for me, it is multithreading/parallelism, regular expressions, and how to leverage dynamic versions (and the last two are fading as I get farther away from my Perl history ). how did this happen? Multithreading and parallel processing came about because I read articles on it, thought it sounded interesting, and figured it out on my own; I keep writing apps that use those techniques. I had a job that used a ton of Regular Expressions in Perl. also, I ended up writing my own e-commerce engine with a template processing engine and built-in database system; then I spent nearly two years working on it.

 

As an intermediate programmer, a large part of it should be good at reflecting some new concepts in the code. I am talking about multithreading/parallelism, regular expressions, and how to use dynamic languages (the last two begin to decline when perl and I are drifting away ). How did this happen? I switched to multithreading and parallel processing because I read related articles and thought it looked interesting. Then I figured it out myself. Then I kept using these technologies to write applications. I have done a job that uses a lot of regular expressions written in Perl. I also used a data processing engine template and a built-in database system to write my own e-commerce engine. At that time, I spent almost two years on it.

 

Endurer Note: 1. came about: happen (turn around, change direction)
2. End Up: end, end

 

Find something that has you really hooked. it might be image manipulation or maybe database design or whatever. even if you're an entry-level developer over all, try to become an expert in at least one area of focus. this will get you into that intermediate level quite quickly, and once there, you will be halfway to expert.

 

Find something that really interests you. It may be image processing, database design, or something else. Even if you are an entry-level developer, you should try to become an expert in a certain field of your interest. This will allow you to enter the intermediate level quite quickly. Once you reach that level, your expert journey will be halfway through.

 

#7: learn the basic theories underlying your field

Learn Basic Theories in your field

 

It's one thing to write "Hello World," but it's another to understand how the words appear on the screen. by learning the "Groundwork" that supports the work you do, you will become much better at it. why? Because you will understand why things work the way they do, what might be wrong when things are broken, and so on. you will become better by learning what happens at a lower level than your work.

 

Writing a "hello World" program is a two-way process to understand how those words are displayed on the screen. You will become more professional by studying the "bottom-layer jobs" that support your work. Why? Because you will understand why things work in this way, and when things are bad, you will be able to know where the problem is, and so on. By studying the low-level mechanism of your work, you will become better.

 

If you are a web developer, read the http rfc and the HTML spec. if you use a code generator, really look at the code it generates; if you use database tools, take a look at the underlying SQL it generates; and so on.

 

If you are a web developer, read the http rfc and HTML specifications. If you use a code generator, take a good look at the code it generates. If you use a database tool, look at the underlying SQL statements it generates, and so on.

 

#8: Look at senior developers 'Code

View the code of a senior developer

 

At your job, take a look at the Code the senior developers are writing and ask how and why things were done a particle way. if you can, check out open source projects as well. even if other developers don't have the best coding habits, you'll learn a lot about how code is written. be careful not to pick up bad habits along the way. the idea here isn't to just blindly imitate what other developers are doing; it's to get an idea of what works and what makes sense and try to imitate it.

 

Take a look at the code written by senior developers at work, and then ask how things are completed in a special way. Why? If possible, you can also look at open-source projects. You may even learn a lot of programming experience from other developers who do not have the best programming habits. Of course, be careful not to get into bad habits. I mean, do not blindly imitate other people's things; you need to understand what works, what makes sense, and then imitate.

 

Endurer Note: 1. Make sense: Make sense, make sense, and make sense

 

#9: learn good habits

Good habits

 

Nothing marks an inexperienced coder like stupid variable names, poor indentation habits, and other signs of being sloppy. all too often, a developer learned how to program without being taught the less interesting details such as code formatting-and it shows. even though learning these things will not always make your code better or you a better developer, it will ensure that you are not viewed as an entry-level developer by your peers. even if someone is a senior developer, when variables are named after their 97 cats or their functions are called "dosomething ()," they look like they do not know what they are doing, and it makes their code harder to maintain in the process.

 

Stupid variable names, bad indentation habits, and other signs of rashness are the best tag for inexperienced code workers. When developers learn how to program, they often do not have to teach less interesting details, such as code format-display. Although learning these things won't make your code better, nor make you a better developer, it will also ensure that you are not considered as an entry-level developer by colleagues. Even if someone is a senior developer, if his variable is named after his 97 cats, or his function is called "dosomething, they seem like they don't know what they are doing, and make their code more difficult to maintain during the process.

 

Endurer Note: 1. be sloppy: slippery
2. All too often: Always

#10: Have fun

Be happy

 

Want to be stuck on the career treadmill? Hate your job. what it takes to move up in this business is not merely dogged determination to bring home an ever growing paycheck but an actual enjoyment of your work. if you do not like your work and you are a junior developer, what makes you think that being an intermediate or senior developer will be any better? Change jobs or change careers. On the other hand, if you love the work you are doing, great! I guarantee that you can become a better developer if you keep at it.

 

Want to fall in love with a monotonous career? Hate work. In this industry, the promotion measures to be taken are not only the determination to bring more and more wages back to families, but also the real enjoyment of work. If you do not like your work and are still a junior developer, how do you think the situation will improve after you become an intermediate or senior developer? Change your job or career. On the other hand, if you love your job, you can do it! As long as you stick to it, I promise you will become a better developer.

 

Endurer Note: 1. Have fun: Have fun
2. Be stuck on: infatuated with (Fall In Love)
3. dogged determination: tenacious Determination

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.