《The Pragmatic Programmer-- from journeyman to master》
author: Andrew Hunt , David Thomas
Foreword is written by Ward Cunningham, the founder of Wiki. He mainly praised this book for its effectiveness in practice, which means that we can learn and follow the authors' valuable experience, which is compressed as the tips in this book.
The preface again emphasize the importance of practicing.
Programming is a craft. And it is a difficult job. Only by combining the theory and experience can you be strong enough.
The pragmatic programmers share some characteristics:
Early adopter/ fast adapter:快速适应新变化;
Inquisitive:永葆好奇心;
Critical thinker:批判性思考;
Realistic: You try to understand the underlying nature of each problem you face.快速判断问题的难度和工作量;
Jack of all traders: 知识面要广;
Tip 1: Care About your Craft.
Tip 2: Think! About Your Work.
这两点感觉是我内心所真正缺失的,这背后的意思在于,你要真正的尊重自己的工作,热爱自己的工作,这样之后,你自然的会去努力提升自己在这方面的能力,愿意花大量的精力在上面不断的polish skills。
此外,1,在一个大团队中也要有自己的创造性:
We who cut mere stones must always be envisioning cathedrals.
— Quarry worker’s creed
2,要有Kaizen (“Kaizen” is a Japanese term that captures the concept of continuously making many small improvements.)的精神,即不断地在这一个持续的能力提升过程,软件开发的过程中一点点地渐进式的提升软件质量与自身能力。
Chapter 1 A pragmatic Philosophy
本章从pragmatic thinking,即always try to be aware of the bigger picture来采取一系列的具体的attitudes。
这些建议感觉更适合在入职之前后之后的那一段时间再看一遍,所以这里先简要的总结下最essential的内容。
>>Take responsibility.
Tip 3 Provide Options, Don’t Make Lame Excuses
>>Broken window theory tells us that we should pay attention to the minor defects. Otherwise, it will lead to catastrophe. Fix each one as soon as it is discovered.
Tip 4 Don't Live with Broken Windows.
>>The story of "Stone Soup" and "Boiled Frogs" teach us that:
Tip 5 Be a catalyst for change.
Tip 6 Remember the Big Picture.
>>从pragmatic的角度来看,整体上我们需要综合考虑各种现实需求(如product deadline,financial pressure),不必追求无太对价值的完美, to produce good enough software.
Tip 7 Make Quality a Requirements Issue
and know when to stop
>> Your knowledge Portfolio:
丰富自己的知识工具箱,采用与金融投资领域相似的一些基本策略,如多样性、经常更新。。。
Tip 8 Invest Regularly in Your Knowledge Portfolio
另外,我们选择我们的知识工具时要有理性批判,拒绝被商业化的各种hype所左右:
Tip 9 Critically analyze what you read and hear
>>Communicate!
"I believe that it is better to be looked over than it is to be overlooked."
这一点也是目前所欠缺的,由于现在的代码、实验都是自己一个人完成的,所以这一点上做的十分的不过,在以后实际的工作中必须要多与外界沟通才行!当然,在这些沟通中必须要得体、有礼貌。
Tip 10 It’s Both What You Say and the Way You Say It (that matter)
Chapter 2 A pragmatic approach
本章