How to become a Java champion programmer?

Source: Internet
Author: User
How to become a Java champion programmer?

But some programmers have been asking me for career advice. now I think it's time to write another article. As mentioned above, if you have a mind to look at other things-I have already begun recording the terrible food I have cooked on Heinz's Worst Recipes (the Worst recipe for Hines. It's caused by my strong desire to eat-it can be proved by my waist circumference that cooking has become my hobby. I am far from being a qualified cook, because I have never followed the recipe, so many of the food I cook has been abandoned in a "not edible" state, of course, sometimes I do what I want if I try and have enough problems. In my blog, examples of success and failure are recorded. Of course, this is irrelevant to Java.

How to become a Java champion programmer?

A few months ago, my business partner Carl and our French course mentor Xavier sat at a restaurant in Paris. During the conversation, Carl and I talked and laughed at the cool technologies we used when we were young. At the same time, I noticed Xavier's silence for a long time, so I decided to ask him about his age. Although I cannot remember his age exactly, I remember that he is very different from my age, which is similar to that of my second child. This means that the programming experience that Carl and I have had at the same time over the years is worthless to him.

In the software engineer's career, knowledge has a three-year half-life. This means that half of your knowledge is worthless three years later. For example, the older you get, the harder it is to see who knows TSR (the memory Resident program Terminate-Stay-Resident ), the person who once wrote a TSR is like a haystack. In the DOS system, multiple programs cannot run simultaneously. Therefore, when we need a background function, such as a calendar or calculator, we will write a Terminate-Stay-Resident program ), then, activate it from another program through a specific combination of keys.

In this industry, the three-year half-life of knowledge is actually an excellent thing, which will never turn you into a boat. When I was a teenager, people warned me that I was opposed to being a programmer and thought that I would be forced to continue learning new things, but I thought that our work would benefit from it. First, keep your mind fresh and active. The last time I saw my grandmother, she was 98 years old, and she was still confused. She saw my Macbook Pro and said, "Hey, it looks good. I also want to buy one ." It is precisely because she keeps learning new things and makes her clear-headed. Second, ignore technologies that you are not very interested in, because they will be replaced soon. Here is an example of Subversion. I used to use it because I had to use it, but I didn't take it special and I didn't become a Subversion expert. A few years later, git emerged and can only wave goodbye to Subversion. Sadly, one of my clients migrated from CVS to Subversion this year! This is July 2015!

Well, let's get back to the topic-how to become a champion programmer? I think the following are very helpful:

Powerful memory. When I was in the eighth grade, I had to believe that my memory was too bad because of the gloomy history teacher. However, I was surprised that after years of working as a programmer, I was surprised to find that I could immediately reproduce the Java source code I have read before. When I read a method in JDK, I can often tell whether the method has changed compared with the previous version. Maybe I can't remember the appearance and name of a person, but I can never forget the Java code-it would be nice if the person's name is also a for loop. Fortunately, the lack of good memory does not affect us to become champion programmers, but having a strong memory is still a clear advantage.

Mathematical ability. You can become a good Java programmer without becoming a mathematical expert, but the mathematical ability will obviously help you have the qualifications to become a good programmer. I had a little spare time in March, so I decided to try the Euler's puzzle (Project Euler ). One of these puzzles needs to run for nine and a half hours to find a solution. During its running process, I looked at the problem and found a relationship between numbers, which can be used to optimize the solution. It only took 6 minutes to run again. At the same time, my first algorithm continued to run and tried to find the answer. I went back to the number again and found another unseen mode. now it takes only 6 seconds to complete. I have also tried to use clever programming skills and parallel brute force code optimization, which may speed up a little bit, but there is still no way to make it less than 6 seconds.

About a decade ago, Sun launched the Java Champion programmer (Java Champion) program. This idea is used to find the world's top 1000 Java experts who are actively doing things to help improve Java. We are now probably ranked in the 160th rankings. Oracle continues to carry out this plan, and over the past few years, we have seen more benefits of this accreditation system. This is a self-selected group. New champions are promoted by existing champions and voted. Usually, a dozen or more people will approve of the title before it is selected, and a single objection will reject the proposal. Self-recommendation is considered, but generally it won't be supported.

Programmers often ask me how I became a Java champion programmer. "It's very simple," I said. "as long as I published 200 Java-related articles like me; either write a Hibernate, Spring, or Jacco, or answer thousands of questions on StackOverFlow and publish a dozen good articles, or organize the largest Java developer conference in Europe."

You need to do something remarkable, which will take time and effort. No one has become a Java champion programmer because of their personal charm and beauty. it only relies on hard work. This may be the reason why our name is not followed by face photos ;-). Do not even become a champion programmer to become a champion programmer. It will make you feel better if you abandon your selfishness and wait for praise from others. Not every Champion programmer is officially named "Oracle Java Champion (Oracle Java Champion programmer.

No matter which method you choose, becoming a champion programmer means dedication. It is totally different from the 9-to-5 schedule. you cannot learn all the knowledge you need at work. To become a champion programmer, you need to study at night and on weekends to keep pace with the times. The most exaggerated joke is that programmers will enter the elimination period from the age of 40. Maybe they do well in Java programming-unless they refresh their knowledge by reading books, articles, attending developer conferences and challenging courses-otherwise they simply rely on a diploma, this industry will eventually become worthless, and it will discard them like a used napkin. Never become such a person! Learn, learn, and learn again! The best way to learn is to share your knowledge with your colleagues.

How to share your knowledge? Today, we have many options: you can answer questions on StackOverflow or other similar websites; we can discuss technical issues by calling takeout at lunch time-many years ago in one of my companies, we went through "Design Patterns" in this way ". This requires a sacrifice. you may have to give up your lunch and spend some evening preparing for your meeting. However, there is much more to learn than simply being a consumer of information.

"The Java™Specialists's Newsletter "is now read by more than 130 programmers in more than 70000 countries, but it was very small at the beginning, I sent it to my 80 friends and family members (including my brother and my parents), and I begged them to forward it to their friends and colleagues. Over time, it develops slowly. I believe that if you look around, you can find 80 email addresses, that's how it started. Everything starts with small. It is slow but stable. I know that when you see the number 70000, it may be stunned, but it is only a small proportion of Java programmers.

Finally, I want to end this article with a very helpful point: enthusiasm. Most people have to do boring computer work, and few people can enjoy it. In one of my jobs, they arranged the organization's source code library to an electronic engineer. He is totally wrong-when he is doing source code control, let's copy the source code tree between directories. We need to do this at the same time every week during build, and the server is as slow as a crawler. It usually takes several hours for the machine to get stuck. it is painful and frustrating for everyone to wait. I am not enthusiastic about VSS (Visual Source Safe: used to manage different versions of Source code and documentation in software development. Find something you love. it should be something you are willing to do after work. For me, it is to study the runtime environment in the Java ecosystem. Enthusiasm means that when there are countless reasons for us to stop, it still drives us forward.

This is a bit like the reason I like cooking. Fortunately, I have a higher programming level than cooking.

Get free LAMP Brothers original php Tutorial CD/the elaborate PHP Essentials edition, details consulting official website Customer Service: http://www.lampbrother.net


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.