了解概念 通过记忆和模式识别来解决问题要比单纯的寻找问题的原因快的多。如果你曾经解决了一个类似的问题,那么你很可能直观的想起解决方案。就算做不到这一点,至少过去保留的经历会让你更容易的找到解决问题的灵感。“自动化”的解决一个问题看起来很像魔术,但是这就是 Miguel Paraz 建议的“练习 练习 再练习”的真实效果。 了解你的工具这是一个在编程时维持而不是终止连续性的方法。每当你不得不考虑如何去学习编辑器、版本控制系统、调试器,这将打断你的深度思考。这些“小插曲”虽小,但是它们加起来就不小了。比起什么也不做,那些愿意花时间学习工具、练习使用工具、用自动化工具的人的生产力会得到几倍的提高。 做好时间管理使自己再次进入工作状态。你想写代码,写代码。你想回顾一些修改补丁,回顾一些修改补丁。如果想头脑风暴新的算法……你懂得,不要试图将这些事情一起做完,一定不要让自己被电子邮件、IRC、Twitter和Quora打断。让你的大脑专注于一件事,在做完这件事情之后再转向做其他的事情。 安排好处理事情的顺序我发现这方面很多人做的很失败。每一个问题都可以从不同的方面来对待。通常,解决一个问题的一方面会比其他方面容易很多。因此,正确的顺序尤为重要。恐怕没人能说出如何排序的标准答案,但是当你在当前领域经验越来越丰富的时候,再去实践,你的经验会给你很多启发。 重用所有你能重用的重用的想法。重用代码。每次你把一个新问题变成一个你已经知道如何解决问题,计算充满这样的机会——你可以节省时间。不要担心如果转换后的解决方案并不是绝对完美的当前问题。你可以完善之后,如果你真的需要,通常你会发现,你最好继续下一个问题。 这些事情真的会降低你的效率。随着你每天遇到更多的问题,你将获得更多的经验,这会让你能更快的解决更多的问题,这样一直下去。这是一个循环,一旦你能够正确的对待这些事情时,你的效率和价值将会得到大幅度的提升。
|