学习需要定期投入

知识投资和金融投资的一个主要区别是:所有知识投资都有些价值。即使你从来不会再工作中使用某项技术,它也会影响你思考和解决问题的方式。

知识投资和金融投资的一个主要相同点是:需要定期投资。你需要定期投资最低限度的时间量。养成一种习惯,如果需要的话,躲到你的”家庭办公室“里去或者走进有无线网络的咖啡厅。并非每期学习都同样富有成效,但是只要定期安排学习,长期来看一定会有收获。如果你一直再等待空闲时间或者等待灵感的突现,那么它永远都不会发生。

最佳且最有效的学习方式是观察和模范别人

推荐一种阅读一本书的方法,SQ3R。

调查(Survey):扫描目录和每章总结,得出总体看法。

问题(Question):记录所有问题。

阅读(Read):阅读全部内容。

复述(Recite):总结,做笔记,用自己的话来描述。

回顾(Review):重读,扩展笔记,与同事讨论。

以教代学的重要性

举个典型的例子。

你正在解决一个困难的bug,已经花了大量的时间,最后期限迫在眉睫。因此,你找一位同事帮忙。他们来到你的屏幕前,你开始解释怎么回事,是什么地方出错了。还没说多少,你的大脑中灵光一现,“啊!”地叫了起来,你找到了bug。一头雾水的同事,一句话都还没说,就摇摇头走了。

你开始解释的那一刻,你就已经开始”教“了。

程序员的四级

第一级:入门级。入门者会利用某种语言的基本功能,能够编写类、子程序、循环和条件语句,会使用语言的许多特性。

第二级:中级。中级的程序员已经度过入门期,能利用多种语言的基本功能,并会得心应手地使用至少一种语言。

第三级:熟练级。熟练级的程序员对语言或环境或两者兼具有着专业技能。这些程序员都是所在公司的活宝,很多程序员再也不能超越该层次。

第四级:技术带头人级。技术带头人具有第三级的专业才学,并明白编程工作中只有15%用来和计算机交互,其余都是与人打交道的。程序员一般只花30%的时间单独工作,与计算机交互的时间则更少。技术带头人会为人写代码,而非为机器。

真正优秀的程序员知道怎样同别人融洽地工作和娱乐。代码便于看懂是对团队成员的要求之一。计算机可能和别人一样频繁地读你的代码,但是他读质量差的程序可比人强多了。作为一项可读性原则,应该把修改你代码的人记在心上。编程首先是与人交流,其次才是与计算机交流。

在代码这件事情上坚持有褒有贬

根据环境的不同,坚持可能是财富,也可能是负担。和大部分的中性词一样,依据你的褒贬意图而有不同的意思。如果你想表达贬义,可以说是”固执己见“或”顽固不化“;如果你想表达褒义,可以说是”坚韧不拔“或”持之以恒“。

多少时候软件开发中的坚持其实就是没有好处的”固执“。当在某段新代码上卡壳时,坚持很难让人称道。不妨另辟蹊径,尝试重新设计类,或者绕过去,以后回头再试。当一种办法行不通时,正好可以换个办法试试。

知道何时放弃很难。

参考资料:

《程序员思维修炼》、《代码大全》

----END----

这里记录,我每周碰到的,或想到的,引起触动,或感动的,事物的思考及笔记。不见得都对,但开始思考记录总是好的。

一周技术学习笔记(第87期)-代码上坚持是坚韧不拔,也可以是顽固不化相关推荐

  1. 一周技术学习笔记(第68期)-像练习硬笔书法那样写代码

    像练习硬笔书法那样写代码 你如果认真练习过硬笔书法,而且小有成就,就会有这样的经历,写字不认真的时候,或者说不按套路来的时候,写出来的字还是挺难看的. 但是,当你认真的时候,就能写出很漂亮的字来. 这 ...

  2. 一周技术学习笔记(第81期)-《愿生命从容》

    "享受人生而不沉湎,看透人生而不消极",这次暂当做活出生命的技术吧. 隔离的生活时常是乏味和恐惧的交替,乏味是在只有巴掌大的地方上踱步,恐惧是望着窗外晴朗的天空却只能被困在这里.这 ...

  3. 一周技术学习笔记(第82期)-你要的理论、法则、定律、效应都在这里了

    72法则: 72小时法则:当你决定做一件事的时候,你必须在72小时内完成它,否则,你很可能就永远不会再做了. 金融里面还有个"72法则",如果你投资收益率在12%,你想知道多少年你 ...

  4. 一周技术学习笔记(第65期)-到底是返回错误码还是返回异常信息

    1.分布式程序调用到底是返回错误码还是返回错误信息 分布式系统环境里面,RPC往往被我们称为:连接各个服务之间的纽带.当然,也有MQ.如果纽带这个词显得高雅,通俗点就是信息交互,或者通信. 好,还是说 ...

  5. 一周技术学习笔记(第67期)-CPU的设计跟开闭原则有关系吗

    你能想到CPU的设计是开闭原则的设计吗 说CPU的设计很符合软件设计的开闭原则,估计一般的同学肯定不会这样意识到.其实我也一样不太可能把它们能够想在一起,并将它们关联起来. 可确实就这样发生了.实际上 ...

  6. java mvc框架代码_JAVA技术学习笔记:SpringMVC框架(内附入门程序开发代码)

    原标题:JAVA技术学习笔记:SpringMVC框架(内附入门程序开发代码) JavaEE体系结构包括四层,从上到下分别是应用层.Web层.业务层.持久层.Struts和SpringMVC是Web层的 ...

  7. 小五思科技术学习笔记之SSH

    下面介绍一下相关概念: SSH的概念: SSH的英文全称为Secure Shell,SSH使用TCP的22号端口,其目的是要在非安全的网络上提供安全的远程登陆和其他安全的网络服务, 为什么要使用SSH ...

  8. ssm 转发请求_千呼万唤!阿里内部终于把这份SSM框架技术学习笔记分享出来了...

    SSM SSM(Spring+SpringMVC+MyBatis)框架集由Spring.MyBatis两个开源框架整合而成(SpringMVC是Spring中的部分内容).常作为数据源较简单的web项 ...

  9. 知识图谱技术学习笔记

    知识图谱技术学习笔记 从一开始的Google搜索,到现在的聊天机器人.大数据风控.证券投资.智能医疗.自适应教育.推荐系统,无一不跟知识图谱相关.它在技术领域的热度也在逐年上升. 本文以通俗易懂的方式 ...

最新文章

  1. 利用BeanUtils在对象间复制属性
  2. 官方一步解决各种Windows更新问题
  3. 反思走火入魔 急功近利:一步一步的做 一步一步的走 顺其自然 水到渠成
  4. mac mysql my.cnf_mac 增加 my.cnf
  5. asp.net mvc项目中遇到的古怪的问题,(项目中有frame框架)
  6. linux内存布局的内核实现--用户空间的映射方式
  7. Tomcat 下载、安装与配置
  8. 关于SQLyog的破解注册码
  9. XRF与ICP比较的差异
  10. 使用51单片机驱动航模无刷电机
  11. 看完这篇异地多活的改造,我决定和架构师 battle 一下 / 得物技术
  12. Android R系统aidl文件怎么对应的java文件找不到了?
  13. 破局模块总结 -- 宁向东的清华管理学课总结
  14. 渠道商用假流量冒充真实用户
  15. 在面试时遇到不了解的问题,如何顺畅的与面试人员交流?
  16. 零基础入门软件测试需要学习什么
  17. 计算机等级考试电子邮件的附件在哪里查看,​计算机等级考试详解:电子邮箱的地址组成结构!...
  18. 成功将log4cpp升级到了vs2005版本,总结下编译时报错及相应的解决方法
  19. 苹果屏蔽更新_如何屏蔽苹果系统自动更新(原tv文件已失效)
  20. 收集各种文章资料的URL 不断更新

热门文章

  1. 华为、飞腾、海光、兆芯、龙芯、申威这六大国产CPU发展得怎么样?
  2. react useState 异步 数据获取不到
  3. 统计mysql说有表的大小_MySQL统计数据库和表大小
  4. 建工计算机在线使用,建工计算器创建公式的相关操作教程
  5. ps4/eyes----ROS开发
  6. 人工智能大数据,公开的海量数据集下载,ImageNet数据集下载,数据挖掘机器学习数据集下载...
  7. HA 自定义用户界面的外观StatesUI和lovelaceUI
  8. SAS常用日期和时间函数简介
  9. php序列化(serialize)和反序列化(unserialize)函数
  10. 未来十年智慧城市如何发展?百度智慧城市有话说