工程素养

译文:
	在工程领域,每一个工程师都应该具备的精神是:
		我能够很好地处理所面临的问题。

	不论究竟是怎样的问题,一定有解决的方法。这种解决方法是可知的,也是可行的。而唯一不去执行的原因就是所谓的,缺乏资源。
	这种很好的处理方式应该具备一定的预见性。它要有能力处理一些未知的状况,甚至是不明确的行为。
	保持相对简单而又能够处理所有复杂情况的方案,就是好的解决方案。
	而这里有很多不去很好处理问题的借口:
  1. 我不知道该如何去做。”
    通常来说,这只需要一些学习与探索的精神。
  2. 团队不会支持这种做法。”
    在一个团队中应该由有经验的工程师做出决定,而不是所有人共同做出决定。
  3. 我现在很累//饿……
    请保持好的状态。
	总之,你一定要坚定地相信自己能够很好地处理所面对的问题。


原文:

The Engineer Attitude

The attitude that everyengineer should have, in every field of engineering, is:

I can solve thisproblem the right way.

Whateverthe problem is, there’s always a right way to solve it.The right way can be known, and it can be implemented. Theonly valid reason ever to not implement something the right way islack of resources. However, you should always consider thatthe right way does exist, you are able to solve the problemthe right way, and that given enough resources, you wouldsolve the problem the right way.

The “right way” usuallymeans “the way that accounts for all reasonably possible futureoccurrences, even unknown and unimaginable occurrences.”

A bridge that could stand upto any reasonably possible environmental condition or any reasonablypossible amount of traffic without constant maintenance would bebuilt the “right way.”

Software code that maintainedits simplicity while providing the flexibility needed for reasonablypossible future enhancements would be designed the “right way.”

There are lots of invalidreasons for not solving a problem the right way:

  • Idon’t know the right way. Often this just requires moreunderstanding or study, to figure out the right way. When I run intothis situation, I walk away from the problem for a while, and thenoften I’ll come up with the solution when I’m just out walking,or the next day when I come back to it. I try not to compromise onsomething that isn’t the right way just because I don’t knowwhat the right way is yet.

  • Thegroup cannot agree on what the right way would be.Sometimes a group of people have argued about what would be the“right way” and the subject has gotten very confused. Groups arenot very good at making decisions. As we all know, you don’tdesign software by committee, and I suspect that “design bycommittee” in other fields of engineering is just as bad. Thesolution here is to assign an experienced and trusted engineer whounderstands the basic laws of the subject you’re working in todetermine the right way by himself or herself, probably aftercarefully studying the existing arguments and collecting relevantinformation, following standard, valid engineering procedures.

  • I am toolazy/tired/hungry/discombobulated to do this the right way, rightnow. This happens to everybody from time to time. It’s 1in the morning, you’ve been working on the project for 15 hoursstraight, and you just need the damn thing to work, rightnow! Give it a rest, though, and come back later. The world isn’tending, and the problem will still be here and solvable later. Go tosleep, go eat something, take a walk–do whatever it takes to getinto a mental space where you’re willing to solve the problem theright way, and then come back. If you’re in a state where youcan’t solve the problem the right way, then it’s really time totake a break. You’re not being delinquent in your duties if you doso–you’re actually correctly taking responsibility for thesuccess of the project by saying “this needs to be done right, andthe way to do it right, right now, is to take a break and come backlater”.

Mostly, it all just takes theconstant and continual belief in yourself that you can solve theproblem the right way.

-Max

链接

http://www.codesimplicity.com/post/the-engineer-attitude/#more-187

 posted on 2011-12-24 18:49  Jiang, X.  阅读(1470)  评论(0编辑  收藏  举报