本书作者:陈逸鹤
以下是我读此书时作的一些笔记,当然书中还有很多值得参考的想法,就不一一列举了。
一万小时说法
☆ 这个说法很普遍了,它再次提醒了我如何去做一个领域的专家。如果平均每天八小时在这个领域上,那么一年300天=300 * 8 = 2400,保持这种学习激情在上面,五年内就可以成为专家了,我算了算自己在这个领域投入的时间(主要学习时间),除去我没有怎么写代码的时间,我从14年开始写代码到现在18年,有五年多的时间,我每年至少有150 * 8的学习时间大概也已经有了5000小时左右了。而我最近的花在上面的时间则更多,约莫还需两年就可完成10000小时。
我觉得这个说法很对,还有它至少提供了一种可靠的数字,不过我们要非常注意这个时间,是有效的成长时间或学习时间。
◯ 生活、睡眠、旅行
生活:尝试有节制和有规律的生活,程序员生涯绝不是一次冲刺跑,而更像是一场马拉松。你需要合理规划自己的时间分配(学习、阅读、写代码)并持之以恒地去做。另外不要忽视自己的家庭,不要将自己隔离起来,做一个快乐有爱的程序员。
睡眠:有很多人觉得睡眠是弱者的表现,他们往往会长时间熬夜,其实我觉得这是一种恶性循环,反而会使你的工作效率变得更低。充足的睡眠往往能使你更有效率地投入到新的一天的工作中,你也会变得更有创造力。请记住,保证充足的睡眠将使你变得更加强大。
旅行:去任何一新的地方都可以称之为旅行,旅行能让你发现和感受新的东西,而这些是从电脑屏幕上无法获得的。
☆ 身体是革命的本钱,而工作只是生活的一部分,这两点不能本末倒置。旅行会使自己的身心放松和愉悦,是非常有必要的。
◯ 你的薪酬与工作量无关
你的薪酬其实取决于很多因素,技术能力、经验资历、工作量等,但最本质的却是,你对公司是否重要,换句话说你是否容易被取代。
☆ 这句话要看从怎样的角度看,如果单从当前的一份工作来看,这个或许是对的,但我想说工作量与你的下一份工作有关,你当前的工作量会对你本人的技术积累有帮助,那么下一份薪酬就有可能因此而提升。
◯ 你的声誉非常重要
声誉对于一名程序员来说非常重要。我看到的那些优秀的程序员都有一个共同点,那就是他们在团队和公司内部都有着良好的声誉,而这反过来帮助他们在职业生涯取得一个又一个迭代式的发展。
☆ 我非常认同这点,并为此努力。
有一个我非常敬佩的同事,他写的代码从大的方面看,架构的非常不错,从小了看又非常优雅,我以他为榜样去努力实践,并从开源代码中学习优秀的代码规范。
而现在,我再看那些优秀代码,我觉得非常好接受,并觉得自己代码也同样优雅。
◯ 不要轻易说简单或不可能
☆ 这个不只是就程序员来讲,我觉得在做人都应该注意这点,我们要勇敢说不,但不要轻易说,这是两种不同的态度。一种是表现沉稳,而另一种则像是轻浮。
◯ 你的能力显而易见
☆ 我可以解决工作中碰到的所有问题,或者提供了一个可行的方案,而且我乐于去解决问题。但在从前我则希望别人来帮我解决问题,这是近几年的对于我的重大转变。
◯ 技术深度够吗?
☆ 我得承认我的技术广度还行,但我的技术深度是不够的。我将花更多的时间在技术深度上。
◯ 读与技术无关的书
☆ 这点非常认同,事实上本书《程序员的自我修养》就与技术本身关系不大,它是作者的从业经验之谈,无所不包,但它没有提及具体的技术细节,但我相信它对某些方面有欠缺的程序员的帮助会是很大的。
读与技术无关的书,会拓展自己的认知,用该书中的话还可说是锻炼了我们右脑,还有一个词叫触类旁通。
◯ 会写文档、学会包装
☆ 近两年我着重练习自己写文档的能力,这不仅是一种包装,还可以提升自己对已知知识的认知,因为要把它写出来,我们自然会想办法将它表述清楚,从而对知识进行总结提炼,在此过程中我们还会学习更多,通常的练习方法是写文章,写文档,画图。
◯ 增量编译和部署
☆ Groovy我使用过,但不熟悉,Gulp用过。
◯ 参考领域驱动设计的思想
◯ 程序员也该懂得“这样就好”
比如,该使用什么样的架构,采用哪种技术,在这个功能中使用什么设计模式,采用何种缓存策略,等等。这些都需要我们根据当时的环境、资源、用户等要素做出恰当的选择。与其提供很多功能而最终用户始终觉得不好用,倒不如做一个能真正帮助用户解决问题的功能。
不盲目使用新技术:新技术意味着风险和不确定的代价。避免过度设计。不在项目中技术镀金:技术镀金指的是开发人员在项目开发中过于追求技术的完美性,试图在技术上镀一层完美的金壳,导致软件开发工作量加大。☆ 这几点值得多留意,因为它们的界限容易模糊。
◯ 编程是为了留下痕迹
我似乎又一次理解了编程的意义,但我明白未来的某一天,我一定还会问自己同样的问题——为什么要编程,希望到那个时候自己还能是那个热爱编程,有着一颗匠心的“技匠”……
☆ 非常赞同!能留下痕迹是很难的,留下的东西还能被后人使用就是值得自豪的事情了,我们常见的就有书籍、电影、字画,这些都是人的追求,而这些都是一个人留下的痕迹,留下痕迹同样是开源代码的魅力之一。
◯ 为什么你应该让你的孩子尽早学习编程
学习编程能让孩子们变得更好学习编程非常简单而且快乐对学校教育有很好的促进作用更好的适应未来的科技社会☆ 我可以教我的孩子编程,但我更看重对他们的素质教育,因为网络上有太多不良的信息,这也许是一把双刃剑。
◯ 因为“美”而学习设计
☆ 我在开发一款小应用,虽然用Ionic解决了一部分控件的样式问题,最终我不得不用一些好看的封面,但前期就自己使用就将就吧。
一天内读完此书,感觉就像是和一个前辈在咖啡馆聊天,前辈向我谈到他的从业经验,并且和我谈他对生活的理解,对未来程序员的预言,对美的理解。而我作为一个也已经在职场中工作几年的人,对前辈的许多想法表示赞同,同时又心怀感激前辈能这样无私,他向我坦诚的介绍了他的技术之路,创业踩了什么坑等等,无一不是对丰富我的见识有帮助。非常感谢!