Today is October 24th, is the “programmer festival” in the river’s lake. Recalling my career development, I entered the Internet industry to work as a programmer ten years ago. No matter whether I worked as an operation or product manager later, MY personality is characterized by “engineer culture”. I think this kind of personality should be born with me, because I worked as a salesman before writing code, and I did marketing work for one year with good performance.

A lot of times when we write code, we copy what other people have written. If the code in the company is high quality, the new people can copy the high quality code. If the code is a mess, the newcomers can only copy the bad code, and the quality of the code gets worse and worse. So NO matter the size of the team, I always care about code specification and redundancy. Unfortunately, not every colleague can understand my cleanliness obsession.

Today, on the occasion of 1024, I’m writing some advice to young programmers about programming, getting along with colleagues, productivity, personal growth, and more.

1. Once you start working, learn to spend money on time (tools), personal growth (training), software (respect for the work of your peers).

2, learn to climb the wall, and have their own stable and safe means of climbing the wall.

3. Learn to use search engines (Google first, Bing second) and knowledge communities. The key to search lies in precise word segmentation and the right keywords to search.

4, if you have a problem in your study or work, you should first know how to spend ten minutes to find the answer, and then ask others.

Problems are not a shame, have the courage to communicate, don’t be too introverted.

6. Don’t be too proud and respect others’ time.

Get in the habit of cleaning up your code, whether it’s adding comments, cleaning up syntax, or fixing redundancy. This habit will help a lot of people, and the biggest beneficiary is yourself.

Every team more or less has problems, job-hopping is just a pit, don’t give up easily.

9. Do not oppose or dislike code reviews and design critiques, which is the best way to improve documents and improve standards.

10. Don’t treat colleagues (e.g., product manager) with hostility and assume that everyone has the best intentions, even if they don’t. It will make your life easier.

Communication is more important than writing code skills, be careful of any hint from anyone.

12. When debating an issue, first ask yourself, “Do I really care about this?” Otherwise you will inevitably spend time and energy debating meaningless questions such as whether to name FooWidgetProcessor or FooWidgetHandler

13. Sometimes it is important to name FooWidgetProcessor or FooWidgetHandler because the code’s convention with the naming convention is important.

14, Don’t rely on your gut feeling to infer product intent, remember to ask the product manager for functional logic description, whether it is text or flow chart, make sure complex logic has specific instructions, otherwise you are likely to write code for nothing.

15. The proper order of work is this: comprehension, conversation, email confirmation, requirements documentation, code.

Robustness should be optimized

Don’t confuse reliability with uptime.

18. Understand what “technical debt” means.

19. All code is technical debt, even if it’s what you consider a one-time job, like a CLI. As soon as any expediency is elevated to the production stage, it becomes the status quo.

You have to learn to evaluate your every job, put in the time to measure what you do is right.

21. To get involved in open source projects, start with projects you use a lot (like programming frameworks, gadgets, etc.). The first pull request can start by correcting typos in comments to familiarize yourself with the process. If you want to actually change the code logic, it is best to talk to the project maintainer first to avoid futile efforts.

22. Consider all the tools that help you with your work: computers, mice, keyboards, languages, ides, chairs, iTerm fonts, desktop backgrounds, etc.

Free is the most expensive service, charge is the cheapest service.

The public has a bias against programmers’ quality of life, to understand. The only way to improve your quality of life is to throw things away regularly, but it’s complicated to understand. And if you get a girlfriend, don’t throw it away, because you might never get it again.

Today is 1024 Programmer’s day, so let’s write 24.