


My father passed away two weeks after I started talking about programming.
I was 22 years old at that time, a senior student who had just completed the graduation project of Bachelor of Aesthetics. And my father is 62 years old, older than most fathers of my age. He had already started working on programming languages at Tennessee Tech University in the 1960s, writing FORTRAN on punch cards. I have to admit that my father is very knowledgeable and knowledgeable.
When I had close contact with programming for the first time, it was like fireworks, instantly dazzling my life. It feels magical and powerful to me, and in many ways more creative and practical than visual design.
When I was home for the holidays, my dad shared his Ten Commandments of Programming. He printed a copy and discussed it with me one by one. It was one of the few discussions about programming that my father and I had before he suddenly left me. Perhaps for this reason, the "Ten Commandments of Programming" is deeply engraved in my mind. Together with my father's voice and appearance that day, it has become my best memory, and it will never change.
Inspired by the book "The Psychology of Computer Programming" first published in 1971, here are the Ten Commandments of Programming summarized by my father:
1. Understand and admit that you will make mistakes.
The key to this is to find out early before publishing. Fortunately, unless you're developing rocket guidance software at the Jet Propulsion Laboratory, errors are rarely fatal. Therefore, after making mistakes, we can learn from them, maintain a positive attitude, and continue to move forward and make progress.
2. No one is a saint, and no one can make mistakes.
The purpose of reviewing code is to find problems. However, if there are any omissions, the blame cannot be placed on a certain person and directed against him.
3. There are people outside the world, and there is a sky outside the world.
There must be a teacher among the three of us. Asking a good teacher will benefit you a lot. You must learn to listen to the opinions and suggestions of others, especially when you think it is unnecessary, and you must accept the advice of others with a humble attitude and a broad mind.
4. Think twice when refactoring code.
There is an essential difference between "fixing code" and "refactoring code". After careful consideration, if you still want to pursue changes in the framework style during code review instead of improving along the original path, then refactor.
5. Respect others, be patient and courteous to everyone.
Non-technical people who often interact with developers often feel that programmers are arrogant, bad-tempered and bad-tempered. Don't let your anger and impatience make this image grow in their minds.
6. The only constant in the world is change.
Accept changes with an open mind and a smile. Treat every change in requirements, platforms, and tools as a new challenge rather than an annoyance to resist.
7.True authority comes from knowledge, not position.
Knowledge creates authority, and authority brings respect - so if you want to gain the respect of others in the computer field, go learn.
8. Fight for what you believe in, and then accept failure gracefully.
Sometimes our ideas are rejected. Even if we later find out we were right, we should not harbor resentment or say something like, “I told you this would happen a long time ago and I still don’t believe it.” Don't let this create a gap between the team, don't worry about this little thing and complain often.
9. Don’t be the “programmer in the corner”.
Don’t be that person who hides in an inconspicuous corner of the office and only comes out when ordering food. Programmers who hide in corners are often short-sighted, isolated, and out of touch with everyone. They will be invisible and not express any opinions. Therefore, participate in everyone's discussions and become a coordinating member of the office group.
10. You can criticize the code, but you can't attack personally.
You should be friendly to every programmer, but be sharp and to the point when pointing out problems. Our criticism should be as positive as possible and aimed at improving the code, not without purpose. At the same time, local standards, procedural specifications, improved performance, etc. should also be considered.
I still have this copy of "The Ten Commandments of Programming". As mentioned above, I grew into an excellent programmer. Sometimes when I encounter difficulties, I can't help but think, if my father was still alive, what advice would he give me? Although this has become a delusion, I believe that my dear father will be proud of me for always remembering these ten commandments.
Receive LAMP Brothers original PHP tutorial CD/"Essential PHP in detail" for free. For details, please contact the official website customer service: http://www.lampbrother.net
|

PHP type prompts to improve code quality and readability. 1) Scalar type tips: Since PHP7.0, basic data types are allowed to be specified in function parameters, such as int, float, etc. 2) Return type prompt: Ensure the consistency of the function return value type. 3) Union type prompt: Since PHP8.0, multiple types are allowed to be specified in function parameters or return values. 4) Nullable type prompt: Allows to include null values and handle functions that may return null values.

In PHP, use the clone keyword to create a copy of the object and customize the cloning behavior through the \_\_clone magic method. 1. Use the clone keyword to make a shallow copy, cloning the object's properties but not the object's properties. 2. The \_\_clone method can deeply copy nested objects to avoid shallow copying problems. 3. Pay attention to avoid circular references and performance problems in cloning, and optimize cloning operations to improve efficiency.

PHP is suitable for web development and content management systems, and Python is suitable for data science, machine learning and automation scripts. 1.PHP performs well in building fast and scalable websites and applications and is commonly used in CMS such as WordPress. 2. Python has performed outstandingly in the fields of data science and machine learning, with rich libraries such as NumPy and TensorFlow.

Key players in HTTP cache headers include Cache-Control, ETag, and Last-Modified. 1.Cache-Control is used to control caching policies. Example: Cache-Control:max-age=3600,public. 2. ETag verifies resource changes through unique identifiers, example: ETag: "686897696a7c876b7e". 3.Last-Modified indicates the resource's last modification time, example: Last-Modified:Wed,21Oct201507:28:00GMT.

In PHP, password_hash and password_verify functions should be used to implement secure password hashing, and MD5 or SHA1 should not be used. 1) password_hash generates a hash containing salt values to enhance security. 2) Password_verify verify password and ensure security by comparing hash values. 3) MD5 and SHA1 are vulnerable and lack salt values, and are not suitable for modern password security.

PHP is a server-side scripting language used for dynamic web development and server-side applications. 1.PHP is an interpreted language that does not require compilation and is suitable for rapid development. 2. PHP code is embedded in HTML, making it easy to develop web pages. 3. PHP processes server-side logic, generates HTML output, and supports user interaction and data processing. 4. PHP can interact with the database, process form submission, and execute server-side tasks.

PHP has shaped the network over the past few decades and will continue to play an important role in web development. 1) PHP originated in 1994 and has become the first choice for developers due to its ease of use and seamless integration with MySQL. 2) Its core functions include generating dynamic content and integrating with the database, allowing the website to be updated in real time and displayed in personalized manner. 3) The wide application and ecosystem of PHP have driven its long-term impact, but it also faces version updates and security challenges. 4) Performance improvements in recent years, such as the release of PHP7, enable it to compete with modern languages. 5) In the future, PHP needs to deal with new challenges such as containerization and microservices, but its flexibility and active community make it adaptable.

The core benefits of PHP include ease of learning, strong web development support, rich libraries and frameworks, high performance and scalability, cross-platform compatibility, and cost-effectiveness. 1) Easy to learn and use, suitable for beginners; 2) Good integration with web servers and supports multiple databases; 3) Have powerful frameworks such as Laravel; 4) High performance can be achieved through optimization; 5) Support multiple operating systems; 6) Open source to reduce development costs.


Hot AI Tools

Undresser.AI Undress
AI-powered app for creating realistic nude photos

AI Clothes Remover
Online AI tool for removing clothes from photos.

Undress AI Tool
Undress images for free

Clothoff.io
AI clothes remover

AI Hentai Generator
Generate AI Hentai for free.

Hot Article

Hot Tools

SecLists
SecLists is the ultimate security tester's companion. It is a collection of various types of lists that are frequently used during security assessments, all in one place. SecLists helps make security testing more efficient and productive by conveniently providing all the lists a security tester might need. List types include usernames, passwords, URLs, fuzzing payloads, sensitive data patterns, web shells, and more. The tester can simply pull this repository onto a new test machine and he will have access to every type of list he needs.

Safe Exam Browser
Safe Exam Browser is a secure browser environment for taking online exams securely. This software turns any computer into a secure workstation. It controls access to any utility and prevents students from using unauthorized resources.

Atom editor mac version download
The most popular open source editor

MinGW - Minimalist GNU for Windows
This project is in the process of being migrated to osdn.net/projects/mingw, you can continue to follow us there. MinGW: A native Windows port of the GNU Compiler Collection (GCC), freely distributable import libraries and header files for building native Windows applications; includes extensions to the MSVC runtime to support C99 functionality. All MinGW software can run on 64-bit Windows platforms.

Dreamweaver CS6
Visual web development tools