A Pragmatic Philosophy(Part I)

    What distinguishes Pragmatic Programmer? We feel it’s an attitude, a style, a philosophy of approaching problems and their solutions. They think beyond the immediate problem, always trying to place it in its larger context, always trying to be aware of the bigger picture.

    Another key to their success is that they take responsibility for everything they do. Being responsible, Pragmatic Programmers won’t sit idly by and watch their projects fall apart through neglect.

1. The Cat Ate My Source Code
One of the cornerstones of the pragmatic philosophy is the idea of taking responsibility for yourself and your actions in terms of your career advancement, your project, and your day-to-day work. A Pragmatic Programmer takes charge of his or her own career, and isn’t afraid to admit ignorance or error….but it will happen-even on the best of projects. Despite thorough testing, good documentation, and solid automation, things go wrong. Deliveries are late. Unforeseen technical problems come up. These things happen, and we try to deal with them as professionally as we can. This means being honest and direct. We can be proud of our abilities, but we must be honest about our shortcomings-our ignorance as well as our mistakes.

Take Responsibility
Responsibility is something you actively agree to. You make a commitment to ensure that something is done right, but you don’t necessarily have direct control over every aspect of it. In addition to doing your own personal best, you must analyze the situation for risks that are beyond your control. You have the right not to take on a responsibility for an impossible situation, or one in which the risks are too great. You’ll have to make the call based on your own ethics and judgement.

    When you do accept the responsibility for an outcome, you should expect to be held accountable for it. When you make a mistake or an error in judgement, admit it honestly and try to offer options.

    Don’t blame someone or something else, or make up an excuse. Don’t blame all the problems on a vendor, a programming language, management, or your coworkers. Any and all of these may play a role, but it is up to you to provide solutions, not excuses.

Tip 3
Provide Options, Don’t Make Lame Excuses

    Before you approach anyone to tell them why something can’t be done, is late, or is broken, stop and listen to yourself. Talk to the rubber duck on your monitor, or the cat. Does your excuse sound reasonable, or stupid? How’s it going to sound to your boss? Run through the conversation in your mind. Before you go and tell them the bad news, is there anything else you can try? Sometimes, you just know what they are going to say, so save them the trouble.

Instead of excuses, provide options. Don’t say it can’t be done; explain what can be done to salvage the situation….Perhaps you need additional resources. Don’t be afraid to ask, or to admit that you need help.


  • How do you react when someone-such as a bank teller, an auto mechanic, or a clerk-comes to you with a lame excuse? What do you think of them and their company as a result


Tonitech版权所有 | 转载请注明出处: http://www.tonitech.com/1563.html