9 great difficulties with the programmer spitting up the bad numbers

Source: Internet
Author: User

English Original: arg! The 9 hardest things programmers has to do

Those non-programmers think that software development is very difficult, indeed, but this difficulty is not as the layman understands. In a recent discussion on Quora, the programmers shared the biggest difficulties they felt at work, presenting 9 of them here. As you can see, writing code is not the hardest thing to do, and if you're also working on software development, see what you think is hard.

  1. Design the solution

  Task Description: to give you a range of requirements, you are required to design and construct technical solutions. This includes design data structures, algorithms, logical encapsulation, and so on, as well as user security considerations.

  Challenge: Make sure your design meets the needs of your customers and makes them sound. And, of course, within the scope of the project time allowed.

  2. Write the test

  Task Description: Write unit tests to ensure that each part of the code is functionally correct. Doing so will allow you to find bugs early, making it easier for you to follow the regression test. Some development methodologies even encourage developers to write test procedures before they can write programs.

  Challenge: testing for each part is a tedious thing to do, and it feels like you're doing something extra.

  3. Writing Documents

  Task Description: Write a document that explains what your code means and explains how the app works. This includes separate documentation files and code comments, so that more people understand your code.

  Challenge: It's a time-consuming job, and if no one reads them, it's a waste of the day. Programmers are more fond of writing programs than writing documents.

  4. Implement features that you do not recognize

  Task Description: Sometimes you will have to implement some features and features, they are not your intention, you think they should not appear in this project, but customers must insist on this.

  Challenge: you need to put aside all your personal feelings and opinions and focus your time and energy on the functional needs of your customers.

  5. Maintain code for others

  Task Description: Sometimes you need to maintain and debug other programmers ' programs, or part of the code.

  Challenge: You need to use every means to understand the intentions of the previous developer and how he designed the code. Especially when the code is poorly written and there are no comments or documents to help you, that's bad.

  6. Dealing with others

  Task Description: as a developer, you need to get the demand from the customer, submit a report to the manager, work with the testers, and discuss the project with other engineers.

  Challenge: You need to explain technical things to pedestrians, and sometimes your work depends on the approval or assistance of others. There will also be times when you disagree with the QA staff or other engineers.

  7. Estimated Project duration

  Task Description: at the beginning of the project, you should estimate how long it will take to complete the project.

  Challenge: in general, you want to estimate a project that you have not done before, and you can only allocate time for future problems based on vague requirements.

  8. Explain my work

  Task Description: explain to the surrounding non-programmer friends, family, and classmates what your job is doing and not doing.

  Challenge: The people you love may not understand what you're doing, and you're constantly being asked about all the computer-related issues.

  9. Naming in the program

  Task Description: come up with some names and name the variables, processes, functions, classes, objects, databases, etc. in your program.

  Challenge: Even small programs or applications need to name a lot of things, you have to come up with the right, concise, can express the correct meaning of some of the names.

Translation: http://www.php100.com/html/it/focus/2014/1126/7908.html

http://news.cnblogs.com/n/509533/

9 big problems that the programmer spits up (turn)

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.