Starting from the MySQL crash caused by a requirement

Source: Internet
Author: User

Let's talk nonsense.

Body

Today, someone needs to export an excel table from the database. This person is a non-technical engineer and needs:

Export the voting data of contestants from the 19th to the 25th in excel format.

OK. You can see this requirement,

My first thought

Find the contestant User table and read a voting record table,

Join Table query and selection to find the number of votes of contestants from the 19th to the 25th.

I sent the result to the other party, and the other party soon told me that the error was not what he wanted. I was wondering,

He said that he needed the voting data from the 19th to the 25th,

Second:

According to his requirements, I quickly wrote a mysql statement to query the database. I don't know how to do it. There is always no data,

First of all, I suspect that there is a problem with my time condition writing. I did not solve the problem after searching for the Internet for half a day, so I had to turn to the Technical boss for help,

Failed. After repeated communication, he finally found that the voting data he wanted was not the number of votes of the contestant, but the log of the voting record (the corresponding table is the voting log table, not the voting record table ),

His requirements are analyzed as follows:
  • Export the voting data of contestants from the 19th to the 25th in Excel format.

Different:. 25 indicates the time, not the player ID.

Different 2: The voting data is not the number of votes, but the voting log.

However, there is no error in this sentence. From the perspective of any non-technical personnel, there is no error,

I think from my perspective: It seems that I have no mistakes. If I make a request, it is estimated that the same is true.

However, the real needs and understanding of both parties are quite different. You have to think about how to communicate with non-technical personnel as technical personnel?

Coincidentally, I saw the essence of the programmer in the previous article of the moonlight blog. After the afternoon's tossing, I had a deep understanding. I recorded another article,

Original blog address; http://www.williamlong.info/archives/2907.html

Capabilities of a good programmer

We can see that a good programmer should have two sets of skills to deal with two different worlds.

Understand human needs and propose solutions:

  • 1. communication-the ability to establish connections with others, be able to communicate with others in close contact, and have the courage to share your own ideas.
  • 2. Intention-extract useful information from the conversation to understand and make it meaningful.
  • 3. Logic-organize computers that do not understand concessions and remove vague and controversial content from human thoughts.
  • 4. Creativity-mining and transforming human thoughts to create excellent solutions.
  • 5. conception-packaging programming ideas with friendly human interfaces and convenient interaction.
  • 6. Big Picture-understand how solutions adapt to users, businesses, and others around the world to make your programs more useful.

Tell the computer what to do and create a solution:

  • 1. Logic (stressed again)-organize the ideas of programmers into cohesive software ideas and computer instructions
  • 2. Technology-discover and understand the black box of technology (black box for 99% of people ).
  • 3. programming language-learning beautiful, logical, and clear languages to give programmers ideas to computers.
  • 4. algorithms-proficient in the most efficient way for computers to complete tasks.
  • 5. modeling-create an abstraction and model in software code to master and manipulate ideas.
  • 6. Practice (such as code refactoring, unit testing, and continuous integration)-periodic activities to keep the system reliable, healthy, and changeable.

Programmers targeting humans and hardware objects/systems are very different.

Programmers who do not communicate with others are not good programmers. An excellent solution requires the dual skills of the computer world and the human world. Only by connecting two worlds can we become a really good programmer.

The last sentence is important:

Programmers who do not communicate with others are not good programmers. An excellent solution requires the dual skills of the computer world and the human world. Only by connecting two worlds can we become a really good programmer.

The last sentence is very important: programmers who do not communicate with others are not good programmers. An excellent solution requires the dual skills of the computer world and the human world. Only by connecting two worlds can we become a really good programmer.

So how to do a good job of communication? Everyone is welcome to talk about it, and ask the Administrator to show mercy.

Technorati label: programmer Communication

This article is based on the signature-non-commercial use
3.0 License Agreement published, welcome to reprint, deduction, but must retain the signature of this article: php10086 blog network (PhP Huaibei): http://www.php10086.com, you can also contact me by mail. It is said that every programmer should dig their own well, hope you support me "well": php10086 blog (PhP Huaibei): http://www.php10086.com.

Related Article

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.